Limite de tiempo

Iniciado por Amalthia_, 12 Junio 2009, 17:38 PM

0 Miembros y 1 Visitante están viendo este tema.

tena

Okey, acabo de probar cambiando los saltos y a mi por lo menos me anda, me voy a Final Quiz, termina la cancion y me dice "see your score" y me da el puntaje, pero bueno..

En cuanto a lo del retn en la funcion del timer, tambien si que funciona, lo que podes hacer es un loader que cargue al exe y una vez que llegue a ese call[esp+8] ya tenes esa sección cargada en memoria, asi que le pones el retn en la funcion del trial.

O tambien con oly podes hacer un injerto, ya que al llegar al call[esp+8]

00472604     .  5>PUSH EBX
00472605     .  F>CALL DWORD PTR SS:[ESP+8]
00472609     .  5>POP ECX
0047260A     .  E>JMP Tap_It_D.004726D1

en eax tenemos la direccion a donde va a saltar, podes ensamblar aqui un salto a una zona vacia, por jemplo en 004BB540 y poner aqui tu injerto...

slds

Amalthia_

¡Ya está! Teníais razón los dos. Me funciona de las dos maneras, lo que ocurría es que el fichero estaba corrupto por tanto cambio que le hice. Volví a instalar el programa de
nuevo y funciona perfectamente. Tu solución tena es la más sencilla, es la que he utilizado al final porque al tratarse de dos JMPs y en parte de código existente, se deja
parchear más fácilmente.

Ahora me he encontrado con otro "problemita" que no conozco. Al tratar de cargar otro de los programas del lote de teoría de la música,  el olly me dice: "hrmprgdm.exe is probably not a 32-bit Portable Executable. Try to load it anyway?" le digo que si y me inicia el programa, (veo el menú del trial) pero en el olly no aparece ningún código. He intentado descifrar, descomprimir, etc. Pero todos lo programas que uso me dicen lo mismo: "Not a valid PE file" ¿Alguna idea de cómo puedo conseguir cargarlo?
El programa en concreto podéis descargarlo aquí: http://www.ecsmedia.com/indivprods/musharmprog.shtml

Gracias por vuestra ayuda.

Salu2  :D

biribau

Buf, he mirado un poco y no es sencilla la cosa.

No es un ejecutable de win32, es de win16(windows 3.1 etc), un new executable(NE), el olly al parecer no te sirve...  :o

Deberias probar con windbg, o el debugger de una version antigua de visual c que funcione para 16 bits, pero no lo he probado. Intente con el debug que trae windows y dice que no puede arrancar windows asi que nada. El IDA lo desensambla pero no me deja depurarlo.. ademas saca cosas extrañas que no encuentro con el editor hexadecimal...(lo mire poco)
Quizás tb pudieras usar un debugger de ring0, i.e. un system debugger que capte las llamadas hechas por todo el sistema, aun asi parece complicado aterrizar en su codigo

La verdad podria ser buena idea para un crackme, un NE comprimido pero no creo que tenga mucho interes, si como reto pero practico ninguno

Otra posibilidad, instalarte un MV con windows 3.1 y todo el aparataje necesario para debuggear, aunque no se nada de esto

Como ultima opcion pydbg y las apis de windows, yo me estoy iniciando en el y es interesantisimo es un debugger "programatico", GPL y con un codigo python que se lee muy bien, sin duda merece la pena, solo que tendrias que programarte de 0 casi todo pues esta preparadop para win32

Si tanto te interesa creo que estas son las opciones

Suerte y a por ellos, espero tus avances

Amalthia_

biribau, no es que ya no me interese el tema, me interesa muchísimo, lo que ocurre
es que todavía no he encontrado el debugger apropiado y no puedo cargar el programa. En cuanto lo encuentre me gustaría, (si no te importa) retomar este hilo y ver si conseguimos llegar a buen puerto.
salu2 