通行证│用户名: 密码: 验证码: 验证码,看不清楚?请点击刷新验证码 电信网通铁通移动   在线
文章搜索:
热门搜索:红客 黑鹰 红客技术 安全动画 红客培训
首页 文章 软件 动画 资源 励志 论坛 邮箱 会员 军事 科技 博客 爱心红客 最近更新 800g资源
 业内新闻 漏洞公告 病毒公告 电脑知识 网络知识 菜鸟入门 攻防教程 黑客攻防 安全编程 工具使用 综合安全 个人安全 安全相关 Q Q安全 原创精华 红客人物 站内事件
您现在的位置: 爱国者安全网 >> 文章类 >> 红客教程 >> 网络攻防 >> 文章正文
斗地主4.0注册算法分析
责任编辑:酷酷の鱼   更新日期:2008-3-11
 

==================================================================================== 
004991B1 call rtcRandomNext 
004991B7 fmul dbl_403920 
004991BD call __vbaFpI4 
004991C3 mov dword_4D1030, eax ;随机数R1 
004991C8 lea ecx, [ebp-98h] 
004991CE call __vbaFreeVar 
004991D4 mov dword ptr [ebp-4], 0Eh 
004991DB mov dword ptr [ebp-90h], 80020004h 
004991E5 mov dword ptr [ebp-98h], 0Ah 
004991EF lea ecx, [ebp-98h] 
004991F5 push ecx 
004991F6 call rtcRandomize 
004991FC lea ecx, [ebp-98h] 
00499202 call __vbaFreeVar 
00499208 mov dword ptr [ebp-4], 0Fh 
0049920F mov dword ptr [ebp-90h], 3 
00499219 mov dword ptr [ebp-98h], 2 
00499223 lea edx, [ebp-98h] 
00499229 push edx 
0049922A call rtcRandomNext 
00499230 fmul dbl_403920 
00499236 call __vbaFpI4 
0049923C mov dword_4D1044, eax ;随机数R2 
00499241 lea ecx, [ebp-98h] 
00499247 call __vbaFreeVar 
0049924D mov dword ptr [ebp-4], 10h 
00499254 mov eax, dword_4D1030 
00499259 xor eax, 9DB7h 
0049925E mov dword_4D11EC, eax ;R3=R1 xor 9DB7h 
00499263 mov dword ptr [ebp-4], 11h 
0049926A mov ecx, dword_4D1044 
00499270 xor ecx, 10A7Bh 
00499276 mov dword_4D10D8, ecx ;R4=R2 xor 10A7Bh 
==================================================================================== 
004BD57B lea ecx, [ebp-54h] 
004BD57E push ecx 
004BD57F push 4 
004BD581 lea edx, [ebp-74h] 
004BD584 push edx 
004BD585 lea eax, [ebp-64h] 
004BD588 push eax 
004BD589 mov dword ptr [ebp-4Ch], 5 
004BD590 mov dword ptr [ebp-54h], 2 
004BD597 mov [ebp-6Ch], edi 
004BD59A mov dword ptr [ebp-74h], 4008h 
004BD5A1 call rtcMidCharVar 
004BD5A7 lea ecx, [ebp-64h] ;str1=机器码第4到8组成的5位字符串 
004BD5AA push ecx 
004BD5AB lea edx, [ebp-18h] 
004BD5AE push edx 
004BD5AF call __vbaStrVarVal 
004BD5B5 push eax ;str1 
004BD5B6 call sub_4A8290 ;H1 = invoke sub_4A8290 ,str1 
004BD5BB mov ecx, dword_4D1030 ;R1 
004BD5C1 xor ecx, dword_4D11EC ;ecx=R1 xor R3 = 9DB7h 
004BD5C7 push ecx ;9DB7h 
004BD5C8 push eax ;H1 
004BD5C9 call sub_4A83F0 ;X1 = invoke sub_4A83F0 ,H1,9DB7h 
004BD5CE mov edx, [esi+48h] 
004BD5D1 push edx 
004BD5D2 push eax ;X1 
004BD5D3 call sub_4A83F0 ; 
004BD5D8 lea ecx, [ebp-18h] 
004BD5DB mov [esi+34h], eax ;A1 = invoke sub_4A83F0 ,X1,[esi+48h] 

