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

  1. | Program: Crackme#2 by tC '99         |
  2. | Company: sUrReAlizM                  |
  3. | Protection: Keyfile and Serial/Name  |
  4. | Cracker: FireWorx                    |
  5. ñ--------------------------------------ñ
  6.  
  7.  
  8.  
  9.  
  10.  
  11.  
  12.  
  13. Hi there Again!!!
  14. This is FireWorx Typing a tutor for Crackme#2 (c)tC...'99 by sUrReAlizM!!!
  15.  
  16. What u need:
  17. Softice and W32dasm...
  18. ............Okey, Lets get to work.........................................
  19.  
  20. Fire up the program in w32dasm and check the sdr list (String data refs) after u checked the program first...
  21. Like protection and soo...
  22. This program uses a keyfile for protection and a serial/name protection!
  23.  
  24. Nvm, back to the cracking part...
  25.  
  26. Check for the error msg in w32dasm list :"Invalid Keyfile". When u found it doubleclick on it and then minimize the sdr window...
  27. Step upwards and there u see this mass of code:
  28.  
  29. * Possible StringData Ref from Code Obj ->"Runtime Error: 12FF:024"
  30.                                   |
  31. :00427DDE BAD07E4200              mov edx, 00427ED0                    //Opens the file
  32. :00427DE3 E8A0B8FDFF              call 00403688                        //Check the file for keywords
  33. :00427DE8 750C                    jne 00427DF6                    //Jump away if not valid keyword
  34. :00427DEA C705E8A6420002000000    mov dword ptr [0042A6E8], 00000002
  35. :00427DF4 EB67                    jmp 00427E5D    
  36.  
  37. * Referenced by a (U)nconditional or (C)onditional Jump at Address:
  38. |:00427DE8(C)
  39. |
  40. :00427DF6 C705E8A6420001000000    mov dword ptr [0042A6E8], 00000001    //Prepare for nag screen!
  41. :00427E00 6A00                    push 00000000
  42.  
  43. * Possible StringData Ref from Code Obj ->"Error"
  44.                                   |
  45. :00427E02 68E87E4200              push 00427EE8                    //Write "Invalid Keyfile" in Messagebox...
  46.  
  47. * Possible StringData Ref from Code Obj ->"Invalid Keyfile"
  48.  
  49. Okey, As u can see my asm is not THAT good as it should be... Nvm anyway...
  50. Okey, one thing i got a bit cousy over was: "Runtime Error: 12FF:024" , how the fuck did this ended up here???
  51. I thought it was a Bug in the program, but when i looked at the code i saw that this was the Keywords in the keyfile..!
  52.  
  53. "Aha!"... I said... So i opened up notepad and pasted this line into it....
  54. {This line should be in notepad: Runtime Error: 12FF:024}
  55. Okey...Now when u done this... Save the program as anything u want... but i saved it as Key.key
  56.  
  57. Open the crackme and push "Select Keyfile", then choose yer key.key (or whatever) and press [OK]
  58.  
  59. Now the two edits in the program gets enabled and u can type in any code and name u want...
  60. I just tryed with one and i got the err msg: "Wrong Entry! Try again!"
  61.  
  62. So i checked W32dasm again to get some clues howto do it...
  63. Now check the err msg in SDR (String Data Refs) Almost et the end of the list..!
  64.  
  65. Double click it and minimize the SDR window...
  66. And now u should see this:
  67.  
  68. * Possible StringData Ref from Code Obj ->"No way"
  69.                                   |
  70. :0042818A 683C824200              push 0042823C
  71.  
  72. * Possible StringData Ref from Code Obj ->"Wrong entry! Try again."
  73.  
  74.  
  75. Damn This shit didn┤t help me much so i stepped up and there was the "GOOD GUY" msg...
  76. Aha... Now u should see this:
  77.  
  78. * Referenced by a (U)nconditional or (C)onditional Jump at Address:
  79. |:0042810C(C)
  80. |
  81. :0042811A 8D55F4                  lea edx, dword ptr [ebp-0C]
  82. :0042811D 0FB7C6                  movzx eax, si
  83. :00428120 E8E3E1FDFF              call 00406308
  84. :00428125 8D55F4                  lea edx, dword ptr [ebp-0C]
  85. :00428128 B903000000              mov ecx, 00000003
  86. :0042812D B804824200              mov eax, 00428204
  87. :00428132 E8CDB6FDFF              call 00403804
  88. :00428137 8D55F4                  lea edx, dword ptr [ebp-0C]
  89. :0042813A B905000000              mov ecx, 00000005
  90. :0042813F B804824200              mov eax, 00428204
  91. :00428144 E8BBB6FDFF              call 00403804
  92. :00428149 8D95D0FBFFFF            lea edx, dword ptr [ebp+FFFFFBD0]
  93. :0042814F 8B87EC010000            mov eax, dword ptr [edi+000001EC]
  94. :00428155 E8E6D5FEFF              call 00415740
  95. :0042815A 8B85D0FBFFFF            mov eax, dword ptr [ebp+FFFFFBD0]
  96. :00428160 8B55F4                  mov edx, dword ptr [ebp-0C]
  97. :00428163 E820B5FDFF              call 00403688                  //Count the real serial
  98. :00428168 751E                    jne 00428188                  //If dummy = real serial then "GOOD GUY" MSG!!!
  99. :0042816A 6A00                    push 00000000
  100.  
  101. * Possible StringData Ref from Code Obj ->"Gratulations"
  102.                                   |
  103. :0042816C 6808824200              push 00428208
  104.  
  105. * Possible StringData Ref from Code Obj ->"Well Done! Try the next CrackMe."
  106.  
  107. Okey, well this part gave me much more... =) well...
  108. Now type any Name and serial in the fields (edits) and do not press enter yet!
  109. Now Press CTRL+D to get into softice and there u type this: "bpx hmemcpy"
  110. Now press F5 to get back to windows...
  111. Now Click the register button and boom yer into softice...
  112. Now type: "bd *" press ENTER(to disable yer breakpoint) and then "g 015F:00428160" and press ENTER!!!
  113. Now yer landed just before the call which counts a valid serial for u!!!
  114. Step into that call with F8 and then press F10 untill this line: "cmp eax,edx" Now type: "d eax" and there u see yer dummy code and to see your real registration code type: "d edx" and *BOOM* in the code window there is it!!
  115.  
  116. Mine was. Name: FireWorx  Code: 19-1-09
  117.  
  118. Sorry for the mess in the end but i hope you┤ll manage to understand the most parts of it!!!
  119.  
  120. Thx to all i know and especially to E_Bliss for have a nice page and to Phox for being a "good friend" :P
  121. And to Wizzkid and many others...
  122.  
  123. Bye all / FireWorx - Dark Cracking Force 2000 [dCF2000]