精装友好联络会

注册算法分析:

1.  许可证由三部分组成。

2. 的登记号的第一部分是顺序编号0x6d模

3. 登记代码的第二部分:

  • 先将订单号与0XB25F1异或,将异或后的结果转换成十进制字符串后,在些字符串后面连接上两个字符。
    而这两个字符分别由字符串的第0位。第1位和第2位,第3位计算而来。记为szTemp.算法例如以下
	DWORD dwTemp2 = dwNum ^ 0xB25F1;
TCHAR szTemp[20] = {0};
_sntprintf(szTemp, 20, "%d", dwTemp2);
DWORD dwKey2Len = strlen(szTemp);
TCHAR szTemp1[20] = {0};
TCHAR szTemp2[20] = {0};
_snprintf(szTemp1, 20, "%c", (szTemp[0] + szTemp[1]) % 5 + 0x34);
_snprintf(szTemp2, 20, "%c", (szTemp[2] + szTemp[3]) % 5 + 0x33);
strcat(szTemp, szTemp1);
strcat(szTemp, szTemp2);
  • 将上面的结果szTemp转换成十进制数字后,与0xDDFB7687进行异或。作为此步结果的一部分。然后依据异或后的结果算出4个不同的字符。然后将这四个字符插入到异或后的字符串中。结果记为szKey2.算法代码例如以下。
	DWORD dwTemp3 = 0;
dwTemp3 = atoi(szTemp);
TCHAR szKey2[20] = {0};
_snprintf(szKey2, 20, "%u", dwTemp3 ^ 0xDDFB7687);
TCHAR sz1[2] = {0};
TCHAR sz2[2] = {0};
TCHAR sz3[2] = {0};
TCHAR sz4[2] = {0};
_snprintf(sz1, 2, "%c", (szKey2[0] + szKey2[1]) % 5 + 0x66);
_snprintf(sz2, 2, "%c", (szKey2[2] + szKey2[3]) % 5 + 0x75);
_snprintf(sz3, 2, "%c", (szKey2[4] + szKey2[5]) % 5 + 0x7a);
_snprintf(sz4, 2, "%c", (szKey2[6] + szKey2[7] + szKey2[8]) % 5 + 0x69);
strinsert(szKey2, sz1[0], 7);
strinsert(szKey2, sz4[0], 3);
strinsert(szKey2, sz2[0], 5);
strinsert(szKey2, sz3[0], 9);

4.  //生成注冊码。注冊码= 注冊码第一部分 + 注冊码第二部分 + “!”

	TCHAR szResult[30] = {0};
memcpy(szResult, szKey1, strlen(szKey1));
strcat(szResult, szKey2);
strcat(szResult, _T("!"));

逆向过程 :逆向的过程中使用的定单号是123456

注冊机代码与分析过程与udd文件下载地址:http://download.csdn.net/detail/xiaocaiju/7522099

版权声明:本文博客原创文章,博客,未经同意,不得转载。

