I am attempting to do some reverse-engineering of ARM binaries, with the ultimate goal of reverse-engineering GBA ROMs. Of course, GBA ROMs contain a mixture of code and data, so a standard disassembler that just converts the hexdump to equivalent ARMv4 assembly won't work because of the parts that correspond to data. So clearly disassembling GBA ROMs is a tough task. (Please correct me if I'm wrong on any of that - I'm very much still learning.)

My question is, do standard C programs compiled to ARMv4 with gcc on Ubuntu have the problem I explained above of producing a mixture of data and code in the binary? If so, what kinds of programs have this (all of them, or only some special cases?)

  • 1
    I guess the tooling for ELF files (an assumption, as you don't say!) and ARMv4 is generally better and more versatile. Basically what I mean is that more generic tools will work than for GBA. So in that sense it's perhaps a little easier. But tools are just one variable in the equation ...
    – 0xC0000022L
    Commented Jan 18, 2022 at 7:56


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Browse other questions tagged or ask your own question.