The binary is compiled with thumb mode. However, radare2 should disassemble the binary with Thumb mode
Actual behavior
Many bytes are disassembled as ARM mode but the actual mode should be thumb. For example, address 0x6d2a6, 0x698b2, 0xa45f4
Many inline data are not detected. For example, address "0x20dd8"
There are inconsistent between the command pd and pdj
Steps to reproduce the behavior
Please share the binary if it is shareable by drag and dropping it here in a zip archive
test_bin.zip
Use code markdown CODE to make your code visible
I use radare2 bin to load the binary. Then I use ahb 16 to set the mode at the entry point. Then I use aaa to conduct the analysis. After that I use pd(j) N @ addr to print out the disassembled bytes.
For example
Wrong Mode:
Expected behavior
The binary is compiled with thumb mode. However, radare2 should disassemble the binary with Thumb mode
Actual behavior
Many bytes are disassembled as ARM mode but the actual mode should be thumb. For example, address
0x6d2a6
,0x698b2
,0xa45f4
Many inline data are not detected. For example, address "0x20dd8"There are inconsistent between the command
pd
andpdj
Steps to reproduce the behavior
Please share the binary if it is shareable by drag and dropping it here in a zip archive test_bin.zip
Use code markdown
CODE
to make your code visibleI use
radare2 bin
to load the binary. Then I useahb 16
to set the mode at the entry point. Then I useaaa
to conduct the analysis. After that I usepd(j) N @ addr
to print out the disassembled bytes. For example Wrong Mode:Data to Code:
Inconsistent:
It is easy to see that the output is not right. The right mode should be thumb.