Ok a little suggestion: (not finally cracked!)
target notepad.exe (wxy.geocities.com/freetryin2000/)
1. Open the protected file with ollydgb and click away the whole error msges (out of pe header, compressed file).
2. Toggle Breakpoint on Import at GetProcAdress (if you know how to use olly you know how to set breakpoints on apis!).
3. Press Shift+F9 until the stack window show (yes there will be an out of pe header error be - ignore).
ProcNameOrOrdinal = "IsDebuggerPresent"
trace with F8 until you are in the main code.
you are @ 52869D trace to 52869F and set an jmp.
you are @ 5286A9 trace to 5286B3 and set an jmp.
at 52870B you return with F8 to 52873E
4. Set an Breakpoint on Pushad at 52875C and press shift + F9
wot the code after 528768 is lost hehe.
trace to 528766 and take a jump into the bath of 00's.
5. Press 2 times shift+F8 and you are in the ntdll thread.
Ok Press F8 until you are in the main NOTEPAD thread again.
....
Scroll down ... to 52411C and set an breakpoint on it.
(im to lazy to explain this whole loops and jump heh)
SHIFT+F9 will you bring you there.
6. Press F8 you are now at the OEP. The the whole code is red, isnt it? :P because of replacing the whole code with the decrypted one...
Don't move, start LordPE and select out notepad task with the left and rightclick -> CorrectImageSize.
rightclick again -> dump full.
7. Close LordPE but dont close Olly.
=========================
The Imprec way
///////////////////
start Imprec, click to the Active process and enter the OEP
4913F0 -
400000
= 913F0 enter it. Click on IAT Auto Search, the on Get Imports.
voila there are all valid sections.
Close Olly and Fix Dump(dumped.exe) file.
Open your dumped_.exe file whit peditor and change the oep to 913F0.
Open Sections, look at raw offset from text and code.
Change your Base of Code to: 1000
Change your Base of Data to: C6000
Save exit done.
================================
The revirgin way
////////////////////
Open revirgin and select your notepad task.
enter OEP: 913F0
RVA: B8FFC
Size: 750
click IAT resolver, lenght shoud be 118 now.
Close olly, open the original notepad.exe with peditor and have a look at the size of image 12A000 enter it into RVA at revirgin under IT Values + generator. Click on generate.
Select you dumped file. and safe the table as dump.bin or whatever else lol.
Open the .bin and the dumped exe file in a hex editor and select the first 4 bytes from the .bin file. Copy them to the clipboard and search for them in you dumped.exe, you will gladly have an result at 12A000. Go back to you .bin file and press CTRL+A to select everything, now CTRL+C.
Back in your dumped.exe go before you bytes 18A1 and hold the left mouse button, scroll down until the end of the file.
Now press ctrl+v to paste your iat and replace the old one.
Save your dumped.exe again. Exit your hex editor.
Open your dumped.exe file with peditor and change the oep to 913F0.
Open Sections, look at raw offset from text and code.
Change your Base of Code to: 1000
Change your Base of Data to: C6000
Save exit done.
=======================================
Problem: Don't work so YOU should help :P
Open with Olly: Ok all seems fine..
Start: Bang! msacm32.drv -> "Corrupted Stand alone file (1)"
There must be an crc check somewhere
- I had a look at 43148B where it shows "STANDALONE" a from from MMBuilder as well ...