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中找到子元素在父元素内相对位置的代码
Jul 21 Javascript
jquery fancybox ie6不显示关闭按钮的解决办法
Dec 25 Javascript
从零学JS之你需要了解的几本书
May 19 Javascript
JS实现选中当前菜单后高亮显示的导航条效果
Oct 15 Javascript
学习Bootstrap滚动监听 附调用方法
Jul 02 Javascript
JS 获取HTML标签内的子节点的方法
Sep 21 Javascript
jquery获取点击控件的绝对位置简单实例
Oct 13 Javascript
Bootstrap基本组件学习笔记之下拉菜单(7)
Dec 07 Javascript
mui开发中获取单选按钮、复选框的值(实例讲解)
Jul 24 Javascript
async/await优雅的错误处理方法总结
Jan 30 Javascript
vue轻量级框架无法获取到vue对象解决方法
May 12 Javascript
vue-cli3配置与跨域处理方法
Aug 17 Javascript
本地图片预览(支持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的单引号和双引号 字符串效率
2009/05/27 PHP
javascript iframe内的函数调用实现方法
2009/07/19 Javascript
onsubmit阻止form表单提交与onclick的相关操作
2010/09/03 Javascript
JS正则表达式获取分组内容的方法详解
2013/11/15 Javascript
JavaScript获取鼠标移动时的坐标(兼容IE8、chome谷歌、Firefox)
2014/09/13 Javascript
深入剖析JavaScript编程中的对象概念
2015/10/21 Javascript
深入解析JavaScript框架Backbone.js中的事件机制
2016/02/14 Javascript
JavaScript判断用户名和密码不能为空的实现代码
2016/05/16 Javascript
BootStrap中Tab页签切换实例代码
2016/05/30 Javascript
EXT中单击button按钮grid添加一行(光标位置可设置)的实例代码
2016/06/02 Javascript
jQuery双向列表选择器DIV模拟版
2016/11/01 Javascript
Angular 4依赖注入学习教程之组件服务注入(二)
2017/06/04 Javascript
EasyUI的TreeGrid的过滤功能的解决思路
2017/08/08 Javascript
浅谈Angular 观察者模式理解
2018/11/01 Javascript
微信小程序webview 脚手架使用详解
2019/07/22 Javascript
JavaScript 变量,数据类型基础实例详解【变量、字符串、数组、对象等】
2020/01/04 Javascript
vue+高德地图实现地图搜索及点击定位操作
2020/09/09 Javascript
Python随机生成数据后插入到PostgreSQL
2016/07/28 Python
python3中set(集合)的语法总结分享
2017/03/24 Python
Python可视化mhd格式和raw格式的医学图像并保存的方法
2019/01/24 Python
解决在pycharm运行代码,调用CMD窗口的命令运行显示乱码问题
2019/08/23 Python
python 中xpath爬虫实例详解
2019/08/26 Python
Python 50行爬虫抓取并处理图灵书目过程详解
2019/09/20 Python
Django项目uwsgi+Nginx保姆级部署教程实现
2020/04/19 Python
python Tornado框架的使用示例
2020/10/19 Python
EJB3.1都有哪些改进
2012/11/17 面试题
电子商务专业学生的学习自我评价
2013/10/27 职场文书
市场安全管理制度
2014/01/26 职场文书
小学生学习感言
2014/03/10 职场文书
合伙协议书
2014/04/23 职场文书
2014年德育工作总结
2014/11/20 职场文书
房产公证书格式
2015/01/26 职场文书
2016清明节森林防火广播稿
2015/12/17 职场文书
创业计划书介绍
2019/04/24 职场文书
2019优秀干部竞聘演讲稿范文!
2019/07/02 职场文书
Android Flutter实现图片滑动切换效果
2022/04/07 Java/Android