home *** CD-ROM | disk | FTP | other *** search
/ Reverse Code Engineering RCE CD +sandman 2000 / ReverseCodeEngineeringRceCdsandman2000.iso / RCE / E_bliss / siflying_vizion_crackme.txt < prev    next >
Text File  |  2000-05-25  |  3KB  |  66 lines

  1.  
  2. Target : Crackme 1.02 by Vizion/Mexelite (on Eternal Bliss site :
  3.                 http://www.crackmes.cjb.net )
  4.  
  5.                   ...a little tut by SiFLyiNG...
  6.  
  7. In this little tutorial (if we can call that a tutorial, i'll only explain
  8. brievly the method i used to find a correct serial for this crackme.
  9.  
  10. Let's go :
  11.  
  12.         Name: what you want
  13.         Serial : 12345678  
  14.    advise : note your personal code, it could be useful for the following
  15.         Bpx hmemcpy in sice
  16.  
  17. 1. At the beginning of the check, it compares the len of the entered
  18.    code to Eh (h means hexadecimal, so Eh = 14 in decimal base ). So it means that the serial must look like : XXXXXXXXXXXXXX (14 times)
  19.  
  20. 2. then it compares the fourth char of the serial with 2Dh, so it compares
  21.    with "-". So the serial must be XXX-XXXXXXXXXXX
  22.  
  23. 3.there is a first comparation : 
  24.  
  25.     the asm code is :
  26.  
  27.         MOV ECX, EAX            ; first part XXX of the entered serial
  28.                                 (in my case 123)
  29.         MOV EAX, [00430700]     ; personal code (in my case 1078268636
  30.         MOV EBX, FF             ; move FFh in EBX
  31.         CDQ
  32.         IDIV EBX                ; EAX = EAX/EBX = EAX/FFh
  33.                                 the rest from the division is stored
  34.                                 in EDX ; in my case EDX = 74h
  35.         
  36. then the verification : XOR ECX, EDX
  37.         JNZ bad cracker
  38.  
  39. So, it means that ECX should be equal to EDX so that the prog won't jump.
  40. ECX XOR EDX = 0 means that ECX = EDX so ECX must be 74h = 116 not to jump
  41. to the bad cracker code
  42.         
  43. So the first part of the serial is : 116
  44. There I know that my serial must look like : 116-YYYYYYYYYY (10 times)
  45.  
  46. 4.Then there is some loops which calculate the second part of the code from
  47. the entered name and the personnal code. Then there is - I don't show any
  48. adress so you have got some work to make  :
  49.  
  50. XOR ESI, EAX    ; EAX = entered second part of code and ESI = real second
  51.                       part of code
  52. JNZ bad cracker ; the result must be ESI = 0 not to jump so EAX(our code)
  53.                   must be equal to ESI(good code)
  54.  
  55. so you can get the valid second part of the code. But you should first look
  56. at the calculation code and try to make a keygen :)
  57.  
  58.      I press the test button and look at the status bar : 
  59.         "Correct serial... it's time for a keymaker..."
  60.  
  61. Try with your name & personnal code with the same scheme :
  62.                                         you must manage now :)
  63.  
  64. i haven't time to write a real tutor, so mail me if you have questions :
  65.  siflying@ifrance.com
  66.