原文件又好像是通过swf解码 原始代码地址 http://vip.sopad.cn/3/main_e.js 
因为对AS脚本不熟,反编了SWF得到解密,请高手帮忙怎样写解密 http://www.qiannao.com/space/show/baddychen/上传分享/swf.rar/.page 
我把关键的文件打包进去了 
package jssub.tiantian 
{     public class Loveyou extends Object 
    { 
        public static const TIPS:String = "Gainover Encoder"; 
        public static const SUFF:String = "_11b";         public function Loveyou() 
        { 
            return; 
        }// end function         public function LoveMe(param1:String, param2:String, param3:String, param4:Object) : String 
        { 
            var _loc_5:Array; 
            var _loc_6:String; 
            _loc_5 = new Array(); 
            _loc_5 = param3.split(""); 
            _loc_6 = ""; 
            _loc_6 = "eval((function(){"; 
            _loc_6 = _loc_6 + (param4["m1"] + "\'[" + param1 + "]\');var h=r[" + _loc_5[0] + "].split(\'" + _loc_5[1] + "\');"); 
            _loc_6 = _loc_6 + ("var s=r[" + _loc_5[2] + "].split(\'" + _loc_5[3] + "\');" + param4["m2"] + "r[" + _loc_5[4] + "]);var c=" + _loc_5[5] + ";b=b.replace(/" + _loc_5[6] + "/gi,function(){c++;return s[h[c-" + _loc_5[7] + "]-" + _loc_5[8] + "];});"); 
            _loc_6 = _loc_6 + ("return (" + _loc_5[9] + ");}};var mm=new Tiantian();var xx=mm.d(\"" + param2 + "\");return xx;}catch(e){}"); 
            _loc_6 = _loc_6 + "})())"; 
            return _loc_6; 
        }// end function     } 

package jssub 

    import flash.display.*; 
    import flash.events.*; 
    import flash.external.*; 
    import flash.net.*; 
    import jssub.tiantian.*;     public class jsrun extends Sprite 
    { 
        private var loader:Loader; 
        private var thisinfo:Object; 
        private var pos:String = "0_1#20"; 
        private var jsdata:String = ""; 
        private var picurl:String = ""; 
        private var header:String = ""; 
        private var om:Object;         public function jsrun(param1:Object, param2:Object) 
        { 
            picurl = ""; 
            pos = "0_1#20"; 
            jsdata = ""; 
            header = ""; 
            om = param2; 
            thisinfo = param1; 
            if (thisinfo.pic) 
            { 
                picurl = thisinfo.pic; 
            } 
            else 
            { 
                picurl = "./img/gainover.png"; 
            }// end else if 
            loadImgData(); 
            return; 
        }// end function         public function runJsFunction(param1:String) : Boolean 
        { 
            if (ExternalInterface.available) 
            { 
                ExternalInterface.call("eval", jsdata); 
                return true; 
            }// end if 
            return false; 
        }// end function         private function loadPicComplete(param1:Event) : void 
        { 
            var _loc_2:Bitmap; 
            var _loc_3:BitmapData; 
            var _loc_4:Array; 
            var _loc_5:int; 
            var _loc_6:int; 
            var _loc_7:uint; 
            _loc_2 = Bitmap(loader.content); 
            _loc_3 = _loc_2.bitmapData; 
            _loc_4 = new Array(); 
            _loc_5 = 0; 
            while (_loc_5 < 200) 
            { 
                // label 
                _loc_6 = 0; 
                while (_loc_6 < 400) 
                { 
                    // label 
                    _loc_7 = _loc_3.getPixel(_loc_6, _loc_5); 
                    if (_loc_7 == 0) 
                    { 
                        break; 
                    }// end if 
                    _loc_4.push(_loc_7.toString(16)); 
                    _loc_6++; 
                }// end while 
                _loc_5++; 
            }// end while 
            header = _loc_4.join("_"); 
            initJsData(); 
            return; 
        }// end function         public function loadImgData() : void 
        { 
            loader = new Loader(); 
            loader.contentLoaderInfo.addEventListener(Event.COMPLETE, loadPicComplete); 
            loader.load(new URLRequest(picurl)); 
            return; 
        }// end function         private function initJsData() : void 
        { 
            var _loc_1:String; 
            var _loc_2:Loveyou; 
            var _loc_3:String; 
            var _loc_4:Array; 
            _loc_1 = ""; 
            if (ExternalInterface.available) 
            { 
                _loc_1 = ExternalInterface.call("DoNotCopyIt"); 
                if (_loc_1 + "" == "null") 
                { 
                    _loc_1 = thisinfo.codes; 
                    _loc_3 = "[" + Loveyou.TIPS + "]"; 
                    _loc_4 = _loc_1.split(_loc_3); 
                    _loc_1 = _loc_3 + _loc_4[1] + _loc_3 + encodeURIComponent(_loc_4[2]); 
                }// end if 
                _loc_2 = new Loveyou(); 
                jsdata = _loc_2.LoveMe(Loveyou.TIPS, header + _loc_1, pos + Loveyou.SUFF, om); 
                runJsFunction("gainover"); 
            }// end if 
            return; 
        }// end function     }