|
| Author |
Message |
herr-master Super Member

.jpg)

 Joined: 02 Jul 2007 Posts: 547
|
|
 |
her is are new unpackme from me i hope is not to hard for you this one is not for noobs.
| Use these free links to download now: |
| Code: |
| http://www.Notallowed!/1904096037/Unpackme5.rar |
|
mirror
| Use these free links to download now: |
| Code: |
| http://rapidshare.de/files/46568728/Unpackme5.rar.html |
|
Ps:please read the lbls and follow the rules.
Unsolved
No one has solved it jet.
Solved list
1:LCF-AT//very good
2:Name
3:Name |
_________________
I will not crack request per pm!
thx @izzad95 for the sig!

Last edited by herr-master on Wed Apr 22, 2009 6:04 am; edited 3 times in total |
|
Date Posted:Thu Mar 19, 2009 4:17 pmThanks: 19Thanked 128 Times In 86 Posts
|
| Author |
Message |
LCF-AT Special Member



 Joined: 17 Jan 2008 Posts: 205 Location: Chateau-Saint-Martin
|
|
 |
Hi,
new unpackme by herr-master {hafe deutsch? }.
So after a fast view on it I can say that I have seen this protection already but I canīt remember the name of it...hmm.
@ KenTheFurry
One exsample:
| Code: |
004068A8 JMP 00AD04BE
004068AD NOP
00AD04BE PUSH EAX
00AD04BF PUSHAD
00AD04C0 MOV EAX,37
00AD04C5 PUSH 5F005682
00AD04CA JMP DWORD PTR DS:[537A63] ; 0053636F
0053636F MOV ECX,0AE0000 // BP
....
005363AC MOV DWORD PTR SS:[ESP+1C],EAX // eax
.....
005363B4 RETN
00AC063D CMP DWORD PTR SS:[ESP+4],0 <---
00AC0642 JMP DWORD PTR DS:[AC0648] ; 77E59F98 kernel32.
77E59F93 GetModuleHandleA 837C24 04 00 CMP DWORD PTR SS:[ESP+4],0 <----
77E59F98 0F84 23060000 JE 77E5A5C1 <--- OUT
-------------------------
004068A8 JMP 00AD04BE
004068AD NOP
-------------------------
==
004068A8 JMP dword ptr ds: [xxxxxxxx] ; kernel32.GetModuleHandleA
------------------------ |
greetz |
|
|
Date Posted:Thu Mar 19, 2009 11:29 pmThanks: 0Thanked 44 Times In 29 Posts
|
| Author |
Message |
herr-master Super Member

.jpg)

 Joined: 02 Jul 2007 Posts: 547
|
|
 |
LCF-AT one question i can say ap0x and yes LCF-AT i am are germen boy.
For you its easy to unpack the packer i us hafe are vm and many is debugger present. |
_________________
I will not crack request per pm!
thx @izzad95 for the sig!
 |
|
Date Posted:Fri Mar 20, 2009 9:02 amThanks: 19Thanked 128 Times In 86 Posts
|
| Author |
Message |
LCF-AT Special Member



 Joined: 17 Jan 2008 Posts: 205 Location: Chateau-Saint-Martin
|
|
 |
Hello herr-master,
thankīs for the info about ap0x so now I know again what it is.
Ahhh also german!
So I just saw some of your mystery grammatical spelling like "hafe" etc.
greetz |
|
|
Date Posted:Mon Mar 23, 2009 1:28 amThanks: 0Thanked 44 Times In 29 Posts
|
| Author |
Message |
herr-master Super Member

.jpg)

 Joined: 02 Jul 2007 Posts: 547
|
|
 |
Yes you see i can not good english i us google and the site from chooki,
can you help me are little bit wight my keygenme. |
_________________
I will not crack request per pm!
thx @izzad95 for the sig!
 |
|
Date Posted:Mon Mar 23, 2009 6:55 amThanks: 19Thanked 128 Times In 86 Posts
|
| Author |
Message |
LCF-AT Special Member



 Joined: 17 Jan 2008 Posts: 205 Location: Chateau-Saint-Martin
|
|
 |
