Flash Decompiler - Known issues and FLA format limitations

Flash decompilation is a very complex process, and sometimes it is almost impossible to decode the original FLA file structure and contents due to many reasons. Please, get acquainted with the following paper on most of the known issues we are aware of concerning SWF to FLA conversion. 

Once FLA file is compiled into SWF most of the information about its internal structure and object's order and placements is lost. As a result, SWF movie file size is decreased which is another advantage for web users. On the other hand, due to this restoring original FLA file from SWF could be a problem. Situation is worsened by many third-party Flash editing products that do not follow Adobe Flash specifications and introduce their own standards. 

These tools may also use the so-called SWF-ActionScript which is different from ActionScript you can use in FLA and which cannot be recovered, as FLA format simply doesn't support it. This may lead to incorrect SWF to FLA conversion and some errors in resulting FLA files. This is a known issue and that is why there's no guarantee that each and every SWF file can be correctly decompiled. 

We are working on reducing the number of conversion errors to the minimum; however, it is not always possible. We hope that you understand this and will help and cooperate with us. You are very welcome to send erroneously converted files to our Support Team for investigation. 

Below is the list of known situations that are likely to lead to conversion problems: 
  1. SWF file is compressed, optimized or obfuscated by third-party applications 
  2. Files compressed with algorithms other than ZLib compression are very likely to lead to erroneous conversion 
  3. Texts objects contain symbols of a national (localized) alphabet 
  4. SWF file may contain font, which is not installed in your system. In this case Flash will ask for a replacement when you open a converted FLA, otherwise, please, enable conversion of texts into shapes 
  5. FLA format allows placing as many objects on one layer as you want, however, SWF has a limitation of 1 object only. So when converting SWF into FLA objects will be placed into separate layers 
  6. If SWF file does not contain a character map, then Texts objects parsing will lead to the following erroneous texts: "??????" 
  7. When decompiling a Motion Tween, you might need to experiment with "Motion tween" settings for closer resulting FLA files 
  8. Some Shape objects that have non-standard fills could be parsed incorrectly. The non-standard fill is the one that is present within a non-closed area that has gaps along its contour. More likely that it was created by a third-party application 
  9. Usually Morph shapes have beginning and ending states. When placing a morph shape on a frame its intermediate state is used. It means that morph shape can be rewinded/forwarded into any of its states in SWF. However, it is not possible within FLA format. They are placed on the timeline and always run from their beginning state to the ending one 
  10. When you compile your FLA file into SWF the first time, the hierarchy of the layers gets deformed. This peculiarity is important only for Morphs. When a morph is placed on a frame its state is remarked and written, it leads to the problem when a series of morphs can be "split" into several layers. Such frames cannot be correctly converted into FLA at this stage
  11. Action buttons in FLA file are set when you place them on frames. In SWF files actions are stored in buttons themselves, that's why each button will be represented as a separate instance in FLA, even if they are different in ActionScript only 
  12. We do not decompile captivate projectors (EXE), projectors not created in Adobe Flash and SWF files which are created by Adobe Flex Builder (the latter do not have FLA source at all).
  13. Current build of Flash Decompiler doesn't feature the replacement images with 8-bit PNG images with Alpha. We are right now working on these images format support. Currently it is recommended to use 32-bit PNG images for SWF file editing in Flash Decompiler Trillix 
  14. Sounds with "Nellymoser Asao" codec cannot be extracted properly 
  15. Some problems may occur while converting video with "On2 Truemotion VP6 bistream (with alpha)" to FLA format 
  16. In some cases video which is extracted to AVI format can be played incorrectly 
  17. Flash Decompiler may hang when you replace sounds by MP3 in SWF. Such problems may occur when size of your sounds is very big 
  18. When the original FLA file is published into SWF format all the original scenes are joined into one scene. Almost no information is transferred to the output SWF file about the original scenes.This infomation is impossible to retrieve in most cases. That is the reason why the output FLA file decompiled from the SWF file has only one scene. This fact won't influence the SWF file functionality after it is published from FLA. 
  19. Links editor allows editing statically embedded links only ( but not those, which are formed in AS dynamically or located in HTML) 
  20. Code (in AS 3.0), written into timeline and movie clips, is placed into separate AS classes by Adobe Flash when published into SWF. In most cases it doesn’t cause any problems. But sometimes the original file developer may give such sprite a name (in Linkage settings, Class field) which will be treated incorrectly by AS (e.g., a name starting from a digit or a name equal to AS keyword). Adobe Flash doesn’t check the name, so there will be no problems during compilation. But during republishing after conversion, AS compiler checks the name and may give error message.
    Such files need to be corrected manually: one should move the code from functions like “public function frame1()” to the corresponding frame on movie clip timeline, and then delete these AS files.