|
31
|
Programación / Ingeniería Inversa / Re: Problemilla con un trial.
|
en: 4 Octubre 2010, 16:12 pm
|
pues a mi cuando le cambio la fecha al PC superior a 15/01/2011 como no le ponga en la dirección 00406BC9 0F8D 8B010000 JGE 00406D5A un JMP me sale este aviso de los dias que faltan hasta el 15/02/2011 ó los que me he pasado, para obtener el codigo de licencia --------------------------- Por ci tec Studio 2009 --------------------------- Debe renovar su Código Licencia. Usted dispone de -231 días. Por favor, vaya a www.********.com y en su Espacio Cliente haga clic en 'Obtener Código Licencia' --------------------------- OK ---------------------------
|
|
|
32
|
Programación / Ingeniería Inversa / Re: Ayuda trial finalizado
|
en: 3 Octubre 2010, 23:42 pm
|
@bebito007, en todo programa hay un punto despues de considerar que el programa esta Registrado "IsRegistered", y a partir de dicho punto o "byte" el programa coge el camino full.
La cuestión es encontrar ese sitio, esto a veces es facil encontrarlo, por ejemplo si el programa te dice que no está registrado, es porque un poco antes ha comprobado que dicho punto no tiene el valor correcto, la cuestión como te digo, a veces depende de intuir que valor es el correcto, por ejemplo si hay un 1, quizas el valor correcto es un 0, ó viceversa.
|
|
|
33
|
Programación / Ingeniería Inversa / Re: Problemilla con un trial.
|
en: 3 Octubre 2010, 19:11 pm
|
El que faltaba para el duro. 009B3FA9 . E8 76AAA5FF CALL 0040EA24 009B3FAE . 8845 FF MOV BYTE PTR [EBP-1],AL 009B3FB1 807D FF 00 CMP BYTE PTR [EBP-1],0 009B3FB5 . 74 1C JE SHORT 009B3FD3 009B3FB7 . 8B4D 08 MOV ECX,DWORD PTR [EBP+8] 009B3FBA . 80B9 90000000 00 CMP BYTE PTR [ECX+90],0 009B3FC1 . 75 10 JNZ SHORT 009B3FD3 009B3FC3 . 8B45 08 MOV EAX,DWORD PTR [EBP+8] 009B3FC6 . FF70 7C PUSH DWORD PTR [EAX+7C] ; /Arg1 009B3FC9 . E8 26790000 CALL @TComptaDB@IsFi$qv ; \@TComptaDB@IsFi$qv 009B3FCE . 59 POP ECX 009B3FCF . 84C0 TEST AL,AL 009B3FD1 . 74 04 JE SHORT 009B3FD7 009B3FD3 > 33C0 XOR EAX,EAX 009B3FD5 EB 05 JMP SHORT 009B3FDC 009B3FD7 > B8 01000000 MOV EAX,1 009B3FDC > 8BE5 MOV ESP,EBP 009B3FDE . 5D POP EBP 009B3FDF . C3 RETN.modificado 009B3FA9 . E8 76AAA5FF CALL 0040EA24 009B3FAE . 8845 FF MOV BYTE PTR [EBP-1],AL 009B3FB1 807D FF 00 CMP BYTE PTR [EBP-1],0 009B3FB5 . 74 1C JE SHORT 009B3FD3 009B3FB7 . 8B4D 08 MOV ECX,DWORD PTR [EBP+8] 009B3FBA . 80B9 90000000 00 CMP BYTE PTR [ECX+90],0 009B3FC1 . 75 10 JNZ SHORT 009B3FD3 009B3FC3 . 8B45 08 MOV EAX,DWORD PTR [EBP+8] 009B3FC6 . FF70 7C PUSH DWORD PTR [EAX+7C] ; /Arg1 009B3FC9 . E8 26790000 CALL @TComptaDB@IsFi$qv ; \@TComptaDB@IsFi$qv 009B3FCE . 59 POP ECX 009B3FCF . 84C0 TEST AL,AL 009B3FD1 . 74 04 JE SHORT 009B3FD7 009B3FD3 > 33C0 XOR EAX,EAX 009B3FD5 90 90 NOP NOP 009B3FD7 > B8 01000000 MOV EAX,1 009B3FDC > 8BE5 MOV ESP,EBP 009B3FDE . 5D POP EBP 009B3FDF . C3 RETNcreo que deberia ser uno de los primeros a cicatrizar, y quizás necesite la titi menos arreglos, que a los maestros les gusta las cosas bien hechas ...
|
|
|
34
|
Programación / Ingeniería Inversa / Re: Problemilla con un trial.
|
en: 3 Octubre 2010, 13:41 pm
|
@betatester a las que ya tienes claro añade estas 00405A95 |. E8 92F75A00 CALL @TSiglopro@GetLicense$qv 00405A9A |. 50 PUSH EAX ; |Arg1 00405A9B |. E8 E8E55A00 CALL @TSiglopro@IsModule$q7TModule ; \@TSiglopro@IsModule$q7TModule 00405AA0 |. 83C4 08 ADD ESP,8 00405AA3 |. 84C0 TEST AL,AL 00405AA5 |. 74 30 JE SHORT 00405AD7.modificado 00405A95 |. E8 92F75A00 CALL @TSiglopro@GetLicense$qv 00405A9A |. 50 PUSH EAX ; |Arg1 00405A9B |. E8 E8E55A00 CALL @TSiglopro@IsModule$q7TModule ; \@TSiglopro@IsModule$q7TModule 00405AA0 |. 83C4 08 ADD ESP,8 00405AA3 |. 84C0 TEST AL,AL 00405AA5 |. EB 30 JMP SHORT 00405AD7solucionado el menu Granja y el acceso directo en la barra de iconos de Entrada Eventos. 00406BBB 8945 B4 MOV DWORD PTR [EBP-4C],EAX ; eax=dias que restan hasta el 15/02/2011 00406BBE C745 98 1E000000 MOV DWORD PTR [EBP-68],1E ; compara dias que restan hasta 15/02/2011 con 30 00406BC5 837D B4 1E CMP DWORD PTR [EBP-4C],1E 00406BC9 0F8D 8B010000 JGE 00406D5A ; salta si los dias que faltan es igual o superior a 30 00406BCF |. E8 58E65A00 CALL @TSiglopro@GetLicense$qv 00406BD4 |. 83B8 AC000000 00 CMP DWORD PTR [EAX+AC],0 00406BDB |. 0F85 BF000000 JNZ 00406CA0 00406BE1 |. 66:C745 C8 0800 MOV WORD PTR [EBP-38],8 00406BE7 |. 8D45 F0 LEA EAX,DWORD PTR [EBP-10] 00406BEA |. E8 C9E0FFFF CALL 00404CB8 00406BEF |. 50 PUSH EAX 00406BF0 |. FF45 D4 INC DWORD PTR [EBP-2C] 00406BF3 |. 68 0F97DE00 PUSH 00DE970F ; ASCII "The Free version license must be renewed each year. You have %d days left. Please go to www.***********.com and download the new revision".modificado 00406BB6 |. E8 ADFFFFFF CALL 00406B68 00406BBB 8945 B4 MOV DWORD PTR [EBP-4C],EAX ; eax=dias que restan hasta el 15/02/2011 00406BBE C745 98 1E000>MOV DWORD PTR [EBP-68],1E 00406BC5 > 837D B4 1E CMP DWORD PTR [EBP-4C],1E ; compara dias que restan hasta 15/02/2011 con 30 00406BC9 > E9 8C010000 JMP 00406D5A ; saltar siempre sin importar si los dias que faltan ó pasan es igual o superior a 30 00406BCE 90 NOP 00406BCF |. E8 58E65A00 CALL @TSiglopro@GetLicense$qv 00406BD4 |. 83B8 AC000000>CMP DWORD PTR [EAX+AC],0 00406BDB |. 0F85 BF000000 JNZ 00406CA0 00406BE1 |. 66:C745 C8 08>MOV WORD PTR [EBP-38],8 00406BE7 |. 8D45 F0 LEA EAX,DWORD PTR [EBP-10] 00406BEA |. E8 C9E0FFFF CALL 00404CB8 00406BEF |. 50 PUSH EAX 00406BF0 |. FF45 D4 INC DWORD PTR [EBP-2C] 00406BF3 |. 68 0F97DE00 PUSH 00DE970F ; ASCII "The Free version license must be renewed each year. You have %d days left. Please go to www.***********.com and download the new revision"Con esto evitamos caducidad al 15/02/2011 y creo que tambien evita la desaparición de algunos menú, que se perdian despues del periodo de prueba. 009B3D32 |. 84C0 TEST AL,AL 009B3D34 0F85 C2000000 JNZ 009B3DFC ; saltar 009B3D3A |. 8D4D A0 LEA ECX,DWORD PTR [EBP-60].modificado 009B3D32 |. 84C0 TEST AL,AL 009B3D34 E9 C3000000 JMP 009B3DFC ; saltar 009B3D39 90 NOP 009B3D3A |. 8D4D A0 LEA ECX,DWORD PTR [EBP-60]Con esto evitamos que al comportarse como versión registrada se crea que tiene licencia despues del periodo de prueba, para que no la compruebe.
creo que ya solo falta una más para que no se pierda la opcion backup y restore del menu...
|
|
|
36
|
Programación / Ingeniería Inversa / Re: Imposible desempackar armadillo... lleva algo mas que desconozco por completo
|
en: 1 Octubre 2010, 16:19 pm
|
no se a que te refieres cuando dices que no puedes con el mira si corro el programa original despues de reinstalarlo, porque de la vez anterior para probar, ya lo borré. Ahora me sale el siguiente mensaje: Your system clock appears to have been set back, possibly in an attempt to defeat the security system on this program. Please correct your system clock before trying to run this program again. If your clock is correct, please contact the author of this program for instructions on correcting this error (report code CCB-F). [Aceptar] que quiere decir que recuerda que ya se instaló antes con otra fecha, no se si quizás fue con fecha de dentro de un año, por las pruebas que hago hay veces que mi PC tiene la fecha a la virulé. Bueno, si le cambio la fecha me dice que la key ya ha caducado y me da opcion a registrarlo con nombre y key, pero me olvido de perder tiempo en ello, porque con el upaked de apuromafo, corre bien y no me pide ni clave ni me quita el sueño. Bueno, lo que creo que te pasa es que no te deja desempacarlos con el armageddon, porque ya se te caducó y no se inicia completamente y se cierra sin pasar por código del programa, por lo que no llega a desempacarse y poder dumpearlo. Lo que tienes que hacer es limpiar tu PC de rastros de triales de armadillo, para ello utiliza el Trial-Reset 3.3 (puede que el antivirus te detecte el Trial-Reset como virus, pero total no le hagas caso, quien algo quiere algo le cuesta Una vez limpiado el registro de licencias de armadillo, corre el programa de nuevo que ya lo tendrás de nuevo en periodo trial, y ahora si ejecutas el armageddon con las opciones que te puso el amigo apuromafo más arriba. En el paso 2 seleccionas el exe original, se iniciará, pulsa ok normal para continuar, otro Ok mas, y te pedirá que le pongas un nombre al dumpeado que se va a crear, por ejemplo "midump", (te creara dos ficheros uno con el nombre midump.exe y otro segundo con el nombre midump_.exe, fijate que le ha añadido un guión bajo para diferenciarlos. Entonces, el progi se reiniciara de nuevo, otra vez pulsas en aceptar para continuar y en esta segunda ocasión analizará los nanonites y una vez terminado te da la opción de "reparar", pulsa en reparar y te pedira que selecciones el dump_.exe que creaste en el primer paso, y ya tendrás tu dump_nanoFix.exe, sin la protección armadillo. Suerte-
|
|
|
37
|
Programación / Ingeniería Inversa / Re: AYUDA CON SERIAL QUE SE GENERA A PARTIR DEL NUMERO DE LA PC
|
en: 1 Octubre 2010, 09:48 am
|
Habria que ver los programas, porque quizás el exe de 16 bit solo sea para generar el serial de la máquina, y el otro se encarga de compararlo con el introducido.
Cuando estés detenido en el mensajes de error, intenta con un monitor de memoria, a buscar en la memoria del PC tu serial y de encontrarlo, puede que cerca esté el de comparación generado para la máquina.
Prueba por ejemplo con el "memspy" de toshifumi yamamoto.
|
|
|
38
|
Programación / Ingeniería Inversa / Re: Ayuda (mis primeros pasos con ollydb para intentar registrar un programa)
|
en: 30 Septiembre 2010, 23:23 pm
|
partiendo del lugar donde coge una de las cadenas que calificastes como curiosas 00581734 |> \BA A0078D00 MOV EDX,008D07A0 ; ASCII "hmXsC8mWHsCc6eggh9h5PFH7K"; Default case of switch 00581538subimos en el código para ver si con un poco de suerte nos encontramos algo interesante y vemos lo siguiente: 0058152D |. 84C9 TEST CL,CL 0058152F |. 74 07 JE SHORT 00581538 00581531 |. C683 D2030000 00 MOV BYTE PTR [EBX+3D2],0 00581538 |> 83EF 01 SUB EDI,1 ; Switch (cases 0..2) 0058153B 72 0E JB SHORT 0058154B 0058153D |. 74 2E JE SHORT 0058156D 0058153F |. 4F DEC EDI 00581540 |. 0F84 CB000000 JE 00581611 00581546 |. E9 E9010000 JMP 00581734 0058154B |> 807D 97 00 CMP BYTE PTR [EBP-69],0 ; Case 0 of switch 00581538 0058154F |. 75 10 JNZ SHORT 00581561 00581551 |. B0 01 MOV AL,1 00581553 |. 8B16 MOV EDX,DWORD PTR [ESI] 00581555 |. 64:8915 00000000 MOV DWORD PTR FS:[0],EDX 0058155C |. E9 73030000 JMP 005818D4 00581561 |> C683 D3030000 01 MOV BYTE PTR [EBX+3D3],1 00581568 |. E9 C7010000 JMP 00581734 0058156D |> B2 01 MOV DL,1 ; Case 1 of switch 00581538 0058156F |. 8B83 A8030000 MOV EAX,DWORD PTR [EBX+3A8] 00581575 |. 8B08 MOV ECX,DWORD PTR [EAX] 00581577 |. FF51 74 CALL DWORD PTR [ECX+74] 0058157A |. 66:C746 10 2400 MOV WORD PTR [ESI+10],24 00581580 |. BA 85078D00 MOV EDX,008D0785 ; ASCII "LaunchCount" 00581585 |. 8D45 EC LEA EAX,DWORD PTR [EBP-14] 00581588 |. E8 5B4A2D00 CALL 00855FE8 0058158D |. FF46 1C INC DWORD PTR [ESI+1C] 00581590 |. E8 0347FFFF CALL 00575C98 00581595 |. 8BF8 MOV EDI,EAX 00581597 |. 6A 00 PUSH 0 00581599 |. 8D4D EC LEA ECX,DWORD PTR [EBP-14] 0058159C |. 51 PUSH ECX 0058159D |. BA 92078D00 MOV EDX,008D0792 ; UNICODE "Main"que parece interesante "LaunchCount", umm parece una referencia del programador para contar los lanzamientos demos del programa, mas abajo tambien el texto "Main", que hace referencia al formulario principal del programa, y que hay un "Switch" con tres opciones que dependen del valor existente en el registro EDI, Hasta aquí en version trial llego con el valor 1 en EDI, y salta a la opcion 1 del Swich con el LauncCount gracioso, pero como yo tambien soy gracioso le cambio el valor de EDI a 0 y continuo por el Swuich case 0, y no me sale la ventana de registrar, pero me sigue saliendo en el menu la opción "Buy now.." para comprar. Asi que tenemos que profundizar un poco mas, para encontrar donde se le da al registro EDI, el valor 1 de versión trial, para cambiarlo por el de valor 0 que ya suponemos que es el de registrado, porque no nos sale la nag de compra. Subiendo más en el código hasta donde comienza dicho proceso, vemos (y vamos comprobando parando en las call reiniciando varias veces por si toma el valor de los procesos de las call intermedias), que a EDI le pasa el valor 1 el registro EDX, al comienzo del procedimiento 00581428 |. 8BFA MOV EDI,EDXpor lo que ahora tenemos que buscar donde coge EDX el valor 1 antes de entrar en el procedimiento de marras. Para esto, al principio del procedimiento 0058141C /$ 55 PUSH EBP la hacemos un Control+R, y obtenemos todas la call donde se llama al procedimiento, para saber en cual de ellas tenemos que fijarnos, le ponemos un BP (F2) a cada una, reiniciamos y ya caemos en la call que se encarga del proceso. Estando parado en esa Call de llamada en 005904D2, tenemos que subir para encontrar donde coge EDX el valor 1, 005904BE |. 52 PUSH EDX 005904BF |. 8B0A MOV ECX,DWORD PTR [EDX] 005904C1 |. FF91 D4000000 CALL DWORD PTR [ECX+D4] 005904C7 |. 59 POP ECX 005904C8 |. 8BD0 MOV EDX,EAX 005904CA |. 33C9 XOR ECX,ECX 005904CC |. 8B85 ECFDFFFF MOV EAX,DWORD PTR [EBP-214] 005904D2 |. E8 450FFFFF CALL 0058141Cvemos que a EDX se le mueve el valor de EAX, ya tenemos un nuevo objetivo, buscar donde se mueve a EAX el valor 1, para esto vemos que un poco antes hay una CALL a otro procedimiento, ¿será la llave?. Vamos a ponerle a esta call un BP con F2 porque no podemos entrar directamente, y vamos a reiniciar de nuevo el programa, ahora paramos en la call, y con F7 entramos en ella y vemos lo siguiente: 005D992C /. 55 PUSH EBP 005D992D |. 8BEC MOV EBP,ESP 005D992F |. B8 01000000 MOV EAX,1 005D9934 |. 5D POP EBP 005D9935 \. C3 RETNYa tenemos donde coge EAX el valor 1, ¿y si lo cambiamos por un cero de los que nos calificaban cuando estabamos en el colegio?, ya corremos el programa sin mas paradas y no aparece la nag de compra ni la misma opción en el menú, por lo que es de suponer que el resultado es definitivo. Pero podemos y debemos profundizar un poco más ya que si estuviesemos registrado seguramente no pasariamos por dicho lugar, así que vamos a ver porqué se llega a este código de la version TRIAL, y mirando de donde procede el que se llame a dicho lugar, vemos que llegamos dependiendo de que se produzca el salto JE de 005DB5CA. 005DB56A |. 8985 9CFEFFFF MOV DWORD PTR [EBP-164],EAX 005DB570 |. 8B8D 9CFEFFFF MOV ECX,DWORD PTR [EBP-164] 005DB576 |. 898D E8FDFFFF MOV DWORD PTR [EBP-218],ECX 005DB57C |. 8B4B 28 MOV ECX,DWORD PTR [EBX+28] 005DB57F |. 898D 98FEFFFF MOV DWORD PTR [EBP-168],ECX 005DB585 |. 8B85 98FEFFFF MOV EAX,DWORD PTR [EBP-168] 005DB58B |. 8985 D8FDFFFF MOV DWORD PTR [EBP-228],EAX 005DB591 8B95 D8FDFFFF MOV EDX,DWORD PTR [EBP-228] 005DB597 |. 3B95 E8FDFFFF CMP EDX,DWORD PTR [EBP-218] 005DB59D |. 0F94C1 SETE CL 005DB5A0 |. 83E1 01 AND ECX,1 005DB5A3 |. 84C9 TEST CL,CL 005DB5A5 |. 75 29 JNZ SHORT 005DB5D0 005DB5A7 |. 8B85 E8FDFFFF MOV EAX,DWORD PTR [EBP-218] 005DB5AD |. 8985 94FEFFFF MOV DWORD PTR [EBP-16C],EAX 005DB5B3 |. 8B95 94FEFFFF MOV EDX,DWORD PTR [EBP-16C] 005DB5B9 |. 8B4A 0C MOV ECX,DWORD PTR [EDX+C] 005DB5BC |. 3B8D A0FEFFFF CMP ECX,DWORD PTR [EBP-160] 005DB5C2 |. 0F97C0 SETA AL 005DB5C5 |. 83E0 01 AND EAX,1 005DB5C8 84C0 TEST AL,AL 005DB5CA |. 0F84 BE000000 JE 005DB68Ey para que el salto JE se produzca depende que en 005DB5C2 el SETA AL de un resultado verdadero "true", por lo que deducimos que si la comparación diese un resultado falso no se produciria el salto que nos lleva al bit indicativo de versión trial (así que lo cambio SETA por un SETBE que es lo opuesto, y además el salto que hay un poco antes que evitaria el pasar por ahí, lo NOPeo, vaya ser que en un futuro se produzca el salto por vaya usted a saber porqué, y ya nos mete la gamba). 005DB56A 8985 9CFEFFFF MOV DWORD PTR [EBP-164],EAX 005DB570 8B8D 9CFEFFFF MOV ECX,DWORD PTR [EBP-164] 005DB576 898D E8FDFFFF MOV DWORD PTR [EBP-218],ECX 005DB57C |. 8B4B 28 MOV ECX,DWORD PTR [EBX+28] 005DB57F 898D 98FEFFFF MOV DWORD PTR [EBP-168],ECX 005DB585 |. 8B85 98FEFFFF MOV EAX,DWORD PTR [EBP-168] 005DB58B |. 8985 D8FDFFFF MOV DWORD PTR [EBP-228],EAX 005DB591 8B95 D8FDFFFF MOV EDX,DWORD PTR [EBP-228] 005DB597 |. 3B95 E8FDFFFF CMP EDX,DWORD PTR [EBP-218] 005DB59D |. 0F94C1 SETE CL 005DB5A0 |. 83E1 01 AND ECX,1 005DB5A3 |. 84C9 TEST CL,CL 005DB5A5 90 NOP 005DB5A6 90 NOP 005DB5A7 8B85 E8FDFFFF MOV EAX,DWORD PTR [EBP-218] 005DB5AD |. 8985 94FEFFFF MOV DWORD PTR [EBP-16C],EAX 005DB5B3 |. 8B95 94FEFFFF MOV EDX,DWORD PTR [EBP-16C] 005DB5B9 |. 8B4A 0C MOV ECX,DWORD PTR [EDX+C] 005DB5BC |. 3B8D A0FEFFFF CMP ECX,DWORD PTR [EBP-160] 005DB5C2 0F96C0 SETBE AL ; false 005DB5C5 |. 83E0 01 AND EAX,1 005DB5C8 84C0 TEST AL,AL 005DB5CA |. 0F84 BE000000 JE 005DB68E ; saltarllegado aqui tambien pueden decir que lo mas seguro es poner un JMP, pero no me gusta machacar P.d. tambien se puede estudiar los valores que se mueven y comparan en dicho procedimiento, que quizas sean interesantes ????. probar si funciona, que a mi me da la F1ACA meter 200 transaciones ...
|
|
|
40
|
Programación / Ingeniería Inversa / Re: Problemilla con un trial.
|
en: 30 Septiembre 2010, 00:25 am
|
1.
009B40E1 |> 84C0 TEST AL,AL 009B40E3 |. 0F95C0 SETNE AL 009B40E6 |. 83E0 01 AND EAX,1
.modificado
009B40E1 |> \84C0 TEST AL,AL 009B40E3 |. 0F94C0 SETE AL 009B40E6 |. 83E0 01 AND EAX,1
2.
00B08CCA |. 84C0 TEST AL,AL 00B08CCC |. 74 27 JE SHORT 00B08CF5 00B08CCE |. 8B4D FC MOV ECX,DWORD PTR [EBP-4]
.modificado
00B08CCA |. 84C0 TEST AL,AL 00B08CCC |. EB 27 JMP SHORT 00B08CF5 00B08CCE |. 8B4D FC MOV ECX,DWORD PTR [EBP-4]
3.
009B4269 8990 AC000000 MOV DWORD PTR [EAX+AC],EDX 009B426F 8B4D 08 MOV ECX,DWORD PTR [EBP+8] 009B4272 F681 AC000000 04 TEST BYTE PTR [ECX+AC],4 009B4279 74 51 JE SHORT 009B42CC
.modificado
009B4269 C780 AC000000 04000000 MOV DWORD PTR [EAX+AC],4 009B4273 90 NOP 009B4274 90 NOP 009B4275 90 NOP 009B4276 90 NOP 009B4277 90 NOP 009B4278 90 NOP 009B4279 90 51 JMP SHORT 009B42CC
4.
00415DB6 |. DFE0 FSTSW AX 00415DB8 |. 9E SAHF 00415DB9 0F97C0 SETA AL 00415DBC |. 83E0 01 AND EAX,1
.modificado
00415DB6 |. DFE0 FSTSW AX 00415DB8 |. 9E SAHF 00415DB9 33C0 XOR EAX,EAX 00415DBB 90 NOP 00415DBC |. 83E0 01 AND EAX,1
5.
009B3F79 |. 80B8 C8000000 00 CMP BYTE PTR [EAX+C8],0 009B3F80 75 04 JNZ SHORT 009B3F86 009B3F82 |. 33C0 XOR EAX,EAX
.modificado
009B3F79 |. 80B8 C8000000 00 CMP BYTE PTR [EAX+C8],0 009B3F80 EB 04 JMP SHORT 009B3F86 009B3F82 |. 33C0 XOR EAX,EAX
6.
009BB8FA 8378 08 01 CMP DWORD PTR [EAX+8],1 009BB8FE 75 04 JNZ SHORT 009BB904 009BB900 B0 01 MOV AL,1
.modificado
009BB8FA 8378 08 01 CMP DWORD PTR [EAX+8],1 009BB8FE 90 NOP 009BB8FF 90 NOP 009BB900 B0 00 MOV AL,0
7.
00A6CF15 84C0 TEST AL,AL 00A6CF17 |. 74 40 JE SHORT 00A6CF59 00A6CF19 |. 8B4D FC MOV ECX,DWORD PTR [EBP-4] 00A6CF1C |. 8B81 4C030000 MOV EAX,DWORD PTR [ECX+34C]
.modificado
00A6CF15 84C0 TEST AL,AL 00A6CF17 |. EB 40 JMP SHORT 00A6CF59 00A6CF19 |. 8B4D FC MOV ECX,DWORD PTR [EBP-4] 00A6CF1C |. 8B81 4C030000 MOV EAX,DWORD PTR [ECX+34C]
8.
009B47DB 0F95C0 SETNE AL 009B47DE 83E0 01 AND EAX,1
.modificado
009B47DB 33C0 XOR EAX,EAX 009B47DD 40 INC EAX 009B47DE 90 NOP 009B47DF 90 NOP 009B47E0 90 NOP
9.
00A795E2 |. 84C0 TEST AL,AL 00A795E4 |. 74 0A JE SHORT 00A795F0 00A795E6 |. B2 01 MOV DL,1
.modificado
00A795E2 |. 84C0 TEST AL,AL 00A795E4 EB 0A JMP SHORT 00A795F0 00A795E6 |. B2 01 MOV DL,1
|
|
|
|
|
|
|