首页
社区
课程
招聘
[原创]1st Email Address Verifier V4.99注册算法浅析
发表于: 2008-9-19 23:24 7298

[原创]1st Email Address Verifier V4.99注册算法浅析

2008-9-19 23:24
7298

【文章标题】: 1st Email Address Verifier V4.99注册算法浅析
【文章作者】: 蚊香
【作者邮箱】: xpi386com@gmail.com
【作者主页】: http://www.xpi386.com
【软件大小】: 1.23MB
【下载地址】: http://www.skycn.com/soft/29878.html
【使用工具】: PEiD,OllyDBG,计算器
【操作平台】: D版XP-SP3
【软件介绍】: 一款对邮件列表中的电子邮件地址进行验证的工具。
【作者声明】: 只是感兴趣,没有其他目的。失误之处敬请诸位大侠赐教!
--------------------------------------------------------------------------------
【详细过程】
  PEiD瞄了一下,Delphi~~~ OD载入时发现卡的很~~~ 换个版本的OD情况依然~~~ 于是改为OD附加进程..这回成功了,哈~~
  试注册发现弹框提示错误,于是用F12暂停找堆栈调用的方法很快找到关键的地方~~~~~
  

  005C29F3    55              PUSH EBP                                 ; 用F12暂停法找到这里下断
  005C29F4    68 CF2B5C00     PUSH XVerifie.005C2BCF
  005C29F9    64:FF30         PUSH DWORD PTR FS:[EAX]
  005C29FC    64:8920         MOV DWORD PTR FS:[EAX],ESP
  005C29FF    8D55 F0         LEA EDX,DWORD PTR SS:[EBP-10]
  005C2A02    8B45 FC         MOV EAX,DWORD PTR SS:[EBP-4]
  005C2A05    8B80 08030000   MOV EAX,DWORD PTR DS:[EAX+308]
  005C2A0B    E8 940AECFF     CALL XVerifie.004834A4                   ; 取用户名
  005C2A10    8B45 F0         MOV EAX,DWORD PTR SS:[EBP-10]
  005C2A13    8D55 F4         LEA EDX,DWORD PTR SS:[EBP-C]
  005C2A16    E8 1169E4FF     CALL XVerifie.0040932C
  005C2A1B    837D F4 00      CMP DWORD PTR SS:[EBP-C],0
  005C2A1F    0F84 5A010000   JE XVerifie.005C2B7F
  005C2A25    8D55 E8         LEA EDX,DWORD PTR SS:[EBP-18]
  005C2A28    8B45 FC         MOV EAX,DWORD PTR SS:[EBP-4]
  005C2A2B    8B80 10030000   MOV EAX,DWORD PTR DS:[EAX+310]
  005C2A31    E8 6E0AECFF     CALL XVerifie.004834A4                   ; 取注册码
  005C2A36    8B45 E8         MOV EAX,DWORD PTR SS:[EBP-18]
  005C2A39    8D55 EC         LEA EDX,DWORD PTR SS:[EBP-14]
  005C2A3C    E8 EB68E4FF     CALL XVerifie.0040932C
  005C2A41    837D EC 00      CMP DWORD PTR SS:[EBP-14],0
  005C2A45    0F84 34010000   JE XVerifie.005C2B7F
  005C2A4B    8D55 E0         LEA EDX,DWORD PTR SS:[EBP-20]
  005C2A4E    8B45 FC         MOV EAX,DWORD PTR SS:[EBP-4]
  005C2A51    8B80 10030000   MOV EAX,DWORD PTR DS:[EAX+310]
  005C2A57    E8 480AECFF     CALL XVerifie.004834A4                   ; 注册码位数
  005C2A5C    8B45 E0         MOV EAX,DWORD PTR SS:[EBP-20]
  005C2A5F    8D55 E4         LEA EDX,DWORD PTR SS:[EBP-1C]
  005C2A62    E8 C568E4FF     CALL XVerifie.0040932C
  005C2A67    8B45 E4         MOV EAX,DWORD PTR SS:[EBP-1C]
  005C2A6A    50              PUSH EAX
  005C2A6B    8D55 DC         LEA EDX,DWORD PTR SS:[EBP-24]
  005C2A6E    8B45 FC         MOV EAX,DWORD PTR SS:[EBP-4]
  005C2A71    8B80 08030000   MOV EAX,DWORD PTR DS:[EAX+308]
  005C2A77    E8 280AECFF     CALL XVerifie.004834A4                   ; 用户名位数
  005C2A7C    8B55 DC         MOV EDX,DWORD PTR SS:[EBP-24]
  005C2A7F    A1 6C995C00     MOV EAX,DWORD PTR DS:[5C996C]
  005C2A84    8B00            MOV EAX,DWORD PTR DS:[EAX]
  005C2A86    8B80 44030000   MOV EAX,DWORD PTR DS:[EAX+344]
  005C2A8C    33C9            XOR ECX,ECX
  005C2A8E    E8 5573FAFF     CALL XVerifie.00569DE8                   ; 关键CALL,F7进
  005C2A93    84C0            TEST AL,AL
  005C2A95    74 6A           JE SHORT XVerifie.005C2B01               ; 跳向失败
  005C2A97    A1 3C975C00     MOV EAX,DWORD PTR DS:[5C973C]
  005C2A9C    C600 01         MOV BYTE PTR DS:[EAX],1
  005C2A9F    6A 40           PUSH 40
  005C2AA1    8D55 D8         LEA EDX,DWORD PTR SS:[EBP-28]
  005C2AA4    A1 189B5C00     MOV EAX,DWORD PTR DS:[5C9B18]
  005C2AA9    8B00            MOV EAX,DWORD PTR DS:[EAX]
  005C2AAB    E8 C009EEFF     CALL XVerifie.004A3470
  005C2AB0    8B45 D8         MOV EAX,DWORD PTR SS:[EBP-28]
  005C2AB3    E8 E422E4FF     CALL XVerifie.00404D9C
  005C2AB8    50              PUSH EAX
  005C2AB9    8D55 D4         LEA EDX,DWORD PTR SS:[EBP-2C]
  005C2ABC    A1 4C9B5C00     MOV EAX,DWORD PTR DS:[5C9B4C]
  005C2AC1    E8 FE41E4FF     CALL XVerifie.00406CC4
  005C2AC6    8B45 D4         MOV EAX,DWORD PTR SS:[EBP-2C]
  005C2AC9    E8 CE22E4FF     CALL XVerifie.00404D9C
  005C2ACE    8BD0            MOV EDX,EAX
  005C2AD0    A1 189B5C00     MOV EAX,DWORD PTR DS:[5C9B18]
  005C2AD5    8B00            MOV EAX,DWORD PTR DS:[EAX]
  005C2AD7    59              POP ECX
  005C2AD8    E8 FB0FEEFF     CALL XVerifie.004A3AD8                   ; 正确提示
  005C2ADD    8B15 3C975C00   MOV EDX,DWORD PTR DS:[5C973C]            ; XVerifie.005CCFB8
  005C2AE3    8A12            MOV DL,BYTE PTR DS:[EDX]
  005C2AE5    A1 6C995C00     MOV EAX,DWORD PTR DS:[5C996C]
  005C2AEA    8B00            MOV EAX,DWORD PTR DS:[EAX]
  005C2AEC    8B80 CC030000   MOV EAX,DWORD PTR DS:[EAX+3CC]
  005C2AF2    E8 BD4FFFFF     CALL XVerifie.005B7AB4
  005C2AF7    8B45 FC         MOV EAX,DWORD PTR SS:[EBP-4]
  005C2AFA    E8 85D7EDFF     CALL XVerifie.004A0284
  005C2AFF    EB 3C           JMP SHORT XVerifie.005C2B3D
  005C2B01    6A 10           PUSH 10
  005C2B03    8D55 D0         LEA EDX,DWORD PTR SS:[EBP-30]
  005C2B06    A1 D0955C00     MOV EAX,DWORD PTR DS:[5C95D0]
  005C2B0B    E8 B441E4FF     CALL XVerifie.00406CC4
  005C2B10    8B45 D0         MOV EAX,DWORD PTR SS:[EBP-30]
  005C2B13    E8 8422E4FF     CALL XVerifie.00404D9C
  005C2B18    50              PUSH EAX
  005C2B19    8D55 CC         LEA EDX,DWORD PTR SS:[EBP-34]
  005C2B1C    A1 B4965C00     MOV EAX,DWORD PTR DS:[5C96B4]
  005C2B21    E8 9E41E4FF     CALL XVerifie.00406CC4
  005C2B26    8B45 CC         MOV EAX,DWORD PTR SS:[EBP-34]
  005C2B29    E8 6E22E4FF     CALL XVerifie.00404D9C
  005C2B2E    8BD0            MOV EDX,EAX
  005C2B30    A1 189B5C00     MOV EAX,DWORD PTR DS:[5C9B18]
  005C2B35    8B00            MOV EAX,DWORD PTR DS:[EAX]
  005C2B37    59              POP ECX
  005C2B38    E8 9B0FEEFF     CALL XVerifie.004A3AD8                   ; 错误提示
  005C2B3D    A1 6C995C00     MOV EAX,DWORD PTR DS:[5C996C]
  005C2B42    8B00            MOV EAX,DWORD PTR DS:[EAX]
  005C2B44    8B80 44030000   MOV EAX,DWORD PTR DS:[EAX+344]
  005C2B4A    FF70 48         PUSH DWORD PTR DS:[EAX+48]
  005C2B4D    68 E42B5C00     PUSH XVerifie.005C2BE4
  005C2B52    A1 6C995C00     MOV EAX,DWORD PTR DS:[5C996C]
  005C2B57    8B00            MOV EAX,DWORD PTR DS:[EAX]
  005C2B59    8B80 44030000   MOV EAX,DWORD PTR DS:[EAX+344]
  005C2B5F    FF70 5C         PUSH DWORD PTR DS:[EAX+5C]
  005C2B62    8D45 C8         LEA EAX,DWORD PTR SS:[EBP-38]
  005C2B65    BA 03000000     MOV EDX,3
  005C2B6A    E8 F520E4FF     CALL XVerifie.00404C64
  005C2B6F    8B45 C8         MOV EAX,DWORD PTR SS:[EBP-38]
  005C2B72    8B15 3C975C00   MOV EDX,DWORD PTR DS:[5C973C]            ; XVerifie.005CCFB8
  005C2B78    8A12            MOV DL,BYTE PTR DS:[EDX]
  005C2B7A    E8 5553FFFF     CALL XVerifie.005B7ED4
  005C2B7F    33C0            XOR EAX,EAX
  005C2B81    5A              POP EDX
  005C2B82    59              POP ECX
  005C2B83    59              POP ECX
  005C2B84    64:8910         MOV DWORD PTR FS:[EAX],EDX
  005C2B87    68 D62B5C00     PUSH XVerifie.005C2BD6
  005C2B8C    8D45 C8         LEA EAX,DWORD PTR SS:[EBP-38]
  005C2B8F    BA 05000000     MOV EDX,5
  005C2B94    E8 4B1DE4FF     CALL XVerifie.004048E4
  005C2B99    8D45 DC         LEA EAX,DWORD PTR SS:[EBP-24]
  005C2B9C    BA 02000000     MOV EDX,2
  005C2BA1    E8 3E1DE4FF     CALL XVerifie.004048E4
  005C2BA6    8D45 E4         LEA EAX,DWORD PTR SS:[EBP-1C]
  005C2BA9    E8 121DE4FF     CALL XVerifie.004048C0
  005C2BAE    8D45 E8         LEA EAX,DWORD PTR SS:[EBP-18]
  005C2BB1    E8 0A1DE4FF     CALL XVerifie.004048C0
  005C2BB6    8D45 EC         LEA EAX,DWORD PTR SS:[EBP-14]
  005C2BB9    E8 021DE4FF     CALL XVerifie.004048C0
  005C2BBE    8D45 F0         LEA EAX,DWORD PTR SS:[EBP-10]
  005C2BC1    E8 FA1CE4FF     CALL XVerifie.004048C0
  005C2BC6    8D45 F4         LEA EAX,DWORD PTR SS:[EBP-C]
  005C2BC9    E8 F21CE4FF     CALL XVerifie.004048C0
  005C2BCE    C3              RETN
  005C2BCF  ^ E9 AC15E4FF     JMP XVerifie.00404180
  005C2BD4  ^ EB B6           JMP SHORT XVerifie.005C2B8C
  005C2BD6    8BE5            MOV ESP,EBP
  005C2BD8    5D              POP EBP
  005C2BD9    C3              RETN
  00569DE8    55              PUSH EBP
  00569DE9    8BEC            MOV EBP,ESP
  00569DEB    83C4 E8         ADD ESP,-18
  00569DEE    53              PUSH EBX
  00569DEF    33DB            XOR EBX,EBX
  00569DF1    895D E8         MOV DWORD PTR SS:[EBP-18],EBX
  00569DF4    895D EC         MOV DWORD PTR SS:[EBP-14],EBX
  00569DF7    894D F4         MOV DWORD PTR SS:[EBP-C],ECX
  00569DFA    8955 F8         MOV DWORD PTR SS:[EBP-8],EDX
  00569DFD    8945 FC         MOV DWORD PTR SS:[EBP-4],EAX
  00569E00    8B45 F8         MOV EAX,DWORD PTR SS:[EBP-8]
  00569E03    E8 84AFE9FF     CALL XVerifie.00404D8C
  00569E08    8B45 F4         MOV EAX,DWORD PTR SS:[EBP-C]
  00569E0B    E8 7CAFE9FF     CALL XVerifie.00404D8C
  00569E10    8B45 08         MOV EAX,DWORD PTR SS:[EBP+8]
  00569E13    E8 74AFE9FF     CALL XVerifie.00404D8C
  00569E18    33C0            XOR EAX,EAX
  00569E1A    55              PUSH EBP
  00569E1B    68 F79E5600     PUSH XVerifie.00569EF7
  00569E20    64:FF30         PUSH DWORD PTR FS:[EAX]
  00569E23    64:8920         MOV DWORD PTR FS:[EAX],ESP
  00569E26    8B45 F8         MOV EAX,DWORD PTR SS:[EBP-8]
  00569E29    E8 76ADE9FF     CALL XVerifie.00404BA4
  00569E2E    8B55 FC         MOV EDX,DWORD PTR SS:[EBP-4]
  00569E31    3B42 4C         CMP EAX,DWORD PTR DS:[EDX+4C]            ; 用户名位数必须小于64H
  00569E34    7F 1C           JG SHORT XVerifie.00569E52
  00569E36    8B45 F8         MOV EAX,DWORD PTR SS:[EBP-8]
  00569E39    E8 66ADE9FF     CALL XVerifie.00404BA4
  00569E3E    8B55 FC         MOV EDX,DWORD PTR SS:[EBP-4]
  00569E41    3B42 50         CMP EAX,DWORD PTR DS:[EDX+50]            ; 用户名位数必须大于等于3
  00569E44    7C 0C           JL SHORT XVerifie.00569E52
  00569E46    8B45 08         MOV EAX,DWORD PTR SS:[EBP+8]
  00569E49    E8 56ADE9FF     CALL XVerifie.00404BA4
  00569E4E    85C0            TEST EAX,EAX
  00569E50    75 06           JNZ SHORT XVerifie.00569E58
  00569E52    C645 F3 00      MOV BYTE PTR SS:[EBP-D],0
  00569E56    EB 6F           JMP SHORT XVerifie.00569EC7
  00569E58    8D55 EC         LEA EDX,DWORD PTR SS:[EBP-14]
  00569E5B    8B45 08         MOV EAX,DWORD PTR SS:[EBP+8]
  00569E5E    E8 59F2E9FF     CALL XVerifie.004090BC
  00569E63    8B55 EC         MOV EDX,DWORD PTR SS:[EBP-14]
  00569E66    8D45 08         LEA EAX,DWORD PTR SS:[EBP+8]
  00569E69    E8 EAAAE9FF     CALL XVerifie.00404958
  00569E6E    8D4D E8         LEA ECX,DWORD PTR SS:[EBP-18]
  00569E71    8B55 F8         MOV EDX,DWORD PTR SS:[EBP-8]
  00569E74    8B45 FC         MOV EAX,DWORD PTR SS:[EBP-4]
  00569E77    E8 D4FBFFFF     CALL XVerifie.00569A50                   ; 经过此CALL后出现真码,F7进去
  00569E7C    8B45 E8         MOV EAX,DWORD PTR SS:[EBP-18]
  00569E7F    8B55 08         MOV EDX,DWORD PTR SS:[EBP+8]
  00569E82    E8 ADF2E9FF     CALL XVerifie.00409134                   ; 真假码比较
  00569E87    85C0            TEST EAX,EAX
  00569E89    74 06           JE SHORT XVerifie.00569E91               ; 关键跳转
  00569E8B    C645 F3 00      MOV BYTE PTR SS:[EBP-D],0
  00569E8F    EB 36           JMP SHORT XVerifie.00569EC7
  00569E91    8B45 FC         MOV EAX,DWORD PTR SS:[EBP-4]
  00569E94    83C0 48         ADD EAX,48
  00569E97    8B55 F8         MOV EDX,DWORD PTR SS:[EBP-8]
  00569E9A    E8 75AAE9FF     CALL XVerifie.00404914
  00569E9F    8B45 FC         MOV EAX,DWORD PTR SS:[EBP-4]
  00569EA2    83C0 54         ADD EAX,54
  00569EA5    8B55 F4         MOV EDX,DWORD PTR SS:[EBP-C]
  00569EA8    E8 67AAE9FF     CALL XVerifie.00404914
  00569EAD    8B45 FC         MOV EAX,DWORD PTR SS:[EBP-4]
  00569EB0    83C0 5C         ADD EAX,5C
  00569EB3    8B55 08         MOV EDX,DWORD PTR SS:[EBP+8]
  00569EB6    E8 59AAE9FF     CALL XVerifie.00404914
  00569EBB    8B45 FC         MOV EAX,DWORD PTR SS:[EBP-4]
  00569EBE    E8 49020000     CALL XVerifie.0056A10C
  00569EC3    C645 F3 01      MOV BYTE PTR SS:[EBP-D],1
  00569EC7    33C0            XOR EAX,EAX
  00569EC9    5A              POP EDX
  00569ECA    59              POP ECX
  00569ECB    59              POP ECX
  00569ECC    64:8910         MOV DWORD PTR FS:[EAX],EDX
  00569ECF    68 FE9E5600     PUSH XVerifie.00569EFE
  00569ED4    8D45 E8         LEA EAX,DWORD PTR SS:[EBP-18]
  00569ED7    BA 02000000     MOV EDX,2
  00569EDC    E8 03AAE9FF     CALL XVerifie.004048E4
  00569EE1    8D45 F4         LEA EAX,DWORD PTR SS:[EBP-C]
  00569EE4    BA 02000000     MOV EDX,2
  00569EE9    E8 F6A9E9FF     CALL XVerifie.004048E4
  00569EEE    8D45 08         LEA EAX,DWORD PTR SS:[EBP+8]
  00569EF1    E8 CAA9E9FF     CALL XVerifie.004048C0
  00569EF6    C3              RETN
  00569EF7  ^ E9 84A2E9FF     JMP XVerifie.00404180
  00569EFC  ^ EB D6           JMP SHORT XVerifie.00569ED4
  00569EFE    8A45 F3         MOV AL,BYTE PTR SS:[EBP-D]
  00569F01    5B              POP EBX
  00569F02    8BE5            MOV ESP,EBP
  00569F04    5D              POP EBP
  00569F05    C2 0400         RETN 4

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 7
支持
分享
最新回复 (7)
雪    币: 204
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
向蚊香大侠学习
2008-9-19 23:45
0
雪    币: 97697
活跃值: (200844)
能力值: (RANK:10 )
在线值:
发帖
回帖
粉丝
3
support.

建议文章设置精华.
2008-9-20 00:06
0
雪    币: 427
活跃值: (65)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
4
拜读一下高人文章
2008-9-20 00:39
0
雪    币: 557
活跃值: (10)
能力值: ( LV8,RANK:130 )
在线值:
发帖
回帖
粉丝
5


绝对新手~~~ 楼上两位才是大虾
2008-9-20 09:44
0
雪    币: 1151
活跃值: (4232)
能力值: ( LV5,RANK:69 )
在线值:
发帖
回帖
粉丝
6
算法----我心中永远的痛

学习了
2008-9-20 09:57
0
雪    币: 414
活跃值: (10)
能力值: ( LV9,RANK:460 )
在线值:
发帖
回帖
粉丝
7
很好,学习了。
2008-9-20 16:04
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
很好 虽然看不懂 但是谢谢了
2008-9-20 23:20
0
游客
登录 | 注册 方可回帖
返回
//