3 ms·
I once wrote a keygen for AI War, an indie RTS game by Arcen Games. The game was written in C#, so I decompiled it and found the function that checked the keys.
by aftbit 4y ago
I once wrote a keygen for AI War, an indie RTS game by Arcen Games. The game was written in C#, so I decompiled it and found the function that checked the keys. It used some kind of PRNG, maybe a Mersenne twister, but customized a bit. Rather than reverse engineer the whole thing, I loaded the "buildKeyFromPrefix" function right out of the exe (like it was a DLL), then built a WinForms wrapper that would show a valid key for each of the expansions. It used a predictable incrementing integer ID for each expansion, so I even included a few future ones.
I never shared this beyond my personal friend group. We went on to play (cumulatively) probably two thousand hours of AI War using this crack. Once I got out of college and got some income, I bought 4 copies to make up for it. Sorry Arcen!