老文章档案 · 2003 年

BadCopy99V2.0注册机(MASM版) --by fpx (4千字) 算法分析

赢政天下 [WINZHENG.COM] · 网络学院 · 2003-07-30 · 作者:8989 人气: · 出处:赢政天下整理收藏)

BadCopy99V2.0注册机(MASM版) 下载:华军

注册机下载fpxxp.com/bc2-key.exe

作者:风飘雪 http://fpx.yeah.net

; #########################################################################

; KeyGenerator for xxx, coded by fpx 2002(注册机模板)

; #########################################################################

.386

.model flat, stdcall

option casemap :none ; case sensitive 区分大小写

; #########################################################################

include c:\masm32\include\windows.inc

include c:\masm32\include\user32.inc

include c:\masm32\include\kernel32.inc

include c:\masm32\include\gdi32.inc

include c:\masm32\include\masm32.inc

includelib c:\masm32\lib\user32.lib

includelib c:\masm32\lib\kernel32.lib

includelib c:\masm32\lib\gdi32.lib

includelib c:\masm32\lib\masm32.lib

; #########################################################################

szText MACRO Name, Text:VARARG

LOCAL lbl

jmp lbl

Name db Text,0

lbl:

ENDM

WndProc PROTO :DWORD,:DWORD,:DWORD,:DWORD

.data

TheName dd 0

Button dd 0

hInstance dd 0

hIconImage dd 0

hIcon dd 0

dlgname db "KEYGEN",0

errorLabel db "Error"

szName db 30 dup(?)

szKey db 10 dup(?)

szWS db '%d',0

; #########################################################################

.code

start:

invoke GetModuleHandle, NULL

mov hInstance, eax

; call dialog box stored in resource file

invoke DialogBoxParam,hInstance,ADDR dlgname,0,ADDR WndProc,0

invoke ExitProcess,eax

; #########################################################################

WndProc proc hWin:DWORD, uMsg:DWORD, wParam:DWORD, lParam :DWORD

LOCAL Ps:PAINTSTRUCT

; initialization

.if uMsg == WM_INITDIALOG

szText dlgTitle,"fpx's KeyGenerator for BadCopy99V2.0"

invoke SendMessage,hWin,WM_SETTEXT,0,ADDR dlgTitle

invoke LoadIcon,hInstance,200

mov hIcon, eax

invoke SendMessage,hWin,WM_SETICON,1,hIcon

invoke GetDlgItem,hWin,100

mov TheName, eax

invoke GetDlgItem,hWin,1000

mov Button, eax

xor eax, eax

ret

.elseif uMsg == WM_COMMAND

.if wParam == 1000

invoke GetDlgItemText,hWin,100,offset szName,30 ; 获得姓名

cmp eax,1

jl NoName ; 检查姓名输入情况

push eax ; 姓名长度

push offset szName ; 姓名=dlgitemtext入栈

call generateKey ; 调用算码程序

invoke wsprintf,offset szKey,offset szWS,eax ; 写序列号

invoke SetDlgItemText,hWin,22,offset szKey ; 将序列号显示出来

jmp NoError

NoName: ; 如果没输姓名

szText errorMsg,"I Need Characters :)"

invoke MessageBox,hWin,ADDR errorMsg,ADDR errorLabel,MB_OK

NoError:

.endif

.elseif uMsg == WM_CLOSE

invoke EndDialog,hWin,0

.elseif uMsg == WM_PAINT

invoke BeginPaint,hWin,ADDR Ps

invoke FrameWindow,hWin,0,1,1

invoke FrameWindow,hWin,1,1,0

invoke EndPaint,hWin,ADDR Ps

xor eax, eax

ret

.endif

ret

WndProc endp

; ########################################################################

; 算码过程,基本上参考反汇编代码,可见学好32位汇编真的很重要 :)

; ########################################################################

generateKey:

push ebp

mov ebp,esp

push ebx

push ecx

push edx

push edi

push esi

push ebp

xor esi,esi ; esi清零

