• Unfortunately, we have experienced significant hard drive damage that requires urgent maintenance and rebuilding. The forum will be a state of read only until we install our new drives and rebuild all the configurations needed. Please follow our Facebook page for updates, we will be back up shortly! (The forum could go offline at any given time due to the nature of the failed drives whilst awaiting the upgrades.) When you see an Incapsula error, you know we are in the process of migration.

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:
Art of Assembly Language Programming and HLA by Randall Hyde

Another assembly book is this:
http://www.plantation-productions.com/AssemblyLanguage/pcasm-book.pdf

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)
https://sourceforge.net/projects/win32-help-chm/

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

A Linux alternative for API is the Linux System call table
https://filippo.io/linux-syscall-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
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