Hi All! I'm Suby The Cracker and In This Tutorial I'll Explain you How To Crack Any type of registration protection. First of all.Use Softice cause i don't like Live Approch. Ok 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 approching with a registration routine we must breakpoint on api(windows functions) used to read Your name and Your Sn. 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 condictional jumps have a look at them......btw step until you find a call that prompt you something like a messagebox or something else that prompt you the "You entered a Wrong code", well before that call you noticed a condictional jump that jumped on that call or dindn'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 fucked 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 easly there are 2 ways 1) trace into the call BEFORE our important condictional jump and try to understand the code, in order to find the real compare instrucion that often is kept in this call not out....if you find out our real compare instruction,and change the below condictional 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 easyer for beginners You must trace into the call before our important codictional jmp,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,open,about,save, and when softice pops up press "f12" in order to get out that call and look for a near condictional jump and try to inverse it and look if the program looks like regged, you must sign up all these condictional jump and inverse it,and your program is cracked! As soon as i can i'll write others tutorials if you'll ask me to do! Suby the Cracker Suby@altavista.net