J'ai lu toutes vos réponses, et je trouve qu'elle sont un peu confuses.
Moi je travaille avec un ami sur un décompilateur VB, donc j'espére vous apporter des réponses :
1 - La décompilation Java :
Le java est interprété par une machine virtuelle, donc le code source est inclu dans l'applet(l'objet java). Les crypteurs sont un bon moyen de berner les decompilateurs Java, mais y'aura toujours une faille, car l'applet est décrypté avant de se lancer, donc le mot de passe est aussi enregistré dans le code source. De plus ce process ralentit l'execution des applets.
2 - La décompilation du C/C++ :
La plus grande difficultée dans la décompilation d'un code c'est de retrouver les structures natives, un switch peut être écrit avec plusieurs if, un do...loop, ou bien un while ... ces types de structures ne sont pas toujours facilement identifiables.
Les noms des variables ne sont pas toujours significatifs, ce qui empeche une bonne lecture du code.
Bréf en gros la décompilation ne sert qu'à lire plus aisement un code, car l'asm est comme même moins convial.
3 - La décompilation VB :
Pour ce qui est de VB, jusqu'à sa version 4, l'executable contenais le code source, et il étais ensuite interprété, mais depuis la version 5, le code est bien compilé, ce qui donne au vb une plus grande rapidité d'execution, et même de calcul.
Jusque maintenant mon travail porte sur la partie objet de VB, et vous trouverez un semi-decompiler à cette adresse :
http://www.webdevz.net/hexman/
Il permet de retrouver les objets d'un executable vb, version 5 ou 6
Bien entendu même la décompilation d'un applet n'a jamais causé de faille de sécurité à moin que celui qui ais écrit le systéme l'ait mal conçu.
Tenter d'en comprendre le fonctionnement et eventuellement se servir de ce qui est recuperable pour creer des outils de modding...
Je ne considere pas cela comme du piratage, faudrait arrêter la chasse aux sorcieres
plutonium2222 (skype)
les fichiers dedans les *.d2p sonts en . swl pas en swf ^^