All Your SWFs Are Belong To Open Source

When I started developing Flash websites back in 1997, I was intrigued by how this or that effect could be achieved. When looking at a particular Flash site, I used to think “what if I could have a look at the source code for this?”.

Converting a compiled Flash .SWF to the source code .FLA file, has been a forbidden dream since the inception of Flash. While it is still forbidden, it is no longer a dream.

With Ave Imperator ° FLA, you open a protected .SWF, and it converts and saves a .FLA file for you. This has been possible before, with the use of Buraks ActionScript Viewer, as mentioned here. The main difference being, that Imperator skips a step, which in fact makes it illegal, but much faster and easier.

Buraks ActionScript Viewer 4 (or ASV for short), has the ability to analyze a .SWF file, and write down a so-called JSFL action sheet. This JSFL sheet is a form of JavaScript for Flash MX 2004, that, when run, will rebuild or more accurately replicate the timeline of the analyzed .SWF file. This seems like an awfully slow and tedious process, but the fact that it doesn’t actually convert the SWF file to a FLA file but rather rebuilds one, makes it unique. Because when Macromedia opened their SWF format to the public, thereby allowing 3rd party programs to be built, they also made a clause that no application that converted a SWF to a FLA file could be written. Thus, when ASV would rebuild a FLA file, it circumvented this rule and rule and was thus legal.

Imperator °FLA is different on this term. It does exactly what it is not allowed to, and directly converts a SWF to FLA, and judging by the demo, does so in seconds. The speed and ease with which it does so, will definately appeal to the layman user—the very that is most likely to steal SWFs…

ASV doesn’t come with a demo, but can be bought online. As mentioned, it uses a legal method for converting SWF files, plus it comes with the ability to extract font outlines from the SWFs and save these in TrueType (TTF) Format.

Imperator °FLA has a demo, that converts the SWF but doesn’t save converted ActionScript, and is limited to 200 FLAs. In addition to converting SWFs, it’ll recover from the SWF all Components (with initialized variables), all Environment Settings (backgroundcolor, framerate, height, width, etc.), Frame Labels, Library Linkages and Mask Layers.

The whole issue of the ethics of reverse engineering has been long discussed, and bottomline is that it’s sad that what Flash authors thought was their proprietary material can now be copied, analyzed and modified. Still, I’m kinda happy that I am now able to restore the source files of Noscope 2001, which was lost in a computer crash. And as such, both Imperator °FLA and ASV represent double edged swords. Whether you like the idea or not, the applications are out there, and your SWFs now belong to them.

9 thoughts on “All Your SWFs Are Belong To Open Source”

  1. Daniel says:

    Hadn’t even considered using that… But I have lost most of my source files… would be nice to get some of them back. 🙂

    Thanks.

  2. D.Pihl says:

    There’s also “Sothink SWF Quicker”, that’s supposed to be good.. Haven’t tried it myself though.

  3. D.Pihl says:

    Sothink SWF Decompiler, my bad. :

  4. Need I mention that I love any kind of reverse engineering tool and I am against any legislation against them.

  5. Joen says:

    Daniel, exactly—It’s nice to have the ability to get your source files back. I need that too.

    Brian, I would expect nothing less from you. I think I agree, and wouldn’t ever lobby for legislation against rev. engineering tools. But is there any legislation on that area already? Or were you referring to my mentioning that Macromedia wouldn’t allow direct-to-FLA conversion?

  6. Daniel says:

    The DMCA about reverse engineering is very vague. Reverse Engineering for bypassing security feautures is illegal, obviously, but from what i can gather from it, attempting to rewrite the source-code of documents from an encrypted file is not.

    Then ofcourse, it’s up to the judge who decides on the case (if it were to go to such levels) if it actually fits with the law.

    You can check it here, if you want:

    http://www.copyright.gov/legislation/dmca.pdf

    🙂

  7. Joen says:

    Interesting. I wonder if that paper I read all those years ago when Macromedia open sourced their Flash format has any juridical validity. I clearly remember it stating that direct-to-fla conversion was not allowed, because the FLA format was not open…

  8. Robin says:

    Just remember that there is a big difference between SWF, which is open source, and FLA, which is not.

  9. Mehdi Ahmadi says:

    Hello
    Please look SWF Protect from http://www.sample4u.com until protect your swf as decompilers.

Comments are closed.