Я пишу программу на ассемблере FASM и хочу посмотреть, какой код генерируется после всех расширений макросов. Обычно можно разобрать двоичный файл с помощью objdump -d
, но для двоичного файла, генерируемого fasm, он выдает только следующее:
$ cat true.fasm
format ELF64 executable
sys_exit = 60
entry $
mov eax, sys_exit
xor edi, edi
syscall
$ fasm true.fasm
$ objdum -d ./true
out/true: file format elf64-x86-64
Что я могу сделать, это загрузить двоичный файл в gdb
, запустить его с starti
и декодировать инструкции с помощью x/10i $rip
, что является неоптимальным. Есть ли неинтерактивная команда, которая может сделать то же самое?