Hacker News new | ask | show | jobs
by euazOn 834 days ago
Im curious, since it seems to be mostly about walking back the one-way-street of C++ to assembly, what’s stopping us from training a ML model to help with decompilation by figuring out patterns in the compilation process? (there has to be a reason, otherwise someone would have done it already)
2 comments

I just tried with Claude Opus.

1. Write hello.cpp

2. Compile

3. Disassemble to asm with objdump -d

4. Give asm to Claude and ask it to write the C++ code that would result in that asm

5. Got back hello world in c++

So, it seems you might not need a specially trained model.

Original:

#include <iostream>

int main() { std::cout << "Hello, World!" << std::endl; return 0; }

Reproduced:

#include <iostream>

int main() { std::cout << "Hello, World!" << std::endl; return 0; }

asm: https://pastebin.com/SswUSh0u

* https://imgur.com/U1wbb0d

The answer is that people have done it, ML guided decompilation is an active area.