Published: April 28, 2024
8
37
257

Recently, many people have been asking me on how to get started with their reverse engineering journey. So I will try to share my path and what helped me on the way 🧵

A really good way to gain reverse engineering experience is to play CTFs. They can help you get familiar with tools and concept, but also strengthen your analysis skills.

However, in the beginning, I often found myself quickly losing motivation when reverse engineering. Staying motivated is a key aspect. Not giving up, no matter how hard things can get, is essential.

Modding games I liked is what helped me overcome this. Having a personal interest made it easier to stay motivated. Especially older games tend to be easier to reverse engineer, but at the same time invoke feelings of nostalgia, which makes them a good starting point.

For me it was Call of Duty: Modern Warfare 2. I set myself small goals. At the beginning I wanted to change strings in the game, so I spent my time analyzing how the game's localization system works.

Image in tweet by Maurice Heumann

It might seem dumb, but it helped getting familiar with tools like IDA Pro. At the same time, aside from reverse engineering, it required me to write code, which strengthened my programming skills.

Looking at existing projects, that focused on reversing the same game, was a huge help and is always an excellent way to get started.

Trying to understand how existing project works as well replicating and extending them, can be a great way to quickly get a feeling of success to not lose motivation. Just don't simply copy their work, try to understand it!

Modern Warfare 2 had a way to make text colored through special codes. Another goal I had set myself was to change the colors of those codes inside the rendering engine. So I continuously analyzed until I eventually managed to figure out how things worked:

Image in tweet by Maurice Heumann
Image in tweet by Maurice Heumann

Setting myself small, achievable goals, really changed everything. Over time goals got harder, some maybe even too hard, so I had to set them aside. However, I never forgot them. As soon as I felt ready, I tackled them, again and again, until I had the skills to achieve them.

One of those long standing goals was to add new maps to the game. It required analyzing more and more of how the game deals with assets. It also resulted in my coding skills improving even more. With enough time, it became a reality.

Image in tweet by Maurice Heumann

To sum things up: Try to mod and reverse engineer old games you like. Search for existing modding projects. Understand them and even contribute to them. Set yourself goals and try to improve your skills until you can eventually achieve them 😊

@momo5502 What were you doing before you got into RE?

@realbuuu mainly playing those games :D but also doing a little web dev stuff here and there

@momo5502 Was you like me @momo5502 I started off with learning game mods IE scripts, I don’t have any degree or study, all self learning…. I guess you have degrees in computer engineering?

@CoNNoUK I do have a degree by now, but I started modding games way before that. I would even argue that having a degree barely helps. At least the things I learned wouldn't have changed much.

@momo5502 you’re a huge inspiration!

@momo5502 Superb information :D

@momo5502 i really needed this post rn, thanks!ā¤ļø

@momo5502 Fraud.

Share this thread

Read on Twitter

View original thread

Navigate thread

1/20