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

  1. Turning File Shredder v2.2 into its own Keygen by Flu[X]/PC98
  2. A Second Look at the keygen-patch approach.
  3.  
  4. Items needed for this tutorial:
  5.   Hiew     5.xx
  6.   W32 Dasm 8.7+
  7.   SoftICE  3.2+
  8.   File Shredder v2.2 (http://www.execpc.com/~sbd/SHREDDER.ZIP)
  9.   Basic asm knowlodge...
  10.  
  11. Ok, after you have all of these items your ready
  12.  
  13. If you read my first tutor you will be familiar with this method
  14. otherwise, i suggest you download it ant read it..
  15.  
  16. Again im going to concentrate on how to make a program store
  17. the correct registration info without user intervention.
  18. Ok start SoftICE and load in the standard breakpoints.
  19. (you should know these) Enter in some random information
  20. and try to register it.
  21.  
  22. Ok, were interested in what it does with the code we have entered
  23. so since there are 3 boxes we hit F5 twice. After a while of tracing
  24. you will come to this:
  25.  
  26.  
  27. :004014AC 55                      push ebp
  28. :004014AD 57                      push edi
  29. :004014AE E86D190000              call 00402E20
  30. :004014B3 83C408                  add esp, 00000008
  31. :004014B6 3BC3                    cmp eax, ebx <--compare the two values
  32.                                                eax= real  ebx=your fake
  33. :004014B8 741E                    je 004014D8  <-- if they are same goto registered
  34. :004014BA 68CFEA0000              push 0000EACF
  35.  
  36.  
  37. so how would we go about fixing this? ok now lets see...
  38. we know eax has the real serial# (from doing a ? eax)
  39. so thats already good... now how can we fix the value in ebx..
  40. maybe if we change  cmp eax, ebx  TO  mov ebx, eax.
  41. that will "overwrite" our fake serial#..now how about
  42. that jump? well since it will go there if registered
  43. and we have fixed it so it will always get registered we
  44. just change it to JMP.
  45.  
  46. ok lets try it, new code should look like this:
  47.  
  48.  
  49. :004014AE E86D190000              call 00402E20
  50. :004014B3 83C408                  add esp, 00000008
  51. :004014B6 8BD8                    mov ebx, eax <-- move real ser# to
  52.                                                   where our fake is.
  53. :004014B8 EB1E                    jmp 004014D8 <-- always jump to registered
  54.  
  55. ok patch the file, now try it, hey it registers...
  56. the program will shut down..
  57. ok start it again, hey look it works, our name is in the box
  58. click on the register key, hey look in the box is what
  59. the serial *should* have been.
  60.  
  61. now we have 2 "cracks" for this program, a serial# and a
  62. program that makes its own keys.. so go ahead and generate
  63. as many valid serial#'s as you want!
  64.  
  65. Anyways, i dont have to say this as it should be understood, if you
  66. like thes program and continue to use it you should purchase a copy.
  67.  
  68.  
  69. Flu[X] - Phrozen Crew 98
  70.  
  71. EOF