Hola a todos y todas en el foro soy nuevo gracias a Dios
y vengo a enseñar a cómo hacer el parche de WinISO 5.3
de manera manual
Información del Ejecutable:
Compresor: UPX Generic
PE File: winiso.exe
Protección: Registration Code y el Packer pero sería fácil si Dios
Lo Permite.
Para empezar el packer upx es fácil de desempacar porque no te destruye la IAT
y solo tienes que descomprimir el ejecutable
pero para esto utilizaremos el mismo upx.exe para desempacar winiso.exe
de la siguiente manera:
Damos tecla WIN+R y escribimos en la ventana que nos aparecerá el comando "cmd"
para abrir la consola de comandos de Windows.
Luego de obtener el ejecutable descomprimido por el mismo upx
procederemos a buscar en las referencias de textos o strings la palabra clave:"Unregistered"
y llegaremos a esta parte del código si Dios quiere:
DS:[004E1D13]=00[/b]
Ven que está escrito el valor cero en ésta dirección en memoria haremos
lo contrario por esto este arte gracias a Dios se llama ingeniería inversa
le pondremos el valor uno de la siguiente manera vean:
Sí pero desde ahí no funcionó porque no nos crackea el programa
pero miren lo siguiente:
La instrucción es la misma porque la busque en referencias de constantes desde la zona de unregistered version y solo cambiamos al valor 1 esa instrucción y ya lo tendremos activado
el programa gracias al Señor Jesucristo :')
Y así ya logramos hacer el Parche o Patch en inglés gracias al Señor Jesús Que Sería Dios
de éste programa WinISO v5.3
¡Que Dios me los bendiga y guarde siempre saludos!
y vengo a enseñar a cómo hacer el parche de WinISO 5.3
de manera manual
Información del Ejecutable:
Compresor: UPX Generic
PE File: winiso.exe
Protección: Registration Code y el Packer pero sería fácil si Dios
Lo Permite.
Para empezar el packer upx es fácil de desempacar porque no te destruye la IAT
y solo tienes que descomprimir el ejecutable
pero para esto utilizaremos el mismo upx.exe para desempacar winiso.exe
de la siguiente manera:
Damos tecla WIN+R y escribimos en la ventana que nos aparecerá el comando "cmd"
para abrir la consola de comandos de Windows.
Código:
Microsoft Windows [Versión 10.0.19045.3570]
(c) Microsoft Corporation. Todos los derechos reservados.
C:\Users\TEMP.LAPTOP-L8BH186Q.000>cd C:\Users\TEMP.LAPTOP-L8BH186Q.000\Desktop\AT4RE Patcher v0.7.6
C:\Users\TEMP.LAPTOP-L8BH186Q.000\Desktop\AT4RE Patcher v0.7.6>upx.exe -d winiso.exe
Ultimate Packer for eXecutables
Copyright (C) 1996 - 2013
UPX 3.91w Markus Oberhumer, Laszlo Molnar & John Reiser Sep 30th 2013
File size Ratio Format Name
-------------------- ------ ----------- -----------
1229824 <- 413696 33.64% win32/pe winiso.exe
Unpacked 1 file.
C:\Users\TEMP.LAPTOP-L8BH186Q.000\Desktop\AT4RE Patcher v0.7.6>
(c) Microsoft Corporation. Todos los derechos reservados.
C:\Users\TEMP.LAPTOP-L8BH186Q.000>cd C:\Users\TEMP.LAPTOP-L8BH186Q.000\Desktop\AT4RE Patcher v0.7.6
C:\Users\TEMP.LAPTOP-L8BH186Q.000\Desktop\AT4RE Patcher v0.7.6>upx.exe -d winiso.exe
Ultimate Packer for eXecutables
Copyright (C) 1996 - 2013
UPX 3.91w Markus Oberhumer, Laszlo Molnar & John Reiser Sep 30th 2013
File size Ratio Format Name
-------------------- ------ ----------- -----------
1229824 <- 413696 33.64% win32/pe winiso.exe
Unpacked 1 file.
C:\Users\TEMP.LAPTOP-L8BH186Q.000\Desktop\AT4RE Patcher v0.7.6>
Luego de obtener el ejecutable descomprimido por el mismo upx
procederemos a buscar en las referencias de textos o strings la palabra clave:"Unregistered"
y llegaremos a esta parte del código si Dios quiere:
Código:
00406A11 |. 8BC3 MOV EAX,EBX
00406A13 |. E8 18CC0600 CALL winiso_(.00473630
00406A18 |. B8 EC1C4E00 MOV EAX,winiso_(.004E1CEC
00406A1D |. 8078 27 00 CMP BYTE PTR DS:[EAX+27],0
00406A21 |. 0F95C1 SETNE CL
00406A24 |. 83E1 01 AND ECX,1
00406A27 |. 84C9 TEST CL,CL
00406A29 |. 75 58 JNZ SHORT winiso_(.00406A83
00406A2B |. 66:C746 10 44>MOV WORD PTR DS:[ESI+10],44
00406A31 |. BA 4B6F4C00 MOV EDX,winiso_(.004C6F4B ; ASCII " (Unregistered Version)"
00406A36 |. 8D45 D8 LEA EAX,DWORD PTR SS:[EBP-28]
00406A39 |. E8 BECB0B00 CALL winiso_(.004C35FC
00406A3E |. FF46 1C INC DWORD PTR DS:[ESI+1C]
00406A41 |. 33C0 XOR EAX,EAX
00406A43 |. 8945 D4 MOV DWORD PTR SS:[EBP-2C],EAX
00406A46 |. 8D45 FC LEA EAX,DWORD PTR SS:[EBP-4]
00406A49 |. FF46 1C INC DWORD PTR DS:[ESI+1C]
00406A4C |. 8D55 D8 LEA EDX,DWORD PTR SS:[EBP-28]
00406A4F |. 8D4D D4 LEA ECX,DWORD PTR SS:[EBP-2C]
00406A52 |. E8 A1CD0B00 CALL winiso_(.004C37F8
00406A57 |. 8D55 D4 LEA EDX,DWORD PTR SS:[EBP-2C]
00406A5A |. 8BC3 MOV EAX,EBX
00406A13 |. E8 18CC0600 CALL winiso_(.00473630
00406A18 |. B8 EC1C4E00 MOV EAX,winiso_(.004E1CEC
00406A1D |. 8078 27 00 CMP BYTE PTR DS:[EAX+27],0
00406A21 |. 0F95C1 SETNE CL
00406A24 |. 83E1 01 AND ECX,1
00406A27 |. 84C9 TEST CL,CL
00406A29 |. 75 58 JNZ SHORT winiso_(.00406A83
00406A2B |. 66:C746 10 44>MOV WORD PTR DS:[ESI+10],44
00406A31 |. BA 4B6F4C00 MOV EDX,winiso_(.004C6F4B ; ASCII " (Unregistered Version)"
00406A36 |. 8D45 D8 LEA EAX,DWORD PTR SS:[EBP-28]
00406A39 |. E8 BECB0B00 CALL winiso_(.004C35FC
00406A3E |. FF46 1C INC DWORD PTR DS:[ESI+1C]
00406A41 |. 33C0 XOR EAX,EAX
00406A43 |. 8945 D4 MOV DWORD PTR SS:[EBP-2C],EAX
00406A46 |. 8D45 FC LEA EAX,DWORD PTR SS:[EBP-4]
00406A49 |. FF46 1C INC DWORD PTR DS:[ESI+1C]
00406A4C |. 8D55 D8 LEA EDX,DWORD PTR SS:[EBP-28]
00406A4F |. 8D4D D4 LEA ECX,DWORD PTR SS:[EBP-2C]
00406A52 |. E8 A1CD0B00 CALL winiso_(.004C37F8
00406A57 |. 8D55 D4 LEA EDX,DWORD PTR SS:[EBP-2C]
00406A5A |. 8BC3 MOV EAX,EBX
DS:[004E1D13]=00[/b]
Ven que está escrito el valor cero en ésta dirección en memoria haremos
lo contrario por esto este arte gracias a Dios se llama ingeniería inversa
le pondremos el valor uno de la siguiente manera vean:
Código:
00406A11 |. 8BC3 MOV EAX,EBX
00406A13 |. E8 18CC0600 CALL winiso_(.00473630
00406A18 |. B8 EC1C4E00 MOV EAX,winiso_(.004E1CEC
00406A1D FE40 27 [color=green][b]INC BYTE PTR DS:[EAX+27][/b][/color]
00406A20 90 NOP
00406A21 |. 0F95C1 SETNE CL
00406A24 |. 83E1 01 AND ECX,1
00406A27 |. 84C9 TEST CL,CL
00406A29 |. 75 58 JNZ SHORT winiso_(.00406A83
00406A2B |. 66:C746 10 44>MOV WORD PTR DS:[ESI+10],44
00406A31 |. BA 4B6F4C00 MOV EDX,winiso_(.004C6F4B ; ASCII " (Unregistered Version)"
00406A36 |. 8D45 D8 LEA EAX,DWORD PTR SS:[EBP-28]
00406A39 |. E8 BECB0B00 CALL winiso_(.004C35FC
00406A13 |. E8 18CC0600 CALL winiso_(.00473630
00406A18 |. B8 EC1C4E00 MOV EAX,winiso_(.004E1CEC
00406A1D FE40 27 [color=green][b]INC BYTE PTR DS:[EAX+27][/b][/color]
00406A20 90 NOP
00406A21 |. 0F95C1 SETNE CL
00406A24 |. 83E1 01 AND ECX,1
00406A27 |. 84C9 TEST CL,CL
00406A29 |. 75 58 JNZ SHORT winiso_(.00406A83
00406A2B |. 66:C746 10 44>MOV WORD PTR DS:[ESI+10],44
00406A31 |. BA 4B6F4C00 MOV EDX,winiso_(.004C6F4B ; ASCII " (Unregistered Version)"
00406A36 |. 8D45 D8 LEA EAX,DWORD PTR SS:[EBP-28]
00406A39 |. E8 BECB0B00 CALL winiso_(.004C35FC
Sí pero desde ahí no funcionó porque no nos crackea el programa
pero miren lo siguiente:
Código:
0041BBE5 |. 8B08 MOV ECX,DWORD PTR DS:[EAX]
0041BBE7 |. FF51 FC CALL DWORD PTR DS:[ECX-4]
0041BBEA |. 66:C745 C4 5C>MOV WORD PTR SS:[EBP-3C],5C
0041BBF0 |> C745 B0 EC1C4>MOV DWORD PTR SS:[EBP-50],winiso_(.004E1>
0041BBF7 |. 66:C745 C4 14>MOV WORD PTR SS:[EBP-3C],14
0041BBFD |. 8B55 B0 MOV EDX,DWORD PTR SS:[EBP-50]
0041BC00 C642 27 00 [color=red][u][i][b]MOV BYTE PTR DS:[EDX+27],0[/b][/i][/u][/color]
0041BC04 |. 833D 2C1D4E00>CMP DWORD PTR DS:[4E1D2C],0
0041BC0B |. 0F94C0 SETE AL
0041BC0E |. 83E0 01 AND EAX,1
0041BC11 |. 84C0 TEST AL,AL
0041BC13 |. 74 1F JE SHORT winiso_(.0041BC34
0041BC15 |. FF4D D0 DEC DWORD PTR SS:[EBP-30]
0041BC18 |. 8D45 FC LEA EAX,DWORD PTR SS:[EBP-4]
0041BC1B |. BA 02000000 MOV EDX,2
0041BC20 |. E8 7B7B0A00 CALL winiso_(.004C37A0
0041BC25 |. 8B4D B4 MOV ECX,DWORD PTR SS:[EBP-4C]
0041BC28 |. 64:890D 00000>MOV DWORD PTR FS:[0],ECX
0041BBE7 |. FF51 FC CALL DWORD PTR DS:[ECX-4]
0041BBEA |. 66:C745 C4 5C>MOV WORD PTR SS:[EBP-3C],5C
0041BBF0 |> C745 B0 EC1C4>MOV DWORD PTR SS:[EBP-50],winiso_(.004E1>
0041BBF7 |. 66:C745 C4 14>MOV WORD PTR SS:[EBP-3C],14
0041BBFD |. 8B55 B0 MOV EDX,DWORD PTR SS:[EBP-50]
0041BC00 C642 27 00 [color=red][u][i][b]MOV BYTE PTR DS:[EDX+27],0[/b][/i][/u][/color]
0041BC04 |. 833D 2C1D4E00>CMP DWORD PTR DS:[4E1D2C],0
0041BC0B |. 0F94C0 SETE AL
0041BC0E |. 83E0 01 AND EAX,1
0041BC11 |. 84C0 TEST AL,AL
0041BC13 |. 74 1F JE SHORT winiso_(.0041BC34
0041BC15 |. FF4D D0 DEC DWORD PTR SS:[EBP-30]
0041BC18 |. 8D45 FC LEA EAX,DWORD PTR SS:[EBP-4]
0041BC1B |. BA 02000000 MOV EDX,2
0041BC20 |. E8 7B7B0A00 CALL winiso_(.004C37A0
0041BC25 |. 8B4D B4 MOV ECX,DWORD PTR SS:[EBP-4C]
0041BC28 |. 64:890D 00000>MOV DWORD PTR FS:[0],ECX
La instrucción es la misma porque la busque en referencias de constantes desde la zona de unregistered version y solo cambiamos al valor 1 esa instrucción y ya lo tendremos activado
el programa gracias al Señor Jesucristo :')
Código:
0001B200 C642 27 01 MOV BYTE PTR DS:[EDX+27],1
[/b][/color]Y así ya logramos hacer el Parche o Patch en inglés gracias al Señor Jesús Que Sería Dios
de éste programa WinISO v5.3
¡Que Dios me los bendiga y guarde siempre saludos!