hi dudes :)
today , i will teach u how to crack a vb crackme , and
how to keygen it !!
why ? coz , there isn't lot of vb keygens tutorial , do i
wanted to make one !!
where to found it : http://surf.to/crackmes
very good site with lot of crackmes !!
Protections : - anti smartcheck
- serial / name
1)anti smartcheck (SC):
there is some way to detect if smart check is used , so i
will give u
the most used !
the prog , looks at the title bare of SC, and if it
founds :
"NuMega SmartCheck" then the prog close itself
!! shit !
the second way is too look at the SC window ID : NMSCWM50
and if it found it , then it close itself.
how to bypass that ?
if u want to crack most of vb app with anti smart check ,
it is better
to patch ur SC executable. use an hexeditor and look for
NuMega SmartCheck
, then change it with what u want !!
but for patch the NMSCWM50 string , it is more hard , coz
u don't see
it with hexeditor. you can use the prog : UPK by
CyberBlade a friend!
but i don't have used this app to do that , i will teach
u how i did
to run the crackme with SC!!
firt, i have found that it is the second protection who
is used in this
crackme : it looks at : NMSCWM50
so , with soft ice , u have to set a BPX on a API who
breaks just
before the message box who say , you are not registered
blablabla ...
then , you have to load the crackme into SC and run it!!!
it will break in Sice , and the now do a research like
this :
s 0 l ffffffff "NMSC" (i haven't searched at
NMSCWM50 to be sure to
found something).type : s untill you haven't find
NMSCWM50.
the first time you will see that , overwritte it in
memory by 0's
for exemple. so when the prog looked for NMSCWM50, it
just found
00000000.hehe , do the crackme continu to run and we are
now in SC!!
2)how to reg it
so , click on register and enter your name and a serial
like 123456
and the click on "check it".You will see :
Wrong Try again at place of
your name , so that wasn't the good one =)!!
ok, exit the crackme and now go in SC.
First save your project , with File/save as...
coz , i think you don't want to do the first part of this
tut many times!
you will see command5_click , double click on it to look
in this
interesting thing :)
now , go down with SC , to look for your name, you will
see :
--------------Start of SC
cut--------------------------------
Mid(varian:byReF String:"ACiD
BuRN",long1,VARIANT:Integer:1)
Asc(string:"A")returns Integer:65
Trim(VARIANT:Integer:34)
Mid(varian:byReF String:"ACiD
BuRN",long2,VARIANT:Integer:1)
Asc(string:"C")returns Integer:67
Trim(VARIANT:Integer:32)
Mid(varian:byReF String:"ACiD
BuRN",long3,VARIANT:Integer:1)
Asc(string:"i")returns Integer:105
Trim(VARIANT:Integer:10)
Mid(varian:byReF String:"ACiD
BuRN",long4,VARIANT:Integer:1)
Asc(string:"D")returns Integer:68
Trim(VARIANT:Integer:39)
Mid(varian:byReF String:"ACiD
BuRN",long5,VARIANT:Integer:1)
Asc(string:" ")returns Integer:32
Trim(VARIANT:Integer:67)
Mid(varian:byReF String:"ACiD
BuRN",long6,VARIANT:Integer:1)
Asc(string:"B")returns Integer:66
Trim(VARIANT:Integer:33)
Mid(varian:byReF String:"ACiD
BuRN",long7,VARIANT:Integer:1)
Asc(string:"u")returns Integer:117
Trim(VARIANT:Integer:22)
Mid(varian:byReF String:"ACiD
BuRN",long8,VARIANT:Integer:1)
Asc(string:"R")returns Integer:82
Trim(VARIANT:Integer:49)
Mid(varian:byReF String:"ACiD
BuRN",long8,VARIANT:Integer:1)
Asc(string:"N")returns Integer:78
Trim(VARIANT:Integer:45)
------------------End of Smartcheck
cut----------------------
Now , look at this code !!
did you find something cool ?
look :
Mid(varian:byReF String:"ACiD
BuRN",long1,VARIANT:Integer:1) <= 1st char
Asc(string:"A")returns Integer:65 <=== Ascii
value in decimal
Trim(VARIANT:Integer:34) <=== what is this value ??
why not tring all this value as serial ?
so , take all value for each letter.You will found :
343210396733224945
so , now lets try it !!!
name : ACiD BuRN
serial : 343210396733224945
click on check it and it works !!!!!!! cool we have
cracked it !!
now , i will ecplain you how to make a keygen !!
3)Keygen it
so , how did it make this fucking value ?!!!
hehe!! let me see !
why not a xor operation !!!
look :
Asc(string:"A")returns Integer:65 <== 1st
ascii value
Trim(VARIANT:Integer:34) <== 1st good key
Asc(string:"C")returns Integer:67 <== 2nd
ascii value
Trim(VARIANT:Integer:32) <== 2nd good key
.....
if we do : 65 XoR 34 (do this with windows scientific
calcul)
we found : 99
hehe !!
if we found the same value with : 67 XoR 32 , we have
found how to
make a serial!!
let see !
67 XoR 32 = 99 !
cool !! we made it !!
coz if we do : 67 XoR 99 = 32 =) the good value of the
key
so , to make a good serial for your name, you have to
take the ascii
value in decimal and xor it to 99.save this value and and
add near
it the next result for each letters of your name !!
how to code thaT?
i will give source in VB5.
4)source of the Keygen:
--------------Start of the source-------------
Private Sub Command1_Click()
For i = 1 To Len(Text1.Text)
code = Asc(Mid$(Text1.Text, i, 1)) Xor 99
Text2.Text = Text2.Text & code
Next i
End Sub
----------------End of the source-------------
to test it , make a new project , with a button and 2
textbox.
double click on the button , and past this code.
hehe !!
Job done !!
Crackme Cracked!! =)
i hope you have learn something with this tut , and sorry
for my bad english.
you can mail me at : Acid2600@hotmail.com
cya laterz !!
ACiD
BuRN [ReFleXZ'99]
|