resuelto creo:
nombre:"dissambler" sin las comillas
key:"cualquiera, no lo usará"
si hubieramos leido el titulo ya lo tenias casi a resolver:
dissambler-CrackMeV1.dll.exe
analisis para que no digan que uno no analiza:
el primer exe hecho con winrar, descomprimir y luego ver la dll
por defecto tiene esta instalacion:
;El comentario siguiente contiene secuencias de órdenes para auto-extraíbles
;www.Elhacker.net - WarezMask.
Path=C:\Users\%username%\Desktop
SavePath
2do, la dll renombrar a .exe y abrir en ollydbg
al revisar la primera rutina se ve:
entrypoint
00401220 > $ 55 PUSH EBP
primera llamada
00401233 . E8 C8FEFFFF CALL 00401100 ; 00401100
primera rutina al programa programado:
004011E2 |. E8 A9010000 CALL 00401390 ; 00401390
desde aqui las referencias
Text strings referenced in dissambl:.text
Address Disassembly Text string
00401390 PUSH EBP (Initial CPU selection)
00401434 MOV DWORD PTR SS:[ESP+4],442000 ASCII "dissambler"
00401498 MOV DWORD PTR SS:[ESP+4],44200B ASCII "CrackMe"
004014EA MOV DWORD PTR SS:[ESP],442013 ASCII "Title dissambler-CrackMeV1.0"
00401500 MOV DWORD PTR SS:[ESP],442030 ASCII "Color 02"
0040150C MOV DWORD PTR SS:[ESP],442039 ASCII "cls"
0040153C MOV DWORD PTR SS:[ESP],442040 ASCII "echo *****************************************************"
00401548 MOV DWORD PTR SS:[ESP],44207C ASCII "echo * (c) Programado por WarezMask. *"
00401560 MOV DWORD PTR SS:[ESP],442040 ASCII "echo *****************************************************"
0040156C MOV DWORD PTR SS:[ESP+4],4420F3 ASCII "Name: "
00401593 MOV DWORD PTR SS:[ESP+4],4420FA ASCII "
Key: "
004015E8 MOV DWORD PTR SS:[ESP],442039 ASCII "cls"
0040165F MOV DWORD PTR SS:[ESP],442039 ASCII "cls"
0040167D MOV DWORD PTR SS:[ESP+8],442126 ASCII "Not Work"
00401685 MOV DWORD PTR SS:[ESP+4],44212F ASCII "Nice try, but did not work."
0040169C MOV DWORD PTR SS:[ESP+4],44214B ASCII "Press any key to continue..."
si vemos la rutina donde van los loop vemos:
004015CE . /75 18 JNZ SHORT 004015E8 ; 004015E8
004015D0 . |8D45 A8 LEA EAX,DWORD PTR SS:[EBP-58]
004015D3 . |894424 04 MOV DWORD PTR SS:[ESP+4],EAX
004015D7 . |8D45 C8 LEA EAX,DWORD PTR SS:[EBP-38]
004015DA . |890424 MOV DWORD PTR SS:[ESP],EAX
004015DD . |E8 86CE0300 CALL 0043E468 ; 0043E468004015E2 . |84C0 TEST AL,AL
004015E4 . |75 02 JNZ SHORT 004015E8 ; 004015E8
004015E6 . |EB 3F JMP SHORT 00401627 ; 00401627
004015E8 > \C70424 392044>MOV DWORD PTR SS:[ESP],442039 ; ||ASCII "cls"
004015EF . C785 68FFFFFF>MOV DWORD PTR SS:[EBP-98],1 ; ||
004015F9 . E8 12F80000 CALL 00410E10 ; |\system
004015FE . C74424 0C 000>MOV DWORD PTR SS:[ESP+C],0 ; |
00401606 . C74424 08 022>MOV DWORD PTR SS:[ESP+8],442102 ; |
0040160E . C74424 04 142>MOV DWORD PTR SS:[ESP+4],442114 ; |
00401616 . C70424 000000>MOV DWORD PTR SS:[ESP],0 ; |
0040161D . E8 4EFA0000 CALL 00411070 ; \MessageBoxA
00401622 . 83EC 10 SUB ESP,10
00401625 . EB 75 JMP SHORT 0040169C ; 0040169C
segunda rutina dentro del call
0043E468 /$ 55 PUSH EBP
0043E469 |. 89E5 MOV EBP,ESP
0043E46B |. 83EC 18 SUB ESP,18
0043E46E |. 8B45 0C MOV EAX,DWORD PTR SS:[EBP+C]
0043E471 |. 894424 04 MOV DWORD PTR SS:[ESP+4],EAX
0043E475 |. 8B45 08 MOV EAX,DWORD PTR SS:[EBP+8]
0043E478 |. 890424 MOV DWORD PTR SS:[ESP],EAX
0043E47B |. E8 B060FDFF CALL 00414530 ; 004145300043E480 |. 8945 FC MOV DWORD PTR SS:[EBP-4],EAX
0043E483 |. 837D FC 00 CMP DWORD PTR SS:[EBP-4],0
0043E487 |. 0F94C0 SETE AL0043E48A |. 0FB6C0 MOVZX EAX,AL
0043E48D |. 8945 FC MOV DWORD PTR SS:[EBP-4],EAX
0043E490 |. 8B45 FC MOV EAX,DWORD PTR SS:[EBP-4]
0043E493 |. C9 LEAVE
0043E494 \. C3 RETN
tercera rutina y lugar de la comparacion:
0041455B |. 3B5D E4 CMP EBX,DWORD PTR SS:[EBP-1C]
0041455E |. 895D EC MOV DWORD PTR SS:[EBP-14],EBX
00414561 |. 72 03 JB SHORT 00414566 ; 00414566
00414563 |. 8D45 F0 LEA EAX,DWORD PTR SS:[EBP-10]
00414566 |> FC CLD
00414567 |. 8B08 MOV ECX,DWORD PTR DS:[EAX]
00414569 |. 89D7 MOV EDI,EDX
0041456B |. 8B75 E0 MOV ESI,DWORD PTR SS:[EBP-20]
0041456E |. 39C9 CMP ECX,ECXal comparar el nombre con"dissambler" el valor en memoria
003D25AC 64 69 73 73 61 6D 62 6C 65 72 dissambler
o bien desde el comienzo ya lo teniamos
00401434 . C74424 04 002>MOV DWORD PTR SS:[ESP+4],442000 ; ASCII "dissambler"
este reacciona asi:
---------------------------
¡Congratulations!
---------------------------
¡Well done, dude!
---------------------------
Aceptar
---------------------------
si vemos desde referencias encontramos esto
el chico bueno tiene esto:
004015E8 > \C70424 392044>MOV DWORD PTR SS:[ESP],442039 ; ||ASCII "cls"
004015EF . C785 68FFFFFF>MOV DWORD PTR SS:[EBP-98],1 ; ||
004015F9 . E8 12F80000 CALL 00410E10 ; |\system
004015FE . C74424 0C 000>MOV DWORD PTR SS:[ESP+C],0 ; |
00401606 . C74424 08 022>MOV DWORD PTR SS:[ESP+8],442102 ; |
0040160E . C74424 04 142>MOV DWORD PTR SS:[ESP+4],442114 ; |
00401616 . C70424 000000>MOV DWORD PTR SS:[ESP],0 ; |
0040161D . E8 4EFA0000 CALL 00411070 ; \MessageBoxA
00401622 . 83EC 10 SUB ESP,10
00401625 . EB 75 JMP SHORT 0040169C ; 0040169C
y en memoria estaba asi:
004420C2 65 6E 74 72 61 20 75 6E 20 73 65 72 69 61 6C entra un serial
004420D2 20 76 E1 6C 69 64 6F 20 70 61 72 61 20 45 73 74 válido para Est
004420E2 65 20 70 72 6F 67 72 61 6D 61 2E 20 20 20 20 2A e programa. *
004420F2 00 4E 61 6D 65 3A 20 00 0A 20 4B 65 79 3A 20 00 .Name: .. Key: .
00442102 A1 43 6F 6E 67 72 61 74 75 6C 61 74 69 6F 6E 73 ¡Congratulations
00442112 21 00 A1 57 65 6C 6C 20 64 6F 6E 65 2C 20 64 75 !.¡Well done, du
00442122 64 65 21 00 4E 6F 74 20 57 6F 72 6B 00 4E 69 63 de!.Not Work.Nic
00442132 65 20 74 72 79 2C 20 62 75 74 20 64 69 64 20 6E e try, but did n
00442142 6F 74 20 77 6F 72 6B 2E 00 50 72 65 73 73 20 61 ot work..Press a
00442152 6E 79 20 6B 65 79 20 74 6F 20 63 6F 6E 74 69 6E ny key to contin
00442162 75 65 2E 2E 2E 00 00 00 00 00 00 00 00 00 60 1A ue............`
00442172 40 00 C4 1A 40 00 D5 1A 40 00 60 1A @.Ä@.Õ@.`