OpenWrt Forum Archive

Topic: MIPS disassembling

The content of this topic has been archived on 29 Apr 2018. There are no obvious gaps in this topic, but there may still be some posts missing at the end.

Hi,

I want to port a proprietary program to OpenWRT. As I don't have the sources, I wanted to reverse engineer it. However, I'm having some problems disassembling it.
No disassembler I tried does resolve the string references. Here is an example using IDA Pro:

.text:0043EAB4 addiu $t9, 0xE860

The same in ObjDump:

43eab4:       2739e860        addiu   t9,t9,-6048

0xE860 is a string reference, as can be seen here:

.rodata:44E860: .ascii "/dev/console"<0>

Does anyone know why the disassemblers don't resolve this automatically?

Regards,
f23

(Last edited by f23 on 29 Mar 2006, 10:41)

I have not found any disassembler that does that.  The latest Datarescue IDA Pro might do it but I'm not sure.  With MIPS generally a 32-bit address needs 2 instructions to load into a GPR.  That confuses most disassemblers.  I'd settle for one that understood data offsets from $gp but there are none I am aware of.

The discussion might have continued from here.