Reverse Engineering is easier than ever - And I want you to try it
-
So, I gave up on CSE a long time ago though I studied it at Uni. But one thing that always fascinated me was reverse engineering. The ability to trace functions from disassembled, decompiled code. And now, that interest has been reignited. I stumbled upon https://github.com/morluto/rea - This is a monstrously good piece of programming which runs agents to disassemble and decompile code.
Now, you know the obsessive type I am who can stay on one topic for months and years. I also have strong feelings about IP. However, I realised something. We care for the IP of billion-dollar corps while those corps care little to nothing for us. Getty Images took over the oeuvre of Carol Highsmith's wonderful collection AND then charged people for using it, when Carol had already released those images under public license. This is just one of many such examples. Adobe AI almost 100% runs agents over customer data. So I decided that I want to save one of my favourite pieces of software from oblivion. I've already taken the high road and done a clean-room RE of Bezigon. Well, my colleague did it. I helped. And it works. Byte-for-byte. But I wanted to see how good REA is.
It is phenomenally good. It is extremely easy to set up too. All you need is to set up an MCP connection on your AI desktop app. That's it. I won't post it here - but I have the reverse engineered code too for Bezigon from REA. And let me tell you - ours is better. More elegant. Simpler. Clearer.
The bottom line is this: You should try your hand at this. Not to scavenge and steal, but to see how others do it and then do it better and simpler. The world is your oyster. Next up is Find and Replace function. I've already mapped it out completely from screenshots anyway. And it does not require maths. Just a series of conditions.
I will provide you my clean room code soon under MIT. You don't have to implement it. You just need to see how it works and you probably can do it miles better. Because, you know, I am just a designer. You're the engineer!

-
@Daniel I will avoid reverse engineering in general.
-
@VectorStyler: It is always best to take the high road. Agreed. And this is not a call to sail the high seas. At all. If it came across like that, my apologies.
I am deep in the weeds of conversations with techies who are shitting bricks about their world collapsing around them because of the monster they unleashed. But the toothpaste is already out of the tube. And I just wanted to taste it and see it.
A less principled person is almost certainly doing this, is my point. And it tells me how that whole ArtCraft apps came into the market so quickly. They were throwing out apps like beads in a Brazilian Carnaval.
Decades of engineering across image processing, vector graphics, non-linear video editing, desktop publishing, CAD, and spreadsheet calculation engines within a single month
How's that possible? Not even AI can do it on its own. And the guy basically bragged that he one-shotted PS on Claude. Now you know how!
He's almost certain to get sued because from what I hear Adobe lawyers are looking extremely closely at the code. But lets say they manage to shut him down. It solves nothing. They're going to face this problem forever until something fundamentally changes in how AI is used. And that would be a blow to Adobe's own profit margins. So they're damned if they do and damned if they don't.
But this raises an extremely important question for Indie devs like you. It is going to be a slaughterhouse going forward. Human beings cannot keep up with this pace.
My post is to call your attention to this phenomenon. I am certain you're already aware of it, too. But just the fact that a man who has entirely forgotten how to program can sit and down and unravel a 30-year old piece of thoroughly obfuscated binary code in just 2 hours is... what's the word... dystopian? Promethean?
I just invite your thoughts.
-
Does REA use open or closed source AI models? I think the closed source models will come with restrictions soon, to prevent proprietary software from getting reverse-engineered
-
@gotanidea It's open source. And no I don't think this is going to change. At all. The problem of course is there are local models which do exactly this. You don't even need internet to run REA. And its already the most popular repo on Github.
-
@Daniel If reverse-engineering can't be stopped for locally installed software, I think developers will use streaming service as Google Stadia was or make a custom Virtual Machine (VM) to run their software with custom bytecode.
Instead of the software logic running on the user's CPU, the code runs on a virtual CPU and is translated via custom instruction set. When a user tries to decompile the software, he or she will get a bunch of stuff that doesn’t map to any known language or dataset. The hacker might not be able to read it, because he or she will get encrypted bytecode, custom instruction sets, no readable logic, no high-level structure, no variable or function names, no control flow graph, etc.
It would be interesting to hear the opinions of software developers such as @vectorstyler about these methods
-
Decompiling is old-fashioned—that was before AI.
Nowadays, AI just needs to "observe" how a piece of software behaves,
and then it simply mimics that behavior.There are a few videos on YouTube that explain this.
"Sarcasm mode: ON"
What a fantastic time we live in! First, AI gets its hands on images, text,
and videos—only to sell them back to the user as the "latest thing,"
letting them believe they’re creating "art" themselves.
Now, it’s software’s turn.Maybe it’s still funny when it happens to Adobe—but what if your favorite software doesn’t survive?
Who would even want to develop software anymore if it can just be copied?
Oh, right—I get it: we’ll all just be able to do our own programming, won't we?
"Sarcasm mode: OFF"Sorry, I just had to get that off my chest.
-
@Subpath Decompilation existed before AI hype, but only exceptional hackers could manually decompile advanced proprietary software like Adobe's and Autodesk's. Nowadays, mediocre programmer can use REA and AI to recreate closed source software.
As for who would even want to develop software if it can just be copied, perhaps one of the two methods I mentioned above can be used to prevent the AI reverse engineering. If it works, software development business would survive