Comment cracker Winrescue 95 v.8.01
Matériel nécessaire :
Wdasm32
Un éditeur héxadécimal (Hex WorkShop ou Hedit par exemple)
Les protections :
Limitation dans le temps (30 jours)
Registration par code
Certaines options bridées
Un Nagscreen au lancement + 9 secondes d'attente (pas une protection c'est juste chiant)
Commencez par installer Winrescue dans le répertoire de votre choix sur votre disque dur.
Cela fait, au boulot !! (faut arrêter de glander de temps en temps...)
On note d'abord les messages d'erreurs :
On lance Rescue95 on mais un code au hasard, et là
un message nous informe :
"WARNING - Incorrect Key Entered".
Sachant que le logiciel est limité dans le temps on change la date en 2002 et on relance le programme.
Ainsi, lorsque l'on veut accéder à certaines options un message nous dit "Trial Period Expired".
De plus certaines options sont en temps normal bridées cela nous donne un messagedu genre :
"RegPack Disabled. Please register."
Faire une copie de Rescue95.exe et renommée la 1.exe.
Maintenant lancez Wdasm32 et désassemblez Rescue95.exe.
On constate qu'il n'y a pas de réference au menu (Menu Ref) ni aux boîtes de dialogues (DLG Ref).
Par contre on constate qu'il y a quelque chose en 'String Refs'.
On recherche donc dans la liste des "string references" si il n'y a rien qui pourrait nous intéresser.
C'est cool ! On trouve tous les messages d'erreurs !!
On pourrait s'amuser à enlever toutes les protections une après l'autre si on le voulait....
Mais autant essayer de s'enregistrer directement cela a le même effet.
On clic donc dans la liste sur "WARNING - Incorrect Key Entered".
Et cela nous donne quelque chose comme cela :
* Possible StringData Ref from Code Obj -> "msR3I8aUi9y2E84L" (humhum...c'est le bon code, c'est vraiment trop facile)
:004681BC B89824600 mov eax, 00468290 :004681C1 E8EEBDF9FF call 00403FB4 :004681C6 85C0 test eax, eax :004681C8 7420 je 004681EA => si mauvaise réponse, aller à 004681EA * Possible StringData Ref from Code Obj -> "Registration Key Accepted"
:004681CA B8AC824600 mov eax, 004682AC :004681CF E8104D4DFF call 0043CEE4 :004681D4 A1B0EA4700 mov eax, dword ptr [0047EAB0] :004681D9 8B00 mov eax, dword ptr [eax] :004681DB 8B80F0010000 mov eax, dword ptr [eax+000001F0] :004681E1 C7400C64000000 mov eax, dword ptr [eax+0C], 00000064 :004681E8 EB16 jmp 00468200
* Referenced by a (U)nconditional or (C)onditional Jump at Address : :004681C8 (C) le (C) veut dire que c'est un saut conditionnel en 004681C8 qui nous a amené ici.
* Possible StringData Ref from Code Obj -> "WARNING - Incorrect Key Entered"