精装友好联络算法实现借壳和RI的更多相关文章

  1. 图论基础之Dijkstra算法的初探

         图论,顾名思义就是有图有论.        图:由点"Vertex"和边"Edge "组成,且图分为有向图和无向图(本文讨论有向图),之前做毕业设计的 ...

  2. LARS 最小角回归算法简介

    最近开始看Elements of Statistical Learning, 今天的内容是线性模型(第三章..这本书东西非常多,不知道何年何月才能读完了),主要是在看变量选择.感觉变量选择这一块领域非 ...

  3. [Oracle] 关系型数据库排序算法和数据结构以及关联查询

    关系型数据库排序算法和数据结构以及关联查询 1. Merge sort 理解merge sort算法将有助于更好地理解数据库join操作 - merge join 算法逻辑 将2个有序的大小为N/2的 ...

  4. JAVA程序员成长历程(一)

    程序员的20个常见瓶颈 在扩展性的艺术一书中,Russell给出了20个有意思的估计:大约有20个经典瓶颈. Russell说,如果在他年轻时他就知道这些瓶颈该有多好!这些论断包括: * Databa ...

  5. 诗人般的机器学习,ML工作原理大揭秘

    诗人般的机器学习,ML工作原理大揭秘 https://mp.weixin.qq.com/s/7N96aPAM_M6t0rV0yMLKbg 选自arXiv 作者:Cassie Kozyrkov 机器之心 ...

  6. Project Tungsten:让Spark将硬件性能压榨到极限(转载)

    在之前的博文中,我们回顾和总结了2014年Spark在性能提升上所做的努力.本篇博文中,我们将为你介绍性能提升的下一阶段——Tungsten.在2014年,我们目睹了Spark缔造大规模排序的新世界纪 ...

  7. Spark内存管理之钨丝计划

    Spark内存管理之钨丝计划 1. 钨丝计划的产生的原因 2. 钨丝计划内幕详解  一:“钨丝计划”产生的本质原因 1, Spark作为一个一体化多元化的(大)数据处理通用平台,性能一直是其根本性的追 ...

  8. 列举一些常见的系统系能瓶颈 Common Bottlenecks

    http://www.nowamagic.net/librarys/veda/detail/2408在 Zen And The Art Of Scaling - A Koan And Epigram ...

  9. 自动驾驶轻松开发?华为云ModelArts赋能智慧出行

    作为战略新兴产业,人工智能已经开始广泛应用于多个领域.近几年,科技公司.互联网公司等各领域的企业纷纷布局自动驾驶.那么,自动驾驶技术究竟发展得如何了?日前,华为云携手上海交通大学创新中心举办的华为云人 ...

随机推荐

  1. 转载:使用bat命令来快速安装和卸载Service服务

    一般我们在编写完Service服务程序后,都是通过cmd命令提示窗口来安装或卸载服务,但频繁的在cmd窗口中去“拼”文件的路径着实让人“不能忍”.所以,我们需要一钟“更快捷”的方式来进行安装或者卸载操 ...

  2. How to use ftp in a shell script

    转载How to use ftp in a shell script How to use ftp in a shell script Bruce EdigerBruce Ediger's home ...

  3. C# WebAPI中DateTime类型字段在使用微软自带的方法转json格式后默认含T的解决办法

    原文:C# WebAPI中DateTime类型字段在使用微软自带的方法转json格式后默认含T的解决办法 本人新手,在.Net中写WebAPI的时候,当接口返回的json数据含有日期时间类型的字段时, ...

  4. docker nginx实现一个主机部署多个站点

    原文:docker nginx实现一个主机部署多个站点 在某站租赁的虚拟机快到期了,续费得花200多,想到在阿里云新买的服务器,不如把这个也转移过去.域名我就用真实的吧,大家别黑我网站就好了,谢谢各位 ...

  5. Struts2与Spring的整合

    今天倒腾了半天,终于是把这个两个框架整合到一起了.还是要写一下总结,同时给大家一些帮助. 开发环境:myeclipse 9.0(不好用!)tomcat6.0 1.准备工作 需要导入的包:struts2 ...

  6. 从 BM 到 RBM

    1. 拓扑结构上 如下图示,在拓扑结构上,RBM(受限的玻尔兹曼机)与 BM(玻尔兹曼机)的最大区别在于: RBM 取消了可见层的层内连接以及隐含层的层内连接,主要在于 BM 的层内连接使得其学习过程 ...

  7. 【hdu 1846】Brave Game

    Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submission(s) ...

  8. ZooKeeper 分布式锁实现原理

    原理 进程需要访问共享数据时, 就在"/locks"节点下创建一个sequence类型的子节点, 称为thisPath. 当thisPath在所有子节点中最小时, 说明该进程获得了 ...

  9. 城市三级联动 AJAX-原生js封装

    话不多说我们先来一张效果图给大家看一下: html代码如下: <!DOCTYPE html><html lang="en"><head> < ...

  10. Java中如何拼接sql或者其他含有变量语句

    本原则是个人感悟(不保证完全正确) 第一条原则,首先将一条完整的字符串写好.(例如是"select * from users where id=(id+1)") 凡是变量都需要在其 ...