
Resume the program again, and you will have successfully activated the program.Right-click the EAX and change it in hex value to 1, instead of 0.

This means that if it is replaced with anything other than null, it will run. Upon examination, we can see that the EAX is checking for a number that is not equal to a null value.

EAX is the return of a value, which means that a check is being performed here.

I will not be walking you through how to actually crack a legitimate program, because I can't just crack a program for demonstration, but the techniques applied to my examples should give you the foundation needed to create your own. In this Null Byte, let's go over how cracking could work in practice by looking at an example program (a program that serves no purpose other than for me to hack). This works because assembly allows you to speak directly to the processor and force a skip over the registration process. Using this, you can completely bypass the registration process by making it skip the application's key code verification process without using a valid key. This is mainly due to computer processes' ability to be completely manipulated by an assembly debugger. Even with today's most advanced methods of defeating piracy in place, it is still relatively easy to crack almost any program in the world. If you've ever wondered how software pirates can take software and crack it time and time again, even with security in place, this small series is for you.
