Cible: Crackme#2 Static Revenge
Outils: WinDasm + Editeur Hexa
Bon, celui la ressemble au précédent, en un tout petit peu plus dur... Ouvrez avec WinDasm, et vous voyez ca:
//******************** Program Entry Point ********
:00401000 6A00 push 00000000
:00401002 6870224000 push 00402270
* Possible StringData Ref from Data Obj ->" ..._¿o©º°&hibar;°º©o¿_ "
->" Shmeit Corp _¿o©º°&hibar;°º©o¿_...
"
->" "
->" Static REvenge's Crackme "
->"#2
Dans ce Crackme, il faut "
->"faire en sorte qu'un message de "
->"réussite de déplombage apparaisse.
Si "
->"vous echouez, un message d' échec "
->"vous le dira...
"
|
:00401007 6800204000 push 00402000
:0040100C 6A00 push 00000000
* Reference To: USER32.MessageBoxA, Ord:0000h
|
:0040100E E834000000 Call 00401047 ; affiche le message d'entré
:00401013 6A10 push 00000010
* Possible StringData Ref from Data Obj ->"FATAL ERROR !!"
|
:00401015 68A4224000 push 004022A4
* Possible StringData Ref from Data Obj ->"Ahhh! Tu n'as pas reussis à déplomber "
->"cette protection et ca se comprend "
->"vu qu'elle est inviolable... Arf!
Nan, "
->"je plaisante... Aller quoi, c'est "
->"pas si difficile ;)
"
|
:0040101A 68C8214000 push 004021C8
:0040101F 6A00 push 00000000
* Reference To: USER32.MessageBoxA, Ord:0000h
|
:00401021 E821000000 Call 00401047 ; affiche le bad message
:00401026 6A00 push 00000000
* Reference To: KERNEL32.ExitProcess, Ord:0000h
|
:00401028 E820000000 Call 0040104D ; quit
:0040102D 6A40 push 00000040
* Possible StringData Ref from Data Obj ->"Bouh! CRACKER DETECTED!"
|
:0040102F 688C224000 push 0040228C
* Possible StringData Ref from Data Obj ->"Félicitations! Tu as reussi à "
->"déplomber cette super sécurité "
->"à deux roules ;p
Bon aller, c'est "
->"pas mal pour un début!
Static "
->"REvenge
Shmeit Corp www.shmeitcorp.cjb.net"
|
:00401034 681E214000 push 0040211E
:00401039 6A00 push 00000000
* Reference To: USER32.MessageBoxA, Ord:0000h
|
:0040103B E807000000 Call 00401047 ; affiche le good message
:00401040 6A00 push 00000000
* Reference To: KERNEL32.ExitProcess, Ord:0000h
|
:00401042 E806000000 Call 0040104D ; quit
En faite c'est assez simple aussi, on arrive, on affiche le message d'entré, et ensuite on affiche le bad message et on quitte. Nous on voudrait ne pas afficher le mauvais message et aussi ne pas quitter. Donc on noppe le Call en 00401021 ( il affiche le bad message ) et aussi celui en 00401028 ( il nous fait quitter ).
Et voilà crackme cracké :o)
@+ fredbug