curriculum
One of the most common questions posed on pages such as this one (aside from "where do I get program xxxx?") is "How do I learn to crack programs?" To this end the following "cracking curriculum" has been prepared, linking where possible only to files in HTML format. There should be enough internet-available coverage of topics to allow the aspirant to learn the intricacies of this trade without purchasing a single text or piece of software. Beginners may find the need to assemble a toolkit as well.


Apprentice

Subjects:

  • Beginning Assembly Programming
  • Beginning C++ Programming
  • Introductory Windows Programming
  • Removing Software Protections (Overview)

    Recommended Readings:

  • Art of Assembly
  • C Intro
  • C Tutorial
  • C++: How to Program, by Deitel and Deitel, Prentice Hall
  • C++ Tutorial
  • Debugger Cracking 101
  • +ORC Lessons 1, 2, 3.1, 8.1, and 8.2
  • Revolutionary Guide to Assembly Language, Wrox Press
  • Win32 Cracking
  • Win32 Programming


    Journeyman

    Subjects:

  • Advanced Assembly Language Programming
  • Operating Systems Fundamentals
  • Reverse Engineering I

    Recommended Readings:

  • Advice For Protectionists
  • Creating Key Generators
  • Master Class Assembly Language, Wrox Press
  • +ORC Lessons 3.2, 4.1, 4.2, 9.1, 9.2, and 9.3
  • PE File Format
  • Programming Tips: Parameters
  • Programming Tips: Memory Diagram
  • Programming Tips: Pointers
  • Unauthorized Windows 95, by Andrew Schulman, IDG Books
  • Undocumented Windows, by Andrew Schulman, Addison Wesley
  • Win16 Disassembly
  • Win32 Disassembly
  • Windows Assembly Language/Systems Programming, by Barry Kauler, R&D Books
  • Writing Game Trainers


    Adept

    Subjects:

  • Advanced Cracking
  • Cryptography
  • Language Specifics
  • OS Internals
  • Reverse Engineering II
  • Tools: Faults and Weaknesses

    Recommended Readings:

  • Anti-Debugging (Page)
  • C++ Builder Programming
  • Basic Cryptography
  • Delphi Cracking
  • Delphi Programming
  • Fooling Disassemblers
  • IDA Cracking 1 and 2
  • MFC Programming
  • Object Oriented Cracking
  • +ORC Lessons 5.1 and 6.1
  • Pascal Programming
  • Reverse Compilation Techniques
  • Self-Modifying Targets
  • Soft-Ice Weaknesses
  • VB Cracking (supplement)
  • VB Program Structure
  • VB Programming
  • Windows 95 System Programming Secrets, by Matt Pietrek, IDG Press


    Magus

    Subjects:

  • Adding Target Functionality
  • Compiler Differences
  • Multi-OS Cracking

    Recommended Readings:

  • Available Compilers
  • Crippled Program Repair
  • Extending IDA
  • Linux Cracking
  • +ORC Lessons A, C.3, and C.1
  • Unix Internals, by Steve Pate, Addison Wesley
  • X-Windows Cracking


    From here the student is released into independent study, commonly into specialty areas such as virii programming, cryptography, and disassembler or VxD writing. Note that this is by no means a comprehensive list of source material, but rather a selection of recommended (and preferred) resources which the enthusiast may utilize as a starting point for the varying branches of their cracking education.


  • AnonyMail
    AnonyWeb
    Assembly
    Disassembly
    Forum
    NetInfo
    Projects
    Registry
    Sites[links.html - MISSING]
    Soft-Ice
    Tales
    Tools
    Web