本帖最后由 Shock 于 2016-2-23 13:20 编辑
软件:http://www.hsofts.com/ssq.html
平台:Windows 7 X64
工具:Exeinfope、Reflector
菜鸟:SHock
题外话:看到别人得到精华 心里那是一个羡慕啊 所以我也想争取 不知道我能不能如愿以偿;
免责声明:
本人所发布的一切破解补丁、注册机和注册信息及软件的解密分析文章仅限用于学习和研究目的;
不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。
您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。
首先我们去官网下载原版程序进行安装,备注(分标准版和专业版)这里以专业版为例其它大同小异。
1、安装完后找到目标进程L.FlySoft.SSQ.exe的所在目录
2、我们用Exeinfope查下壳,结果显示如下目测是没有壳的
3、我们把程序运行起来看看大致的一个走势流程
这是启动后的登录窗口需要帐号和密码才可以登录
旁边有一个免费注册的入口我们顺势点击过去,我们随意注册一个帐号密码就可以了
用已经注册好的帐号密码登录,进去之后发现未授权 只能勉强的测试一些功能 但是大部分都有限制的
4、我们再用Reflector载入目标进程L.FlySoft.SSQ.exe看看代码有没有被混淆了,好为后面的破解顺利进行
5、进来之后我们发现代码灰常的干净,那就不用多说了
6、通过上面的走势流程我们知道在程序在登录进去之后发现有【未授权】等字样所以我们直接搜索字符串定位来分析进行破解
[C#] 纯文本查看 复制代码 L.FlySoft.SSQ.frmSearchFormula.AddFormula(String) : Void
L.FlySoft.SSQ.frmSearchFormula+<>c__DisplayClass3.<Search>b__1() : Void
L.FlySoft.SSQ.frmMain.HTMLInitCompleted() : Void
L.FlySoft.SSQ.frmMain.GetInfo(String, String, String, Boolean, String, Int32, Boolean, String) : String
L.FlySoft.SSQ.frmMain.GetTableRow(StringBuilder, Int32, String, String, String, String) : StringBuilder
L.FlySoft.SSQ.frmMain.Send() : Void
L.FlySoft.SSQ.frmMain.SetIsAutoQQSend(Boolean) : Void
L.FlySoft.SSQ.frmMain.StartGroupNumber() : Void
L.FlySoft.SSQ.frmMain.SaveGroupPlan(Boolean) : Void
L.FlySoft.SSQ.frmMain.ClearGroupPlan() : Void
L.FlySoft.SSQ.frmMain.DeleteGroupPlan() : Void
L.FlySoft.SSQ.frmLotteryData.Import(Boolean) : Void
L.FlySoft.SSQ.frmLotteryData.Edit(String) : Void
L.FlySoft.SSQ.frmLotteryData.Add() : Void
L.FlySoft.SSQ.frmLotteryData.Export() : Void
L.FlySoft.SSQ.frmSystemSettings.Save() : Void
L.FlySoft.SSQ.frmFormulaManager.Delete() : Void
L.FlySoft.SSQ.frmFormulaManager+<>c__DisplayClass1.<LoadFormula>b__0() : Void
上面这些都是包含【未授权】字符串的子程序 我们从第一个开始一个个跟随过去大致的浏览一下代码逻辑
我们随便跟随一个子程序L.FlySoft.SSQ.frmMain.HTMLInitCompleted() : Void
修改前的代码
[C#] 纯文本查看 复制代码
if ((Session.User.UType > 0) || Session.User.IsEndless) 如果这里的条件不成立自然会跳向未授权那里,我们进Reflector里把这里的判断brfalse.s改成brtrue.s保存就可以了
{
base.ExJs("$('#aToDate').html('终身授权');");
}
else if (Session.User.ETime > Session.ServerTime)
{
base.ExJs("$('#aToDate').html('" + Session.User.ETime.ToString("yyyy-MM-dd") + "');");
}
else
{
base.ExJs("$('#aToDate').css('color','red').html('未授权');");
}
修改后的代码L.FlySoft.SSQ.frmMain.HTMLInitCompleted() : Void
[C#] 纯文本查看 复制代码 if ((Session.User.UType > 0) || !Session.User.IsEndless) 改完后前后对比一下有没有什么地方不一样呢
{
base.ExJs("$('#aToDate').html('终身授权');");
}
else if (Session.User.ETime > Session.ServerTime)
{
base.ExJs("$('#aToDate').html('" + Session.User.ETime.ToString("yyyy-MM-dd") + "');");
}
else
{
base.ExJs("$('#aToDate').css('color','red').html('未授权');");
}
L.FlySoft.SSQ.frmMain.HTMLInitCompleted() : Void
改完的效果
7、通过对包含未授权字符串的每个子程序分析发现都调用到下面这个子程序里面L.FlySoft.SSQ.Session
[C#] 纯文本查看 复制代码
public static bool get_IsAuthorize()
{
if ((User.UType <= 0) && !User.IsEndless) 这里很明显了修改条件让其一直返回为true就OK了
{
return (User.ETime >= ServerTime);
}
return true;
}
修改前
修改后
最终破解后的特写
第一次发破解图文教程觉得那个累啊,也不知道合格不合格 也不知道能不能被管理加精
成品回复即可下载
https://yunpan.cn/cxeDhqFZMTKgP (提取码:e2dd)
【菜鸟福利】宏盛双色球专业版 v18.5从分析到破解语音视频教程
http://www.52pojie.cn/thread-468626-1-1.html
|