ton mot de passe est un nombre : il sera donc dur a " craquer"
les failles sont si tu as un mot de passe en chaine, entré en dur et non crypté :
exemple :
tu fais :
char pass[]="Bonsoir";
. ....
Si tu compiles et que tu édites l´exe avec un éditeur Hexa et que tu recherche " Bonsoir" tu le trouveras : le chaines ne sont pas cryptées.
Tu auras bcp + de mal a trouver un nombre qu´une chaine cependant, car il n´apparaitra pas comme 999 dans ton code, mais comme : E7 03 00 00
ce qui sera dur ( voir pas trop possible) a trouver parmi le reste...
Autre " faille" mais bcp plus dure a craquer :
il n´est pas conseillé de valider, ou pas, son programme, par un simple if, et encore moins dans une fonction qui te renvoie true ou false.
car tu fais une debug, tu vas jusqu´au point de la question, et tu déroules, ensuite, pas a pas, tu as toutes les chances que le cr.ackeur vérifie les ligne qui suivent la demande de code, et si tu n´as pas protégé, le prochain " if" sera le bon : il lui suffira de lire cette partie, et/ou de shunter le résultat de la condition pour passer ( commande machine pour le if bien utilisées dans ce cas : CMP, JE, JZ, JNE, JNZ)