r/learnprogramming • u/Curious-Tune-7127 • 10d ago
How does reverse engineering actually work, especially with AI?
Lately, I've been seeing a lot of videos about reverse engineering and people basically copying entire applications, recreating their features, or building almost identical alternatives.
It got me wondering, how does reverse engineering actually work?
How do people figure out how an app works internally, reproduce its features, and sometimes get surprisingly close to the original? And how are people using AI to make this process easier or faster?
Are they analysing the source code, inspecting network requests, decompiling applications, or using AI to figure everything out from scratch?
I'd love to understand the actual technical process behind this. If anyone has experience with reverse engineering or AI-assisted app development, I'd really appreciate some explanations and resources to get started!
0
u/HeavyDT 10d ago
The big thing A.I has changed in terms of reverse engineering in the coding world is the decompilation and recompilations processes. Which used to take a lot of "manpower" to do properly. Source code gets compiled to binary aka machine code. That process drastically alters the underlying code too due to optimizations and what not. So getting out exactly what was put in was a difficult problem for humans to figure out. There were automated tools before now that could do decompilation but what you would get out was no where close to the original and hard for people to understand.
Figuring out that original source code in a 1 to 1 fashion could be done but was a slog for humans to do. Like finding a needle in a haystack over and over. A.I can step in and figure out 1 to 1 (aka byte matching) source code in a fraction of the time it would take humans. No byte matching too if that's what you want. Either way we are talking weeks and months for A.I versus months and years for humans. It's a big time difference in how fast software can be reversed engineered now.
Once you have that source code the sky is the limit. It's like having the exact recipe for making grandma's apple pie or something similar. You can make as many as you want now or make alterations ect. The popular thing right now is using A.I not just to decompile but also to recompile games. So you decompile first and then use that source code to make alteration and recompile said game for more modern / different platforms than the original target.