Why isn't decompilation a solved problem in the AI era?

There are thousands of pairs of source-executable pairs that could be used for training, and the compiler is a parameter that AI can easily identify and account for as a heavily weighted factor.

So why isn't there (or maybe there is and I don't know about it) an AI based decompiler that can take almost any machine code, and transform it into highly readable source code (complete with meaningful guesses for variable names and comments)? It seems like it should be even easier when the executable could be run and inspected at runtime by the AI model.

What is the state of the art with AI decompilation, and are there tools I can play with today?

4 points | by ferfumarma 17 hours ago

3 comments

  • MiroslavPokorny 9 hours ago
    Because the primary value of source code compared to the binary is not the actual translation of expressing the binary as text.

    The lost value can never be restored, aka comments, names (these could be lost if debug symbols are not included) etc.

    Its not terribly difficult to manually decompile, but it is slow. However the question of WHY this magic number or WHY is it doing that are lost because the comments and context are lost.

    Good source code has more of these WHY ANSWERS.

  • segmondy 16 hours ago
    It is.