==================================================================================== 
004BDE78 lea eax, [ebp-2Ch] 
004BDE7B push eax 
004BDE7C lea ecx, [ebp-3Ch] 
004BDE7F push ecx 
004BDE80 mov dword ptr [ebp-2Ch], 9 
004BDE87 call edi ; rtcTrimVar 
004BDE89 mov edx, [esi+44h] 
004BDE8C push 5 
004BDE8E lea eax, [ebp-0BCh] 
004BDE94 push eax 
004BDE95 lea ecx, [ebp-3Ch] ;注册名 
004BDE98 mov [ebp-0B4h], edx 
004BDE9E push ecx 
004BDE9F lea edx, [ebp-4Ch] ;机器码的右3位 
004BDEA2 push edx 
004BDEA3 mov dword ptr [ebp-0BCh], 8 
004BDEAD call __vbaVarCat ;str0=机器码的右3位 + 注册名 
004BDEB3 push eax 
004BDEB4 lea eax, [ebp-5Ch] 
004BDEB7 push eax 
004BDEB8 call rtcRightCharVar 
004BDEBE lea ecx, [ebp-5Ch] ;str2=str0的右5位 
004BDEC1 push ecx 
004BDEC2 lea edx, [ebp-18h] 
004BDEC5 push edx 
004BDEC6 call __vbaStrVarVal 
004BDECC push eax ;str2 
004BDECD call sub_4A8290 ;H2 = invoke sub_4A8290 ,str2 
004BDED2 mov ecx, dword_4D1044 ;R2 
004BDED8 xor ecx, dword_4D10D8 ;ecx=R2 xor R4 = 10A7Bh 
004BDEDE push ecx ;10A7Bh 
004BDEDF push eax ;H2 
004BDEE0 call sub_4A83F0 ;X2 = invoke sub_4A83F0 ,H2,10A7Bh 
004BDEE5 mov edx, [esi+4Ch] 
004BDEE8 push edx 
004BDEE9 push eax ;X2 
004BDEEA call sub_4A83F0 ; 
004BDEEF lea ecx, [ebp-18h] 
004BDEF2 mov [esi+38h], eax ;A2 = invoke sub_4A83F0 ,X2,[esi+4Ch] 

==================================================================================== 
004BD9B2 lea edx, [ebp-28h] 
004BD9B5 mov [ebp-20h], eax 
004BD9B8 push edx 
004BD9B9 lea eax, [ebp-38h] 
004BD9BC push eax 
004BD9BD mov dword ptr [ebp-28h], 9 
004BD9C4 call edi ; rtcTrimVar 
004BD9C6 push 5 
004BD9C8 lea ecx, [ebp-38h] ;SN = 输入的注册码 
004BD9CB push ecx 
004BD9CC lea edx, [ebp-48h] 
004BD9CF push edx 
004BD9D0 call rtcLeftCharVar 
004BD9D6 mov eax, [esi+48h] 
004BD9D9 push eax 
004BD9DA lea ecx, [ebp-48h] ;snl5 = SN 的前5位 
004BD9DD push ecx 
004BD9DE call __vbaI4ErrVar 
004BD9E4 push eax ;Y1 = hex(snl5) 
004BD9E5 call sub_4A83F0 ; 
004BD9EA lea edx, [ebp-48h] 
004BD9ED push edx 
004BD9EE mov [esi+3Ch], eax ;B1 = invoke sub_4A83F0 ,Y1,[esi+48h] 

==================================================================================== 
004BDAE5 lea ecx, [ebp-28h] 
004BDAE8 push ecx 
004BDAE9 lea edx, [ebp-38h] 
004BDAEC push edx 
004BDAED mov [ebp-20h], eax 
004BDAF0 mov dword ptr [ebp-28h], 9 
004BDAF7 call edi ; rtcTrimVar 
004BDAF9 push 5 
004BDAFB lea eax, [ebp-38h] ;SN = 输入的注册码 
004BDAFE push eax 
004BDAFF lea ecx, [ebp-48h] 
004BDB02 push ecx 
004BDB03 call rtcRightCharVar 
004BDB09 mov edx, [esi+4Ch] 
004BDB0C push edx 
004BDB0D lea eax, [ebp-48h] ;snr5 = SN 的后5位 
004BDB10 push eax 
004BDB11 call __vbaI4ErrVar 
004BDB17 push eax ;Y2 = hex(snr5) 
004BDB18 call sub_4A83F0 ; 
004BDB1D lea ecx, [ebp-48h] 
004BDB20 push ecx 
004BDB21 lea edx, [ebp-48h] 
004BDB24 push edx 
004BDB25 mov [esi+40h], eax ;B2 = invoke sub_4A83F0 ,Y2,[esi+4Ch] 