Yes your english is not the best and my is also bad.Hmm chooki has a translate page?So I would help you but I have no idea about keygen stuff.
greetz |
|
|
Date Posted:Mon Mar 23, 2009 6:22 pmThanks: 0Thanked 44 Times In 29 Posts
|
| Author |
Message |
cozofdeath Special Member



 Joined: 09 Dec 2007 Posts: 379 Location: Classified
|
|
 |
I like it. Much harder than the basic. Ap0x adds good features. I like the VM OEP. If I wasn't somewhat familiar with rlpack I would of had a very hard time identifying the OEP. Nice one Hopefully I can make a script for it. Should we post dumps? |
_________________
|
|
Date Posted:Thu Mar 26, 2009 1:46 amThanks: 23Thanked 130 Times In 66 Posts
|
| Author |
Message |
herr-master Super Member

.jpg)

 Joined: 02 Jul 2007 Posts: 547
|
|
 |
Yes i wait for the dumps no one has post are dumped one.I fell me so lucky that you found my unpackmes usefull.
PS:My next one is coming.
@cozofdeath if you can make are script make it. |
_________________
I will not crack request per pm!
thx @izzad95 for the sig!
 |
|
Date Posted:Thu Mar 26, 2009 6:54 amThanks: 19Thanked 128 Times In 86 Posts
|
| Author |
Message |
cozofdeath Special Member



 Joined: 09 Dec 2007 Posts: 379 Location: Classified
|
|
 |
Well I think my script is good to find oep and correct 98% of the IAT but I'm having a dumping issue. Since you enabled the Virtual OEP and the anticrack protection the VM OEP isn't dumping. It looks like you enabled a lot of things so this will take me a while if I can even get it dumped. You probably have that extra dump protection to which I still haven't totally solved but that isn't why my dump isn't working. Can anyone offer some help or tut even if you can get it to dump properly but not run.
PS I have tried the normal dump corrections, SizeOfImage, section size fixes, rebuilding, fixing resource section. Nothing works when it has the vm oep. What am I doing wrong???? AHHHHHHH |
_________________
|
|
Date Posted:Fri Mar 27, 2009 7:45 pmThanks: 23Thanked 130 Times In 66 Posts
|
| Author |
Message |
LCF-AT Special Member



 Joined: 17 Jan 2008 Posts: 205 Location: Chateau-Saint-Martin
|
|
 |
Hello,
just as info for all otherīs which want to unpack herr-masterīs Unpackme nr.5.So the first one has it solved alraedy.Lookīs like me.
So you see itīs also possible to unpack this {much harder} UnpackMe.
What to do.
- Redirect IAT // a bit harder as other RLpack appīs
- Rebuild OEP routine // 290 bytes brutto / net
- Repair VMīd code // over 500 parts
The redirection of the IAT is in this UnpackMe the easiest thing.
The OEP rebuild is the hardest thing.There are also a lot to translate.
If you want to repair the VMīd main code then you have first to translate correctly all VMīd opportunities back to the original code.I found ca. 30 diffrentīs {+ other RLpack protected appīs} which you have to translate and then you can write a script to repair this code correctly.
greetz |
|
|
Date Posted:Wed Apr 22, 2009 2:08 pmThanks: 0Thanked 44 Times In 29 Posts
|
| Author |
Message |
cozofdeath Special Member



 Joined: 09 Dec 2007 Posts: 379 Location: Classified
|
|
 |
What do you mean by...
| Quote: |
| Repair VMīd code // over 500 parts |
Are there parts in the unpacked code section that are virtualized? For obfuscation?
Also how do you get the OEP straight. I only know of tracing and doing it manually. Did you make a script? |
_________________
|
|
Date Posted:Wed Apr 22, 2009 10:41 pmThanks: 23Thanked 130 Times In 66 Posts
|
| Author |
Message |
herr-master Super Member

.jpg)

 Joined: 02 Jul 2007 Posts: 547
|
|
 |
| @cozofdeath this unpackme has more as one vm you whil see 10 - 20 vm, that is what lcf-at whant say wight over 500 parts,and to you second question that is true what you say cozofdeath.Are liitel tip from me cozofdeath you need are unpacked one to compare wight the packed one to found the real oep. |
_________________
I will not crack request per pm!
thx @izzad95 for the sig!
 |
|
Date Posted:Thu Apr 23, 2009 6:07 amThanks: 19Thanked 128 Times In 86 Posts
|
| Author |
Message |
LCF-AT Special Member



 Joined: 17 Jan 2008 Posts: 205 Location: Chateau-Saint-Martin
