查看反汇编代码的方法取决于你使用的操作系统、开发工具和目标文件类型。下面按常见场景给你一个清晰、实用的说明。
gcc -S main.c # 生成汇编文件 main.s
objdump -d a.out
只查看 main 函数:
objdump -d a.out | grep -A 20 "<main>:"
objdump -S a.out
编译时需要加
-g:
gcc -g -o a.out main.c
dumpbindumpbin /DISASM test.exe
gdb ./a.out
常用命令:
disassemble main # 反汇编 main 函数
disassemble 0x401000 # 指定地址
layout asm # TUI 汇编视图
info registers # 查看寄存器
uf main
✅ 非常适合逆向分析
objdump -d main.o
ndisasm -b 32 boot.bin
✅ 推荐:
| 架构 | 工具 |
|---|---|
| x86 / x64 | objdump, gdb, x64dbg |
| ARM | objdump -b elf32-littlearm -d |
| MIPS | objdump -M mips -d |
| AArch64 | aarch64-linux-gnu-objdump -d |
✅ 反汇编 ≠ 你写的代码
✅ 开启优化后(-O2)结构变化很大
✅ 查看库函数反汇编有助于理解调用约定(cdecl / stdcall / fastcall)
如果你愿意,可以告诉我:
我可以给你一句命令或一步到位的具体操作。