Monday, August 23, 2010

Free SWF Decompilers!

UPDATE 2011_8_16
https://sites.google.com/site/as3extractor/home
ActionScript Extractor
A free actionscript3 decompiler.


================================================
UPDATE 2011_6_19
http://www.swfwire.com/(Highly Recommended!)
https://github.com/magicalhobo/SWFWire

SWFWire Decompiler

An open source library written in ActionScript 3 for reading and writing swfs. 

SWFWire Inspector


"Easily view the contents of SWF files with this open source AIR app. You can view images, shapes, and even syntax-highlighted ActionScript 3.

See what parts of your code are taking up the most space. Make sure sensitive data isn't being exposed. Gain a deeper understanding of the file format. You might even be impressed at how efficient Flash is."

 


================================================
UPDATE 2010_2_09
http://code.google.com/p/asdec/(Highly Recommended!)

asdec: Open Source ActionScript decompiler written in Java
"JP ActionScript decompiler (ASDec) is program for decompiling ActionScript parts from flash SWF files. Program has also basic ability to edit (assemble) ActionScript."











Features:
Opening SWF files version 10 or older
Showing source code of ActionScript1/2 and ActionScript3. (See source limitations)
Exporting sources to file (at the moment only AS3)
Editing source code via modifying assembler source (See editing limitations)
Saving modified actionscript back to the file
Built-in proxy server for editing SWF files which come through i
================================================
ActionScript Decompiler

http://www.showmycode.com/
“Decompile flash ActionScript from the swf flash file. Use this online flash swf decompiler to get the source code of the swf file.”
 

HP SWFScan
www.hp.com/go/swfscan 
http://h30499.www3.hp.com/t5/Following-the-White-Rabbit-A/SWFScan-FREE-Flash-decompiler/ba-p/5440167
“Decompiles applications built on the Adobe Flash platform to extract the ActionScript code and statically analyzes it to identify security issues such as information disclosure.”

Resource Extractor/Modifier

(http://www.swfdecompiler.net)
Decompile Flash Free Version is an outstanding SWF decompiling tool which allows you to convert flash between SWF and FLA format. Decompile Flash offers the powerful function of editing dynamic texts of flash movie and replacing images as your own easily and watch the edited result immediately. The easy-to-use interface helps you catch on to the system quickly.”

“SWF Decompiler Premium Free Version is a 100% freeware. It allows you to convert between swf and exe format, besides, the powerful function supports edit the dynamic texts and replace images. The player window is innovatively separated from the main panel, which enables users to drag and drop the window wherever they want it to be.”

3. http://www.swftools.org/
SWFDump “Prints out various informations about SWFs, like contained images/fonts/sounds, disassembly of contained code as well as cross-reference and bounding box data.”
SWFExtract “Allows to extract Movieclips, Sounds, Images etc. from SWF files.”

4. http://www.swfmodify.com/
“swfModify software is useful tool for edit , rebuild flash file, and it's free. It’s different from other edit tools. You need no experience of flash design, all you should do is click mouse button. You can replace virtual item in .swf file, and save as another flash file. In the future, we hope every user can upload your flash resources for the others.”

“Easy to use XML-based editor for SWF debugging and updating; Decompiling of SWF into SWiX-format XML; Reassembly of SWiX-format XML into an SWF”


7. SWF To Image GUI
SWF To Image GUI is a freeware utility to convert flash movies (SWF) into JPEG, GIF, PNG, BMP images”

Bytecode Disassembler

“As3Eval is a library that packages the Tamarin ESC compiler to work within a run-of-the-mill flash player. You can also paste the output of hexdump -C on a swf to disassemble it within the UI.”

2. Nemo 440
Advanced ActionScript 3/ABC2/Flex 2/Flex 3/Flex 4/AIR disassembler

4. http://code.google.com/p/apparat/

5. http://www.yogda.com/
AVM2 Bytecode Assembler, Disassembler, also has the functions of editing(adding/removing) swf tags.













Unprotectors

1. SWF Decrypt
http://www.swfdecrypt.com/

“WF Decrypt will reverse and remove the few junk code these types of software add to your SWF file and charge you money for. The purpose of this software is to help you assess the protection solution that you have chosen. I hope it will also encourage the authors of SWF Encrypt and SWF Protector to either implement actual code obfuscation methods or discontinue their products and stop charging for junk.”


2. http://www.swf-reader.com
“SWF Reader Professional is first program to unprotect encrypted swf files.
Main features:

Remove/add tags.
Manipulate doABC structure (AS3).
Full unprotect AS2 files which are encrypted by SWF Encrypt 5 (http://www.amayeta.com/).
Unprotect AS3 files which are encrypted by SWF Encrypt 5 (http://www.amayeta.com/). There is not possible to recover names (class, vars, functions) because encrypter remove original names irretrievably.”
This one also has a nice memory dump tool/SWF vampire(File->Load from memory) for unpacking.


Miscellaneous Links:


Swf Picture Extractor


http://blog.reversing.com.ar/2010/02/debugging-actionscript-jited-code/ 
Extract SWF files from Flash Executables(EXE):
http://www.northcode.com/blog.php/2007/08/02/Extract-SWF-files-from-Flash-Executables 

Libraries for reading/writing SWF and modifying ActionScript Bytecode:
http://www.flagstonesoftware.com/transform/ (Java)
https://github.com/CyberShadow/RABCDAsm (D) 
http://www.libspark.org/wiki/yossy/swfassist (AS3)
http://segfaultlabs.com/swfdb (AS3)
https://github.com/magicalhobo/SWFWire (AS3)
https://github.com/laomoi/swfdiy (AS3)
http://sourceforge.net/projects/swfdotnet/ (C# .Net or VB.Net)
http://www.codeproject.com/KB/graphics/swfdotnet-decompiler.aspx

https://github.com/RintarouTW/SWFVisualizer(AS3)
https://github.com/RintarouTW/swfparser(C++)
https://github.com/junfenggeng/libswf/(C)

Pixel Bender .pbj files Decompiler: 
http://www.kaourantin.net/2008/09/pixel-bender-pbj-files.html

AGAL ByteCode Decompiler: 
DEMO: http://boycy.webs.com/Disassembler.swf 
Source Code: http://boycy.webs.com/Disassembler.rar

2 comments:

Michał Gierwatowski said...

Check this out:
https://sites.google.com/site/as3extractor/home
It can handle messed code from some obfuscators.

Bruce Jawn said...

@Michał Gierwatowski: Thanks for sharing, added it to the post.