在 CentOS 中,您可以使用 objdump 反匯編二進制文件
sudo yum install binutils
example_binary
的二進制文件,您可以使用以下命令進行反匯編:objdump -d -M intel example_binary > disassembly.txt
這里,-d
選項表示反匯編,-M intel
表示使用 Intel 語法(如果您更喜歡 AT&T 語法,可以省略此選項)。example_binary
是要反匯編的二進制文件的名稱,disassembly.txt
是將反匯編結果保存到的文本文件。
disassembly.txt
文件并查看反匯編結果。例如:00401000 <main>:
401000: 55 push rbp
401001: 89 e5 mov ebp, esp
401003: 83 ec 10 sub esp, 0x10
401006: c7 45 f4 00 mov DWORD PTR [rbp-0xc], 0x0
40100a: c7 45 f8 00 mov DWORD PTR [rbp-0x8], 0x0
40100e: e8 d8 fe ff ff call 0x400f40 <printf@plt>
401013: c7 45 fc 01 mov DWORD PTR [rbp-0x4], 0x1
401017: e8 b8 fe ff ff call 0x400f40 <printf@plt>
40101c: eb 01 jmp 0x40101f <main+0x1f>
40101e: 90 nop
40101f: c9 leave
401020: c3 ret
401021: 90 nop
401022: 66 90 xchg ax, ax
這個示例顯示了名為 example_binary
的二進制文件的反匯編代碼。您可以使用文本編輯器打開 disassembly.txt
文件并查看詳細的反匯編指令。