Si j'ai un fichier abc, compilé via le SDK Flex, ou retiré d'un fichier .SWF, existe-t-il des outils qui vont le désassembler pour voir ce qu'il contient?Comment désassembler le bytecode ABC?
Répondre
Download free Adobe Flex SDK. Utilisez sdk/bin/swfdump.exe
.
Exemple pour la version Windows:
swfdump -abc -showbytecode test.swf > abcdump.txt
Cela devrait vous obtenir ce que vous voulez.
N'a pas beaucoup joué avec abc, mais une chose qui vient à l'esprit est as3abc. Peut-être que si vous chargez le abc en format binaire à l'aide et URLLoader et passer les octets au constructeur ABC vous pouvez voir ce qu'il contient (actionscript-sage)
En outre, il pourrait y avoir des outils pour que, dans Apparat, pas sûr. J'ai un fichier abc en utilisant dump, mais je ne suis pas allé plus loin.
java -jar dump.jar -input a.swf -abc
Vous pouvez voir le contenu avec n'importe quel éditeur de texte.
HTH, George
La source tamarin contient un outil appelé « abcdump » qui décompiler un fichier abc, mais vous êtes généralement sur votre propre bâtiment et de l'utiliser. Il n'est pas tenu à jour et est livré avec peu ou pas d'instructions.
Pour les fichiers SWF, il existe un outil appelé 'swfdump' disponible à partir SWFTools qui donnera le désassemblage d'actionscript dans le swf.
RABCDAsm peut désassembler et assembler le bytecode ActionScript 3.
Je peux seulement me porter garant de la fournaise. Nous avons eu un énorme succès avec ça! Voir: https://github.com/whitequark/furnace-avm2
Il fonctionne comme un charme avec bytecode cru (. Par exemple les fichiers ABC sans containter SWF)
Josh
Où puis-je obtenir de l'aide sur les options que je peux utilisés avec swfdump? – Fabricio
Je n'en ai aucune idée, en fait. Taper 'swfdump' dans la console donne ce qui suit:' Utilisation: outils java.SwfxPrinter [-encode] [-asm] [-abc] [-showbytecode] [-noactions] [-s glyphes] [-externe] [-save file.swf] [-nofunctions] [-out fichier.swfx] fichier1.swf ... 'Ce n'est pas beaucoup, mais les noms sont assez explicites, si vous savez ce que vous voulez réaliser. –