这门课的名字听起来很硬——x86_64 汇编加逆向。在决定要不要花时间之前,先把它放回到具体的工作场景里看:你什么时候会真正用到它?大致是三种情况。一是你手上有个没有源码的二进制程序,需要判断它到底干了什么,比如它有没有偷偷联网、有没有读写某个目录;二是做漏洞分析或恶意样本排查,需要对着一堆反汇编指令还原逻辑;三是想搞明白 C/C++ 代码编译之后变成什么样,从而写出更可控的代码,或者看懂崩溃时的调用栈。如果你的工作里出现过上面任何一条,这门课的内容就是直接对口的;如果只是想"了解一下底层",那大概率会学得比较吃力,因为汇编本身需要大量动手对照才能记住。

它主要解决什么问题

课程内容大致分成两条主线。一条是 x86_64 架构下的汇编语言本身:寄存器的分工、常用指令的含义、内存寻址方式,以及函数调用约定——也就是参数怎么传、返回值放哪、栈帧怎么建立和销毁。这部分是地基,看反汇编时最卡人的往往不是指令不认识,而是不清楚当前这个寄存器里装的到底是第几个参数。另一条是软件逆向技术:怎么在反汇编结果里定位关键逻辑、识别常见的编译器生成的代码模式、把一段汇编还原成接近高级语言的流程。两条线是配合着用的,单独学指令会枯燥,单独学逆向又会处处卡壳。

学完之后能独立做什么

比较现实的预期是:给你一个体积不大、没有加壳混淆的二进制程序,你能用调试器和反汇编工具跟进去,看懂主要的函数结构,判断出它做了哪些关键操作,并对可疑逻辑做进一步分析。这个程度足以应付不少 CTF 逆向题、日常的样本初筛和代码行为确认。但要说清楚的是,它不会让你变成能啃大型商业软件、对抗强混淆和虚拟化的逆向工程师——那需要更多实战积累和额外的工具链知识。把课程当成"能上手分析"的起点,比当成"学完就精通"更准确。

资料结构和适合的基础

内容按由浅入深组织,前面是架构与汇编基础,后面进入逆向技术,另外还带了一部分 C/C++ 入门内容,用来照顾编程底子偏弱的学习者。这里给一个实在的建议:如果你已经能写 C 或 C++,能理解指针、数组、结构体和函数调用,那部分入门内容可以直接跳过,把时间花在汇编和调用约定上。如果你连指针都还没搞清楚,建议先补这块再回来,否则看到栈帧和地址计算会非常痛苦。此外最好有一点 Linux 或 Windows 命令行使用经验,因为练习过程离不开调试工具和反汇编工具的操作。

怎么用这套资料效率更高

  • 不要只读不练。每学完一组指令,就自己写一小段 C 代码编译出来,对着反汇编看编译器把它变成了什么。
  • 把调用约定单独拎出来反复过。这是从"看得懂指令"到"看得懂程序"的分水岭。
  • 准备一个固定的反汇编/调试环境,边学边跟,遇到看不懂的函数就停下来拆解,别急着往下刷。
  • 学逆向技术那部分时,回头对照前面的汇编知识,把每一步对应到具体指令,形成自己的分析习惯。

总的来说,这是一门目标明确、偏实战的底层课程,适合已经会编程、想往安全分析或底层理解方向走的上班族和转行者。它不轻松,但学到的能力很具体——能让你在面对一个陌生二进制时,不再只能干看着。

课程目录

