Home > Development, Review, Technology > DCOMsoft SWF Protector 3

DCOMsoft SWF Protector 3

Company: DCOMsoft
Product: SWF Protector 3
Price: From $39.95

Following my recent re-review of Amayeta’s SWF Encrypt 6.0, here’s another look at SWF Protector 3 from DCOMsoft.

The latest version of the software is 3.0.1.191 which means it hasn’t changed at all for over a year, so it will be interesting to see if it still offers protection against decompilers that are advancing all the time.

First the interface. In the default simple mode this is clean and quite minimalist. You have a button to add individual files, a button to add folders and a button to recursively add folders which is a nice feature that can save a lot of time on larger projects. After adding your files to the list you can either protect them individually or all in one go.

A properties window on the right gives you rudimentary information on each file while a log window at the bottom keeps you informed of progress.

When protecting a file the program will attempt to use default obfuscation settings which it will automatically wind down if there are any problems so that the resulting file always works. If a file does ever break during the process there’s an advanced mode that allows you to tweak the obfuscation applied to each function individually, though to be honest I have never needed this as the automatic settings have never broken a file.

Obfuscated files are given the original file’s name while the original file is renamed which is great news if you’re obfuscating large projects as it means you won’t have to go round renaming files or updating references afterwards. This was something I highlighted in its predecessor as a major advantage over SWF Encrypt last year, before Amayeta shamelessly copied the feature.

The program does occasionally crash and when it does it will be one of two ways – either immediately after loading up despite no interaction from yourself or immediately after you add a file to the obfuscation list. Resolving the issue in both instances is a simple case of closing the program and running it again, but of course such a crash is an annoyance that can’t really be justified in this day and age of tried and tested OSes, drivers, middleware etc.

So, how does it perform when it comes to obfuscating? For this test I again used Sothink’s SWF Decompiler (version 640, build 3450) and Burak’s ASV 2011 (version 2011/08).

First Sothink’s SWF Decompiler. This tool opened both SWFs without crashing or throwing up any error messages, but the AS it gave me was all obfuscated. In both AS3 and AS2 it seemed to only show me the code as SWF Protector 3 wanted it to be seen, which is what we want from an obfuscator really. When I attempted to rebuild the AS3 FLAs the tool crashed, and while the AS2 files did yield FLAs they was completely worthless as none of the code was intact and the library assets were a mess. In short, all I could get from SWF Decompiler was the audio, fonts and graphics, but none of that is realistically going to help someone rip off your Flash project.

Burak’s ASV fared much better with AS3, but slightly worse with AS2. It was completely thrown by the AS2 files and gave me nothing but a long list of error messages. I couldn’t browse the file properly, let alone rebuild an FLA. This implies that the AS2 obfuscation in SWF Protector 3 is significantly more effective than that found in Amayeta’s SWF Encrypt 6. AS2 is traditionally easier to obfuscate than AS3 though, so how did an AS3 file compare? AS3 was a different story as ASV was not only able to open the file but it also showed me all of the code in original, unobfuscated form. It wasn’t quite able to get all the way through to rebuilding an FLA as the FLA that it exported would not compile into a functioning SWF, but with the asset library intact and the original code all visible in ASV’s code browser, it wouldn’t take too long for a determined developer to put together a working rip-off of your Flash project.

An interesting observation was that the test AS3 SWF increased in size slightly after it was run through ASV, but this didn’t seem to affect the file’s running in any way. I do wonder what extra data ASV injected into the file though.

To conclude, if your SWF files are AS2 then SWF Protector 3 looks like an excellent purchase. The two most well-known decompilers on the market couldn’t even get close to decompiling the files, and this tool costs less than half of what Amayeta charges for its ineffective SWF Encrypt software. If you work in AS3 however it’s clear that although SWF Protector 3 will still protect your work against Sothink’s SWF Decompiler, Burak’s ASV almost has it fully cracked. Indeed, a developer with some time on his/her hands would have no trouble in rebuilding your AS3 project from the exported FLA and unobfuscated code, which means that for AS3 developers the search for the perfect obfuscator continues.

