Für Profis Crackme! -solved CDW

Hi,
das hier ist Minesweeper mit einem Passwort versehen um
es zu starten.

ALLE MITTEL SIND ERLAUBT.

Ich habe ein Programm benutzt, das angeblich sicher sein soll.

Mal sehn wie ihr das hinbekommt :)

Als Lösung müsst ihr allerdings das Passwort haben,
das Programm aus der Protection strippen ist unzulässig :P

Viel Spaß!

Hack mich!
 
wenn es nicht Hardwareabhängig sein sollte (sonst müsste man ja Keygen schreiben)
Popcorn müsst ihr euch abschminken ;) , jetzt ist erstmal Infoaufgaben machen angesagt (habe bis 3 Uhr morgens Zeit :rolleyes: ).
Armadillo ist nicht ganz ohne - OllyScriptsseidank bekommt man das auch halbwegs in den Griff (manuell würde ich mir das für ein Crackme nicht antun ;) ).
 
Hassu auf den falschen Theard geantwortet? =)

Lustig verbuggt.
Das normale Passwort war "dumbassdumbassdumbass"

aber iergendwie... lol
 
Hassu auf den falschen Theard geantwortet?
Warum? Ich weiß ja, dass von mir erwartet wird, dass ich für das andere Crackme einen Keygen schreibe :rolleyes:. Da ich aber heute eher den ganzen Tag nicht da war und jetzt noch beschäftig bin, wollte ich es einfach nur in einem Post loswerden, weil ich schon sehr stark vermute, dass die Leute auch in diesem Thread lesen werden ;)

EDIT:
Intelcompiler? Schaut mir eher wie eine gute Optimierung aus. Kann natürlich auch Armadillo sein - k.A.
"dumbassdumbassdumbass
Solche Strings sind da natürlich nicht drin ;) und die vergleichsroutine sieht so aus:

Code:
008CBBEF     53                                  PUSH EBX
008CBBF0     56                                  PUSH ESI
008CBBF1     8B7424 0C                           MOV ESI,DWORD PTR SS:[ESP+C]                                ; ntdll.77F69005
008CBBF5     57                                  PUSH EDI
008CBBF6     8BD9                                MOV EBX,ECX
008CBBF8     56                                  PUSH ESI
008CBBF9     E8 00750200                         CALL 008F30FE                                               ; JMP to msvcrt.strlen
008CBBFE     33FF                                XOR EDI,EDI
008CBC00     803E 23                             CMP BYTE PTR DS:[ESI],23
008CBC03     59                                  POP ECX                                                     ; 009BB064
008CBC04     75 57                               JNZ SHORT 008CBC5D
008CBC06     83F8 09                             CMP EAX,9
008CBC09     75 52                               JNZ SHORT 008CBC5D
008CBC0B     8D56 01                             LEA EDX,DWORD PTR DS:[ESI+1]
008CBC0E     8A0A                                MOV CL,BYTE PTR DS:[EDX]
008CBC10     84C9                                TEST CL,CL
008CBC12     74 3C                               JE SHORT 008CBC50
008CBC14     80F9 30                             CMP CL,30
008CBC17     7C 0D                               JL SHORT 008CBC26
008CBC19     80F9 39                             CMP CL,39
008CBC1C     7F 08                               JG SHORT 008CBC26
008CBC1E     0FBEC9                              MOVSX ECX,CL
008CBC21     83E9 30                             SUB ECX,30
008CBC24     EB 22                               JMP SHORT 008CBC48
008CBC26     80F9 61                             CMP CL,61
008CBC29     7C 0D                               JL SHORT 008CBC38
008CBC2B     80F9 66                             CMP CL,66
008CBC2E     7F 08                               JG SHORT 008CBC38
008CBC30     0FBEC9                              MOVSX ECX,CL
008CBC33     83E9 57                             SUB ECX,57
008CBC36     EB 10                               JMP SHORT 008CBC48
008CBC38     80F9 41                             CMP CL,41
008CBC3B     7C 20                               JL SHORT 008CBC5D
008CBC3D     80F9 46                             CMP CL,46
008CBC40     7F 1B                               JG SHORT 008CBC5D
008CBC42     0FBEC9                              MOVSX ECX,CL
008CBC45     83E9 37                             SUB ECX,37
008CBC48     C1E7 04                             SHL EDI,4
008CBC4B     0BF9                                OR EDI,ECX
008CBC4D     42                                  INC EDX
008CBC4E   ^ EB BE                               JMP SHORT 008CBC0E
008CBC50     33C0                                XOR EAX,EAX
008CBC52     3BBB C8050000                       CMP EDI,DWORD PTR DS:[EBX+5C8]
008CBC58     0F94C0                              SETE AL
008CBC5B     EB 1E                               JMP SHORT 008CBC7B
008CBC5D     6A FF                               PUSH -1
008CBC5F     50                                  PUSH EAX
008CBC60     56                                  PUSH ESI
008CBC61     E8 015A0000                         CALL 008D1667
008CBC66     83C4 0C                             ADD ESP,0C
008CBC69     85C0                                TEST EAX,EAX
008CBC6B     75 01                               JNZ SHORT 008CBC6E
008CBC6D     40                                  INC EAX
008CBC6E     33C9                                XOR ECX,ECX
008CBC70     3B83 C8050000                       CMP EAX,DWORD PTR DS:[EBX+5C8]
also praktisch das erste Zeichen auf # prüfen und dann den Wert einlesen und mit dem internen Vergleichen:
Code:
00A23ED0  A1 07 BC 89                                      ???
 
Zurück
Oben