I am aware of existing decompilation tools like Ghidra which give you close-to-original pseudocode.

But I think reverse engineering might be a place for ML to shine… After all, you got an empty source file, and a target binary to reach. You can automatically check everything by doing test compilations and comparing with the target binary.

ML is really good for pattern recognition, which is a huge part of reverse engineering. Though at the same time, I experienced firsthand how bad LLMs are in assembly since they don’t “think” or have a hard time tracking state machines.

I am aware that a big part of reverse engineering is not getting something that compiles, but rather, figuring out variable names, function definitions and how a piece of software works in general. But I think, with human help, it could help decompilations drastically. What do you think?

  • thingsiplay@lemmy.ml
    link
    fedilink
    arrow-up
    3
    arrow-down
    1
    ·
    21 hours ago

    I think for the long term success, they need to write better readable code. But this only comes after the legal part is solved, in example how copyright is handled if an Ai is involved.