Comment on Why is it impossible to reverse-engineer closed source software?
Lemminary@lemmy.world 3 months agoI’ve used a decompiler to peek at the source code of an app written in Visual Basic I wanted to recreate as a browser addon. It was mostly successful but some variable and function names were messed up.
peopleproblems@lemmy.world 3 months ago
Variable names, class names, package structure, method names, etc. won’t normally be maintained in the disassembled code. They are meaningless to the CPU, and just a series of memory addresses. In cases where you have method names being mentioned, it’s likely a syscall, and it’s calling a method from an existing library. I’m not familiar with VB, but at least in .Net and .Net Framework, this would be something like the System.Collections.Generic providing the implementation for List<string> and when .Sort() is called, it makes the syscall to that compiled .dll.
Naich@lemmings.world 3 months ago
You could chuck it at an AI to reverse compile it into something readable.
peopleproblems@lemmy.world 3 months ago
Instead of just getting the down votes, I’ll explain why that wouldnt work.
Lastly, other comments have pointed out decompiled code is extremely expensive to analyze. The output from whatever we decompile would easily exceed the input limits for all existing LLMs.
Naich@lemmings.world 3 months ago
Thanks. I was thinking that you could have an AI “looking over the shoulder” of a compiler, seeing what comes out for the code going in to it. Basically training it to spot sequences in compiled code in order to guess the instructions that compiled into that code.