sothink swf decompiler反编译的常见错误
2011-11-25 23:09
405 查看
1. 当bytecode 出现new activation或者 dup的时候,会出出现下面语句.
1.1 loc_1;
//通常是loc_1=this或者loc_1=0, local=x
1.2 loc_1 = new ObjX();
new ObjectX().x = 0;
//通常是dup之后发生.
2. 当代码使用xml的查找功能时候,返编译出来的基本无效.
xml.@(id=1); 反编译出来的代码变成一个错误的循环.
3. 当代码使用alchemy库的部分,大量初始全局变量没有正确反编译, 应该是对script_info的相关init method没有做好工作.
本身alchemy的代码是x86 asm的as vm实现,正确也没有什么用. 写了个修改工具,直接抠出相关的bytecode做成swc.
4. 复杂的闭包函数会导致大量的dup, new activation等...语法就开始错乱了.
情形类似1.
5. 无法正常反编译 IProxy继承出来的类.
6. 对于 xml , dictionary 等, 使用for each, for in 语法混乱,令到代码看起来没有错,但无法正常工作.
7. meta-data丢失
将现有swf代码diy成swc感觉比较有趣, 比较pe容易多了。 下次找时间发表一下原理.
1.1 loc_1;
//通常是loc_1=this或者loc_1=0, local=x
1.2 loc_1 = new ObjX();
new ObjectX().x = 0;
//通常是dup之后发生.
2. 当代码使用xml的查找功能时候,返编译出来的基本无效.
xml.@(id=1); 反编译出来的代码变成一个错误的循环.
3. 当代码使用alchemy库的部分,大量初始全局变量没有正确反编译, 应该是对script_info的相关init method没有做好工作.
本身alchemy的代码是x86 asm的as vm实现,正确也没有什么用. 写了个修改工具,直接抠出相关的bytecode做成swc.
4. 复杂的闭包函数会导致大量的dup, new activation等...语法就开始错乱了.
情形类似1.
5. 无法正常反编译 IProxy继承出来的类.
6. 对于 xml , dictionary 等, 使用for each, for in 语法混乱,令到代码看起来没有错,但无法正常工作.
7. meta-data丢失
将现有swf代码diy成swc感觉比较有趣, 比较pe容易多了。 下次找时间发表一下原理.
相关文章推荐
- Sothink SWF Decompiler 4
- Sothink SWF Decompiler v4.2
- Sothink SWF Decompiler
- 【破解】Sothink SWF Decompiler 5.2 注册机
- Sothink SWF Decompiler 4中文破解版---flash9(as3)要加密吗?
- PHP编译过程中常见错误信息的解决方法
- Android Studio NDK及so文件开发 以及常见错误
- 安装PHP常见错误解决error: libjpeg.(a|so),error: libpng.(a|so) not found,error: Cannot find ldap
- 常见编译/链接错误及其解决办法
- Ubuntu上编译OpenCV出现No rule to make target '/usr/lib/libpng.so' 错误
- eclipse编译java程序常见错误处理办法
- 常见编译错误提示附解决方法
- VS2008常见编译错误(总结篇)
- 常见 PHP (5.4.24) 编译错误解决方法[备忘]
- 最常见的20种VC++编译错误信息
- c++常见编译错误解决方案
- 编译错误:A class file was not written. The project may be inconsistent, if so try refreshing this projec
- PHP编译安装时常见错误解决办法
- 最常见的20种VC++编译错误信息集合