First of all.Use Softice cause i don’t like Live Approach.
Run Your target program and go on the registration dialog, then put in the dialog any name and any serial number but DON’T press OK
before press “control+d” to pops up softice and in softice sets some Break points…….for approaching with a registration routine we must breakpoint on API(windows functions) used to read Your name and Your Serial No.
They are
Getwindowtext
GetwindowtextA
Getdlgitemtext
GetdlgitemtextA
Hmemcpy (that’s not an API but it’s the best)
Well the “A” after the API means 32 bit so if your program is 32 bit
put the A if not don’t.Easy!
I always use only Hmemcpy cause it runs 99.9% of the times.
Well now exit from softice by pressing control+d and press ok, if you have set a working BPX softice will pops up.
Now start the real cracking…..
Press F12 until you can read on the bottom line of SoftIce the name of the file of the program you’re cracking….
then if before your location there’s a call ok, if not press again F12 until you find it.
Then you must step into the code…..(by pressing F10),if in your stepping you find some conditional jumps have a look at them……btw step until you find a call that prompt you
Something like a message box or something else that prompt you the “You entered a Wrong code”,
Well before that call you noticed a conditional jump that jumped on that call or didn’t jump
Over that call….if yes try to inverse the jump (change a jz into a jnz) or (a better way) change the value of the eip in order to make that jump to jump or not.
Doing this if you find the good jump the program must prompt you “Thank for Registering this worst program”,
Now the crack is near to the end…
Often cracking this way you will only prompt the “You Are Regged” but the program still continue to be unregged so in order to crack it 100% and easily there are 2 ways
1) trace into the call BEFORE our important conditional jump and try to understand the code, in order to find the real compare instruction that often is kept in this call not out….if you find out our real compare instruction, and change the below conditional jump in order to make it jump or not(it depends if it before jumped or not, do the reverse).
Ok now the program should be fully cracked!
2) This is a worse way than the first but it works! This way is easier for beginners
You must trace into the call before our important conditional jump, and then put a bpx in its first line, then press “x” and exit from softice and use the program in all its functions, create new, API open, about, save, and when softice pops up press “f12″ in order to get out that call and look for a near conditional jump and try to inverse it and look if the program looks like regged,
You must sign up all these conditional jump and inverse it, and your program is cracked!!!!!!
No comments:
Post a Comment