zlacker

[parent] [thread] 2 comments
1. simonw+(OP)[view] [source] 2025-12-06 17:06:22
For anyone else who was initially confused by this, useful context is that Snowboard Kids 2 is an N64 game.

I also wasn't familiar with this terminology:

> You hand it a function; it tries to match it, and you move on.

In decompilation "matching" means you found a function block in the machine code, wrote some C, then confirmed that the C produces the exact same binary machine code once it is compiled.

The author's previous post explains this all in a bunch more detail: https://blog.chrislewis.au/using-coding-agents-to-decompile-...

replies(2): >>elitan+T5 >>your_s+YQ
2. elitan+T5[view] [source] 2025-12-06 17:54:03
>>simonw+(OP)
helpful
3. your_s+YQ[view] [source] 2025-12-07 00:37:20
>>simonw+(OP)
I'd like to see this given a bit more structure, honestly. What occurs to me is constraining the grammar for LLM inference to ensure valid C89 (or close-to, as much can be checked without compilation), then perhaps experimentally switching to a permuter once/if a certain threshold is reached for accuracy of the decompiled function.

Eventually some or many of these attempts would, of course, fail, and require programmer intervention, but I suspect we might be surprised how far it could go.

[go to top]