PDA

Ver la versión completa : Descompilar exe



gunni
16-11-2012, 17:03
Hola a todo el mundo. Creo este post para ver si alguien me puede ayudar a descompilar un cliente exe. Lo intente con varios programas, incluido con Ollydbg y el plugin mbunpack, pero no fui capaz. Analizándolo con RDG Packer Detector me salió que estaba compilado con Molebox 2.6.5.
Aquí dejo el link del archivo que quiero descompilar por si alguien puede ayudarme...

Link editado

Una explicación me vendría genial. Gracias muy de antemano, de verdad.

clarinetista
16-11-2012, 22:04
Hola gunni, bienvenido al foro.
Las normas prohíben la subida de archivos a servidores.

@riel
17-11-2012, 06:25
hola gunni
la manera para desempaquetar Molebox es con el metodo de pushad-popad que es bastante facil para encontrar el oep del sofdware, te va a generar aproximada mente 12 exepciones antes de llegar a el y debes irlas pasando para que te pare una linea despues del popad, das f7 3 veces y estaras parado en el oep, dumpeas y luego buscas el salto para que no te dañe la iat, me parece mas facil si colocas un bp en VirtualProtect , pero tambien puedes hacerlo cambiando directamente el salto que te va escribiendo las entradas malas.
si quieres ve mostrando por donde vas y con mucho gusto te voy dando ideas para que lo hagas.
salu2...

gunni
17-11-2012, 14:47
Por lo que he podido ver en un tutorial de Youtube, Pushad-Popad es darle a espacio y escribir "PUSHAD" darle a f7 y luego hacer lo mismo pero con "POPAD". Después de eso me quedo completamente perdidísimo (También le doy 3 veces a f7 y me lleva a otro lado, pero no sé donde). Ya luego, con lo de dumpear (que no sé muy bien hacerlo) me pierdo totalmente...
PD: Perdón por subir el archivo.

clarinetista
17-11-2012, 23:21
PD: Perdón por subir el archivo.
No hay problema :)

@riel
18-11-2012, 02:09
primero que todo debes usar ollydbg para esto,
cuando abras el ejecutable apareceras en:

007E4B33 > E8 00000000 CALL Digiwo.007E4B38
007E4B38 60 PUSHAD
007E4B39 E8 4F000000 CALL Digiwo.007E4B8D
007E4B3E 80E0 49 AND AL,49
007E4B41 F4 HLT ; Privileged command

a este pushad es que me refiero, debes darle f7 2 veces para pasar el pushad, ir al registro esp y hacer click derecho "follow in dump"
EAX 00000000
ECX 0012FFB0
EDX 7C91E4F4 ntdll.KiFastSystemCallRet
EBX 7FFD6000
ESP 0012FFA0
EBP 0012FFF0
ESI FFFFFFFF
EDI 7C920208 ntdll.7C920208
EIP 007E4B39 Digiwo.007E4B39

y colocar un BP hardware on access dword, a los cuatro bytes de esa direccion le das f9 y te genera 12 exepciones aproximada mente que debes pasar con shif +f7 y f9 cuando hagas esto olly parara aca:

007E4710 61 POPAD
007E4711 58 POP EAX ; Digiwo.007E4B38
007E4712 58 POP EAX
007E4713 FFD0 CALL EAX

como ves lo hace debajo de el popad y esto hace que los valores que guardo en la pila se organisen nuevamente.

le das 3 veces a f7 para que entre en el call eax y estaras parado en el oep del programa.

0055D02B 6A 60 PUSH 60
0055D02D 68 181F5D00 PUSH Digiwo.005D1F18
0055D032 E8 E1090000 CALL Digiwo.0055DA18
0055D037 BF 94000000 MOV EDI,94

aca te vas a plugins de olly y eliges olly dump, le quitas la tilde a rebuild import y oprimes dump, guardas el archivo en una carpeta distinta para no sobreescribir el que estas usando o le pones otro nombre
has esto para indicarte como reparar la iat
salu2...