|
|
 |
Hi,
1. You have to rebuild exact 17 instructions.The whole OEP routine.From
push ebp
.....
untill
.....
Call xxxxxxxx // last one // till here are 40 bytes Hex
LEA EAX,DWORD PTR DS:[EAX]
Stolen Bytes start
| Use these free links to download now: |
| Code: |
00AB0000 00000003
00AB0004 00000007
00AB0008 00000000
00AB000C 00000001
00AB0010 00000000
00AB0014 00000000
00AB0018 00000005
00AB001C 00000008
00AB0020 FFFFFFF0
00AB0024 00000006
00AB0028 00000001
00AB002C 00494178 Unpackme.00494178
00AB0030 00000002
00AB0034 00000000
00AB0038 00000000
00AB003C 00000003
00AB0040 00000002
00AB0044 00000000
00AB0048 00000010
00AB004C 00000002
00AB0050 00000001
00AB0054 00000006
00AB0058 00000001
00AB005C 00000000
00AB0060 0000000B
00AB0064 004950A0 Unpackme.004950A0
00AB0068 00000001
00AB006C 00000002
00AB0070 00000000
00AB0074 00000000
00AB0078 0000000C
00AB007C 004068A8 Unpackme.004068A8
00AB0080 00000000
00AB0084 0000000B
00AB0088 00497664 Unpackme.00497664
00AB008C 00000001
00AB0090 0000000D
00AB0094 00000001
00AB0098 00497664 Unpackme.00497664
00AB009C 0000000B
00AB00A0 004950AC Unpackme.004950AC
00AB00A4 00000001
00AB00A8 00000006
00AB00AC 00000001
00AB00B0 00000000
00AB00B4 0000000B
00AB00B8 004950B0 Unpackme.004950B0
00AB00BC 00000001
00AB00C0 00000006
00AB00C4 00000001
00AB00C8 00000000
00AB00CC 0000000B
00AB00D0 004950B4 Unpackme.004950B4
00AB00D4 00000001
00AB00D8 00000002
00AB00DC 00000000
00AB00E0 00000000
00AB00E4 00000006
00AB00E8 00000001
00AB00EC 004950A8 Unpackme.004950A8
00AB00F0 00000002
00AB00F4 00000000
00AB00F8 00000000
00AB00FC 0000000D
00AB0100 00000004
00AB0104 00495038 Unpackme.00495038
00AB0108 00000017
00AB010C 00000001
00AB0110 00000004
00AB0114 0000000B
00AB0118 00495038 Unpackme.00495038
00AB011C 00000001
00AB0120 00000018
00AB0124 00000004
00AB0128 00000000
00AB012C 00000018
00AB0130 00000004
00AB0134 00000000
00AB0138 00000006
00AB013C 00000004
00AB0140 004950A8 Unpackme.004950A8
00AB0144 00000010
00AB0148 00000001
00AB014C 00000002
00AB0150 00000002
00AB0154 00000000
00AB0158 00000000
00AB015C 00000019
00AB0160 00497014 Unpackme.00497014
00AB0164 0040122C Unpackme.0040122C
00AB0168 00000019
00AB016C 00497018 Unpackme.00497018
00AB0170 0040123C Unpackme.0040123C
00AB0174 0000000B
00AB0178 0049763C Unpackme.0049763C
00AB017C 00000001
00AB0180 00000006
00AB0184 00000001
00AB0188 00000000
00AB018C 0000000B
00AB0190 00497640 Unpackme.00497640
00AB0194 00000001
00AB0198 0000000B
00AB019C 00497644 Unpackme.00497644
00AB01A0 00000004
00AB01A4 0000001B
00AB01A8 00000001
00AB01AC 00040004
00AB01B0 0000000B
00AB01B4 0049702C Unpackme.0049702C
00AB01B8 00000001
00AB01BC 0000000C
00AB01C0 00404530 Unpackme.00404530
00AB01C4 00000000
00AB01C8 0000001A
00AB01CC 00497034 Unpackme.00497034
00AB01D0 00000000
00AB01D4 0000000C
00AB01D8 004045E8 Unpackme.004045E8
00AB01DC 00000000
00AB01E0 00000018
00AB01E4 00000004
00AB01E8 00000000
00AB01EC 00000014
00AB01F0 00000002
00AB01F4 00000000
00AB01F8 00000018
00AB01FC 00000004
00AB0200 00000000
00AB0204 0000000D
00AB0208 00000001
00AB020C 00496C34 Unpackme.00496C34
00AB0210 0000000A
00AB0214 00000001
00AB0218 00000001
00AB021C 0000000C
00AB0220 00454B68 Unpackme.00454B68
00AB0224 00000000
00AB0228 0000000D
00AB022C 00000003
00AB0230 00496D28 Unpackme.00496D28
00AB0234 0000000D
00AB0238 00000001
00AB023C 00496C34 Unpackme.00496C34
00AB0240 0000000A
00AB0244 00000001
00AB0248 00000001
00AB024C 0000000D
00AB0250 00000004
00AB0254 00493F4C Unpackme.00493F4C
00AB0258 0000000C
00AB025C 00454B80 Unpackme.00454B80
00AB0260 00000000
00AB0264 0000000D
00AB0268 00000001
00AB026C 00496C34 Unpackme.00496C34
00AB0270 0000000A
00AB0274 00000001
00AB0278 00000001
00AB027C 0000000C
00AB0280 00454C00 Unpackme.00454C00
00AB0284 00000000
00AB0288 0000000C
00AB028C 00404820 Unpackme.00404820
00AB0290 00000000 |
|
Some exsamples:
| Use these free links to download now: |
| Code: |
00AB0000 00000003 <-- Register Push
00AB0004 00000007 <-- EBP
00AB0008 00000000
------------------------
00AB0024 00000006 <-- mov
00AB0028 00000001 <-- EAX
00AB002C 00494178 Unpackme.00494178 <---
=
mov EAX, 00494178
-----------------------
00AB0060 0000000B <-- mov dword
00AB0064 004950A0 Unpackme.004950A0
00AB0068 00000001 <-- EAX
=
MOV DWORD PTR DS:[4950A0],EAX // hint: This command is not stolen :)
-----------------------
00AB0090 0000000D <-- mov dword
00AB0094 00000001 <-- EAX
00AB0098 00497664 Unpackme.00497664
=
MOV EAX,DWORD PTR DS:[497664] // also not stolen
------------------------
Special Hint: The first call at the OEP is not to see in the stolen section so find this routine /delphi / and you have the first call. |
|
So this stolen bytes for the OEP are not so easy to translate but I have already translate the most.Its like a puzzle.You can all bytes find out at ....
| Use these free links to download now: |
| Code: |
0053444C ADD ESI,0C
0053444F CMP DWORD PTR DS:[ESI],0 ; Stolen bytes test place!
00534452 JNZ 00533F5F ; 00533F5F |
|
Here you go to the routines where the bytes / dwords etc will moved.Just try to figure out whats going on there and you can get the real instructions.Not easy!So this I have also done manually.
VM code exsamples:
| Use these free links to download now: |
| Code: |
00401BCF JMP 00A30014 <-- 1.
00401BD4 PUSH DWORD PTR FS:[EDX]
00401BD7 MOV DWORD PTR FS:[EDX],ESP
00401BDA JMP 00A30042 <-- 2.
00401BDF JMP 00A30070 <-- 3.
00401BE4 CMP BYTE PTR DS:[497049],0 |
|
Must look so after fixing:
| Use these free links to download now: |
| Code: |
00401BCF PUSH 401C90 <-- 1.
00401BD4 PUSH DWORD PTR FS:[EDX]
00401BD7 MOV DWORD PTR FS:[EDX],ESP
00401BDA PUSH 4975C8 <-- 2.
00401BDF CALL 004013A0 <-- 3.
00401BE4 CMP BYTE PTR DS:[497049],0 |
|
I found ca. 30 diffrent routines which you have to translate by steping
through the VM code and of course you have to write a script for this so there are over 500 VM jumps!
Exsample:
| Use these free links to download now: |
| Code: |
00401BCF JMP 00A30014
---------------
00A30014 PUSHFD
00A30015 SUB ESP,4
00A30018 MOV DWORD PTR SS:[ESP],A2AF46CC
00A3001F CALL 00A30000
00A30024 PUSH EAX
00A30025 PUSH DWORD PTR SS:[ESP+8]
00A30029 MOV EAX,DWORD PTR SS:[ESP+8]
00A3002D MOV DWORD PTR SS:[ESP+C],EAX <-- 00401C90
00A30031 MOV EAX,DWORD PTR SS:[ESP]
00A30034 MOV DWORD PTR SS:[ESP+8],EAX
00A30038 ADD ESP,4
00A3003B POP EAX
00A3003C POPFD
00A3003D JMP 00401BD4 <-- back to main code
If you now come out back to main code then you see 00401C90 was pushed in the stack
0012FFC0 00401C90 Unpackme.00401C90
This VM routine makes just push xxxxxxxx // This was one VM routine of ca. 30!
-------------------------
00401BDF JMP 00A30070
-------------
00A30070 CALL 00A30075
00A30075 ADD DWORD PTR SS:[ESP],0F
00A30079 PUSH A2AF49FC
00A3007E CALL 00A30000
00A30083 RETN <---- to right code routine // look pane window
00A30084 JMP 00401BE4 <-- back to main code
Right routine after ret
004013A0 JMP 00AD0046
004013A5 NOP
004013A6 MOV EAX,EAX
This means that this VM routine is just for the direct calls like Call xxxxxxxx
----------------- |
|
So there are a lot diffrents but itīs possible to fix all back to the right code so I say UN-VMīd So this UnpackMe is harder to unpack as the RLpack 1.21 itself!You have to spend a lot time to translate all correctly and you must write a script or make a tool so you canīt fix the whole VM by hand of course.
Here one exsample of my script for the Push xxxxxxxx instructions.
| Use these free links to download now: |
| Code: |
next_6:
find eip , #9C83EC04C70424????????E8????????50FF7424088B4424088944240C8B04248944240883C404589D#
cmp begin, $RESULT
jne next_7
mov ZAHL, eip
add ZAHL, 1D
bp ZAHL
esto
bc
mov ZAHL, eax
mov eip, BS
eval "PUSH {ZAHL}" // push value
asm eip, $RESULT
inc BS
gci eip, SIZE
mov BYTES, $RESULT
READSTR [eip], BYTES
buf $RESULT
log $RESULT
mov FULL, $RESULT
eval "mov [{eip}], {FULL}" // important....
wrta sFile, $RESULT
wrta sFile, "\r\n"
jmp start |
|
important.... to log all written bytes to a new file!So the fixing will take some time.If you log all as
mov [address], #bytes#
then you will have this VM patches in one file which you can also use later again.
All in all I can also say that this UnpackMe was not easy to unpack.I would say "LEVEL - HARD".. so itīs just my opinion of course.
greetz |
|
|
Date Posted:Thu Apr 23, 2009 12:54 pmThanks: 0Thanked 44 Times In 29 Posts
|
| Author |
Message |
LCF-AT Special Member



 Joined: 17 Jan 2008 Posts: 205 Location: Chateau-Saint-Martin
|
|
 |
So one thing I forgot to tell.So it can be that your unpacked file later crashes without a exception.Reason for this is a TLS problem.
| Use these free links to download now: |
| Code: |
00406920 MOV CL,BYTE PTR DS:[497660]
00406926 MOV EAX,DWORD PTR DS:[4950A0]
0040692B TEST CL,CL
0040692D JNZ SHORT 00406955
0040692F MOV EDX,DWORD PTR FS:[2C] <------- HERE
00406936 MOV EAX,DWORD PTR DS:[EDX+EAX*4]
00406939 RETN |
|
In my unpacked file I have a 0 value.
| Use these free links to download now: |
| Code: |
7FFDE02C 00000000 (Pointer to Thread Local Storage)
then the app crashes like with a buffer overflow etc.The real value is in this app a address from the codesection 00532F62 / normaly its a Mem address /
Fix:
7FFDE02C 00532F62 (Pointer to Thread Local Storage)
You can write at the OEP something like this...
PUSHAD
MOV DWORD PTR FS:[2C],532F62
POPAD
jmp OEP
...to fix this problem. |
|
Just as info for you and the others.
greetz |
|
|
Date Posted:Thu Apr 23, 2009 2:13 pmThanks: 0Thanked 44 Times In 29 Posts
|
Astalavista Forum Index :: Crack Me's and Challenges :: Unpackme nr.5
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|
|