Raw binaries not usable

Problem description

  • What I was trying to achieve:
    I tried to load a raw binary I am already reversing in Ghidra and I was unable to do anything with it.

  • What I expected to happen:
    At a minimum, I was expecting rev.ng would let me specify load address, architecture type, etc so I can get going to some degrees.

  • What went wrong:
    No options to describe a raw binary for analysis.

  • Project URL:

\revng-cloud\74c259bf-8aa3-40e5-8311-6c51c8fc4c3b

Steps to reproduce the problem

  1. Create a new project using this program
  2. Upload a raw binary (e.g. a dump of a Cortex M flash file that usually starts at 0x0800xxxx)
  3. Observe that no options are available to add information to the binary to get it decompiled or disassembled.

Hi dualtachyon and thanks for reporting this.

Yeah, a this stage the UI is not suited for binaries that need custom loading logic.

We’ll take a look at the crash, but at this stage the best thing you can do is load the raw binary and then manually make changes to the model (model.yml) to provide loading instructions (similar to what’s explained here) and then run the analyses again (currently not possible).

We’ll come up with a fix for the latter problem.
Later on, we’ll also need a proper UI for the loading.

In the meantime, you could make this work from the CLI. Let me know if you’d like to be guided on this route.

We’ll look into the crash. As for the UI part of the problem, this is going to be addressed in the roadmap item #859.