写在前面:

06年左右网页swf文件的播放一般不需要加密,而是直接调用swf文件在播放器中进行播放;11年左右,swf文件的播放逐渐演变为将完整的文件拆开成若干部分,把二进制数据加密后通过js代码或as代码的调用在合成swf文件进行播放。总之,但凡是flash播放器中能够看到swf文件内容,那么这个主swf文件一定是完成了数据的加载和swf影像的合成,最终完成的播放。

一、查看主SWF文件

通过浏览器的开发者工具,获取主swf文件,下载保存到本地。

二、反编译主SWF文件

本次反编译使用的软件是:ActionScriptViewer

打开ActionScriptViewer,加载下载得到的SWF文件,程序会自动反编译SWF代码,通过查看脚本,能够观察清楚该SWF脚本程序的结构(包与包,以及包与类之间的关系)。

三、下载并安装Adobe Flash Builder 4.7

按照网上教程完成Adobe Flash Builder 4.7软件的下载及安装后

四、根据反编译得到的脚本结构,重新构建该SWF源代码结构

首先、新建文件夹(包),在文件夹下新建AS类文件,将反编译得到的代码,复制黏贴进去。

关键就是,阅读代码,找出原网站传给swf文件的参数类型FlashVars value值作为参数,在新构建的代码中,直接赋值进去进行调试,调试过程中,

利用trace()语句,打印参数值进行调试;

利用var f:FileReference = new FileReference;f.save(_local2, 'doc');可以将数值保存到文件中。

写在后面:

主swf文件中,一定会有一个类的方法中代码类似:

_local2 = new ByteArray();
_local2.endian = Endian.LITTLE_ENDIAN;
_local2.writeBytes(_xxx);
_local2.writeByte(64);
_local2.writeByte(0);
_local2.writeByte(0);
_local2.writeByte(0);
_local4 = ((_00ll.length + _local3) + 4);//这句是计算SWF分割为两部分后,文件头中数据长度,更新第一部分swf数据大小
_local2.position = 4;
_local2.writeUnsignedInt(_local4);
_local2.position = 0;

这里

Endian.LITTLE_ENDIAN;

涉及到10进制数据转16进制后,在左侧补0到偶数位,两两一组倒置。

SWF文件反编译调试记录相关推荐

  1. pyc文件反编译为py文件

    近期时不时需要把工程里的 pyc 文件反编译出来,查看接口函数的逻辑.此前有师兄安利了uncompyle6工具,我使用了几次,发现反编译出来的代码逻辑很清晰,此处我也不能打包票 uncompyle6 ...

  2. .NET 反编译调试神器:dnSpy了解一下

    如果客户环境出了问题,而又无法快速定位问题,可以借助dnSpy进行反编译调试跟踪. 可前往dnSpy官网下载或直接从我的分享链接下载(内置包含.NET Framework 4.7.1,若运行提示需要安 ...

  3. 对Android APK文件反编译查看其源码

    概述 作为android的开发者,相信你会有那么一刻,比如,对于手机中某一款App,有一项功能或者效果你蛮喜欢的,想学习一下它具体是怎么实现的.追求高一点的话,我想深究它这个App的项目架构,本着一探 ...

  4. 请教大家:如何把.DCU文件反编译回源代码?谢谢。

    请教大家:如何把.DCU文件反编译回源代码?谢谢. Delphi / Windows SDK/API http://www.delphi2007.net/DelphiAPI/html/delphi_2 ...

  5. 【python】pyc文件反编译为py文件

    需求:把项目里的 pyc 文件反编译出来,查看接口函数的逻辑 解决方案:uncompyle6可将python字节码转换回等效的python源代码,它接受python 1.3版到3.8版的字节码 具体实 ...

  6. java的class文件反编译工具jad的应用

    java的class文件反编译工具jad的应用 JAD用法具体用法: http://www.kpdus.com/jad.html  官方最新版本,支持jdk1.6 Java下的一个简单易用的反编译工具 ...

  7. java class文件反编译 去掉无用注释

    java class文件反编译之后 有一些没有用的注释 在myEclipse中使用正则表达式 /\*(.*)\*/

  8. Java class 文件反编译工具JD-GUI下载安装使用教程(好用)

    多少个日日夜夜上线系统.都会有明明我改成了最新代码咋没变呢这咋整,看看反编译后的文件吧.每次看完都哦的 豁然开朗. 简介: JD-GUI是java class反编译软件上线的时候很有用.开发这么多年找 ...

  9. Python代码封装的可执行exe文件反编译为Py脚本

    起因是笔者有个课,教图形图像学,作业的代码调不出老师的效果,于是就又有了hack的想法,把老师给的用来演示的exe文件反编译.主要是根据这篇文章的方法来的.将 exe 文件反编译成 Python 脚本 ...

  10. Android APK+Dex文件反编译及回编译工具

    本帖最后由 zhu891108 于 2012-8-3 11:00 编辑 大家好! 相信很多人玩智能手机,无论是塞班,安卓等等,不只是看重各种软件的功能,而更多的是看重系统的可定制性,可以自己动手DIY ...

最新文章

  1. idea junit简单实践
  2. JavaScript代码(一)
  3. C/Cpp / #include
  4. 计算机组装学位,《计算机组装与维护》虚拟实验界面设计与制作学位论文 .doc...
  5. iOS Hacker 越狱后开发和逆向工具准备
  6. mybits注解详解
  7. 每日一笑 | 今天是植树节,我想在你心里种点逼树
  8. OpneCV之图像的平移、翻转、旋转、缩放、裁剪(笔记04)
  9. 计算机课实验报告收获体会,计算机实验报告总结.doc
  10. (二十四)JSP标签之基本标签(jsp:标签名)
  11. 编辑器笔记——sublime text3 编译sass
  12. Java命令运行没反应_cmd中执行java命令没有输出结果
  13. java语言实现_java语言实现树
  14. 华三服务器bios中查看硬盘,H3C服务器升级BIOS
  15. Python 流程控制
  16. 一步真实解决RuntimeError: result type Float can‘t be cast to the desired output type long int
  17. Python语言程序设计基础_实验1 Python程序设计基础_答案_通识教育必修课程_上海师范大学
  18. 用SVD压缩彩色图片(MATLAB代码)
  19. J2EE疑难解决实例
  20. 建设DevOps统一运维监控平台,全面的系统监控你做好了吗?

热门文章

  1. Access 97 , Access 2k , Access 03 数据库密码破解
  2. Spring boot 集成mybatis 教程
  3. 离线数据系统之oozie详解
  4. 现代书法脚本字体Tifany Script
  5. android 菜鸟面单打印_菜鸟Android
  6. 一个Android健身APP源码(类似KEEP、FEEL、轻+、减约、薄荷等)
  7. mysql中Mysql模糊查询like效率,以及更高效的写法和sql优化方法
  8. pygame判断鼠标左键_鼠标科普,选对鼠标用好鼠标。
  9. 九九乘法表——C语言
  10. 电源大师课笔记 2.7