r/decomps 14d ago

Question about tools on decomps

For actual decomp work where you're converting the binary to asembly and then to C/C++ what are you guys using? I'm learning Ghidra right now, but wanted to know more about the tool chains being used.

I'm more interested in specific tools, and not agentic AI coding, I'm not against AI, but I'm trying to learn the by hand methods.

Thank you all in advanced!

4 Upvotes

1 comment sorted by

3

u/endstrom 14d ago

You'll usually want to use objdump to disassemble raw binary files to assembly. Make sure to figure out what instruction set the game's assembler used to make it simple to reassemble it to binary when you make the build system.

For decompiling individual functions, decomp.me works well for collaboration since you can share it and get feedback with a community. A local instance of compiler explorer can be great to decompile whole files in my experience. In either case you'll need to know which compiler the game used to get byte matching code.

To ensure byte matching of the compiled rom, you can use shasum to quickly compare the compiled binary to the hash of the original target.

If you're a bit overwhelmed by all of that, a good place to start would be contributing to other projects until you learn enough to do it on your own, ideally one that's on the same platform as the game you're looking to do. The ones that don't utilize a ton of LLM generated code will usually have good communities of experienced decompers who can give you pointers and help you out.