Have you ever wanted to learn how a program protects itself from being copied? With the right tools, you can examine the inner workings of a program and experiment with reverse-engineering. You'll need have a firm grasp on assembly programming and hex code to get started, and a disassembler app. Once you're familiar with the code, you can modify the DLLs so their corresponding programs never have to be registered or purchased.

Steps

  1. 1
    Learn Assembly programming and hex code manipulation. If you want to crack most software, you will need to have a good grasp on assembly, which is a low-level programming language.[1] Assembly is derived from machine language, and each assembly language is specific to the type of computer you are using. Most assembly language is expressed through binary and hexadecimal.
  2. 2
    Install a disassembler. To examine and modify DLLs, you will need several different tools, including a disassembler. IDA Pro is a great option, as it's a disassembler and debugger. Fortunately there's a free version available from https://www.hex-rays.com/products/ida/support/download_freeware, although it's much more limited in functionality than the Pro version. You can also try dotPeek, which is a DLL-supporting decompiler that decompiles .NET assembly code to C#.[2] Another option is OllyDBG, which lets you open DLL files for free.
    Advertisement
  3. 3
    Open the application you want to crack in your disassembler. The process is a little different depending on which disassembler you're using. This will show you what DLL files are being loaded by the program. Use the debugger to examine which functions are being called from the DLL.[3]
  4. 4
    Find the counter function. Many programs use a timer for copy protection, and when the timer runs out, the user is no longer able to access the program. The goal is to find this counter code, and then bypass it.
    • If the program you are cracking uses a different form of protection, you will need to look for that instead.
  5. 5
    Set a break-point on the counter. Once you've isolated the counter function, set your disassembler to break when it is encountered. This will allow you to look at the exact code that is occurring when the counter function is called.
  6. 6
    Change the counter code. Now that you've found the code for the counter function, you can change the code so that the counter never reaches the point where it shuts you out of the program. For example, you could make it so that the counter cannot count up to the break limit or you can bypass the counter by jumping over it.'
  7. 7
    Recompile your newly-cracked software. After disassembling and editing, you'll need to compile the new version of the program so your changes propagate to the DLL files and other dependencies.[4]
  8. Advertisement

Community Q&A

  • Question
    Can I bypass the activation key on Trend Control's System Engineering Tool 7.02?
    Community Answer
    Community Answer
    Theoretically, any activation can be bypassed. If you know assembly, I suggest you search for an input value being compared against a complex algorithm and bypass that block of code.
  • Question
    How can I learn assembly programming?
    Community Answer
    Community Answer
    Tutorialspoint has assembly programming in it. It has a link to Coding Ground which has an assembly IDE on it so you can practice assembly without installing software on your computer. It's a great site, but you can utilize the internet too! Look up tutorials to help you learn. There are also some great tips in How to Start Programming in Assembly.
  • Question
    How can I crack any software easily?
    Community Answer
    Community Answer
    YouTube tutorials can help develop these skills. But be careful for viruses!
Advertisement

Warnings

Advertisement

About This Article

Nicole Levine, MFA
Written by:
wikiHow Technology Writer
This article was co-authored by wikiHow staff writer, Nicole Levine, MFA. Nicole Levine is a Technology Writer and Editor for wikiHow. She has more than 20 years of experience creating technical documentation and leading support teams at major web hosting and software companies. Nicole also holds an MFA in Creative Writing from Portland State University and teaches composition, fiction-writing, and zine-making at various institutions. This article has been viewed 792,094 times.
How helpful is this?
Co-authors: 60
Updated: February 27, 2023
Views: 792,094
Categories: Software
Article SummaryX

1. Open the application in a disassembler.
2. Find the counter function you want to change.
3. Set a break-point on the counter.
4. Change the counter code.
5. Recompile the software.

Did this summary help you?
Advertisement