Holas,
últimamente me hallo jugando por las noches al Zelda: Ocarina Of Time y pues cada vez que abro el Project64 sale el dialogo de donar, y un boton deshabilitado con una cuenta atrás o timer de 30 segundos. No sólo eso, sino que si cambio la config gráfica y me pongo a experimentar crashea y a volver a esperar los 30 secs...
Como en este foro no nos gustan las esperas, he bypasseado dicho timer para no tener que esperar como un buen ciudadano, y simplemente clickar ese botón. Sé que hay más posibilidades, como por ejemplo, impedir que se abra esa ventana que es un dialog en términos de la winAPI o bien habilitarlo en su creación, recompilar porque es software libre y un largo etc.
Antes de empezar, muestro el ANTES y el DESPUÉS de lo que sucede al abrir la aplicación:
ANTES
DESPUÉS (BYPASS)
Como Project64 ofrece un binario de 32bit en su release stable utilizamos nuestro debugger favorito, en mi caso OllyDbg ver2 va fenomenal. Abrimos OllyDbg e iniciamos Project64.exe
Ahora, para empezar, runeamos el software con F9. Cuando veamos que salga la ventana "molesta" le damos a Pause. Como el botón contiene el mensaje "Continue (X segundos)" abrimos el listado de ventanas instanciadas:
Click derecho en la fila del boton (ventana) Continue(27), y seleccionamos "Follow ClassProc"
Ponemos un breakpoint en la dirección de memoria donde nos ha llevado Olly y ejecutamos con F9:
Con Alt+K mostramos el Call Stack para ver que llamadas se han realizado hasta acabar en dicha dirección de memoria.
Hacemos doble click sobre la última llamada, la cual esta seleccionada en la imagen anterior. Esto nos lleva a la dirección de memoria donde se encuentra dicho procedimiento. Ahora estamos en 0x41D368.
En la direccion 0x41D56C vemos como hay una llamada a KillTimer. Además, hay un salto condicional, que evita la llamada a KillTimer:
Parcheamos con NOP la instrucción JNZ SHORT 0041D579 para que llame a KillTimer.
Y el resto es historia...
Dejo enlace a mega con el .exe para los que queraís usarlo y no sepaís utilizar esta guía, está limpio sentiros libres de pasarlo por Virustotal o vuestro AV. https://mega.nz/file/WxZTAKAC#Z6MV1MO7LloE1o4aCRPbqnnfvgRaZtCa_MWqxcEGLgQ
últimamente me hallo jugando por las noches al Zelda: Ocarina Of Time y pues cada vez que abro el Project64 sale el dialogo de donar, y un boton deshabilitado con una cuenta atrás o timer de 30 segundos. No sólo eso, sino que si cambio la config gráfica y me pongo a experimentar crashea y a volver a esperar los 30 secs...
Como en este foro no nos gustan las esperas, he bypasseado dicho timer para no tener que esperar como un buen ciudadano, y simplemente clickar ese botón. Sé que hay más posibilidades, como por ejemplo, impedir que se abra esa ventana que es un dialog en términos de la winAPI o bien habilitarlo en su creación, recompilar porque es software libre y un largo etc.
Antes de empezar, muestro el ANTES y el DESPUÉS de lo que sucede al abrir la aplicación:
ANTES
DESPUÉS (BYPASS)
Como Project64 ofrece un binario de 32bit en su release stable utilizamos nuestro debugger favorito, en mi caso OllyDbg ver2 va fenomenal. Abrimos OllyDbg e iniciamos Project64.exe
Ahora, para empezar, runeamos el software con F9. Cuando veamos que salga la ventana "molesta" le damos a Pause. Como el botón contiene el mensaje "Continue (X segundos)" abrimos el listado de ventanas instanciadas:
Click derecho en la fila del boton (ventana) Continue(27), y seleccionamos "Follow ClassProc"
Ponemos un breakpoint en la dirección de memoria donde nos ha llevado Olly y ejecutamos con F9:
Con Alt+K mostramos el Call Stack para ver que llamadas se han realizado hasta acabar en dicha dirección de memoria.
Hacemos doble click sobre la última llamada, la cual esta seleccionada en la imagen anterior. Esto nos lleva a la dirección de memoria donde se encuentra dicho procedimiento. Ahora estamos en 0x41D368.
En la direccion 0x41D56C vemos como hay una llamada a KillTimer. Además, hay un salto condicional, que evita la llamada a KillTimer:
Parcheamos con NOP la instrucción JNZ SHORT 0041D579 para que llame a KillTimer.
Y el resto es historia...
Dejo enlace a mega con el .exe para los que queraís usarlo y no sepaís utilizar esta guía, está limpio sentiros libres de pasarlo por Virustotal o vuestro AV. https://mega.nz/file/WxZTAKAC#Z6MV1MO7LloE1o4aCRPbqnnfvgRaZtCa_MWqxcEGLgQ