ante0 Posted November 18, 2007 Posted November 18, 2007 My very first Keygenme made in delphi 7 (I know, I should learn some more ASM). Just make a keygen for it. Also, it's packed with UPX 2.03w but with nothing else, so unpacking should be easy Post keygen when you're done. KeyGenMe_byAnte0.rar
ChupaChu Posted November 18, 2007 Posted November 18, 2007 yes its easy..i hope i coded it correctly..BR, ChupaChu!ante_kgn_by_ChupaChu.zip
ante0 Posted November 18, 2007 Author Posted November 18, 2007 Hehe, It was my first attempt on making a licensed application. Could be good training for complete beginners though
IMPosTOR Posted November 19, 2007 Posted November 19, 2007 befor call check the serial lenght. must <= 10function IMPosTOR_keygen(serial : string):string;var EAX : integer;begin result := ''; EAX:= strtoint(serial); asm ADD EAX,EAX ADD EAX,$1B3 SHL EAX,$2 ADD EAX,$38 LEA ESI,DWORD PTR DS:[EAX+EAX*4] LEA ESI,DWORD PTR DS:[ESI+ESI*8] ADD ESI,$16F end; result :=inttostr(EAX);end;
ante0 Posted November 19, 2007 Author Posted November 19, 2007 (edited) befor call check the serial lenght. must <= 10 function IMPosTOR_keygen(serial : string):string;var EAX : integer;begin result := ''; EAX:= strtoint(serial); asm ADD EAX,EAX ADD EAX,$1B3 SHL EAX,$2 ADD EAX,$38 LEA ESI,DWORD PTR DS:[EAX+EAX*4] LEA ESI,DWORD PTR DS:[ESI+ESI*8] ADD ESI,$16F end; result :=inttostr(EAX);end; Good I made a new one, should be a little more complicated... I will hide the serial better next time, right now the algro is very easy to find. lol And yes Chupa, you did it all right Edited November 19, 2007 by ante0
ChupaChu Posted November 19, 2007 Posted November 19, 2007 @Ante, i learn keygening when i catch time, i tought your keygenme was a keyfile me, that i did not coded yet so i figured why not trying it.. but it was no keyfile, nice work @Impostor: why not make it simple: SERIAL:=360*UNLOCK+81187
Encrypto Posted November 19, 2007 Posted November 19, 2007 hmm.. seems that i am a bit late.lol..thank you for the challenge Ante0KeyGen.By.Encrypto.zip
ante0 Posted November 19, 2007 Author Posted November 19, 2007 (edited) @Ante, i learn keygening when i catch time, i tought your keygenme was a keyfile me, that i did not coded yet so i figured why not trying it.. but it was no keyfile, nice work @Impostor: why not make it simple: SERIAL:=360*UNLOCK+81187 Hehe, they gen.key file only contains a valid Pass+Unlockkey (And Name, just so it can say "Registered to Name"), though, it checks if it's valid on start. Should be pretty easy to crack too Hmm. How would the function IntToHex look like in ASM? Hehe @Encrypto: Glad you liked it Edited November 19, 2007 by ante0
IMPosTOR Posted November 19, 2007 Posted November 19, 2007 @Ante, i learn keygening when i catch time, i tought your keygenme was a keyfile me, that i did not coded yet so i figured why not trying it.. but it was no keyfile, nice work @Impostor: why not make it simple: SERIAL:=360*UNLOCK+81187 um.. i want use asm in delphi . so other coder (noob like me) see and learn how we can just copy and pase asm code in delphi then use .
ChupaChu Posted November 19, 2007 Posted November 19, 2007 (edited) IMHO its a good idea to add pushad and popad in inline asm statement. asmpushad mov eax,a ADD EAX, EAX ADD EAX, $1B3 SHL EAX, $2 ADD EAX, $38 LEA ESI, DWORD PTR DS:[EAX+EAX*4] LEA ESI, DWORD PTR DS:[ESI+ESI*8] ADD ESI, $16F MOV ser,ESIpopadend; this way one will awoid possible problems when using more complicated asm codes inline.. @Encrypto: Nice to see you code keygens now.. Keep it up! Also its always a good idea to check for boundarie conditions; e.g. 0 as unlock code, or if value that is final result is used in signed or unsigned form.. when i talk about it, i missed last part so i'm reuploading my keygen, as old-one is displaying results in unsigned form, and Ante0's proggy uses signed values as input, so in some cases my keygen wont work allthough hex values are correct ante_kgn_by_ChupaChu.zip BR, ChupaChu! Edited November 19, 2007 by ChupaChu
ante0 Posted November 20, 2007 Author Posted November 20, 2007 IMHO its a good idea to add pushad and popad in inline asm statement. asmpushad mov eax,a ADD EAX, EAX ADD EAX, $1B3 SHL EAX, $2 ADD EAX, $38 LEA ESI, DWORD PTR DS:[EAX+EAX*4] LEA ESI, DWORD PTR DS:[ESI+ESI*8] ADD ESI, $16F MOV ser,ESIpopadend; this way one will awoid possible problems when using more complicated asm codes inline.. @Encrypto: Nice to see you code keygens now.. Keep it up! Also its always a good idea to check for boundarie conditions; e.g. 0 as unlock code, or if value that is final result is used in signed or unsigned form.. when i talk about it, i missed last part so i'm reuploading my keygen, as old-one is displaying results in unsigned form, and Ante0's proggy uses signed values as input, so in some cases my keygen wont work allthough hex values are correct ante_kgn_by_ChupaChu.zip BR, ChupaChu! Ah, this is good to know Hope my next one will be harder for you to keygen
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now