星期三, 6月 14, 2006

binary disassembler - ndisasm : tools in nasm

一般disassembler 都是用binutils 的 objdump,但是objdump 只能用來disassembly obj 和 elf 檔。
當要dissembly 沒有section 資訊的 binary 檔案時,就不能用了。

要disassembly binary 檔,就要用 nasm 附的tool : ndisasm。

debian 要安裝 nasm。

使用很簡單 :
$ndisasm -a bootsector
其中"-a" 是自動判斷sync point,也就是由jump 指令的target address來決定該處是data還是instruction.
(但是好像不怎麼有效)


assembly 是platform dependent的,objdump 有各種平台的版本。所以只要有cross-tool,都可以用。但是nasm 只是x86 版,所以其他平台要再找過。

沒有留言:

網誌存檔