EditPlus注册码生成器(js代码实现)


Posted in Javascript onMarch 25, 2013

今天同事惊奇的告诉我,说找到个在线的EditPlus注册码生成器,我赶紧去看了看,还真是,在这里。
exe的注册机病毒太多,纯js的在线注册机可就放心了。

作者是从别人的注册机反汇编然后找出算法的,更令我惊奇的是,这作者Demon竟然是搞法律的,才刚拿到法律职业资格证书,佩服。
EditPlus注册码生成器(js代码实现)

主要的一个js函数是这样的:

function generate_editplus_regcode(username){ 
var list = [0,49345,49537,320,49921,960,640,49729,50689,1728,1920,51009,1280,50625,50305,1088,52225,3264,3456,52545,3840,53185,52865,3648,2560,51905,52097,2880,51457,2496,2176,51265,55297,6336,6528,55617,6912,56257,55937,6720,7680,57025,57217,8000,56577,7616,7296,56385,5120,54465,54657,5440,55041,6080,5760,54849,53761,4800,4992,54081,4352,53697,53377,4160,61441,12480,12672,61761,13056,62401,62081,12864,13824,63169,63361,14144,62721,13760,13440,62529,15360,64705,64897,15680,65281,16320,16000,65089,64001,15040,15232,64321,14592,63937,63617,14400,10240,59585,59777,10560,60161,11200,10880,59969,60929,11968,12160,61249,11520,60865,60545,11328,58369,9408,9600,58689,9984,59329,59009,9792,8704,58049,58241,9024,57601,8640,8320,57409,40961,24768,24960,41281,25344,41921,41601,25152,26112,42689,42881,26432,42241,26048,25728,42049,27648,44225,44417,27968,44801,28608,28288,44609,43521,27328,27520,43841,26880,43457,43137,26688,30720,47297,47489,31040,47873,31680,31360,47681,48641,32448,32640,48961,32000,48577,48257,31808,46081,29888,30080,46401,30464,47041,46721,30272,29184,45761,45953,29504,45313,29120,28800,45121,20480,37057,37249,20800,37633,21440,21120,37441,38401,22208,22400,38721,21760,38337,38017,21568,39937,23744,23936,40257,24320,40897,40577,24128,23040,39617,39809,23360,39169,22976,22656,38977,34817,18624,18816,35137,19200,35777,35457,19008,19968,36545,36737,20288,36097,19904,19584,35905,17408,33985,34177,17728,34561,18368,18048,34369,33281,17088,17280,33601,16640,33217,32897,16448]; 
var hexchars = ['0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F']; 
var regcode = new Array(29); 
var i = 0, j = 0, k = 0; 
var len, temp, sum, result; 
username = usernamereplace(/^\s+|\s+$/g, ""); 
for(i = 0;i < 5;i++,k++) 
{ 
for(j = 0;j < 5;j++,k++) 
{ 
regcode[k] = hexchars[parseInt(Mathrandom() * 16)]; 
} 
if(k == 29) break; 
regcode[k] = '-'; 
} 
len = usernamelength; 
sum = 1; 
for(i = 0;i < len;i++){ 
sum += usernamecharCodeAt(i); 
} 
temp = (parseInt( (sum + 23) / 6 ) + 3) * 7 % 16; 
regcode[6] = hexchars[temp & 0xF]; 
sum = 1; 
for(i = 0;i < len;i++){ 
sum += usernamecharCodeAt(i); 
} 
temp = parseInt( (3 * sum + 39) / 8 ) % 16; 
regcode[9] = hexchars[temp & 0xF]; 
sum = 1; 
for(i = 0;i < len;i++){ 
sum += usernamecharCodeAt(i); 
} 
temp = parseInt( (3 * sum + 19) / 9 ) % 16; 
regcode[7] = hexchars[temp & 0xF]; 
sum = 1; 
for(i = 0;i < len;i++){ 
sum += usernamecharCodeAt(i); 
} 
temp = parseInt( (sum + 10) / 3 ) * 8 % 16; 
regcode[10] = hexchars[temp & 0xF]; 
sum = 1; 
for(i = 0;i < len;i++){ 
sum += usernamecharCodeAt(i); 
} 
temp = (parseInt( (9 * sum + 10) / 3 ) + 36) % 16; 
regcode[4] = hexchars[temp & 0xF]; 
sum = 1; 
for(i = 0;i < len;i++){ 
sum += usernamecharCodeAt(i); 
} 
temp = parseInt( (5 * sum + 11) / 5 ) % 16; 
regcode[8] = hexchars[temp & 0xF]; 
result = 0; 
for(i = 0;i < len;i++){ 
result = ((result >> 8) & 0xFF) ^ list[usernamecharCodeAt(i) ^ (result & 0xFF)]; 
} 
result = resulttoString(16)toUpperCase(); 
regcode[2] = resultcharAt(0); 
regcode[3] = resultcharAt(1); 
len = regcodelength; 
result = 0; 
for(i = 2;i < len;i++){ 
result = ((result >> 8) & 0xFF) ^ list[regcode[i]toString()charCodeAt(0) ^ (result & 0xFF)]; 
} 
result = resulttoString(16)toUpperCase(); 
regcode[0] = resultcharAt(0); 
regcode[1] = resultcharAt(1); 
return regcodejoin(""); 
}
Javascript 相关文章推荐
javascript 用记忆函数快速计算递归函数
Mar 15 Javascript
由JavaScript技术实现的web小游戏(不含网游)
Jun 12 Javascript
一个简单的弹性返回顶部JS代码实现介绍
Jun 09 Javascript
jQuery ajax dataType值为text json探索分享
Sep 23 Javascript
JS实现跟随鼠标立体翻转图片的方法
May 04 Javascript
JS Select下拉框(支持输入模糊查询)
Feb 04 Javascript
js实现适合新闻类图片的轮播效果
Feb 05 Javascript
JS跳转手机站url的若干注意事项
Oct 18 Javascript
微信小程序页面跳转功能之从列表的item项跳转到下一个页面的方法
Nov 27 Javascript
vue代理和跨域问题的解决
Jul 18 Javascript
深入解读VUE中的异步渲染的实现
Jun 19 Javascript
vue 插槽简介及使用示例
Nov 19 Vue.js
本地图片预览(支持IE6/IE7/IE8/Firefox3)经验总结
Mar 25 #Javascript
JS上传前预览图片实例
Mar 25 #Javascript
js实现杯子倒水问题自动求解程序
Mar 25 #Javascript
js实现上传图片之上传前预览图片
Mar 25 #Javascript
使用jQuery validate 验证注册表单实例演示
Mar 25 #Javascript
多个表单中如何获得这个文件上传的网址实现js代码
Mar 25 #Javascript
jquery中使用$(#form).submit()重写提交表单无效原因分析及解决
Mar 25 #Javascript
You might like
PHP SPL标准库之数据结构栈(SplStack)介绍
2015/05/12 PHP
XHProf报告字段含义的解析
2016/05/17 PHP
Laravel 5.4.36中session没有保存成功问题的解决
2018/02/19 PHP
thinkPHP框架中layer.js的封装与使用方法示例
2019/01/18 PHP
关于Laravel参数验证的一些疑与惑
2019/11/19 PHP
Jquery 弹出层插件实现代码
2009/10/24 Javascript
javascript 节点遍历函数
2010/03/28 Javascript
jQuery阻止冒泡和HTML默认操作
2010/11/17 Javascript
jQuery动态设置form表单的enctype值(实现代码)
2013/07/04 Javascript
jQuery 2.0.3 源码分析之core(一)整体架构
2014/05/27 Javascript
详解Angular的双向数据绑定(MV-VM)
2016/12/26 Javascript
js select下拉联动 更具级联性!
2020/04/17 Javascript
将鼠标焦点定位到文本框最后(代码分享)
2017/01/11 Javascript
JavaScript数组push方法使用注意事项
2017/10/30 Javascript
JS运动特效之链式运动分析
2018/01/24 Javascript
Vue实现的父组件向子组件传值功能示例
2019/01/19 Javascript
微信小程序拍照和摄像功能实现方法示例
2019/02/01 Javascript
微信小程序获取用户信息的两种方法wx.getUserInfo与open-data实例分析
2019/05/03 Javascript
Python中使用Beautiful Soup库的超详细教程
2015/04/30 Python
python实现求最长回文子串长度
2018/01/22 Python
Python实现网站表单提交和模板
2019/01/15 Python
Python3删除排序数组中重复项的方法分析
2019/01/31 Python
Python数据类型之List列表实例详解
2019/05/08 Python
PyQt5 窗口切换与自定义对话框的实例
2019/06/20 Python
python判断所输入的任意一个正整数是否为素数的两种方法
2019/06/27 Python
浅谈python元素如何去重,去重后如何保持原来元素的顺序不变
2020/02/28 Python
python实现Pyecharts实现动态地图(Map、Geo)
2020/03/25 Python
Python使用Pygame绘制时钟
2020/11/29 Python
德国EGOIST网店:销售畅销的设计师品牌
2017/04/18 全球购物
质量工程师岗位职责
2013/11/16 职场文书
小学教师培训感言
2014/02/11 职场文书
婚纱摄影师求职信范文
2014/04/17 职场文书
2014年人事工作总结范文
2014/11/19 职场文书
培训心得体会怎么写
2016/01/25 职场文书
Python获取江苏疫情实时数据及爬虫分析
2021/08/02 Python
win10电脑右下角输入法图标不见了?Win10右下角不显示输入法的解决方法
2022/07/23 数码科技