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 :

  1. ouvrir le .swf avec JPEXS
  2. dans le volet de gauche, aller dans le dossier “autres/FileAttributes” (dans la version anglaise du logiciel : “others/filesAttributes”)
  3. 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 :

  1. Utiliser l'outil Obfu9 (développé par @Booti) pour retrouver la clé d'obfuscation, tester des identificateurs, etc.
  2. 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.