是否有非官方规范解释如何对 Flash .FLA 文件进行逆向工程?
我对创建一个应用程序特别感兴趣,该应用程序可以通过编程方式“自动场景规划”Flash 文档,从其他文件中提取内容,将该内容排列到图层中,而无需打开 Flash IDE。然后动画师就可以使用这些预先组装好的 FLA 并开始制作它们的动画。我已经构建了一个 JSFL 脚本来执行此操作,但它运行速度非常慢,难以调试或重新利用。
我花了几天时间在互联网上浏览,看看是否有做逆向工程的余地,但实际上什么也没有。我没有 .FLA 规范。我这两天一直在找。如果有,并且您正在使用它,您将收到 Adobe 的停止函,然后是加拿大相当于 DMCA 的删除通知。
根据维基百科,该格式是一种二进制格式,它基于 Microsoft 二进制复合文件格式规范,如维基百科上所述。复合文件格式 http://en.wikipedia.org/wiki/Compound_File_Binary_Format。但奇怪的是,我认为,欧洲反垄断协议迫使微软发布其规范,这意味着您可以通过在 Google 中输入 Microsoft 复合文件格式来下载 MS 复合文件格式。第一个条目是下载链接。
一旦你研究了它,你就需要准备一套工具。有可能,MS 有一个可用于该格式的反编译器。如果没有,您可能需要花费 3-6 个月的时间来制定基本规格。
在 90 年代初期,我对 Novell IPX 协议和 NCP 堆栈进行了逆向工程,这是向服务器发送消息并获得回复的情况。所以这是相当机械和乏味的,几个月后我们非常清楚需要什么,并且我们建立了 IPX 协议调用和回复的映射。与 NCP 相同。最终 Novell 联系了我们,向我们发出了停止令,并最终想要起诉我们。但最终,他们失败了,因为我们使用的是洁净室技术维基百科洁净室解释 http://en.wikipedia.org/wiki/Clean_room_design。我们使用数据包分析器将其与二进制服务器产品分开,并使用 C++ 重新构建它。但这是协议逆向工程。比你所反思的要容易得多。
所以你首先需要的是一个反汇编程序。我无法给你任何关于使用哪一种的建议,但有很多。一旦获得格式并反汇编文件,您必须尝试识别文件头、页脚、常量、特殊符号序列之类的内容,以便您可以开始创建地图。例如,在 Windows 复合二进制文件格式的第 6 页上,_absig 中的签名格式为 DOCF 11E0 A1B1 1AE1。如果您可以在文件中找到此类信息,则可以启动地图。
但在深入讨论之前,请先看看它们是否是反编译器。我认为您在 Google 中找到的大多数反编译器可能都是轻量级的。去像这样的黑客团体。CrackZ http://www.woodmann.com/crackz/。 IDA 产品是一个反汇编程序。这可能会有所帮助。逆向工程简介 http://www.acm.uiuc.edu/sigmil/RevEng/. 逆向工程社区 http://www.reverse-engineering.net/
希望有帮助。如果你愿意,那就去做吧。这需要几个月的时间。坚持下去!
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)