參考文獻:html
http://blog.ceflash.com/%E5%86%99%E7%82%B9swf%E4%BA%8C%E8%BF%9B%E5%88%B6%E7%9A%84%E4%B8%9C%E8%A5%BF/java
http://m.blog.csdn.net/blog/crazyingBird/7173445spa
http://bbs.9ria.com/thread-173116-1-1.html.net
http://my.oschina.net/zhyuliang/blog/207175code
http://stackoverflow.com/questions/13856300/converting-hexadecimal-to-byte-in-javahtm
步驟:blog
1. 運行HxD,打開IE的進程,就是加載了flash那個。進程
2. 到達二進制的最後一個位置,向前查找FWS。ci
3. 找到以後,簡單看下內容,符合文檔
FWS.‰œ..x.._... .....D.....C.ÿÿÿ?._œ..ˆ.'<.getSWFVersion.timeout.target.ASSetPropFlags.isConnected.ASnat
這樣的,就是一個有效開頭。
4. 向後找40 00 00 00. 而後整段複製到剪貼板。
5. 使用Java加載這段16進制,轉爲二進制:
String hello = FileUtils.readFileToString(new File("E:\\Baiduyun\\俠物語\\新建文本文檔.txt")); List<Byte> b = new ArrayList<Byte>(); for (String bbb : hello.split(" ")) { b.add((Byte) (byte) (int) (Integer.parseInt(bbb, 16) & 0xFF)); } byte[] bbbb = new byte[b.size()]; for (int i = 0; i < bbbb.length; i++) bbbb[i] = b.get(i); FileUtils.writeByteArrayToFile(new File("E:\\Baiduyun\\俠物語\\GameLoader.crack.swf"), bbbb);
6. 用asv2010打開,完成破解。