==================================================================================== 
004BCAAC mov eax, [esi+3Ch] 
004BCAAF mov ecx, [esi+40h] 
004BCAB2 mov edx, dword_4D1030 
004BCAB8 add esp, 1Ch 
004BCABB mov [ebp-0C4h], eax 
004BCAC1 mov [ebp-0C8h], ecx 
004BCAC7 push edx ;R1 
004BCAC8 push eax ;B1 
004BCAC9 call sub_4A83F0 ; 
004BCACE mov ecx, [ebp-0C8h] 
004BCAD4 mov [esi+3Ch], eax ;N1 = invoke sub_4A83F0 ,B1,R1 
004BCAD7 mov eax, dword_4D1044 
004BCADC push eax ;R2 
004BCADD push ecx ;B2 
004BCADE call sub_4A83F0 ; 
004BCAE3 mov [esi+40h], eax ;N2 = invoke sub_4A83F0 ,B2,R2 
004BCAE6 call rtcGetTimer 
004BCAEC fsub dword ptr [esi+50h] 
004BCAEF fcomp flt_403914 
004BCAF5 fnstsw ax 
004BCAF7 test ah, 41h 
004BCAFA jnz short loc_4BCB52 
004BCAFC cmp dword_4D1F98, edi 
004BCB02 jnz short loc_4BCB14 
004BCB04 push offset dword_4D1F98 
004BCB09 push offset dword_416764 
004BCB0E call __vbaNew2 
004BCB14 
004BCB14 loc_4BCB14: 
004BCB14 mov edi, dword_4D1F98 
004BCB1A mov ebx, [edi] 
004BCB1C push esi 
004BCB1D lea edx, [ebp-34h] 
004BCB20 push edx 
004BCB21 call __vbaObjSetAddref 
004BCB27 push eax 
004BCB28 push edi 
004BCB29 call dword ptr [ebx+10h] 
004BCB2C fnclex 
004BCB2E test eax, eax 
004BCB30 jge short loc_4BCB41 
004BCB32 push 10h 
004BCB34 push offset dword_416754 
004BCB39 push edi 
004BCB3A push eax 
004BCB3B call __vbaHresultCheckObj 
004BCB41 
004BCB41 loc_4BCB41: 
004BCB41 lea ecx, [ebp-34h] 
004BCB44 call __vbaFreeObj 
004BCB4A mov ebx, __vbaStrMove 
004BCB50 xor edi, edi 
004BCB52 
004BCB52 loc_4BCB52: 
004BCB52 mov eax, [esi+40h] 
004BCB55 mov ecx, [esi+3Ch] 
004BCB58 mov edx, [esi+38h] 
004BCB5B push eax ;arg_C = N2 
004BCB5C mov eax, [esi+34h] 
004BCB5F push ecx ;arg_8 = N1 
004BCB60 push edx ;arg_4 = A2 
004BCB61 push eax ;arg_0 = A1 
004BCB62 call sub_4A8060 ;这个call是比较的核心 
004BCB67 test ax, ax ;返回ax=0则注册失败 
004BCB6A jz loc_4BCDC4 

[1] [2] 下一页

  • 上一篇文章:
  • 下一篇文章:
  • 最近更新
    普通文章 FBI承认多次违规获取公民个人资料
    普通文章 百度Hi进入扫尾阶段 公测在即
    普通文章 谷歌手机平台遭质疑 Android开发包现漏洞
    普通文章 推荐:网络病毒安全防范诀窍共分享
    普通文章 简析利用调试寄存器实现内核函数的HOOK
    普通文章 fckeditor网页编辑器的漏洞
    普通文章 遇到sql server 2005 ,恢复xp_cmdshell的办法
    普通文章 斗地主4.0注册算法分析
    普通文章 浪漫情书v3.11注册算法分析
    普通文章 企业如何处理自己产品的安全漏洞
    热门文章
    普通文章瑞星公司03月01日发布 每日计算机病毒及木马播报
    普通文章微软Hotmail故障未解决 用户转用谷歌
    普通文章关注未成年人 欧盟5500万营造安全网络环境
    普通文章德国司法部门在线搜查须获法官许可
    普通文章Safari不在贝宝(paypal)安全浏览器列表中
    普通文章“艳照门”图片长沙再拘人
    普通文章手机版火狐浏览器年内推出 暂瞄准视窗和Linux
    普通文章美国白领社交网站LinkedIn昨晚瘫痪一个小时
    普通文章黑客行为调查:四成以上黑客在研究“免杀”病毒
    普通文章AJAX应用程序容易遭受到新型攻击
    精彩专题