Bonjour,
Je pense perso que le meilleur moyen d’apprendre l’assembleur est plutôt de commencer par apprendre à cracker (c’est plus intéressent que d’apprendre à créer des programmes, tu as moins de chance de te décourager).
Je veux dire par là, fais un petit programme en c++ (natif) avec écrit « hello » et tu essayes de modifier le texte, tu mets un if (false) {print « hello »} et tu essayes de faire en sorte que ton programme affiche le « hello », tu rajoute un while, return,… et du regarde à chaque fois ce qui change, comment le compilateur converti un while en assembleur, un if, comment il appelle une fonction, fait passer les paramètres, comment les classes sont géré …
Tu vas me dire, tu me demandes de lire est faire de l’assembleur alors que je ne comprends rien… justement, tu vas voir ta fonction, tu vas voir un « mov », tu vas sur google, tu tape « mov asm » et tu trouveras beaucoup de sites qui t’explique ce que c’est. Le code est vraiment basic (mais ce n’est vraiment pas optimisé niveau temps/résultat) (tu peux quand même jeter un coup d’œil au tuto de débutant en cracking pour avoir le minimum de connaissances).
Utilise « IDA pro » pour décompiler les fichiers exécutables (il tourne sous Linux) (tu as cheat engine aussi pour modifier des fonctions ou faire des injections de code asm).
Tu peux également utiliser asm en c++, voilà un exemple pour appeler la fonction RegOpenKeyExA : http://pastebin.com/rJehNRGi
En plus de comprendre l’assembleur, tu seras capable de cracker, créer des cheats, et surtout de vérifier si un programme est clean (qu’il n’a pas de virus), si y’en a un tu pourras comprendre ce qu’il fait, tu pourras corriger les bugs d’un programme sans avoir le code source, tu seras meilleur en débogage (et dans la gestion de mémoire), tu comprendre beaucoup plus de choses en général. Après c’est un apprentissage long, même très long et tu trouveras très peu d’aide (surtout d’aide francophone).
Ps : Avant de te lancer dedans il faut vraiment que tu es de bonnes connaissances en programmation, surtout sur les pointeurs, allocation mémoire et ....