; ====================================================================================== ; = WinZip v7.0 Keygenerator - (C) 1999 Teraphy / Phrozen Crew - http://teraphy.cjb.net ; ====================================================================================== .486 .model flat, stdcall ; -------- Include Files and Libraries ------------------------------------------------- include windows.inc include elib32.inc includelib elib32.lib include kernel32.inc includelib kernel32.lib include user32.inc includelib user32.lib ; -------- UnInitialised Data ---------------------------------------------------------- .data? szName db 32 dup (?) Save0 dd ? Save1 dw ? ; -------- Program Code ---------------------------------------------------------------- .code Start: ; Print Message PrintM "WinZip v7.0 *Keygen*",CrLf, \ "(C) 1999 Teraphy",CrLf, \ "Name : " ; Read Name invoke Input, addr szName, 30 ; Check user input .IF eax == 0 PrintM "Error : Name too short" Exit -1 .ENDIF ; Calculate Serial# mov esi,offset szName xor edi,edi xor ebx,ebx LabelA: xor eax,eax lodsb or al,al jz LabelB imul eax,edi inc edi add ebx,eax jmp LabelA LabelB: mov Save1, bx mov Save0,0 mov esi,offset szName LabelG: lodsb push esi or al,al jz LabelC xor ecx,ecx mov cx,ax xchg ch,cl mov eax,Save0 mov edx,8 LabelF: mov esi,ecx xor esi,eax test si,8000h je LabelD add eax,eax xor eax,1021h jmp LabelE LabelD: shl eax,1 LabelE: shl ecx,1 dec edx jnz LabelF mov Save0,eax pop esi jmp LabelG LabelC: pop esi mov eax,Save0 add eax,63h xor ecx,ecx mov cx,ax shl ecx,16 mov cx,Save1 ; Print Serial PrintFM <"Serial: %.8lX">, ecx ; Exit Exit 0 end Start |