|
Hi
I was trying to turn the program into its own keygen
I ended up getting it sorted by over writting another area that was not critical to the key generation.
it worked great, the only problem now is the loader I am using
(abel's loader generator)
falls over while patching the code.
the code I have injected works fine in olly but when I use the loader the loader falls over. (loader failed.. process write error)
the loader waits for the reg screen before patching, by this stage the program is unpacked (Aspack2.12).
here is the code I am injecting,
004550A4 60 PUSHAD ;save registers <---new code stats here
004550A5 8BF2 MOV ESI,EDX ; move serial
004550A7 BF B0F31200 MOV EDI,12F3B0 ; store generated serial here
004550AC B9 09000000 MOV ECX,9 ; length of serial to write
004550B1 F3:A4 REP MOVS BYTE PTR ES:[EDI],BYTE PTR DS:[> ;write new bytes
004550B3 61 POPAD ;restore registers
004550B4 83C4 04 ADD ESP,4 ; <--- moved from original jump
004550B7 33C9 XOR ECX,ECX ;<----" "
004550B9 ^E9 8D1AFEFF JMP prog32.00436B4B ; <--- jump back to where we began
004550BE 90 NOP
00436B3C |. 8D5424 10 LEA EDX,DWORD PTR SS:[ESP+10]
00436B40 |. 52 PUSH EDX
00436B41 |. E8 B7FC0700 CALL prog32.004B67FD
00436B46 E9 59E50100 JMP prog32.004550A4 ;<--- jump to injected code
00436B4B |. 3BE8 CMP EBP,EAX
00436B4D |. 5F POP EDI
00455221 . 68 00DF4F00 PUSH prog32.004FDF00
00455226 68 B0F31200 PUSH 12F3B0 ; <---- changed to push new serial
0045522B . 50 PUSH EAX
0045522C .^EB 9C JMP SHORT prog32.004551CA
The Idea was to use the loader to turn the program into a keygen,
write the serial down. then use the program with new serial
no need for the loader
any ideas about getting a loader to do the work?
R@dier
Last edited by R@dier; 09-29-2003 at 23:41.
|