home *** CD-ROM | disk | FTP | other *** search
- ;Written by Lucifer48 for "Easy" :)
- ;compile with :tasm32 -ml -m5 -q easy1-lu48
- ; tlink32 -Tpe -aa -x -c easy1-lu48 ,,, import32
- ;-----------------------------------------------------------------------------
- .386p ;386 instruction set enable
- .model flat, stdCALL
-
- extrn ExitProcess : PROC
- extrn MessageBeep : PROC
- extrn MessageBoxA : PROC
-
- ;-----------------------------------------------------------------------------
- ;Ces 3 paramΦtres peuvent Ωtre changΘs
-
- longueur_serial EQU 8 ;METTRE LA LONGUEUR DU SERIAL ICI
- char_start EQU 061h ;commence α partir de ce caractΦre
- char_end EQU 07Ah ;termine α ce caractΦre
-
- ;-----------------------------------------------------------------------------
- .data
-
- serial db longueur_serial dup(char_start),0 ;emplacement sur tester les serials
- sum dd (longueur_serial*char_start)+(longueur_serial*(longueur_serial +1))/2
-
- indice1 dd ? ;longueur_serial
- indice2 dd ? ;10h
-
- ;-----------------------------------------------------------------------------
- .code
-
- Main: ;The code begins here
- mov ecx, offset serial ;ne pas modifier ecx
- boucle:
- xor ebp,ebp ;ne pas modifier ebp
- mov dword ptr [indice2], 10h
-
- cmp [sum],381h ;enleve quelques combinaisons...
- jnz pasbon
-
- ;======================== Double boucle du crackme
-
- xor esi,esi
- xor ebx,ebx
- loop2:
- mov edi,1
- mov dword ptr [indice1], longueur_serial
- loop1:
- add esi,edi
- movzx eax,byte ptr [ecx+edi-1]
- add esi,eax
-
- add ebx,ebx
- xor ebx,esi
- mov eax,esi
- cdq
- idiv edi
- add ebx,edx
- inc ebx
- inc edi
-
- dec [indice1]
- jnz loop1
- dec [indice2]
- jnz loop2
-
- cmp ebx,402A4FE7h
- jnz pasbon
-
- call MessageBoxA, 0, offset serial, 0, 0
- jmp fin
- pasbon:
- ;======================== FIN DE LA ZONE
-
- compteur:
- inc [sum] ;rajoutΘ
- inc byte ptr [ecx+ebp] ;rajoutΘ
- cmp byte ptr [ecx+ebp],char_end+1
- jnz boucle
-
- sub [sum], char_end+1-char_start ;rajoutΘ
- mov byte ptr [ecx+ebp],char_start
- inc ebp
- cmp ebp,longueur_serial
- jz fin
- jmp compteur
- fin: ;on a testΘ toutes les combinaisons
- call MessageBeep, 020h ;MB_ICONQUESTION
-
- call ExitProcess, 0 ;End (exit) program
-
- End Main ;End of code, Main is the entrypoint
- ;-----------------------------------------------------------------------------
-