吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 4760|回复: 4
收起左侧

[原创] 160个CM之第六题aLoNg3x.1(源码+激活OK按钮注册机)献给所有爱汇编的朋友

[复制链接]
kingswb 发表于 2014-8-7 08:45
这个CM分三步

第一步:激活OK按钮

第二步:隐藏cancella按钮

第三步:隐藏OK按钮

分析结果,

根据注册码换算出正确的用户名,用户名需满足三个算法公式。

注册机使用了穷举的方式来计算,如果要算出正确的用户名需要N久的时间
(穷举的排列组合太多,不花上二三天时间估计没办法穷举算出)

所以放弃了,只写了一个激活OK按钮的注册机

以下贴出的原码是激话OK按钮的原码

.386
.model flat, stdcall  ;32 bit memory model
option casemap :none  ;case sensitive
include 360个CM之Acid b注册机.inc
.code
_count proc
LOCAL @buffer[256]:byte
LOCAL @buffer1[256]:byte

invoke GetDlgItemText,hmain,IDC_NAME,addr @buffer,256
mov edx,eax
mov ebx,eax
.if eax>5
  mov eax,1h
@@:  
  lea ecx,@buffer
  movzx ecx,byte ptr [ecx+eax-1h]
  lea  esi,@buffer
  movzx esi,byte ptr [esi+eax]
  imul ecx,esi
  imul ecx,eax
  add ebx,ecx
  inc eax
  dec edx
  jnz @b
  mov namehe,ebx
  
  .while TRUE  
   .while TRUE
   
    invoke GetDlgItemText,hmain,IDC_COUNT,addr @buffer1,256
    xor eax,eax
    lea esi,@buffer1
    mov bl,[esi]
    movzx ebx,bl
L004029AA:
    sub bl,30h  
    lea eax,dword ptr [eax + eax * 4h]
    add eax,eax
    add eax,ebx
    inc esi
    mov bl,byte ptr [esi]
    .break .if !bl
    jmp L004029AA

   .endw
   add eax,29Ah
   .break .if eax==namehe
   inc dwcount
   invoke SetDlgItemInt,hmain,IDC_COUNT,dwcount,TRUE
  .endw
  invoke SetDlgItemText,hmain,IDC_REG,addr @buffer1
  ret
.else

  invoke MessageBox,hmain,offset sztishi,offset sztitle,MB_OK
  
.endif

ret
_count endp
start:
invoke GetModuleHandle,NULL
mov  hInstance,eax
    invoke InitCommonControls
invoke DialogBoxParam,hInstance,IDD_DIALOG1,NULL,addr DlgProc,NULL
invoke ExitProcess,0
;########################################################################
DlgProc proc hWin:HWND,uMsg:UINT,wParam:WPARAM,lParam:LPARAM
  LOCAL @buffer[256]:byte
  LOCAL @buffer1[256]:byte
mov  eax,uMsg
.if eax==WM_INITDIALOG
  push hWin
  pop hmain
  invoke LoadIcon,hInstance,APP_ICON
  invoke SendMessage,hWin,WM_SETICON,ICON_BIG,eax
.elseif eax==WM_COMMAND
  mov eax,wParam
  .if ax==IDC_OK
   xor eax,eax
   invoke SetDlgItemText,hmain,IDC_REG,eax
   invoke CreateThread,0,0,offset _count,NULL,NULL,NULL
   invoke CloseHandle,eax
  .endif
.elseif eax==WM_CLOSE
  invoke EndDialog,hWin,0
.else
  mov  eax,FALSE
  ret
.endif
mov  eax,TRUE
ret
DlgProc endp
end start

QQ图片20140807083709.jpg

aLoNg3x.1原程序 注册机.rar (144.88 KB, 下载次数: 20)

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

瓜子吧3 发表于 2014-8-7 09:21
我以为是他来了呢,搞错了。。。
阿水小水 发表于 2014-8-7 10:52 来自手机
小白菜 发表于 2015-3-12 10:03
ollydebug 发表于 2015-3-12 17:59
不懂编程,看不懂
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-25 11:38

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表