Arrancar el Pc con el SoftIce debidamente configurado.
Ejecutar el programa, y seleccionar la opción "Enter Registration
Code"
Ir al SoftIce (Ctrl+D), poner un breakpoint para la api
de windows MessageBoxA (BPX MessageBoxA), y volver al programa
(Ctrl+D).
Introducir cualquier número, y darle al OK.
Aparecemos en el SoftIce, y con un P RET (F12), nos situamos
en el código del programa, después de la llamada a MessageBox.
Si miramos unas línias más arriba, en busca de algún salto
condicional, encontramos un par de instrucciones JNZ.
En una de ellas, la instrucción precedente es un CALL. Ponemos
un breakpoint allí, haciendo doble click en la instrucción
del call.
Ya se puede desactivar el BPX MessageBoxA (BD 0), y seguir
la ejecución (Ctrl+D).
Nos sale la ventanita de Código incorrecto, pero como ya
tenemos los breakpoints colocados, volvemos a intentar el
registro.
Aparecemos en el SoftIce, en la instrucción del CALL donde
hemos puesto el breakpoint.
Si miramos el contenido de EDX (D EDX), ya tendremos lo
que queríamos ;-)
Lo apuntamos en un papel, desactivamos todos los breakpoints
(BD *),y continuamos con el programa(Ctrl+D).
Volvemos a registrarnos, ponemos el código que hemos encontrado,
y "Registration Complete" ;-)
En mi caso me han salido los códigos 5447213 (Font Look
3.2), 2618572 (DirectoryPrinter 1.8), AG3158NK (SuperTextSearch
1.6)
Me parece que también deben ser válidos en otros Pcs....;-)
|