Advertisement
Guest User

Untitled

a guest
Jan 10th, 2019
177
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. .386
  2. .model flat, stdcall
  3. option casemap: none
  4.  
  5. include windows.inc
  6. include user32.inc
  7. include kernel32.inc
  8.  
  9. includelib user32.lib
  10. includelib kernel32.lib
  11.  
  12. .data
  13. ;string dd 10 dup(0), 0
  14. string db "FSMMIvH", 0
  15.  
  16. .code
  17. keymaker:
  18.  
  19. ;xor ecx, ecx
  20. ;.while ecx < 7
  21. ;  mov byte ptr ds:[string + ecx], 41h  ; Rellenamos de 'A'
  22. ;  inc ecx
  23. ;.endw
  24.  
  25.  
  26. xor edi, edi
  27. xor eax, eax
  28. lea esi, dword ptr string
  29.  
  30. inicio:
  31. lods byte ptr [esi]
  32. test al, al
  33. je comprueba
  34. ror edi, 0Dh
  35. add edi, eax
  36. jmp inicio
  37.  
  38. comprueba:
  39. cmp edi, 0F6C53333h
  40. je cracked
  41.  
  42. siguiente:
  43. call incrementa
  44. lea esi, dword ptr string
  45. cmp eax, -1
  46. jne inicio
  47.  
  48. exit:
  49. invoke ExitProcess, 0
  50.  
  51. cracked:
  52. invoke MessageBox, NULL, addr string, NULL, MB_OK
  53. jmp exit
  54.  
  55. incrementa proc
  56.     ;AAAAAAA
  57.  
  58.     cmp byte ptr ds:[string+6], 7Ah ;vemos si el ultimo es 7A 'z'
  59.     je c7
  60.     inc byte ptr ds:[string+6] ;incrementamos el ultimo
  61.     jmp fin
  62.  
  63.     c7:
  64.     mov byte ptr ds:[string+6], 41h ;ahora el ultimo es A
  65.     cmp byte ptr ds:[string+5], 7Ah ;vemos si es 7A
  66.     je c6
  67.     inc byte ptr ds:[string+5] ;incrementamos
  68.     jmp fin
  69.  
  70.     c6:
  71.     mov byte ptr ds:[string+5], 41h
  72.     cmp byte ptr ds:[string+4], 7Ah ;vemos si es 7A
  73.     je c5
  74.     inc byte ptr ds:[string+4]
  75.     jmp fin
  76.    
  77.     c5:
  78.     mov byte ptr ds:[string+4], 41h
  79.     cmp byte ptr ds:[string+3], 7Ah ;vemos si es 7A
  80.     je c4
  81.     inc byte ptr ds:[string+3] ;incrementamos
  82.     jmp fin
  83.  
  84.     c4:
  85.     mov byte ptr ds:[string+3], 41h
  86.     cmp byte ptr ds:[string+2], 7Ah ;vemos si es 7A
  87.     je c3
  88.     inc byte ptr ds:[string+2] ;incrementamos
  89.     jmp fin
  90.  
  91.     c3:
  92.     mov byte ptr ds:[string+2], 41h
  93.     cmp byte ptr ds:[string+1], 7Ah ;vemos si es 7A
  94.     je c2
  95.     inc byte ptr ds:[string+1] ;incrementamos
  96.     jmp fin
  97.    
  98.     c2:
  99.     mov byte ptr ds:[string+1], 41h
  100.     cmp byte ptr ds:[string], 7Ah ;vemos si es 7A
  101.     je c1
  102.     inc byte ptr ds:[string] ;incrementamos
  103.     jmp fin
  104.    
  105.     c1:
  106.     mov eax, -1
  107.  
  108.     fin:
  109.     ret
  110.  
  111. incrementa endp
  112.  
  113. end keymaker
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement