si hablan de unpacker, deben hablar segun la version
yo de los script conozco el de volx y vi tambien sus updates, pero el mejor uso lo veo en el plugin llamado
CODEDOCTOR de hedneka,
en sus opciones tiene uno que desempaca hasta los 2.5x
yo creo que un buen olly con strong OD o phanthom mas ese plugin, creara un dumped Funcional, lo de la iat, ya es otra historia
asprotect ultimamente en los sdk esta colocando muchas funciones que se parecen a las de armadillo, o algun otro packer, no alcanzo a explicar mucho, pero se que es posible desempacar cualquier asprotect,
pero si tiene alguna encriptacion que no puede desencritpar ese programa, es porque realmente necesita de una clave valida..
saludos Apuromafo
pd:
http://tuts4you.com/download.php?view.2834bajarlo directo:
http://tuts4you.com/request.php?2834para mi es ollydbg con sus plugin y agregar esta dll, elegir la opcion unpacker y esta ok.
leer esto:
7) AsProtect Unpacker
This will unpack file packed by AsProtect, fix it, dump asprotect.dll and print various information to text file. Please report targets, where it fails.
Limitations:
1) Doesn't find or fix SDK functions in 1.x versions (you need to find these manually).
There are two types of these. One has a form of one or more functions called before OEP, that do various initializations. If they are not run, the program may appear expired or not run at all. Find them and run them :-)
The second type is run after OEP and hides behind GetProcAddress with special parameters, which AsProtect (if available) redirects to its own code. You need to deal with these manually.
2) in 2.30 - 2.51, there are two types of stolen functions - one is PolyOEP style, the other is virtualized; it can fix only the former, while the latter is used in AsProtect itself only
3) it doesn't find CRC or envelope checks, but it can prevent one type of envelope check, which checks for E8 in jumps to API
4) it doesn't decrypt encrypted parts or sections
5) it doesn't find serial, fix trial etc.
6) if it has overlay, it may be broken after unpacking (for example if it needs to be in fixed offset in file or if it's a certificate)
Bugs:
- doesn't work with certain 1.10 variations, I will fix this when I have time
Notes:
- after unpacking files protected by AsProtect 2.x, you may need aspr_ide.dll; get it from aspack.com and modify if needed
noticia:3/8/10
tengo un unpacked:
usando el codedoctor hay un log, pero ahi le vi un poco largo
para ayudar un poco
comienza con este pseudounpacked si aun no lo tienes desempacado:
enlace unpacked proposito educacional:
http://www.mediafire.com/?x1mmrphjtch9hjfmas o menos asi deberia reconstruirse el EP :
cuando ya esta mas o menos des-virtualizado
009C0000 55 PUSH EBP
009C0001 8BEC MOV EBP,ESP
009C0003 6A FF PUSH -1
009C0005 68 08234200 PUSH 422308
009C000A 68 88934100 PUSH 419388 ; Entry address
009C000F 64:A1 00000000 MOV EAX,DWORD PTR FS:[0]
009C0015 50 PUSH EAX
009C0016 64:8925 00000000 MOV DWORD PTR FS:[0],ESP
009C001D 83EC 58 SUB ESP,58
009C0020 53 PUSH EBX
009C0021 56 PUSH ESI
009C0022 57 PUSH EDI
009C0023 8965 E8 MOV DWORD PTR SS:[EBP-18],ESP
009C0026 FF15 40214200 CALL DWORD PTR DS:[<&KERNEL32.GetVersion>; kernel32.GetVersion
009C002C 33D2 XOR EDX,EDX
009C002E 8AD4 MOV DL,AH
009C0030 8915 14784800 MOV DWORD PTR DS:[487814],EDX
009C0036 8BC8 MOV ECX,EAX
009C0038 81E1 FF000000 AND ECX,0FF
009C003E 890D 10784800 MOV DWORD PTR DS:[487810],ECX
009C0044 C1E1 08 SHL ECX,8
009C0047 03CA ADD ECX,EDX
009C0049 890D 0C784800 MOV DWORD PTR DS:[48780C],ECX
009C004F C1E8 10 SHR EAX,10
009C0052 A3 08784800 MOV DWORD PTR DS:[487808],EAX
009C0057 33F6 XOR ESI,ESI
009C0059 6A 00 PUSH 0
009C005B E8 EAB8A5FF CALL desempac.0041B94A
009C0060 59 POP ECX
009C0061 85C0 TEST EAX,EAX
009C0063 -0F85 AD12AEFF JNZ desempac.004A1316
009C0069 6A 1C PUSH 1C
009C006B E8 6606AEFF CALL desempac.004A06D6
009C0070 59 POP ECX
009C0071 8975 FC MOV DWORD PTR SS:[EBP-4],ESI
009C0074 E8 F4ECADFF CALL desempac.0049ED6D
009C0079 FF15 44214200 CALL DWORD PTR DS:[<&KERNEL32.GetCommand>; kernel32.GetCommandLineA
009C007F A3 688E4800 MOV DWORD PTR DS:[488E68],EAX
009C0084 E8 68FDADFF CALL desempac.0049FDF1
009C0089 A3 70784800 MOV DWORD PTR DS:[487870],EAX
009C008E E8 E111AEFF CALL desempac.004A1274
009C0093 E8 4512AEFF CALL desempac.004A12DD
009C0098 E8 6A04AEFF CALL desempac.004A0507
009C009D 8975 D0 MOV DWORD PTR SS:[EBP-30],ESI
009C00A0 8D45 A4 LEA EAX,DWORD PTR SS:[EBP-5C]
009C00A3 50 PUSH EAX
009C00A4 FF15 48214200 CALL DWORD PTR DS:[<&KERNEL32.GetStartup>; kernel32.GetStartupInfoA
009C00AA E8 160EAEFF CALL desempac.004A0EC5
009C00AF 8945 9C MOV DWORD PTR SS:[EBP-64],EAX
009C00B2 F645 D0 01 TEST BYTE PTR SS:[EBP-30],1
009C00B6 -0F84 17F9ADFF JE desempac.0049F9D3
009C00BC 0FB745 D4 MOVZX EAX,WORD PTR SS:[EBP-2C]
009C00C0 50 PUSH EAX
009C00C1 FF75 9C PUSH DWORD PTR SS:[EBP-64]
009C00C4 56 PUSH ESI
009C00C5 56 PUSH ESI
009C00C6 FF15 4C214200 CALL DWORD PTR DS:[<&KERNEL32.GetModuleH>; kernel32.GetModuleHandleA
009C00CC 50 PUSH EAX
009C00CD E8 B70EAEFF CALL desempac.004A0F89
009C00D2 8945 A0 MOV DWORD PTR SS:[EBP-60],EAX
009C00D5 50 PUSH EAX
009C00D6 E8 DD90A5FF CALL desempac.004191B8
009C00DB 8B45 EC MOV EAX,DWORD PTR SS:[EBP-14]
009C00DE 8B08 MOV ECX,DWORD PTR DS:[EAX]
009C00E0 8B09 MOV ECX,DWORD PTR DS:[ECX]
009C00E2 894D 98 MOV DWORD PTR SS:[EBP-68],ECX
009C00E5 50 PUSH EAX
009C00E6 51 PUSH ECX
009C00E7 E8 9ECFA5FF CALL desempac.0041D08A
009C00EC 59 POP ECX
009C00ED 59 POP ECX
009C00EE C3 RETN