【文章标题】: Perfect Icon V2.42 注册机源代码 【文章作者】: geekcat
【作者邮箱】: 【作者主页】:
【软件名称】: Perfect Icon V2.42 【软件大小】: 【加壳方式】: 无 【保护方式】: 注册码
【编写语言】: Borland Delphi
【使用工具】: OD、PEID
【操作平台】: XP SP3 【下载地址】:百度找 【软件介绍】: 【 破解声明】:技术交流、学习,请不要用于商业用途! -------------------------------------------------------------------------------------------------------------------------------- 说明: 之前的注册机用的是.NETFramework4.5框架写的,在打开是报错这是因为电脑上没安装.NETFramework4.0及以上版的问题,从这个注册机开始用.NETFramework2.0,之前给大家带不便请见谅~~
切入方式: 1、工具按键事件; 2、F12暂停法
算法总结: 表一:2345679qwertyupadfghjkzxcvbnms 字符串:Perfect Icon
1、注册码字符要是表“一”中的字符 2、合要求的字符长度要大于等于10位 3、合要求的注册码除头、首两位其余位AS值xor运算,结果与0x1E求余数 4、合要求的注册码的最后一位与“表一”中余数(第3步)+1位相等; 5、字符串“Perfect Icon”除最后一位外,其余各位AS值累加且和为0x404, 累加和与0x1E求余数为 6、合要求的注册码的第二位与“表一”中余数(第5步)+1位(“w”)相等;
7、软件启动时只检查合要求注册码的最后一位,不对本身的合要求注册码的 的第二位进行检查,这是一个BUG;
- using System;
- using System.Collections.Generic;
- using System.ComponentModel;
- using System.Data;
- using System.Drawing;
- using System.Text;
- using System.Windows.Forms;
- namespace Perfect_Icon_V2._42
- {
- public partial class Form1 : Form
- {
- public Form1()
- {
- InitializeComponent();
- }
- private void btnKeyGen_Click(object sender, EventArgs e)
- {
- int i;
- int mod = 0;
- int num = 30;
- string secondChar = "w";
- string randomchars = "2345679qwertyupadfghjkzxcvbnms";
- string fourKey = MakePassword(randomchars, 7);
- string fiveKey = secondChar + fourKey;
- for (i = 0; i < fiveKey.Length; i++)
- {
- mod = mod ^ fiveKey[i];
- }
- int xornum = mod % num;
- string lastKey = randomchars[xornum].ToString();
- string oneKey = MakePassword(randomchars, 1);
- string key = oneKey + fiveKey + lastKey;
- txtKey.Text = key;
- Clipboard.SetText(txtKey.Text);
- labCopy.Visible = true;
- labCopy.Text = "注册码复制成功";
- }
-
- public static string MakePassword(string pwdchars, int pwdlen)
- {
- string tmpstr = "";
- int iRandNum;
- Random rnd = new Random();
- for (int i = 0; i < pwdlen; i++)
- {
- iRandNum = rnd.Next(pwdchars.Length);
- tmpstr += pwdchars[iRandNum];
- }
- return tmpstr;
- }
- private void txtKey_DoubleClick(object sender, EventArgs e)
- {
- if (txtKey.Text != "")
- {
- Clipboard.SetText(txtKey.Text);
- labCopy.Visible = true;
- labCopy.Text = "注册码复制成功";
- }
- }
- private void Form1_Load(object sender, EventArgs e)
- {
- labCopy.Visible = false;
- }
- private void linkPYG_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
- {
- System.Diagnostics.Process.Start("https://www.chinapyg.com");
- }
- }
- }
复制代码
|