Welcome!

Join our community of MMO enthusiasts and game developers! By registering, you'll gain access to discussions on the latest developments in MMO server files and collaborate with like-minded individuals. Join us today and unlock the potential of MMO server development!

Join Today!

Need Intro

Junior Spellweaver
Joined
Jul 3, 2011
Messages
198
Reaction score
2
I am new to reverse engineering, can anybody post some guideline regarding how to perform reverse engineering taks.

thank you.
 
Junior Spellweaver
Joined
Oct 27, 2008
Messages
165
Reaction score
89
Then you should start learning assembly language, but assembly language is hard to learn, I recommend before starting learning it you should learn at least one high level programming language(I suggest C/C++)

As a good assembly language book is Art of assembly language, read DOS 16-bit edition:


Another assembly book is this:


You should also have a copy of windows API help file a C Style(for refrence if you want to inject or understand what a API function does)


You can also find windows C style API references on MSDN.

A Linux alternative for API is the Linux System call table


For Linux the syntax is AT&T instead of using Intel syntax(if you know Intel syntax At&T syntax will be easy to understand), the syntax can be set from the debugger

Also you could try simple crack me tutorials, you can look on the net for them, but for unknown binaries(binaries that you don't know the source code, not built by you), I suggest doing them in a sandbox environment like virtual machines or containers.
 
Last edited:
Junior Spellweaver
Joined
Oct 27, 2008
Messages
165
Reaction score
89
Oh yeah, if you end up writing patches(either by an external program or by an injected module), this site gives a good list of OP codes for each instruction and what type of parameters it requires.

This also is helpful if you're doing it old-school, using a disassembler + hex editor.

 
Last edited:
Junior Spellweaver
Joined
Dec 15, 2010
Messages
179
Reaction score
247
The easiest way i've found to get started on learning reverse engineering is to write very simple C applications and try to change what they do.

For starters, write a hello world app. Pull up a reference of assembly instructions on the side, and read through what it does. Try changing the string output. Maybe make the app print yet another string.

PS. read up on calling conventions and the stack, it's the most important piece to understand for it all to make sense :)
 
  • Like
Reactions: nck
Back
Top