正版资源x86_64架构汇编语言逆向
这份资料围绕 x86_64 架构汇编与软件逆向展开,内容分成三块相对独立的区域:一块是 C/C++ 的基础铺垫,一块是 x86_64 汇编语言本身,一块是落到实际样本上的逆向技术。结构上不是先把汇编语法讲完再谈应用,而是先让你有办法读懂编译器生成的代码,再反过来推回源码逻辑。对做后端、系统编程或者安
这份资料围绕 x86_64 架构汇编与软件逆向展开,内容分成三块相对独立的区域:一块是 C/C++ 的基础铺垫,一块是 x86_64 汇编语言本身,一块是落到实际样本上的逆向技术。结构上不是先把汇编语法讲完再谈应用,而是先让你有办法读懂编译器生成的代码,再反过来推回源码逻辑。对做后端、系统编程或者安全方向的人来说,这种「从产物反推实现」的能力,比单纯背指令表更有用。
技术栈与知识前置
整套内容的技术底座是 x86_64 指令集,配合 ELF 格式、System V AMD64 调用约定,以及 Linux 下的调试与反汇编工具链。作者没有假设你已经会汇编,但默认你能读懂 C 或 C++ 的基本语法,否则第一部分会显得拖沓。这一点值得注意:如果你完全没有编程经验,先补语言基础再进来,效率会高很多;如果你已经写过几年 C/C++,第一部分可以快速跳过,直接进入汇编与逆向部分。
从工程角度看,这里涉及的不是某个框架的 API 用法,而是运行时层面的东西——寄存器分配、栈帧布局、参数传递、返回值处理。这些东西不会因为换语言、换框架而过时,属于底层知识里复用率比较高的那一类。
内容结构与可复用模块
汇编部分主要解决「看得懂」的问题。指令详解、寻址方式、函数调用约定这些内容,最终都指向同一个能力:拿到一段反汇编代码,能还原出它大致在做什么。调用约定这一块尤其关键,参数怎么进寄存器、超过六个参数怎么办、栈对齐规则是什么、调用者和被调用者各自负责保存哪些寄存器,这些规则直接决定了你分析函数边界时的判断依据。把它吃透,后面看任何编译器产出的代码都有章可循。
逆向部分解决的是「用得上」的问题。软件逆向技术的核心流程通常是:定位关键逻辑、梳理控制流、识别数据结构、必要时动态调试验证。这里涉及的分析思路可以复用到很多场景,比如排查线上崩溃的 core dump、分析第三方库的行为、理解编译器优化后的代码、做漏洞分析或者协议还原。即使你不做安全方向,读汇编的能力在处理性能问题和疑难 bug 时也是实打实的加分项。
第三块 C/C++ 入门是给基础薄弱的人准备的台阶,属于可选路径。已经能写 C 的人不必在这上面花时间。
适合拿来对照实践
汇编和逆向这类内容有个特点:光看视频或者光读讲解,当时觉得懂了,一上手就卡住。真正有效的用法是边学边动手——自己写一段 C 代码,用 GCC 或 Clang 编译出汇编,对照课程里讲的调用约定去看寄存器怎么变;或者拿一个自己写的程序,用调试器单步走一遍,观察栈帧的建立和销毁。课程里讲到的分析手法,最好在你自己的代码上复现一遍,而不是只跟着演示走。
另外建议配合工具链一起用起来:反汇编工具、调试器、以及查看 ELF 结构的命令行工具。这些工具的使用本身也是一种可迁移的技能,换项目、换平台之后依然用得上。把课程当作「参照系」而不是「播放列表」,效果会差很多。
自学路径建议
- 有 C/C++ 基础:从汇编部分切入,重点吃透指令语义和调用约定,再进入逆向技术,C/C++ 入门部分按需查阅即可。
- 编程基础较弱:先花时间补 C 语言,能独立写出带函数调用、指针操作的小程序,再回头学汇编,否则会一直在抽象层打转。
- 做安全方向:把逆向部分当成主线,每学一个分析手法就找一个真实样本练手,积累分析经验比记住工具快捷键更重要。
- 做后端/系统方向:重点放在调用约定、栈帧和编译器优化上,这些直接关系到性能分析和线上问题定位。
整体来看,这份资料的价值不在于「看完能拿到什么证书」,而在于它给了一套可以反复对照的底层参照。把它当成工具书和练习素材来用,比一次性刷完更符合这类知识的掌握规律。
x86_64架构汇编语言逆向
深入理解x86_64架构汇编语言逆向技巧
编辑点评
系统讲解x86_64架构汇编语言,涵盖指令详解、函数调用约定、软件逆向技术,适合有一定编程基础的学习者。
⭐ 编辑推荐
本课程深入解析x86_64架构汇编语言,从基础指令到高级逆向技术,助你掌握软件逆向的核心技能。
✨ 课程亮点
课程目录
02.x86_64架构汇编语言8 集
- 06.cdecl函数调用约定.mp4 [113.2 MB]
- 09.x86汇编调用C语言库函数.mp4 [24.4 MB]
- 07.stdcall函数调用约定.mp4 [25.9 MB]
- 08.寻址方式.mp4 [70.8 MB]
- 01.寄存器基础.mp4 [152.8 MB]
- 02.x86汇编开发框架.mp4 [44.4 MB]
- 11.x86鍐呰仈姹囩紪.mp4 [21.5 MB]
- 10.x86汇编调用WindowsAPI.mp4 [41.0 MB]
03.x86_64软件逆向技术38 集
- 01.整型变量逆向.mp4 [32.3 MB]
- 14.基于启动特征定位main函数.mp4 [37.6 MB]
- 19.赋值运算符逆向.mp4 [21.8 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鐨剆witch璇彞閫嗗悜.mp4 [54.0 MB]
- 40.数组作为参数的函数逆向.mp4 [37.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鐨剆witch璇彞閫嗗悜.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涓巄reak璇彞閫嗗悜.mp4 [21.1 MB]
- 32.循环结构-for循环逆向.mp4 [38.9 MB]
- 08.二维数组逆向.mp4 [28.1 MB]
01.C&C++零基础入门计划22 集
- 06.变量生命周期与整型变量的存储.mp4 [24.5 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]
- 24.指向多维数组的指针.mp4 [17.6 MB]
- 30.函数指针与回调函数.mp4 [37.4 MB]
- 29.使用指针作为参数和返回值.mp4 [27.6 MB]
- 12.关系与逻辑运算符.mp4 [15.8 MB]
- 23.指向二维数组的指针.mp4 [20.2 MB]
- 11.浣嶈繍绠楃.mp4 [17.6 MB]
- 03.内存的概念.mp4 [9.3 MB]
- 14.ifelse閫夋嫨璇彞.mp4 [11.1 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]
- 25.内存管理(C版本).mp4 [34.9 MB]
- 04.数据类型概述.mp4 [14.3 MB]
- 21.指针基础.mp4 [22.5 MB]
适合人群
- 计算机安全爱好者
- 逆向工程师
- 软件安全研究者
🎯 学习收获
- 掌握x86_64架构汇编语言基础
- 理解函数调用约定和逆向技术
- 提升软件安全分析能力
🎉 祝您学习愉快!