02.x86_64架构汇编语言93 集
  • 12.ADD指令详解.mp4
  • [92.0 MB] 05.XCHG指令详解.mp4
  • [19.4 MB] 03.MOV指令详解.mp4
  • [40.5 MB] 06.cdecl函数调用约定.mp4
  • [113.2 MB] 13.SUB指令详解.mp4
  • [72.4 MB] 09.x86汇编调用C语言库函数.mp4
  • [24.4 MB] 17.DEC指令详解.mp4
  • [18.2 MB] 18.AND指令详解mp4.mp4
  • [21.0 MB] 020.XOR指令详解.mp4
  • [16.9 MB] 07.stdcall函数调用约定.mp4
  • [25.9 MB] 08.寻址方式.mp4
  • [70.8 MB] 19.OR指令详解.mp4
  • [14.6 MB] 14.MUL指令详解.mp4
  • [79.5 MB] 01.寄存器基础.mp4
  • [152.8 MB] 04.LEA指令详解.mp4
  • [47.6 MB] 02.x86汇编开发框架.mp4
  • [44.4 MB] 15.DIV指令详解.mp4
  • [33.0 MB] 16.INC指令详解.mp4
  • [23.8 MB] 11.x86内联汇编.mp4
  • [21.5 MB] 10.x86汇编调用WindowsAPI.mp4
  • [41.0 MB] 📁 03.x86_64软件逆向技术 01.整型变量逆向.mp4
  • [32.3 MB] 39.fastcall调用约定.mp4
  • [36.3 MB] 14.基于启动特征定位main函数.mp4
  • [37.6 MB] 19.赋值运算符逆向.mp4
  • [21.8 MB] 38.thiscall调用约定.mp4
  • [38.3 MB] 33.goto语句逆向.mp4
  • [23.6 MB] 29.6case无线表switch语句逆向.mp4
  • [43.1 MB] 07.一维数组逆向.mp4
  • [23.7 MB] 16.位运算符逆向.mp4
  • [112.0 MB] 25.3case的switch语句逆向.mp4
  • [54.0 MB] 40.数组作为参数的函数逆向.mp4
  • [37.8 MB] 37.stdcall调用约定.mp4
  • [11.8 MB] 10.指向变量的指针逆向.mp4
  • [22.6 MB] 22.选择结构-ifelse语句逆向.mp4
  • [56.2 MB] 41.使用数组作为返回值的函数逆向.mp4
  • [15.7 MB] 24.嵌套if语句逆向.mp4
  • [43.1 MB] 03.浮点型变量逆向.mp4
  • [34.6 MB] 17.关系运算符逆向.mp4
  • [28.9 MB] 02.浮点型变量存储.mp4
  • [26.3 MB] 13.基于功能定位mian函数.mp4
  • [24.9 MB] 26.6case的switch语句逆向.mp4
  • [93.5 MB] 06.常量逆向.mp4
  • [17.1 MB] 35.函数调用约定基础.mp4
  • [11.0 MB] 05.布尔型变量逆向.mp4
  • [18.3 MB] 18.逻辑运算符逆向.mp4
  • [36.4 MB] 27.6case缺项的switch语句逆向.mp4
  • [79.7 MB] 30.循环结构-while循环逆向.mp4
  • [48.2 MB] 23.多选择ifelse语句逆向.mp4
  • [53.9 MB] 28.6case单项不连续switch语句逆向.mp4
  • [56.9 MB] 11.指向数组的指针逆向.mp4
  • [23.6 MB] 31.循环结构-dowhile循环逆向.mp4
  • [41.8 MB] 09.多维数组逆向.mp4
  • [29.3 MB] 12.基于字符串定位mian函数.mp4
  • [25.6 MB] 04.字符与字符串类型变量逆向.mp4
  • [53.1 MB] 15.算术运算符逆向.mp4
  • [81.9 MB] 20.三目运算符逆向.mp4
  • [15.0 MB] 21.选择结构-if语句逆向.mp4
  • [54.9 MB] 36.cdecl函数调用约定.mp4
  • [67.9 MB] 34.continue与break语句逆向.mp4
  • [21.1 MB] 32.循环结构-for循环逆向.mp4
  • [38.9 MB] 08.二维数组逆向.mp4
  • [28.1 MB] 📁 01.C&C++零基础入门计划 06.变量生命周期与整型变量的存储.mp4
  • [24.5 MB] 09.输入与输出.mp4
  • [17.7 MB] 28.函数基础.mp4
  • [28.9 MB] 02.进制与位.mp4
  • [22.4 MB] 01.第一个C语言程序.mp4
  • [41.1 MB] 22.指向一维数组的指针.mp4
  • [20.8 MB] 08.字符与字符串类型变量.mp4
  • [25.0 MB] 26.内存管理(C++版本).mp4
  • [24.1 MB] 13.三目运算符.mp4
  • [8.6 MB] 24.指向多维数组的指针.mp4
  • [17.6 MB] 30.函数指针与回调函数.mp4
  • [37.4 MB] 20.数组.mp4
  • [28.4 MB] 29.使用指针作为参数和返回值.mp4
  • [27.6 MB] 12.关系与逻辑运算符.mp4
  • [15.8 MB] 23.指向二维数组的指针.mp4
  • [20.2 MB] 17.dowhile循环.mp4
  • [6.3 MB] 18.for循环.mp4
  • [10.1 MB] 11.位运算符.mp4
  • [17.6 MB] 03.内存的概念.mp4
  • [9.3 MB] 14.ifelse选择语句.mp4
  • [11.1 MB] 10.算术运算符.mp4
  • [10.8 MB] 00.Visual Studio 2022的安装与配置.mp4
  • [27.3 MB] 27.指针数组与二级指针.mp4
  • [32.4 MB] 07.浮点型变量的定义与存储.mp4
  • [31.6 MB] 15.switch选择语句.mp4
  • [9.8 MB] 05.变量与常量.mp4
  • [11.9 MB] 25.内存管理(C版本).mp4
  • [34.9 MB] 04.数据类型概述.mp4
  • [14.3 MB] 19.goto语句.mp4
  • [6.0 MB] 16.while循环.mp4
  • [9.1 MB] 21.指针基础.mp4
  • [22.5 MB] 适合人群 计算机安全爱好者 逆向工程师 软件安全研究者 学习收获 掌握x86_64架构汇编语言基础 理解函数调用约定和逆向技术 提升软件安全分析能力 祝您学习愉快! 学有所成,前程似锦!