Table of Contents
How to extract the files from a Flash file (SWF)
Important : un bon nombre de SWF des jeux Motion Twin ont déjà été récupérés et exportés par l'équipe d'Eternal Twin. Avant de vous lancer dans la décompilation d'un SWF, vérifiez de que cela n'a pas déjà été fait. N'hésitez pas à demander sur le Discord d'Eternal Twin.
Step 1: extracting the files from the SWF
Pour extraire les fichiers contenus dans fichier Flash (les images, les scripts, etc.), vous avez besoin du logiciel JPEXS
⇒ Tutoriel d'utilisation de JEPXS en vidéo (en français)
Step 2: desobfuscating the files
Les fichiers peuvent être obfusqués, c'est-à-dire que Motion Twin les a chiffrés afin que des parties sensibles de leur code ne soient pas facilement accessibles. Pour les désobfusquer, la méthode dépend selon que le SWF est en AS2 ou en AS3 (versions du langage de Flash) :
Identifing AS2 / AS3
Le logiciel JPEXS (voir plus haut) permet de savoir si le fichier SWF est en AS2 ou AS3 :
- ouvrir le .swf avec JPEXS
- dans le volet de gauche, aller dans le dossier “autres/FileAttributes” (dans la version anglaise du logiciel : “others/filesAttributes”)
- dans le volet de droite, si “actionScript3 : boolean = true” ⇒ le SWF est en AS3. S'il vaut “false”, le SWF est en AS2.
Desobfuscating an AS2 file
Si le SWF est en AS2, il faut utiliser/adapter l'outil écrit par @Demurgos. Demander sur le Discord d'Eternal Twin.
Desobfuscating an AS3 file
Si le SWF est en AS3, il faut réaliser 2 étapes :
- Utiliser l'outil Obfu9 (développé par @Booti) pour retrouver la clé d'obfuscation, tester des identificateurs, etc.
- Puis utiliser AS3 Desobfuscator (développé par @Moulins) pour remplacer les identificateurs obfusqués du SWF par des identificateurs en clair.
Ces outils sont techniques, n'hésitez pas à demander de l'aide sur le Discord d'Eternal Twin.