This was one of my very first exercises in reverse engineering video games. The game is Fallen Earth which is an older MMORPG that is currently free-to-play on Steam.

The game has a patcher which always runs first and once updated it will then initialize the game client. Ideally I want to be able to open the game client directly into the debugger rather than attach once it’s running. Trying to run the game client before running the patcher will generate an error and crash.

All I had to do was search for the string, go to its place in memory, and then find the right jump that could skip this error message. After finding the correct jump I put a breakpoint on it and switched the zero flag.

I landed on a login screen which I had never seen before, and it seems it hasn’t been used since 2013, cute! I’m now successfully bypassing the patcher and opening the client directly in the debugger.

Last modified: June 1, 2019