亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

破解Flash動(dòng)畫

互聯(lián)網(wǎng)   發(fā)布時(shí)間:2008-10-08 19:03:03   作者:佚名   我要評(píng)論
在某網(wǎng)站上看到一個(gè)flash,覺得可以作為講課時(shí)的演示,于是想保存下來。沒想到保存之后再打開flash就不能正常播放了。 我記得san以前學(xué)英語的時(shí)候搞過一批新東方的flash,于是找到他當(dāng)時(shí)寫的文檔看了一下。這才知道,原來flash也是可以反編譯的。
在某網(wǎng)站上看到一個(gè)flash,覺得可以作為講課時(shí)的演示,于是想保存下來。沒想到保存之后再打開flash就不能正常播放了。

我記得san以前學(xué)英語的時(shí)候搞過一批新東方的flash,于是找到他當(dāng)時(shí)寫的文檔看了一下。這才知道,原來flash也是可以反編譯的。

用SWF Decompiler打開flash一看,發(fā)現(xiàn)里面果然有兩個(gè)Action判斷了自身所在的位置。偽代碼如下: if (target._url.indexOf("somenonexistenthost.com") !=-1 || (target._url.indexOf("somestrings") != -1 ||(target._url.indexOf("_modules") != -1 || target._url.indexOf("web187")!= -1)))
{
var _l9 = new com.[/font]somenonexistenthost[font=宋體].crypto.aso#96727.aso#05500(target, pl, ci, pb, r, rp, w);
}
else
{
var _l10 = _root.attachMovie("sorry", "sorry", 0);
trace(_l10);
_l10._x = Stage.width / 2;
_l10._y = Stage.height / 2;
} // end if

這就很好懂了,flash判斷了自身所處的url里是否包含一些關(guān)鍵字,如果不包含,就進(jìn)入一個(gè)“sorry”流程。

當(dāng)時(shí)san所用的方法是替換函數(shù),把處理異常流程的函數(shù)換成正常的。我琢磨對(duì)于硬盤上的flash來說,所謂url應(yīng)該就是全路徑,只要路徑中包含了上面這些判斷中的任意一個(gè),應(yīng)該就可以正常播放。試著把文件名修改為web187.swf,果然就可以了。

那怎么才能簡(jiǎn)單地干掉這個(gè)檢測(cè),以任意文件名來保存呢?我最開始想到的是把檢查的字符串替換成“\”,因?yàn)槁窂街锌隙〞?huì)包含這個(gè)。后來發(fā)現(xiàn),其實(shí)只要讓字符串長(zhǎng)度發(fā)生變化(譬如刪掉一個(gè)末尾的字符),flash就會(huì)把這里解析為空串,indexOf("")的結(jié)果就不會(huì)是-1,這樣就可以繞過檢測(cè)了。

相關(guān)文章

最新評(píng)論