网上传闻swf reader是破解最厉害的神器,可以内存抓取+doSWF反编译。所以去官网下了一个:

SWF_Reader_2.3

不出所料,demo版本没有反编译的功能。网上搜到一个哥们尝试了下:

http://blog.sina.com.cn/s/blog_6d0b766301011yv9.html

可是明显,按照做法,是破解不了的。估计换了算法,那只能用jd-gui去反编译这个jar了。

看到个关键文件:

d.a:

  private static byte[] a(byte[] paramArrayOfByte)
{
byte[] arrayOfByte1 = { -21, 33, 76, 44, -11, -55, -90, 99, -79, 21, 34, -69 };
byte[] arrayOfByte2 = new byte[paramArrayOfByte.length - 512];
int i = 0;
int j = 0;
for (int k = 256; k < paramArrayOfByte.length - 256; k++)
{
int m = paramArrayOfByte[k];
arrayOfByte2[i] = (byte)(m ^ arrayOfByte1[j]);
i++;
j += 2;
if (j >= arrayOfByte1.length)
j = 1;
j--;
j--;
}
return arrayOfByte2;
}

这段代码就是作者玩byte,自定义一个编码规则。

另外:

  public static boolean isFull()
{
Object localObject = { "j", "i", "n", "d", "a", "r", "K", "e", "i", "n" };
int i = 0;
for (int j = unique.length() - 1; j >= 0; j--)
{
if (unique.charAt(i) != localObject[j].charAt(0))
{
Main.Main.a = c.c;
break;
}
i++;
}

这段代码,作者自己搞了个key的验证。所以我知道构造license.java的内容是:

    public static void main(String[] args)
{
try
{
FileOutputStream ostream = new FileOutputStream("t.org");
ObjectOutputStream p = new ObjectOutputStream(ostream);
Licence aa = new Licence();
aa.name = "pixysoft";
aa.surname = "pixysoft";
aa.nick = "pixysoft";
String bDate = "2099-06-08 12:00";
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");
aa.buyDate = formatter.parse(bDate);
aa.unique = "jindarKein";
p.writeObject(aa);
p.flush();
ostream.close(); byte[] content = FileHelper.readToBytes("t.org");
for (byte b : content)
{
System.out.print((int) b + ",");
}
System.out.println(); byte[] dContent = new byte[content.length + 512];
for (int i = 0; i < 256; i++)
{
dContent[i] = 0;
}
for (int i = 0; i < content.length; i++)
{
dContent[i + 256] = content[i];
}
for (int i = 256 + content.length; i < dContent.length; i++)
{
dContent[i] = 0;
} content = a(dContent);
for (byte b : content)
{
System.out.print((int) b + ",");
}
System.out.println(); dContent = new byte[content.length + 512];
for (int i = 0; i < 256; i++)
{
dContent[i] = 0;
}
for (int i = 0; i < content.length; i++)
{
dContent[i + 256] = content[i];
}
for (int i = 256 + content.length; i < dContent.length; i++)
{
dContent[i] = 0;
}
// content = a(dContent);
// for (byte b : content)
// {
// System.out.print((int) b + ",");
// }
// System.out.println();
FileHelper.write("licence.file", dContent);
}
catch (Exception e)
{
e.printStackTrace();
}
} private static byte[] a(byte[] paramArrayOfByte)
{
byte[] arrayOfByte1 = { -21, 33, 76, 44, -11, -55, -90, 99, -79, 21, 34, -69 };
byte[] arrayOfByte2 = new byte[paramArrayOfByte.length - 512];
int i = 0;
int j = 0;
for (int k = 256; k < paramArrayOfByte.length - 256; k++)
{
int m = paramArrayOfByte[k];
arrayOfByte2[i] = (byte) (m ^ arrayOfByte1[j]);
i++;
j += 2;
if (j >= arrayOfByte1.length)
j = 1;
j--;
j--;
}
return arrayOfByte2;
}

其实也很简单,作者自己做个了密码表,然后对byte进行位异或操作。另外前后加入了256个空byte。我只要对license的序列化进行一次异或,就能够被程序解析。

得到的licence.file放到jar文件目录,即可,选择unproject模式,能够开启所有的menu。

SWF READER 破解日志。的更多相关文章

  1. MyEclipse2015破解版_MyEclipse 2015 stable 2.0 稳定版 破解日志

    前言:在MyEclipse 2015 Stable 1.0下载安装破解日志(http://www.cnblogs.com/wql025/p/5161979.html)一文中,笔者主要讲述了该版本的破解 ...

  2. 内存提取SWF,破解doswf方法概述

    参考文献: 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% ...

  3. Flash的swf文件破解

    1.准备好flash文件,xxx.swf(后缀为swf),将其重构swf文件为fla源文件. 2.asv软件(5以上版本)的操作 1.点击左上角 文件 --> 打开 --> 运行已准备好的 ...

  4. Xamarin for Visual Studio 破解日志

    一.相关声明 本文涉及的 Xamarin 系列软件的版权为 Xamarin Inc. 所有 以本文涉及的思路和方法破解的软件,禁止用于商业用途 如无必要,学习和研究时最好以正版为准 团队或土豪等若觉得 ...

  5. MyEclipse 2015 Stable 1.0下载安装破解日志

    前言 这2天下载了许多myeclipse版本,基本上是14/15版本的,各种破解均告以失败,这次下载了贴吧一个吧友提供的版本,现已破解.破解结果现不好说--目前已装SVN,根据经验,只有等待一定时间验 ...

  6. [ABP] ASP.NET Zero 5.6.0 之 破解日志

    继上次ASP.NET Zero 5.5.2的破解https://www.cnblogs.com/VAllen/p/ABP-ASP-NET-Zero-5-5-2-Crack.html之后,现在发布了AS ...

  7. [ABP] ASP.NET Zero 5.6.0 之 ASP.NET Zero Power Tools 破解日志

    两个要破解Patch的关键dll名称:AspNetZeroRadToolVisualStudioExtension.dll和AspNetZeroRadTool.dll AspNetZeroRadToo ...

  8. 破解swf文件

    但我们在网页上看到漂亮的flashs,想看下别人是怎么做的,怎么办? 答曰:我们需要两个工具 swf_reader_2.3 (把浏览器中的flash下载到本地的swf文件)下载地址http://dow ...

  9. 实战-Fluxion与wifi热点伪造、钓鱼、中间人攻击、wifi破解

    原作者:PG     整理:玄魂工作室-荣杰 目录: 0x00-Fluxion是什么 0x01-Fluxion工作原理 0x02-Kali上安装fluxion 0x03-Fluxion工具使用说明+实 ...

随机推荐

  1. php二维数组按照键值排序的方法

    //按照传入数组中的num倒序 public function numdesc($array,$key="num",$order="desc"){ $arr_n ...

  2. 提高代码质量 CheckStyle FindBugs PMD

    提高代码质量-工具篇 注:这是一篇翻译文章,原文:How to improve quality and syntax of your Android code,为了理解连贯,翻译过程中我修改了一些陈述 ...

  3. 猜数字 事先给定一个数字,然后让用户猜3次,猜不中就输了,猜中就赢了。 每次猜错,给出提示,less or big

    c = 0a = 10while c <3:    b = int(raw_input("请输入数字"))    if b == a:        print " ...

  4. 第一个jemter测试脚本

    通过jmeter代理录制脚本后,会产生大量的无用的请求,尽管在代理中已经过滤了一部分图片或者CSS.JS文件. 手动查看主要的请求:这里主要关注登陆请求,要确定有效的URL请求 删除除/Login.a ...

  5. babel 配置探究及错误解析

    前面的文章说到了react 15的一些特性,众所周知react搭配es6或者叫es2015的开发模式更加的方便快捷.不过提到es2015这个毕竟没有被浏览器广泛支持的规范,要想能够快快乐乐的应用起来, ...

  6. React Ntive 学习手记

    React使今年来比较热门的前端库,之所以说是库呢,因为React.js是应用于MVC中的V层, 它并不是一个完整的MVC框架,所以,我也不知称之为框架了. 不过这并不影响React的火热. 混合应用 ...

  7. React Native填坑之旅--组件生命周期

    这次我们来填React Native生命周期的坑.这一点非常重要,需要有一个清晰的认识.如果你了解Android或者iOS的话,你会非常熟悉我们今天要说的的内容. 基本上一个React Native的 ...

  8. [转]彻底征服Word 2007标题多级列表

    [转]彻底征服Word 2007标题多级列表 用Word编写文档的人都知道,一篇长文档一般是需要分章节来划分段落的.在Word中也有对应的工具来完成这项任务,这就是多级列表.然而绝大多数使用Micro ...

  9. [Leetcode][JAVA] Distinct Subsequences

    Given a string S and a string T, count the number of distinct subsequences of T in S. A subsequence ...

  10. 第51讲:Scala中链式调用风格的实现代码实战及其在Spark编程中的广泛运用

    今天学习了下scala中的链式调用风格的实现,在spark编程中,我们经常会看到如下一段代码: sc.textFile("hdfs://......").flatMap(_.spl ...