mov ecx,eax ; 姓名长度传入ecx

mov eax,1

addr_1:

mov edx,[offset szName]

mov dl,[eax+szName-1] ; 依次取姓名

and edx,255 ; FF即255

mov ebx,edx ; 注册码最后储存在esi

imul ebx,eax

add esi,ebx

mov ebx,edx

inc eax

dec ecx

jnz addr_1

mov eax, 6695bh

sub eax,esi ; 结果存入eax

pop ebp

pop esi

pop edi

pop edx

pop ecx

pop ebx

leave

retn 00008h

; ########################################################################

end start

标 题:badcopy pro 3.0简易破解法。 (471字)

发信人:hying

时 间:2002-7-22 14:51:41

详细信息:

badcopy pro 3.0不能运行在中文WIN系统上,去装个E文的98吧。

没有注册的时候可以读取光盘、软盘中的文件,但是最后保存的时候却提示没有注册,不能保存,这是不要急着点确定,到它的安装目录下找找,可以找到一个临时文件,和你要读的那个文件一样大,把它拷贝出来。但发现不能用,如果你用16进制编辑器打开,会发现里面的内容是每个字节与一个特殊字符异或后得到的,因为对同一个字符异或2次可以得到本身,所以只要用badcopy pro 3.0将拷贝出来的临时文件再读一次,再拷贝出第二次的临时文件就可以用了。

标 题:忍不住用KeyMake2照着编了一个玩玩,没有版权,呵呵 (477字)

发信人:Maomao[CCG]

时 间:2002-7-22 17:32:06

详细信息:

.const

.data

szHomePage db "http://www.365hz.net",0

szEmail db "mailto:ljyljx@163.com",0

szErrMess db "输入的序列号不正确!",0

szFmt db "%u",0

szBuffer db 20 dup(0)

.code

mov esi,eax

invoke lstrlen,esi

mov ecx,eax

mov eax,1

xor edi,edi

n1:

movzx edx,byte ptr [esi+eax-1]

and edx,255

mov ebx,edx

imul ebx,eax

add edi,ebx

inc eax

dec ecx

jnz n1

mov eax,6695bh

sub eax,edi

invoke wsprintf,addr szBuffer,addr szFmt,eax

lea eax,szBuffer

(出处:赢政天下整理收藏)

相关文章:

·语音界面2.0算法分析及注册机源码!

·侠客系统修改器1.21破解手记--算法分析

·中文拨号上网计时计费器 V4.12注册算法分析

·ClockWise 3.22e注册码算法分析

·CoolClock V1.02注册算法分析

·Directory Scanner v1.5 注册算法分析

·Disk Chief 1.2 简单注册算法分析

·EffeTech HTTP Sniffer 3.2注册算法分析

·eLib2.01算法分析

·EZ MP3 Recorder 1.15 注册算法分析

相关软件:

→ 特别推荐

→ 热点TOP10

关于我们 |

帮助(?)

| 广告服务 |

版权声明 |

商业合作 |

发展历程 |

加盟我们 |

联系我们

Copyright © 1999-2003

winzheng.com All Rights Reserved.

繁体版:由华琦数码技术提供

Powered

by:MeSky.Net

2003-2004 年,宽带刚刚普及,下载站的文章区是许多人学电脑的第一课堂。
🕰 → 🤖 从那时到现在

当年一篇教程能让一台电脑焕然一新;今天的效率工具换成了 AI。 想知道当下最可靠的 AI 模型怎么选?看 赢政指数——我们用了 28 年的选软件严谨,现在用来评测大模型。

档案性质声明:本页为赢政天下(1998-2011)老文章的历史档案复原, 内容反映当年发表时的原貌——包括当年的技术表述、软件版本与观点,部分方法在今天已不适用或不合规,仅作互联网历史记录与研究用途, 不提供任何形式的下载。原始数据经由公共网络存档(Internet Archive)复原。发现问题请联系我们
← 返回老文章档案 · 软件史档案馆 · 赢政天下站史