ActionScripts decompilation and conversion settings

 This group of options defines ActionScripts decompilation and conversion settings. ActionScripts were introduced in Adobe Flash 4.0.

img

  • ActionScript 2.0
    Current checkbox enables/disables ActionScript 2.0 parsing. If this option is disabled then AS 1.0 will be generated. Decompilation of the files that contain AS 2.0 will produce several files: one .FLA, one .FLP and one. AS file for each ActionScript 2.0 class. “.AS” files will be stored in the separate folder that has the name similar to the original one plus “_conv_as” suffix. Please, note that ActionScript 2.0 decompilation requires “File format” to be set to either “autodetect” or “force Flash MX 2004”.
  • Decode all classes as dynamic
    This checkbox enables all AS 2.0 classes decoding as dynamic
  • getProperty/setProperty
    Use old-style syntax to object’s properties (getProperty and setProperty built-in functions).
  • Register-based optimization
    Starting from Adobe Flash Player 6.0 in order to improve performance speed registers were added to ActionScript virtual machine structure. As the result, information about file variables’ names is not available. To restore to variables and values binding (symbolic information) SWF to FLA Converter for Mac uses heuristic algorithm. “Register-based optimization” detection offers several options: “none” means that there would be no optimization detection; “safe” detects storing in registers for specific built-in variables only (this, super, arguments, _parent, _root and _global); “all” does the same as “safe” and, additionally, detects storing function arguments in the registers. This option is related to Flash files generated by Adobe MX 2004 for Adobe Flash Player 6.0.
  • Use tabs
    This checkbox enables/disables tabs for indents in ActionScripts. If this option is enabled, all of the settings below will be ignored.
  • The number of spaces
    This option defines the number of white spaces to use for indents instead of tabs.
  • Braces new line
    This option defines whether to place braces on new line (the so-called new C style) or use old coding style (Kernigan & Ritchie). For instance, if this option is enabled, you may see code structure like the following:

    Old style New style
    function (){

    // your code here
    }

    function ()
    {
            // your code here
    }
  • Single statement
    This option defines whether the single statements should be encapsulated into braces. For instance, if this option is enabled, you may see code structure like the following:

    Option is enabled Option is disabled
    if (a){
            DoIt();
    }
    if (a) DoIt();
  • Normalize “if” statement
    Removes redundant or excessive “if” statements in ActionScrips, making code cleaner and readable. For instance, if conditional statement is inverted and/or function has two exit points (“return” in “if” conditional statement and end of the function body occurred) then this code will be optimized. For example:

    Option is disabled Option is enabled
    ...
    if (!condition)
            return;

    ...
    if (condition){
    ...
    }
    ...
    Â