1 20 50 150 500
欢迎来到哈希软件站,找素材,搜软件,就上哈希软件站!
当前位置 >首页 >软件下载 >电脑软件 >编程开发 >网络编程

Swf反编译yogda 1.0.564 官方最新版

软件信息
  • 分类:网络编程
  • 大小:3.5M
  • 语言: 英文
  • 环境: WinAll, WinXP
  • 更新:2024-11-13
  • 评级:
  • 系统: Windows Linux Mac Ubuntu
  • 软件类别: 国外软件 / 免费软件 / 反编译(译逆工程)
  • 插件情况:

反编译调试flash的程序,有了Yogda,开发人员可以修改/优化的Adobe Flash应用程序编译后的字节码。

说起来修改FLASH游戏,理论上应该可以找到更好的解决办法——直接去修改二次编译后的代码,那样就可以为所欲为了,咕~~(╯﹏╰)b。有位老大爷说得好,工欲善其事必先利其器!这东东嘎哈的不用说了,这丫的可以直接修改代码……咕~~(╯﹏╰)b挺好挺强大。

yogda详细介绍:

Yogda是一个AVM2 bytecode级的swf编辑器。
由著名flash开源3D引擎Yogurt3d的开发者开发,但Yogda是一个商业软件。
使用Yogda可更改/替换swf的tag,并可以直接对swf的doabc做汇编级别的修改(AVM2时代的flasm?),
可以把它看成一个高级一点的"闪客之锤"。
这意味着swf加解密又多了一个方便可靠的工具。

反编译:

用你选择的反编译器打开导出的SWF,Yogda则依次展开左边的树,来到这里:

Public function _fla:frame1();

看右面(我只是右键复制的):

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 
 }


看见红的那几行了吧(当然你编辑器上不是红的,看行号,要是没红的,看下面),就是gr.lineStyle(1, 0x999999);反编译的结果了,0x999999呢?除了byte,bool类型,其他的一般都被索引代替了,可以翻看左面的Integers,里面依次有编号,但是编号和这里的编号不对应,应该+1。 不扯远了,再次对比:

gr.lineStyle(1, 0x999999);

就是:

       23  getlocal0 
       25  getproperty gr
       27  pushbyte 1
       29  pushint 1
       32  callpropvoid lineStyle,2


注:前面的数字不是行号,是字节号。

翻译一下,注意对照看ABC:

23,其语义应理解为This.

25,Gr.

27,咱就不说堆栈,参数1

29,咱还不说堆栈,参数2

32,调用

前面的俩参数,是给后面调用用的。很明白了吧。所以,我们想把这鬼子丫的改成清晰的黑框子,很易:

双击29那行,修改为pushbyte 1,点OK保存。然后小鼠标轻点工具栏上内保存按钮,重新运行那个new.swf,丫的黑了吧!

很易是不,不过还得说,我们还得用WINHEX,因为我习惯于WINHEX,直接CTRL+ALT+X查找一串标志性的16进制,然后去编辑——2D 01改为24 01……晕了吧,开个玩笑。

下载地址

热门软件

Top