.model small

.386

.data

  welcome db "FTP Wolf V2.x (100% Working) *Keymaker*",10,13,"  Written by ^pain^ '98 / Rebels!",10,13,"Name:$"

  PBytes  db 0EAh,0d0h,0bbh,93h

  UserName    db 10h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h

  Key     db 10,13,"Key :FW01-$"

  goodbye db 10,13,10,13,"                     Enjoy!$"

  Gen     db 00,00,00,00

.Stack 100h

.code



Start:



  mov ax,@data

  mov ds,ax

  mov ah,09

  mov dx,offset Welcome

  int 21h

  mov ah,0ah

  mov dx,offset UserName

  int 21h

  mov dx,offset UserName

  mov di,dx

  add di,2

  mov bx,4 

  xor ecx,ecx

  mov si,offset Gen

  mov eax,57fd46H

aa:

   mov al,byte ptr [di]

   mov dl,59h

   imul dl

   mov dl,48h

   imul dl

   mov dl,32h

   imul dl

   mov dl,33h

   imul dl

   mov [si],al

   inc di

   inc si

   dec bx

   jnz aa

  

;  mov di,offset PBytes

  ;mov ecx,93bbd0eah ; dword ptr [di]

  mov si, offset UserName

  mov bl,byte ptr [si+1]

  add si,02h

GenerateCode:

   mov di,offset Gen

   lea cx,[di+5]

   mov al,[si]

   add al,02h

   xxx:

       xor [di],al

       inc di

       cmp di,cx

       jnz xxx



   inc si

   dec bl

 jnz GenerateCode



; mov di,offset PBytes 

; mov ecx,dword ptr [di]

 mov di, offset Gen

 mov eax,dword ptr [di]

 test eax,eax

 jge aaaa

 neg eax

aaaa:

 cmp eax,270fh

 jge xx2

xx1:

 lea eax,[ecx+ecx*4]

 shl eax,01h

 cmp eax,270fh

 jl xx1

xx2:

 cmp eax,0f423fh

 jle GOOD

xx3:

  cdq

  mov edi,0ah

  idiv edi

  cmp eax,0f423fh

 jg xx3

GOOD:

 mov ecx,eax

 mov ah,09h

 mov dx,offset key

 int 21h

 mov eax,ecx

 mov bl,00h

Hex2Str:

 CDQ

 inc bl

 mov edi,0ah

 idiv edi

 add dl,30h

 push dx

 test eax,eax

jnz hex2str

mov ah,06h

hex2st:

  pop dx

  int 21h

  dec bl

  jnz hex2st

 mov ah,4ch

 int 21h

end start