ccaaatt 发表于 2009-11-21 18:57

linux下的arm反汇编

objdump好像必须是有elf
否则不认
想反汇编flat binary arm 文件

win32有个DISARM 0.12
http://www.softpedia.com/get/Programming/Other-Programming-Files/DISARM.shtml
Linux下有什么

ccaaatt 发表于 2009-11-22 19:51

看来只有wine他了
也难怪,linux下什么不是带source的
何必找麻烦看什么汇编
这样反汇编的结果必然把数据部分也做代码处理,
搞乱了输出结果

能不能智能runtime识别数据和代码?
好像很难啊

不过这种硬反汇编对于调试和理解linker还是有用的

mik 发表于 2009-11-22 22:42

arm 的很少吧

cjaizss 发表于 2009-11-23 10:32

我还是支持用shell编一个,哪天我有空编一个,做一个比较好用、还可以扩展的

ccaaatt 发表于 2009-11-23 16:25

期待

prolj 发表于 2009-11-23 19:58

ld会慢慢丧失意义,binutils里面很多工具都一样,会慢慢丧失意义。

lllaaa 发表于 2009-11-23 20:22

objdump -b binary xxx.bin试一试

lllaaa 发表于 2009-11-23 20:23

另外反汇编可以用更强大的ida,支持绝大多数的cpu。

ccaaatt 发表于 2009-11-24 11:37

多谢

arm_v5t_le-objdump-b binary -m armv5te -Du-boot.bin|head

u-boot.bin:   file format binary

Disassembly of section .data:

00000000 <.data>:
       0:        ea000012         b        0x50
       4:        e59ff014         ldr        pc,         ; 0x20
       8:        e59ff014         ldr        pc,         ; 0x24
       c:        e59ff014         ldr        pc,         ; 0x28

ccaaatt 发表于 2009-11-24 11:38

arm-gp2x-linux-objdump

arm-gp2x-linux-objdump-b binary -m armv5te -Du-boot.bin|head

u-boot.bin:   file format binary

Disassembly of section .data:

00000000 <.data>:
       0:        ea000012         b        0x50
       4:        e59ff014         ldr        pc,         ; 0x20
       8:        e59ff014         ldr        pc,         ; 0x24
       c:        e59ff014         ldr        pc,         ; 0x28
页: [1] 2
查看完整版本: linux下的arm反汇编