UPDATE: It appears that SWF Protector 3 isn’t compatible with Flash player version 11.1.102.55 and it’s not clear if compatibility will return with a future release of the player. SWF Protector 4 is already out for Mac so it can’t be long before the PC version is made available so hopefully the issue will be resolved soon. Alternatively if you need a Flash obfuscator for PC today then you Kindi SecureSWF is your best bet.



  1. August 27th, 2011 at 21:47 | #1

    Hi Gareth,

    Is it possible to make protected files available (or send them to me)?

    For AS2, some ASV preferences can make a difference. (For AS3, most of ASVs import/decompile preferences are designed to be on by default. For AS2, finding the right preferences for the best results can be a bit hard).

    I’d also love to look into what caused the size increase for your AS3 sample.

    Thanks.

    Best,
    Burak
    @asvguy

  2. September 8th, 2011 at 23:33 | #2

    Hi Burak and thanks for posting. Sorry for the late reply.

    The files I used for testing purposes were from clients’ projects so I don’t think I’d be able to send those over. I’d be happy to put something else together for you though and will do at some point over the next couple of days. I will of course make sure that they are made in such a way that they provide the same results!

    Gareth

  3. han chris
    September 19th, 2011 at 09:28 | #3

    Hello Gareth,

    i’m interested in all your review of swf’s protector.(Dcomsoft,Amayeta,KindiSoft)

    my project is a poker game using FMS (Flash Media Server),and it’ll load many external swf..
    many obfuscation method make my swf doesn’t work and have error in it..

    i’ve tried myself using those 3 protectors (demo version),and used Sothink + Trillix for decompiler (demo version too)..
    the result is :
    1.Dcomsoft : failed to play my swf and have error
    2.Kindisoft : if I turn on obfuscation,it’s failed to play mw swf,
    but if I turn off it,my swf’s work normally.
    when i use decompiler,it doesn’t change the function name,but encrypt the logic inside the function.
    3.Amayeta 6.0 : my swf’s works normally,and decompiler failed to read the code.I don’t know how does it work with ASV,i don’t understand using it..
    but from your review,Amayeta is the failed one (http://www.gareth-jones.co.uk/2011/07/25/amayeta-swf-encrypt/)..

    my question :
    so,among that 3 products,what’s the best protector depends on your opinion?
    i don’t mind with the price,i want best result..
    you may answer it to my email..

    thanks..

  4. September 19th, 2011 at 11:36 | #4

    Hi Chris

    Most of the answers you’re looking for are already in the reviews. I need to update the review for Kindisoft but I’m not expecting the result to change much in all honesty, so the order of preference would be 1. Kindisoft and 2. DCOMsoft. I won’t even list Amayeta as an option because as the review clearly demonstrated the product doesn’t work.

    I can’t imagine what you’re doing in your code for your application to break with every obfuscator as each and every one of my projects has worked fine first time round. Perhaps the problem isn’t so much as the obfuscators as something that you’re doing in your code being a little unconventional? I don’t know. Good luck with it though!

  5. han chris
    September 20th, 2011 at 08:13 | #5

    thanks for the quick response and the suggestion..

    good luck for you too Gareth !

  6. William
    October 13th, 2011 at 13:47 | #6

    Hello Gareth.
    I want to buy a new version SWF Protector 4 for Mac
    http://www.macupdate.com/app/mac/31934/swf-protector#ratings
    Could you write about it.

  7. October 20th, 2011 at 12:43 | #7

    Hi. I got in touch with DCOMsoft to ask if they’d like me to review the new version, but unfortunately the PC version doesn’t come out until next month. As soon as it does though I’ll post a review.

  1. No trackbacks yet.

Spam Protection by WP-SpamFree

Spam protection by WP Captcha-Free