- 軟件大小(xiǎo):3.58M
- 軟件語言:中文
- 軟件類型(xíng):國產軟件
- 軟件(jiàn)類別:免費(fèi)軟件 / 編程工具
- 更新時間:2018-08-27 11:46
- 運(yùn)行(háng)環境:WinAll, WinXP
- 軟件(jiàn)等(děng)級:
- 軟件廠商:
- 官(guān)方網站:http://www.itseasyglobal.com/
5.46M/中文/0.0
1.83M/中文/0.0
489KB/中文/10.0
31.91M/中文/10.0
1.90M/中文/7.7
swf反編譯yogda是針對flash打造的反(fǎn)編譯調試程序,主(zhǔ)要是為(wéi)開發人員(yuán)提供反編(biān)譯修改功能,超強的的使(shǐ)用功能為(wéi)程序員們(men)軟件開發提(tí)供(gòng)更(gèng)多的幫助,需(xū)要的用戶快來綠色資源網下載吧(ba)!
反編譯調試(shì)flash的程序,有了(le)Yogda,開發人員可以修(xiū)改/優化(huà)的adobe flash應用程序編譯後的字節碼。
說起來修(xiū)改(gǎi)flash遊戲,理論上應該可以找到更(gèng)好的解決辦(bàn)法——直接去修改二次編譯(yì)後的(de)代(dài)碼,那樣(yàng)就(jiù)可以為(wéi)所欲為了,咕~~(╯﹏╰)b。有位老大爺說得(dé)好,工欲善(shàn)其事必(bì)先利其(qí)器!這東東嘎哈的不用說了,這丫的可以直接修改代碼……咕~~(╯﹏╰)b挺好(hǎo)挺強大(dà)。
Yogda是(shì)一個AVM2 bytecode級(jí)的swf編輯器。
由著名flash開源3D引擎Yogurt3d的(de)開發(fā)者開(kāi)發,但Yogda是一個商業軟件。
使用(yòng)Yogda可更改(gǎi)/替(tì)換swf的(de)tag,並可(kě)以直接(jiē)對swf的doabc做匯編級(jí)別(bié)的修(xiū)改(gǎi)(AVM2時代(dài)的flasm?),
可以把(bǎ)它看成一個高級一點的(de)"閃客之錘"。
這意味著swf加解密又多了一(yī)個方便可靠(kào)的工具。
用你選擇的反編譯器打開導出的SWF,Yogda則依次展開左邊的樹,來到這(zhè)裏:
Public function _fla:frame1();
看右麵(miàn)(我隻是右鍵複製的):
function 0000 *():
{
// Max stack : 5
// Local count : 1
// Scope depth : 10
// Max Scope depth : 11
// Exception Count : 0
// Trait Count : 0
// Code Length : 65 bytes.
0 getlocal0
1 pushscope
2 getlocal0
4 pushbyte 60
6 initproperty _w
7 getlocal0
9 pushbyte 60
11 initproperty _h
12 getlocal0
14 getlex graphics
16 initproperty gr
17 getlocal0
19 getproperty gr
22 callpropvoid clear,0
23 getlocal0
25 getproperty gr
27 pushbyte 1
29 pushint 1
32 callpropvoid LINEStyle,2
33 getlocal0
35 getproperty gr
37 pushint 2
39 pushdouble 1
42 callpropvoid beginFill,2
43 getlocal0
45 getproperty gr
47 pushbyte 20
48 dup
49 getlocal0
51 getproperty _w
52 getlocal0
54 getproperty _h
57 callpropvoid drawRect,4
58 getlocal0
60 getproperty gr
63 callpropvoid endFill,0
64 returnvoid
}
看見紅的那幾(jǐ)行了吧(當然你(nǐ)編輯器上不是紅的,看(kàn)行(háng)號,要是沒紅(hóng)的,看下(xià)麵),就是gr.lineStyle(1, 0x999999);反編譯的結(jié)果了,0x999999呢?除了(le)byte,bool類型,其他的一般都被索引代替了(le),可以(yǐ)翻看左麵的Integers,裏(lǐ)麵依次有編號,但是編號和這裏的編號不(bú)對應,應該+1。 不扯遠了(le),再次對比:
gr.lineStyle(1, 0x999999);
就(jiù)是:
23 getlocal0
25 getproperty gr
27 pushbyte 1
29 pushint 1
32 callpropvoid lineStyle,2
注:前麵的數字不是行號(hào),是(shì)字節號。
翻譯一下,注意對照看ABC:
23,其語義應理解(jiě)為This.
25,Gr.
27,咱(zán)就不說堆棧,參數1
29,咱還不說(shuō)堆棧(zhàn),參(cān)數2
32,調用
前(qián)麵的倆參數,是給後麵調用用的。很明白了(le)吧。所以,我們想把這鬼子(zǐ)丫的改成清(qīng)晰的黑框子,很(hěn)易:
雙擊29那行,修改為pushbyte 1,點OK保存(cún)。然後小鼠標輕點工具欄上內保存按鈕(niǔ),重(chóng)新運行(háng)那個new.swf,丫的黑了吧(ba)!
很易是不,不過還(hái)得說,我們還得用(yòng)winhex,因為我習慣(guàn)於WINHEX,直(zhí)接CTRL+ALT+X查(chá)找一串標誌(zhì)性的16進製,然後去編輯——2D 01改為24 01……暈(yūn)了吧(ba),開個玩笑。
請描述(shù)您所(suǒ)遇到的(de)錯誤,我們將(jiāng)盡快(kuài)予以修正,謝謝!
*必填項,請輸入(rù)內容