欢迎来到 嗅灵易学

零基础也能上手的脚本技术课,一对一答疑带你入门

这是我写的6.3的注册机,就你提供的用户名和密码看来算法没有变化,这个是用汇编写的,可能好理解一点 (3千字)

这是我写的6.3的注册机,就你提供的用户名和密码看来算法没有变化,这个是用汇编写的,可能好理解一点 (3千字)

自己编译一下罢,如果要编译后的版本,可qq发给你(在线时),BCG内部也有
这个算法很简单,只不过演示了如何用汇编来写注册机,大部分是模板,cal是算法部分,写其它注册机时可少加改动即可重用大部分代码,界面设计是简单的对话框,虽然简单,优点是速度快(体现不出来),体积小3.0k(未压缩
),当然我不提倡用汇编写注册机,这只不过是我的业余爱好而已.
;===================make.bat compiled with MASM32
cls
c:\masm32\bin\ml /c /coff /Cp  cr_yj.asm
rc /v cr_yj.rc
c:\masm32\bin\link /SUBSYSTEM:WINDOWS /LIBPATH:c:\masm32\lib cr_yj.obj cr_yj.res
;===================cr_yj.rc
#include <c:\masm32\include\resource.h>
#define DLG_MAIN      1000
#define IDC_UN          1001
#define IDC_REG          1002
#define ID_GEN          1003
#define ID_EXIT          1004
DLG_MAIN DIALOG 54, 53, 244, 52
STYLE DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "易经八卦彩票占卜程序.V6.3/7.0 Keygen by Hume/BCG"
FONT 8, "MS Sans Serif"
{
DEFPUSHBUTTON "GENERATE", ID_GEN, 181, 6, 50, 14
PUSHBUTTON "EXIT", ID_EXIT, 181, 24, 50, 14
CONTROL "Hume", IDC_UN, "EDIT", WS_BORDER | WS_TABSTOP, 62, 10, 98, 12
EDITTEXT IDC_REG, 62, 29, 109, 13, ES_READONLY | WS_BORDER | WS_TABSTOP
LTEXT "USERNAME:", -1, 18, 12, 40, 10
LTEXT "REG  CODE:", -1, 18, 30, 41, 9
}

;===================cr_yj.asm
.386
.model flat,stdcall
option casemap:none
include hd.h
_ProcDlg proto :DWORD,:DWORD,:DWORD,:DWORD 
;->>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>data seg
        .data
User      db 80 dup(0)
Serial      db 80 dup(0)
Count      dd 0
adsn dd    0
MsgMesaage1 db "Must input Username  in order to generate Reg Code! ",0
MsgCap      db "By (C)hume,July,2001",0

        .data?
hInstance  HANDLE ?
        .const
DLG_MAIN equ     1000
IDC_UN     equ     1001
IDC_REG     equ     1002
ID_GEN     equ     1003
ID_EXIT     equ     1004
  ;-->>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>code seg
         
        .code
start: 
    invoke    GetModuleHandle,NULL
    mov    hInstance,eax
    invoke    DialogBoxParam,hInstance,DLG_MAIN,NULL,offset _ProcDlg,0
    invoke    ExitProcess,NULL
_ProcDlg    proc    uses ebx edi esi, \
        hWnd:DWORD,wMsg:DWORD,wParam:DWORD,lParam:DWORD
        
        mov    eax,wMsg
        .if    eax == WM_CLOSE
            invoke    EndDialog,hWnd,NULL
        .elseif    eax == WM_INITDIALOG
                    invoke    SetWindowPos,hWnd,HWND_TOPMOST,0,0,0,0,\
                SWP_NOMOVE or SWP_NOSIZE or SWP_DRAWFRAME
        .elseif    eax == WM_COMMAND
          mov eax,wParam
          .IF lParam!=0
            .if ax==ID_GEN
            invoke RtlZeroMemory,addr User,80
            invoke RtlZeroMemory,addr Serial,80
            invoke GetDlgItemText,hWnd,IDC_UN,addr User,80
                .if eax!=NULL
                mov Count,eax
                call Cal
                invoke SetDlgItemText,hWnd,IDC_REG,addr Serial
                .else
                invoke MessageBox,NULL,addr MsgMesaage1,addr MsgCap,MB_OK or MB_ICONEXCLAMATION
                .endif
                        .elseif ax==ID_EXIT
            invoke SendMessage,hWnd,WM_CLOSE,NULL,NULL
            .endif
            
          .ENDIF
        .else
        mov eax,FALSE
        ret
          .endif
        mov eax,TRUE
        ret
_ProcDlg    ENDP        
Cal        PROC    uses eax ebx
      xor      edx,edx
      mov      ecx,0
      lea      ebx,Serial
      mov      adsn,ebx
 
lopcal:  LEA      EDI,[ECX+01]
      lea      eax,User
      add      eax,ecx
      MOV      BL,[EAX]
      MOVSX    ESI,BL
      MOV      EAX,ESI
      MOV      EBX,4Bh
      IMUL    ESI
      IMUL    ESI
      LEA      EDX,[ECX+01]
      IMUL    EDX,EDI
      SUB      EAX,EDX
      LEA      EDX,[ECX+01]
      IMUL    EDX,ESI
      SUB      EAX,EDX
      INC      ECX
      CDQ   
      XOR      EAX,EDX
      SUB      EAX,EDX
      CDQ   
      IDIV    EBX
      MOV      EAX,EDX
      ADD      AL,30h
      mov      ebx,adsn
      add      ebx,ecx
      dec      ebx
      MOV      [ebx],AL
      inc      ebx
      inc      eax
      CMP      ECX,Count   
      JL      lopcal    ;//比较循环是否结束循环,计算
ToEit:        ret
Cal        endp
;-->>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>end all        
    end start

注意:上传附件及图片大小不得大于30M。

⚠️ 版权声明:
本博客所有内容(含教程、源码、工具)仅供个人技术学习与研究交流使用,严禁商用、倒卖、二次分发及非法用途
未经作者书面授权,任何组织或个人不得转载、复制或用于其他平台,违者将追究相关责任。

0 0 0 举报
复制成功