a mi me parece aspack,
luego de bajar (scroll) desde el comienzo (entrypoint) vemos
004D43AF 61 POPAD
004D43B0 75 08 JNZ SHORT SamBo.004D43BA
004D43B2 B8 01000000 MOV EAX,1
004D43B7 C2 0C00 RETN 0C
colocas un bp en el salto (f2)+(f9) (f7) (quitamos el bp //f2)
luego tenemos
004D43BA 68 6C134000 PUSH SamBo.0040136C
004D43BF C3 RETN
push oep y ret
=push+ret=jmp
es un salto al 40136c
OEP:40136c
push , pues escribe a la pila, ret, rescata el valor de la pila y salta ahi.
luego veamos la iat, comienza la primera api en
0047C314 $-FF25 BCE24800 JMP DWORD PTR DS:[48E2BC] ; kernel32.GetModuleHandleA
luego 48E2BC al revisar en (follow in) dump tenemos
subo desde 480000 y veo solo comienzo en
0048E0B0 77DA6BF0 advapi32.RegCloseKey
0048E0B4 77DA761B advapi32.RegOpenKeyExA
0048E0B8 77DA7883 advapi32.RegQueryValueExA
luego
el fin que indicas..al dumpear la sección de codigo esta en .text se puede dumpear con ollydump, con lord pe y tambien con import rec, en este caso yo elegi import rec, y fix dump , listo...testear, sip, corre
porciacaso
datos a colocar en import rec
oep: 0000136C porque la imagebase es 400000
rva:0008E0B0 size 00000C44
luego de dar import, cut trunks a las invalidas..saludos Apuromafo
analisis del serial correcto
vemos esta operacion matematica y base del crackme:
00401A86 |. C745 C0 050000>MOV DWORD PTR SS:[EBP-40],5->mueve el valor 5 a ebp-40
00401A8D |. 8B55 C0 MOV EDX,DWORD PTR SS:[EBP-40] ->edx ahora tiene el valor 5
00401A90 |. 81C2 88130000 ADD EDX,1388 ->1388+5->0000138D
00401A96 |. 69CA 37010000 IMUL ECX,EDX,137 ->multiplicacion
en mi pc el valor signed de esta multiplicacion es 1556555 en hexa 0017C04B
y este es el serial a usar en mi caso es : el serial unico "1556555"
luego siempre que sea verdadero esta rutina dara true (si son iguales el valor ingresado con ese serial unico)
0047BF9C |. E8 9B7FFBFF CALL sambodum.00433F3C-*>rutina real de comprobacion del serial
0047BFA1 |. 0F94C0 SETE AL ->true si es correcto
0047BFA4 |. 83E0 01 AND EAX,1->cuando es true , eax sera 1 -<!!!
por lo tanto se cumplira para el salto y no saltará //podemos nopear
00401AFD |. 84C9 TEST CL,CL
00401AFF 90 NOP
00401B00 90 NOP
00401B01 |. A1 DC6C4800 MOV EAX,DWORD PTR DS:[486CDC]
en este caso sin desempacar, tambien puedes hacer un inline asi:
004D43B0 MOV WORD PTR SS:[401AFF],9090
mueves 2 bytes (word) a la direccion 401aff en este caso 9090, que serian 2 nops (90)
luego al ejecutar ya se habra nopeado en 401aff
y podemos decir crackme desempacado y resuelto ^^
saludos Apuromafo
saludos
luego de bajar (scroll) desde el comienzo (entrypoint) vemos
004D43AF 61 POPAD
004D43B0 75 08 JNZ SHORT SamBo.004D43BA
004D43B2 B8 01000000 MOV EAX,1
004D43B7 C2 0C00 RETN 0C
colocas un bp en el salto (f2)+(f9) (f7) (quitamos el bp //f2)
luego tenemos
004D43BA 68 6C134000 PUSH SamBo.0040136C
004D43BF C3 RETN
push oep y ret
=push+ret=jmp
es un salto al 40136c
OEP:40136c
push , pues escribe a la pila, ret, rescata el valor de la pila y salta ahi.
luego veamos la iat, comienza la primera api en
0047C314 $-FF25 BCE24800 JMP DWORD PTR DS:[48E2BC] ; kernel32.GetModuleHandleA
luego 48E2BC al revisar en (follow in) dump tenemos
subo desde 480000 y veo solo comienzo en
0048E0B0 77DA6BF0 advapi32.RegCloseKey
0048E0B4 77DA761B advapi32.RegOpenKeyExA
0048E0B8 77DA7883 advapi32.RegQueryValueExA
luego
el fin que indicas..al dumpear la sección de codigo esta en .text se puede dumpear con ollydump, con lord pe y tambien con import rec, en este caso yo elegi import rec, y fix dump , listo...testear, sip, corre
porciacaso
datos a colocar en import rec
oep: 0000136C porque la imagebase es 400000
rva:0008E0B0 size 00000C44
luego de dar import, cut trunks a las invalidas..saludos Apuromafo
analisis del serial correcto
vemos esta operacion matematica y base del crackme:
00401A86 |. C745 C0 050000>MOV DWORD PTR SS:[EBP-40],5->mueve el valor 5 a ebp-40
00401A8D |. 8B55 C0 MOV EDX,DWORD PTR SS:[EBP-40] ->edx ahora tiene el valor 5
00401A90 |. 81C2 88130000 ADD EDX,1388 ->1388+5->0000138D
00401A96 |. 69CA 37010000 IMUL ECX,EDX,137 ->multiplicacion
en mi pc el valor signed de esta multiplicacion es 1556555 en hexa 0017C04B
y este es el serial a usar en mi caso es : el serial unico "1556555"
luego siempre que sea verdadero esta rutina dara true (si son iguales el valor ingresado con ese serial unico)
0047BF9C |. E8 9B7FFBFF CALL sambodum.00433F3C-*>rutina real de comprobacion del serial
0047BFA1 |. 0F94C0 SETE AL ->true si es correcto
0047BFA4 |. 83E0 01 AND EAX,1->cuando es true , eax sera 1 -<!!!
por lo tanto se cumplira para el salto y no saltará //podemos nopear
00401AFD |. 84C9 TEST CL,CL
00401AFF 90 NOP
00401B00 90 NOP
00401B01 |. A1 DC6C4800 MOV EAX,DWORD PTR DS:[486CDC]
en este caso sin desempacar, tambien puedes hacer un inline asi:
004D43B0 MOV WORD PTR SS:[401AFF],9090
mueves 2 bytes (word) a la direccion 401aff en este caso 9090, que serian 2 nops (90)
luego al ejecutar ya se habra nopeado en 401aff
y podemos decir crackme desempacado y resuelto ^^
saludos Apuromafo
saludos