Your Ad Here
首页 | 编程语言 | 网站建设 | 游戏天堂 | 冲浪宝典 | 网络安全 | 操作系统 | 软件时空 | 硬件指南 | 病毒相关 | IT 认证
软讯网络 > 网络安全 > 黑客技术 > 龙文输入通1.5的注册码算法
【标  题】:龙文输入通1.5的注册码算法
【关键字】:1.5
【来  源】:网络

龙文输入通1.5的注册码算法

Your Ad Here    软件注册时可以看到机器码,每台机子都是不同的.共有六组.请记下来,下边要用到的.

   先进行第一步:

打开系统自带的计算器,在菜单中选择科学型.因为要用到十六进制

依次计算出你的注册码,每段单独计算

假设我的机器码为:3A22-B4D5-C6C2-C7CE-5079-6A65

注册码为:7444-3CFE-E1CA-1F38-97D5-A2D1 

注册码(1)第一段=机器码第一段*2    (3A22*2=7444,可以复制3A22*2=到计算机可得到结果)

注册码(1)第二段=机器码第二段*6    (B4D5*6=43CFE,只保留后四位,即3CFE)

注册码(1)第三段=机器码第三段*5    (C6C2*5=3E1CA,只保留后四位,即E1CA)

注册码(1)第四段=机器码第四段*4    (C7CE*4=31F38,只保留后四位,即1F38)

注册码(1)第五段=机器码第五段*9    (5079*9=2D441,只保留后四位,即D441)

注册码(1)第六段=机器码第六段*7    (6A65*7=2E8C3,只保留后四位,即E8C3)

得到注册码(1)为:7444-3CFE-E1CA-1F38-D441-E8C3

   下来进行第二步

把计算得来的注册码进行第二次运算,只算第五段和第六段

注册码(2)第一段至第四段不变

注册码(2)第五段=注册码(1)第三段*2+注册码(1)第五段

   (E1CA*2+D441=297D5,保留后四位,即97D5)

注册码(2)第六段=注册码(1)第六段*3+注册码(1)第一段*2

   (E8C3*3+7444*2=3A2D1,保留后四位,即A2D1)

最后连起各段就是最终结果了.

附注册机编写机代码:

   首先感谢好友对我的鼓励,使我写成这个注册机.他迄而不舍的精神值得我来学习.

   由于对这个软件不熟,而且语法检测很严格,所以代码有很多冗余.有兴趣的朋友可以精简不少.

.const

.data
szHomePage db "http://21066.126.com",0
szEmail db "mailto:21066@163.com",0
szErrMess db "输入的序列号不正确!",0
buffer db 200 dup(0)
duiqi db 0
a1 dd 0
a2 dd 0
a3 dd 0
a4 dd 0
a5 dd 0
a6 dd 0

.code
mov esi,eax ;保存序列号地址
mov ecx,5 ;检查五个连字符
mov ebx,4 ;每组四位数字
_SnChack: ;3A22-B4D5-C6C2-C7CE-5079-6A65
;7444-3CFE-E1CA-1F38-97D5-A2D1
cmp byte ptr [esi+ebx],"-" ;检查序列号格式
jnz err ;不等转出错
add ebx,5 ;检查下一个连字符
dec ecx ;记数减一
jnz _SnChack
push ds
pop es


;-----------------------------------------------------
;转换字符串为十六进制数,保存到变量中
push esi
mov ecx,byte ptr 6 ;循环六段
lea ebx,a1 ;保存十六进制数到变量
s2h_loop1:
push ecx
xor edx,edx ;初始化
xor eax,eax
mov ecx,4 ;循环四位
s2h_loop2: ;转换并保存值到变量中
lodsb
sub al,30h
cmp al,9
jbe s2h_n1
sub al,7
cmp al,0fh ;序列号非法
jg err
s2h_n1:
or edx,eax
shl edx,4
loop s2h_loop2
shr edx,4
mov word ptr [ebx],dx
add ebx,2
inc esi
pop ecx
loop s2h_loop1


;-----------------------------------------------------
;计算注册码,第一步
lea esi,a1
lea edi,a1
;第一段,乘2
lodsw
shl eax,1
and eax,0ffffh
stosw
;第二段,乘6
lodsw
mov edx,eax
shl eax,2
shl edx,1
add eax,edx
and eax,0ffffh
stosw
;第三段,乘5
lodsw
mov edx,eax
shl eax,2
add eax,edx
and eax,0ffffh
stosw
;第四段,乘4
lodsw
shl eax,2
and eax,0ffffh
stosw
;第五段,乘9
lodsw
mov edx,eax
shl eax,3
add eax,edx
and eax,0ffffh
stosw
;第六段,乘7
lodsw
mov edx,eax
shl eax,2
add eax,edx
shl edx,1
add eax,edx
and eax,0ffffh
stosw


;-----------------------------------------------------
;计算注册码,第二步
lea ebx,a1
xor eax,eax
;第一段至第四段不变
;第五段,(3)*2+(5)
mov ecx,byte ptr 4
mov ax,word ptr [ebx+ecx]
shl eax,1
mov ecx,byte ptr 8
mov dx,word ptr [ebx+ecx]
add eax,edx
and eax,0ffffh
mov word ptr [ebx+ecx],ax
;第六段,(6)*3+(1)*2
mov ecx,byte ptr 10
mov ax,word ptr [ebx+ecx]
mov edx,eax
shl eax,1
add eax,edx
mov dx,word ptr [ebx]
shl edx,1
add eax,edx
and eax,0ffffh
mov word ptr [ebx+ecx],ax


;-----------------------------------------------------
;转换十六进制数到字符串格式
lea esi,a1
pop edi ;取目标地址
push edi ;保存源地址
mov ecx,byte ptr 6
h2s_loop1:
push ecx
mov ecx,byte ptr 4
lodsw
mov edx,eax
h2s_loop2:
rol dx,4
mov eax,edx
and al,0fh
cmp al,9
jbe h2s_n1
add al,7
h2s_n1:
add al,30h
stosb
loop h2s_loop2
pop ecx
inc edi
loop h2s_loop1
pop eax ;恢复源地址
jmp gameover


;-----------------------------------------------------
;显示出错信息
err:
lea eax,szErrMess ;序列号出错
jmp gameover


;-----------------------------------------------------
;程序结束处
gameover:

桌面撞球 算法分析:【上一篇】
庖丁解牛 V1.29 算法分析:【下一篇】
【相关文章】
没有相关文章
【随机文章】
  • 直接通过ADO操作Access数据库
  • 规范ERP选型流程
  • 20条反思!CRM实施成功率为何低?(下)
  • 发两个自己写的首页调用文章很实用的函数
  • 用gdb调试子进程
  • Mir2 传奇2客户端 Delphi代码
  • 简单实例
  • CAM350猜格式技巧
  • shell的历史
  • UDP traffic 对 NFS performance 的影响
  • 【相关评论】
    没有相关评论
    【发表评论】
    姓名:
    邮件:
    随机码*
    评论*
          
    |  首 页  |  版权声明  |  联系我们   |  网站地图  |
    CopyRight © 2004-2007 软讯网络 All Rigths Reserved.