Search code examples
winapireverse-engineeringdecompiling

Starting out with reversing


I am just starting to learn reverse engineering..So I am referring the reversing secrets book and binary auditor package. Besides this, can anyone tell me what should I read or refer to if I want to perfect my conversion of assembly into c/c++ (decompilation), even though I only know C and not cpp. I also want to do WinAPI; any reading material besides Forger's tut and also that are short..

Thanks in advance


Solution

  • About the reverse engineering: I wan't discourage you by trying to do that, but there are few reasons why you should consider:

    • Maybe illegal. Most of the programs which want to share their source codes declare this openly, thence there is a great number of open source - GPL programs around. Commercial, closed-source programs usally won't allow such things as decompilation-disassemblation, or any kind of reverse engineering. So be careful.
    • Decompilation is not a trivial issue, as it could seems to be. Reversing a Java bytecode is not so difficult. But when you came across reversing an exe, the things change. Decomplilers such as the IDA pro require an strong user experience and a good amount of "patience" over all. Maybe you will succeed to reverse a simple executable code, but with a "fatter" program you'll get in trouble more likely.
    • You have to spend lots of time in trying to reverse an executable program.

    About the C and Winapi material: I've found a good book the Programming Windows, of Charles Petzold (MS Press), but also the Windows via C-C++ by Jeffrey Richter and Christophe Nasarre, and Windows System Programming, by Johnson M. Hart. About free links on the web, i could suggest to you:

    Wikibooks Windows programming

    This short Win32 API tutorial

    Aleax.it tutorial (in Italian)

    The MSDN reference, of course.

    Hope it helps!