Results 1 to 8 of 8

Thread: what language should i learn?

  1. #1

    Question what language should i learn?

    hi. i'm a real noob in reversing, i've just started
    (but maybe i do ok for a 14 year old)
    what language should i learn first? i can patch most easy crackmes on, like the cd-check ones, but i think
    i should learn a language first (c++, c, delphi)
    could anyone please point me to the best one to start with??

  2. #2

    As Above

    Visual Delphi ++ Enterprise Version with CORBA and ADO/DAO MFD Classes.


    ...Sorry kid, was feeling a bit frisky. :P

    Why don't you learn Assembly? You could:-

    1. Start perusing the Intel Manuals.

    2. Download the MASM software package by Hutch (even TASM, if you're particularly adventurous)

    3. Start off on the Windows Assembly tuts by Iczelion

    4. Use a small programming language (Turbo C/C++ would do) to write programs then immediately disassembly them using IDA (or any of your favourite tool). Learning this relation between what you have written and how it appears in assembly is worth the learning curve.

    5. Anything else, just post on this board. Unless it's a blatant crack request, everyone will pitch in.

    Don't give up.

    And above all...

    ..Have Phun!!
    Last edited by Aimless; February 17th, 2012 at 01:29.
    Blame Microsoft, get l337 !!

  3. #3
    The question IF you should learn a programming language is easy to answer: YES!
    The question WHICH ONE isn't. While ASM is without a doubt the most useful language as far as reversing is concerned, it is imho not a language to start with. If you've never programmed before I'd recommend Python.
    That's why:

    It's easy to learn and you'll quickly get a grasp of the concepts behind programming. It's VERY well documented. You can literally get thousands of tutorials and free books on the web. While it is an easy to learn language on the one hand, it is a very powerful one on the other. You can easily access any .dll, extend Python with other languages and you can even do system-level coding with it. Plus it is a very useful language for reversing tasks. You can script IDA with it, there is an Olly derivate (ImmunityDebugger) with Python support and there are whole reversing-frameworks made with and for Python. But the most important aspect for a beginner might be, that you'll get a sense of achievement pretty fast.

    I flout Chuck Norris, Spongebob barbecues underwater!

  4. #4


    thank you very much, aimless and darkelf. i'm looking around the masm compiler now.

  5. #5
    If I want to learn C and bought a old book from 1988 or the 90's, is that still going to be just as valid as a book from 2012? I'm familiar with Perl and Python and such and those languages change often, but I'm not sure about C.

  6. #6
    @Sunk> The difference will reside in standards, in 89 (ANSI) C89 was used, now it's C11, but unless you're an integrist or have a very strict compiler, a while is still a while..
    To be honest that's something I don't like in Python: a program work with 2.6 and not anymore with 3..but it's surely the programmer's fault i guess.
    Last edited by Silkut; February 23rd, 2012 at 16:38. Reason: typo
    Please consider donating to help staying online (here is why).
    Any amount greatly appreciated. Thank you.

  7. #7
    As a newbie like you, I was asking myself the same question. I started off with Python on YouTube, because terminology like "strings" and so on looked too advanced for me and it had the structure (used in different contexts) as a college-native one and I hated it. I got used with several programs but I wanted more and not just the "cheap" thinking of "a string is a long stuff with words and stuff". I wanted to understand the terminology and think like a mathematician/programmer, or at least kind of.
    Basicly, I wanted to have a certain mentality and a grown up one, the one which gives you power by having knowledge and so on. Recently I bought "The Art of Assembly" book, after I watched several tuts of lena151 and decided I like Reversing, too bad that it focus on HLA (High Level Assembly) and not MASM/TASM, so I kind of hate it now (I've only read around 15 pages from it and quickly had some looks to several chapters). Also I bought "The C (ANSI) Programming Language" also known as K&R. It is a very good book about C, it is aiming for developing you a kind of mentality towards the logical use of the computer. This is the one that I recommend you, but first try to get used with Python to know a little bit of what programming includes, do not rely fully on it and give it a go to C and if you wish, the book I mentioned. It will aid you very much in developing a "straight" mentality. It is for open minds and educating them.

    I am curious what somebody else might say about my post, so people that are very good and not a newbie in me (only coded very few exercises and few projects in C and Python). Please do not hesitate to correct me or give me good advices also to the creator of this thread, though his young.

    P.S.: Sorry for "1 month" reply. I know it is kind of too late, but I want to know the opinions of others that coded and did a GOOD JOB in C and so on.
    I promise that I have read the FAQ and tried to use the Search to answer my question.

  8. #8
    I would say Visual C++ would be one of the most practical languages to learn or C# if you'd prefer a simpler learning curve. Learning a little assembler is a great way to understand how the computer really works at a logical level and critical to reversing. One of the first things I learned was simple BIOS calls from DOS via assembler.
    I promise that I have read the FAQ and tried to use the Search to answer my question.

Similar Threads

  1. language tool
    By w_a_r_1 in forum The Newbie Forum
    Replies: 1
    Last Post: February 16th, 2011, 13:49
  2. What language?
    By malikah in forum The Newbie Forum
    Replies: 4
    Last Post: July 17th, 2008, 11:13
  3. ASM language....
    By Code^Angler in forum The Newbie Forum
    Replies: 2
    Last Post: March 13th, 2004, 09:49
  4. language packs?
    By kerk in forum Plugins (General)
    Replies: 2
    Last Post: January 7th, 2004, 13:59
  5. Great Links on ASM language!
    By Ajnabi in forum Malware Analysis and Unpacking Forum
    Replies: 1
    Last Post: May 28th, 2002, 22:14

Tags for this Thread


Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts