I have the ROM dump (.bin files) targeted for the MC68008 processor. Need to convert them into a high level source code. I have already found tools for disassmbling them into assembly code. The next step is converting them to C code. But I could not find any tool that works. I have already tried the following decompilers with no success: RecStudio, Boomerang, Decompiler 0.2.4, IDA Pro with Hex-Rays.
-
\$\begingroup\$ There's this Stack Exchange site dedicated to reverse engineering, in case you don't get an answer to your question here. \$\endgroup\$– AndrejaKoMay 23, 2013 at 9:31
1 Answer
I don't have tools to propose but I would like to share the following that may be useful to understand.
Tools should exist, but won't work if the software was written in assembly at the fist place. High level language decompilers usually recognize standard patterns in the assembly and are able to know that this part is a for loop, that part is a function call and this is a look-up table, etc. Then the (bad) C source code is generated based on this. I said "bad" because it is barely understandable: there is no meaningful variable names, no function names, magic numbers everywhere instead of #defines values, etc.
But if the program was initially written in assembly, there is no standard pattern to recognize (every programmer has its own style) and the decompiler won't be able to extract high level code.
The same could occur if the code was compiled with all sort of optimizations enabled.
-
1\$\begingroup\$ These tools are usually very picky when it comes to exact compiler version numbers (and indeed optimization flags). \$\endgroup\$– jippieMay 23, 2013 at 19:32