bon alors, je suppose que tu as compris que le saut
:00402247 7429 je 00402272
saute quant le serial n'est pas valide. Juste au dessus, tu as un appel a __vbaVarTstEq. Cette fonction est donc une API de ce truc immonde qu'est le VB, qui verifie si les 2 chaines sont identiques. Sauf que comme le VB se veut crade, on ne voit pas les parametres directement sur la pile (stack) ou dans les registres, comme dans d'autres langages plus propres. On voit bien des parametres dans la stack, mais ce sont en fait des objets (je suppose, j'ai jamais fais de VB ni debugger du VB plus que ca).
Bon bref, tu rentres dans le call de cette API, (puis dans le call suivant) et la tu arrives dans le traitement des variables de VB. Il va verifier le type des variables passes et les modifier si besoin est (on ne compare pas un chiffre avec une chaine de caracteres, et y'a la notion de type variant qui apparait en VB) Je vais pas trop t'en dire, mais le principe ici c'est de rentrer dans les differents call des dll VB pour analyser ce qu'il fait, en gardant en tete que tu peux zapper 80% du code que tu vois.
Autre chose, avec un Smartcheck bien configure, tu trouves la reponse en 2 min. Mais ca n'a aucun interet. (avec olly (et l'habitude) la reponse tu la trouves en moins de 30 sec

)
Bon courage.