首页
社区
课程
招聘
[md5变形]请达人指点迷津
发表于: 2006-6-7 20:28 8517

[md5变形]请达人指点迷津

2006-6-7 20:28
8517
最近碰到一个md5变形,跟踪后发现常数,流程都和正规md5一样,但出来结果却不一样.
所以今天把他放上来,请密码学达人一道分析剖析一下.
注:附件中是从内存中抓下的dll,因结构被破坏,无法正常加载调试,敬请静态(W32asm,ida)分析之.

00403640 55 PUSH EBP
00403641 8BEC MOV EBP,ESP
00403643 83EC 60 SUB ESP,60
00403646 8955 A0 MOV DWORD PTR SS:[EBP-60],EDX
00403649 894D A4 MOV DWORD PTR SS:[EBP-5C],ECX
0040364C 8D4D A8 LEA ECX,DWORD PTR SS:[EBP-58]
0040364F E8 2C2A0200 CALL 00406080 ; md5_Start
00403654 8B45 A0 MOV EAX,DWORD PTR SS:[EBP-60]
00403657 50 PUSH EAX
00403658 8B55 A4 MOV EDX,DWORD PTR SS:[EBP-5C]
0040365B 8D4D A8 LEA ECX,DWORD PTR SS:[EBP-58]
0040365E E8 6D2A0200 CALL 004060D0 ; md5_update
00403663 8D55 A8 LEA EDX,DWORD PTR SS:[EBP-58]
00403666 8B4D 08 MOV ECX,DWORD PTR SS:[EBP+8]
00403669 E8 722B0200 CALL 004061E0 ; md5_finish
0040366E 8BE5 MOV ESP,EBP
00403670 5D POP EBP
00403671 C2 0400 RETN 4


:
12345:   md5正常是: 827CCB0EEA8A706C4C34A16891F84E7B
而经过它运算结果是: 1C82FC4304EE6C72DFD415EB820A65BC

abcde:   md5正常是: AB56B4D92B40713ACC5AF89985D4B786
而经过它运算结果是: A6A57F74B96F304EF2A4F08B5EB5E680

[课程]Linux pwn 探索篇!

上传的附件:
收藏
免费 0
支持
分享
最新回复 (14)
雪    币: 255
活跃值: (207)
能力值: ( LV9,RANK:250 )
在线值:
发帖
回帖
粉丝
2
睡觉之前顶一下.
2006-6-7 22:57
0
雪    币: 703
活跃值: (327)
能力值: (RANK:380 )
在线值:
发帖
回帖
粉丝
3
直接调用他的汇编语言就可以了
何必仔细分析 如果就是想做注册机的话
要研究算法就不拦你了 呵呵
可以找同样语言的源码编译对比
2006-6-7 23:27
0
雪    币: 671
活跃值: (723)
能力值: ( LV9,RANK:1060 )
在线值:
发帖
回帖
粉丝
4
基本常数变形

数据填充变形

加法常数变形

不外乎以上几种,对比下应该知道。
2006-6-8 09:45
0
雪    币: 313
活跃值: (440)
能力值: ( LV12,RANK:530 )
在线值:
发帖
回帖
粉丝
5
好像是最后结果交换了位置。。。呵呵,我错了。。。
2006-6-8 11:28
0
雪    币: 255
活跃值: (207)
能力值: ( LV9,RANK:250 )
在线值:
发帖
回帖
粉丝
6
2006-6-8 19:34
0
雪    币: 201
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
第一个call简单就是初始化 EBP-58到EBP-58+14的值
第二个call很关键 开始它把[EBP-60]*8给[EBP-58+10],把[EBP-60]*8+[EBP-60]/2的29次密给[EBP-58+14]然后它判断该数据是数字还是字母,跟着它把[EBP-5C]开始连续的16个双字传送到了[EBP-58+0+18]开始的单元里(关键数据)然后调用call 00406270进行运算,真正的运算是在call 00406270里,里面的算法太长了,没耐心跟下去了.
估计变形也是在这里面做的手脚
有不对的地方请原谅
2006-6-8 20:28
0
雪    币: 207
活跃值: (40)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
我还没空看代码,不过我觉得,可以先熟悉md5 的原理和经典源码实现及其结构,然后把这段汇编和源码比对一下,知道每个call 的用意,理解代码结构, 然后对照每个算法步骤过后数据,哪步不一样了,就是里面的变化了.
2006-6-8 22:52
0
雪    币: 295
活跃值: (346)
能力值: ( LV9,RANK:530 )
在线值:
发帖
回帖
粉丝
9
标准的MD5 CODE, 没有变形, 唯一值得怀疑的是 PADDING 是否正确, 即 00980948 所指向的应该是 80,00,00,....

:0042622D 894DFC                  mov dword ptr [ebp-04], ecx
:00426230 8B55FC                  mov edx, dword ptr [ebp-04]
:00426233 52                      push edx
:00426234 BA48099800              mov edx, 00980948               ; 应指向 char padding[0x40]= {0x80, 0,...};
:00426239 8B4DE8                  mov ecx, dword ptr [ebp-18]
:0042623C E88FFEFFFF              call 004260D0
:00426241 6A08                    push 00000008
2006-6-9 08:10
0
雪    币: 255
活跃值: (207)
能力值: ( LV9,RANK:250 )
在线值:
发帖
回帖
粉丝
10
在内存中原基址是: 00940000
所以 mov edx,00980948 即为   mov edx,00440948

440948:  0x80  0x00 0x00 0x00
2006-6-9 09:42
0
雪    币: 278
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
xph
11
2006-6-9 10:47
0
雪    币: 255
活跃值: (207)
能力值: ( LV9,RANK:250 )
在线值:
发帖
回帖
粉丝
12
Baby2008密码学牛人系列跑哪去了?
2006-6-9 20:26
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
13
跟了半天也没弄明白.. 功力不够
2006-6-9 21:38
0
雪    币: 255
活跃值: (207)
能力值: ( LV9,RANK:250 )
在线值:
发帖
回帖
粉丝
14

2006-6-11 10:45
0
雪    币: 442
活跃值: (1216)
能力值: ( LV12,RANK:1130 )
在线值:
发帖
回帖
粉丝
15
最初由 peaceclub 发布
Baby2008密码学牛人系列跑哪去了?




不好意思,周末跑外面玩去了,看了一下感觉Md5 4轮变换,常数,填充都很标准,静态看不出哪里有问题。



:00426270 55                      push ebp
:00426271 8BEC                    mov ebp, esp
:00426273 83EC58                  sub esp, 00000058
:00426276 57                      push edi
:00426277 8955A8                  mov dword ptr [ebp-58], edx
:0042627A 894DAC                  mov dword ptr [ebp-54], ecx
:0042627D 8B45AC                  mov eax, dword ptr [ebp-54]
:00426280 8B08                    mov ecx, dword ptr [eax]
:00426282 894DFC                  mov dword ptr [ebp-04], ecx
:00426285 8B55AC                  mov edx, dword ptr [ebp-54]
:00426288 8B4204                  mov eax, dword ptr [edx+04]
:0042628B 8945F8                  mov dword ptr [ebp-08], eax
:0042628E 8B4DAC                  mov ecx, dword ptr [ebp-54]
:00426291 8B5108                  mov edx, dword ptr [ecx+08]
:00426294 8955F4                  mov dword ptr [ebp-0C], edx
:00426297 8B45AC                  mov eax, dword ptr [ebp-54]
:0042629A 8B480C                  mov ecx, dword ptr [eax+0C]
:0042629D 894DF0                  mov dword ptr [ebp-10], ecx
:004262A0 6A40                    push 00000040
:004262A2 8B55A8                  mov edx, dword ptr [ebp-58]
:004262A5 8D4DB0                  lea ecx, dword ptr [ebp-50]           //F(X,Y,Z) =(X&Y)|((~X)&Z),FF(Var a: DWORD; b, c, d, x: DWORD; s: byte; ac: DWORD);
:004262A8 E8230F0000              call 004271D0

:004262AD 8B55F8                  mov edx, dword ptr [ebp-08]    x
:004262B0 2355F4                  and edx, dword ptr [ebp-0C]    x and y
:004262B3 8B45F8                  mov eax, dword ptr [ebp-08]    x
:004262B6 F7D0                    not eax                        not x   
:004262B8 2345F0                  and eax, dword ptr [ebp-10]    (not x) and z
:004262BB 0BD0                    or edx, eax                    (x and y) or ((not x) and z)
:004262BD 0355B0                  add edx, dword ptr [ebp-50]    F()+Block[0]
:004262C0 8B4DFC                  mov ecx, dword ptr [ebp-04]    FF中的a
:004262C3 8D941178A46AD7          lea edx, dword ptr [ecx+edx-28955B88]    //第一轮常数D76AA478,a+(F()+Block[0])+ac常数
:004262CD 8B45FC                  mov eax, dword ptr [ebp-04]  //开始rot(Var x: DWORD; N: byte);
:004262D0 C1E007                  shl eax, 07                    a shl s
:004262D3 8B4DFC                  mov ecx, dword ptr [ebp-04]    a
:004262D6 C1E919                  shr ecx, 19                    a shr (32-s)
:004262D9 0BC1                    or eax, ecx                    (a shl s) or (a shr (32-s))
:004262DB 8945FC                  mov dword ptr [ebp-04], eax    eax=rot(a, s);
:004262DE 8B55FC                  mov edx, dword ptr [ebp-04]    edx=rot(a, s);
:004262E1 0355F8                  add edx, dword ptr [ebp-08]    edx=rot(a, s)+a
:004262E4 8955FC                  mov dword ptr [ebp-04], edx    保存inc(a,b),第一轮循环结束

:004262E7 8B45FC                  mov eax, dword ptr [ebp-04]
:004262EA 2345F8                  and eax, dword ptr [ebp-08]
:004262ED 8B4DFC                  mov ecx, dword ptr [ebp-04]
:004262F0 F7D1                    not ecx
:004262F2 234DF4                  and ecx, dword ptr [ebp-0C]
:004262F5 0BC1                    or eax, ecx
:004262F7 0345B4                  add eax, dword ptr [ebp-4C]
:004262FA 8B55F0                  mov edx, dword ptr [ebp-10]
:004262FD 8D840256B7C7E8          lea eax, dword ptr [edx+eax-173848AA]   //E8C7B756
:00426304 8945F0                  mov dword ptr [ebp-10], eax
:00426307 8B4DF0                  mov ecx, dword ptr [ebp-10]
:0042630A C1E10C                  shl ecx, 0C
:0042630D 8B55F0                  mov edx, dword ptr [ebp-10]
:00426310 C1EA14                  shr edx, 14
:00426313 0BCA                    or ecx, edx
:00426315 894DF0                  mov dword ptr [ebp-10], ecx
:00426318 8B45F0                  mov eax, dword ptr [ebp-10]
:0042631B 0345FC                  add eax, dword ptr [ebp-04]
:0042631E 8945F0                  mov dword ptr [ebp-10], eax
:00426321 8B4DF0                  mov ecx, dword ptr [ebp-10]
:00426324 234DFC                  and ecx, dword ptr [ebp-04]
:00426327 8B55F0                  mov edx, dword ptr [ebp-10]
:0042632A F7D2                    not edx
:0042632C 2355F8                  and edx, dword ptr [ebp-08]
:0042632F 0BCA                    or ecx, edx
:00426331 034DB8                  add ecx, dword ptr [ebp-48]
:00426334 8B45F4                  mov eax, dword ptr [ebp-0C]
:00426337 8D8C08DB702024          lea ecx, dword ptr [eax+ecx+242070DB] //242070DB
:0042633E 894DF4                  mov dword ptr [ebp-0C], ecx
:00426341 8B55F4                  mov edx, dword ptr [ebp-0C]
:00426344 C1E211                  shl edx, 11
:00426347 8B45F4                  mov eax, dword ptr [ebp-0C]
:0042634A C1E80F                  shr eax, 0F
:0042634D 0BD0                    or edx, eax
:0042634F 8955F4                  mov dword ptr [ebp-0C], edx
:00426352 8B4DF4                  mov ecx, dword ptr [ebp-0C]
:00426355 034DF0                  add ecx, dword ptr [ebp-10]
:00426358 894DF4                  mov dword ptr [ebp-0C], ecx
:0042635B 8B55F4                  mov edx, dword ptr [ebp-0C]
:0042635E 2355F0                  and edx, dword ptr [ebp-10]
:00426361 8B45F4                  mov eax, dword ptr [ebp-0C]
:00426364 F7D0                    not eax
:00426366 2345FC                  and eax, dword ptr [ebp-04]
:00426369 0BD0                    or edx, eax
:0042636B 0355BC                  add edx, dword ptr [ebp-44]
:0042636E 8B4DF8                  mov ecx, dword ptr [ebp-08]
:00426371 8D9411EECEBDC1          lea edx, dword ptr [ecx+edx-3E423112] //C1BDCEEE
:00426378 8955F8                  mov dword ptr [ebp-08], edx
:0042637B 8B45F8                  mov eax, dword ptr [ebp-08]
:0042637E C1E016                  shl eax, 16
:00426381 8B4DF8                  mov ecx, dword ptr [ebp-08]
:00426384 C1E90A                  shr ecx, 0A
:00426387 0BC1                    or eax, ecx
:00426389 8945F8                  mov dword ptr [ebp-08], eax
:0042638C 8B55F8                  mov edx, dword ptr [ebp-08]
:0042638F 0355F4                  add edx, dword ptr [ebp-0C]
:00426392 8955F8                  mov dword ptr [ebp-08], edx
:00426395 8B45F8                  mov eax, dword ptr [ebp-08]
:00426398 2345F4                  and eax, dword ptr [ebp-0C]
:0042639B 8B4DF8                  mov ecx, dword ptr [ebp-08]
:0042639E F7D1                    not ecx
:004263A0 234DF0                  and ecx, dword ptr [ebp-10]
:004263A3 0BC1                    or eax, ecx
:004263A5 0345C0                  add eax, dword ptr [ebp-40]
:004263A8 8B55FC                  mov edx, dword ptr [ebp-04]
:004263AB 8D8402AF0F7CF5          lea eax, dword ptr [edx+eax-0A83F051] //F57C0FAF
:004263B2 8945FC                  mov dword ptr [ebp-04], eax
:004263B5 8B4DFC                  mov ecx, dword ptr [ebp-04]
:004263B8 C1E107                  shl ecx, 07
:004263BB 8B55FC                  mov edx, dword ptr [ebp-04]
:004263BE C1EA19                  shr edx, 19
:004263C1 0BCA                    or ecx, edx
:004263C3 894DFC                  mov dword ptr [ebp-04], ecx
:004263C6 8B45FC                  mov eax, dword ptr [ebp-04]
:004263C9 0345F8                  add eax, dword ptr [ebp-08]
:004263CC 8945FC                  mov dword ptr [ebp-04], eax
:004263CF 8B4DFC                  mov ecx, dword ptr [ebp-04]
:004263D2 234DF8                  and ecx, dword ptr [ebp-08]
:004263D5 8B55FC                  mov edx, dword ptr [ebp-04]
:004263D8 F7D2                    not edx
:004263DA 2355F4                  and edx, dword ptr [ebp-0C]
:004263DD 0BCA                    or ecx, edx
:004263DF 034DC4                  add ecx, dword ptr [ebp-3C]
:004263E2 8B45F0                  mov eax, dword ptr [ebp-10]
:004263E5 8D8C082AC68747          lea ecx, dword ptr [eax+ecx+4787C62A]   //4787C62A
:004263EC 894DF0                  mov dword ptr [ebp-10], ecx
:004263EF 8B55F0                  mov edx, dword ptr [ebp-10]
:004263F2 C1E20C                  shl edx, 0C
:004263F5 8B45F0                  mov eax, dword ptr [ebp-10]
:004263F8 C1E814                  shr eax, 14
:004263FB 0BD0                    or edx, eax
:004263FD 8955F0                  mov dword ptr [ebp-10], edx
:00426400 8B4DF0                  mov ecx, dword ptr [ebp-10]
:00426403 034DFC                  add ecx, dword ptr [ebp-04]
:00426406 894DF0                  mov dword ptr [ebp-10], ecx
:00426409 8B55F0                  mov edx, dword ptr [ebp-10]
:0042640C 2355FC                  and edx, dword ptr [ebp-04]
:0042640F 8B45F0                  mov eax, dword ptr [ebp-10]
:00426412 F7D0                    not eax
:00426414 2345F8                  and eax, dword ptr [ebp-08]
:00426417 0BD0                    or edx, eax
:00426419 0355C8                  add edx, dword ptr [ebp-38]
:0042641C 8B4DF4                  mov ecx, dword ptr [ebp-0C]
:0042641F 8D9411134630A8          lea edx, dword ptr [ecx+edx-57CFB9ED]  //A8304613
:00426426 8955F4                  mov dword ptr [ebp-0C], edx
:00426429 8B45F4                  mov eax, dword ptr [ebp-0C]
:0042642C C1E011                  shl eax, 11
:0042642F 8B4DF4                  mov ecx, dword ptr [ebp-0C]
:00426432 C1E90F                  shr ecx, 0F
:00426435 0BC1                    or eax, ecx
:00426437 8945F4                  mov dword ptr [ebp-0C], eax
:0042643A 8B55F4                  mov edx, dword ptr [ebp-0C]
:0042643D 0355F0                  add edx, dword ptr [ebp-10]
:00426440 8955F4                  mov dword ptr [ebp-0C], edx
:00426443 8B45F4                  mov eax, dword ptr [ebp-0C]
:00426446 2345F0                  and eax, dword ptr [ebp-10]
:00426449 8B4DF4                  mov ecx, dword ptr [ebp-0C]
:0042644C F7D1                    not ecx
:0042644E 234DFC                  and ecx, dword ptr [ebp-04]
:00426451 0BC1                    or eax, ecx
:00426453 0345CC                  add eax, dword ptr [ebp-34]
:00426456 8B55F8                  mov edx, dword ptr [ebp-08]
:00426459 8D8402019546FD          lea eax, dword ptr [edx+eax-02B96AFF]   //FD469501
:00426460 8945F8                  mov dword ptr [ebp-08], eax
:00426463 8B4DF8                  mov ecx, dword ptr [ebp-08]
:00426466 C1E116                  shl ecx, 16
:00426469 8B55F8                  mov edx, dword ptr [ebp-08]
:0042646C C1EA0A                  shr edx, 0A
:0042646F 0BCA                    or ecx, edx
:00426471 894DF8                  mov dword ptr [ebp-08], ecx
:00426474 8B45F8                  mov eax, dword ptr [ebp-08]
:00426477 0345F4                  add eax, dword ptr [ebp-0C]
:0042647A 8945F8                  mov dword ptr [ebp-08], eax
:0042647D 8B4DF8                  mov ecx, dword ptr [ebp-08]
:00426480 234DF4                  and ecx, dword ptr [ebp-0C]
:00426483 8B55F8                  mov edx, dword ptr [ebp-08]
:00426486 F7D2                    not edx
:00426488 2355F0                  and edx, dword ptr [ebp-10]
:0042648B 0BCA                    or ecx, edx
:0042648D 034DD0                  add ecx, dword ptr [ebp-30]
:00426490 8B45FC                  mov eax, dword ptr [ebp-04]
:00426493 8D8C08D8988069          lea ecx, dword ptr [eax+ecx+698098D8] //698098D8
:0042649A 894DFC                  mov dword ptr [ebp-04], ecx
:0042649D 8B55FC                  mov edx, dword ptr [ebp-04]
:004264A0 C1E207                  shl edx, 07
:004264A3 8B45FC                  mov eax, dword ptr [ebp-04]
:004264A6 C1E819                  shr eax, 19
:004264A9 0BD0                    or edx, eax
:004264AB 8955FC                  mov dword ptr [ebp-04], edx
:004264AE 8B4DFC                  mov ecx, dword ptr [ebp-04]
:004264B1 034DF8                  add ecx, dword ptr [ebp-08]
:004264B4 894DFC                  mov dword ptr [ebp-04], ecx
:004264B7 8B55FC                  mov edx, dword ptr [ebp-04]
:004264BA 2355F8                  and edx, dword ptr [ebp-08]
:004264BD 8B45FC                  mov eax, dword ptr [ebp-04]
:004264C0 F7D0                    not eax
:004264C2 2345F4                  and eax, dword ptr [ebp-0C]
:004264C5 0BD0                    or edx, eax
:004264C7 0355D4                  add edx, dword ptr [ebp-2C]
:004264CA 8B4DF0                  mov ecx, dword ptr [ebp-10]
:004264CD 8D9411AFF7448B          lea edx, dword ptr [ecx+edx-74BB0851] //8B44F7AF
:004264D4 8955F0                  mov dword ptr [ebp-10], edx
:004264D7 8B45F0                  mov eax, dword ptr [ebp-10]
:004264DA C1E00C                  shl eax, 0C
:004264DD 8B4DF0                  mov ecx, dword ptr [ebp-10]
:004264E0 C1E914                  shr ecx, 14
:004264E3 0BC1                    or eax, ecx
:004264E5 8945F0                  mov dword ptr [ebp-10], eax
:004264E8 8B55F0                  mov edx, dword ptr [ebp-10]
:004264EB 0355FC                  add edx, dword ptr [ebp-04]
:004264EE 8955F0                  mov dword ptr [ebp-10], edx
:004264F1 8B45F0                  mov eax, dword ptr [ebp-10]
:004264F4 2345FC                  and eax, dword ptr [ebp-04]
:004264F7 8B4DF0                  mov ecx, dword ptr [ebp-10]
:004264FA F7D1                    not ecx
:004264FC 234DF8                  and ecx, dword ptr [ebp-08]
:004264FF 0BC1                    or eax, ecx
:00426501 0345D8                  add eax, dword ptr [ebp-28]
:00426504 8B55F4                  mov edx, dword ptr [ebp-0C]
:00426507 8D8402B15BFFFF          lea eax, dword ptr [edx+eax-0000A44F]   //FFFF5BB1
:0042650E 8945F4                  mov dword ptr [ebp-0C], eax
:00426511 8B4DF4                  mov ecx, dword ptr [ebp-0C]
:00426514 C1E111                  shl ecx, 11
:00426517 8B55F4                  mov edx, dword ptr [ebp-0C]
:0042651A C1EA0F                  shr edx, 0F
:0042651D 0BCA                    or ecx, edx
:0042651F 894DF4                  mov dword ptr [ebp-0C], ecx
:00426522 8B45F4                  mov eax, dword ptr [ebp-0C]
:00426525 0345F0                  add eax, dword ptr [ebp-10]
:00426528 8945F4                  mov dword ptr [ebp-0C], eax
:0042652B 8B4DF4                  mov ecx, dword ptr [ebp-0C]
:0042652E 234DF0                  and ecx, dword ptr [ebp-10]
:00426531 8B55F4                  mov edx, dword ptr [ebp-0C]
:00426534 F7D2                    not edx
:00426536 2355FC                  and edx, dword ptr [ebp-04]
:00426539 0BCA                    or ecx, edx
:0042653B 034DDC                  add ecx, dword ptr [ebp-24]
:0042653E 8B45F8                  mov eax, dword ptr [ebp-08]
:00426541 8D8C08BED75C89          lea ecx, dword ptr [eax+ecx-76A32842]  //895CD7BE
:00426548 894DF8                  mov dword ptr [ebp-08], ecx
:0042654B 8B55F8                  mov edx, dword ptr [ebp-08]
:0042654E C1E216                  shl edx, 16
:00426551 8B45F8                  mov eax, dword ptr [ebp-08]
:00426554 C1E80A                  shr eax, 0A
:00426557 0BD0                    or edx, eax
:00426559 8955F8                  mov dword ptr [ebp-08], edx
:0042655C 8B4DF8                  mov ecx, dword ptr [ebp-08]
:0042655F 034DF4                  add ecx, dword ptr [ebp-0C]
:00426562 894DF8                  mov dword ptr [ebp-08], ecx
:00426565 8B55F8                  mov edx, dword ptr [ebp-08]
:00426568 2355F4                  and edx, dword ptr [ebp-0C]
:0042656B 8B45F8                  mov eax, dword ptr [ebp-08]
:0042656E F7D0                    not eax
:00426570 2345F0                  and eax, dword ptr [ebp-10]
:00426573 0BD0                    or edx, eax
:00426575 0355E0                  add edx, dword ptr [ebp-20]
:00426578 8B4DFC                  mov ecx, dword ptr [ebp-04]
:0042657B 8D94112211906B          lea edx, dword ptr [ecx+edx+6B901122] //6B901122
:00426582 8955FC                  mov dword ptr [ebp-04], edx
:00426585 8B45FC                  mov eax, dword ptr [ebp-04]
:00426588 C1E007                  shl eax, 07
:0042658B 8B4DFC                  mov ecx, dword ptr [ebp-04]
:0042658E C1E919                  shr ecx, 19
:00426591 0BC1                    or eax, ecx
:00426593 8945FC                  mov dword ptr [ebp-04], eax
:00426596 8B55FC                  mov edx, dword ptr [ebp-04]
:00426599 0355F8                  add edx, dword ptr [ebp-08]
:0042659C 8955FC                  mov dword ptr [ebp-04], edx
:0042659F 8B45FC                  mov eax, dword ptr [ebp-04]
:004265A2 2345F8                  and eax, dword ptr [ebp-08]
:004265A5 8B4DFC                  mov ecx, dword ptr [ebp-04]
:004265A8 F7D1                    not ecx
:004265AA 234DF4                  and ecx, dword ptr [ebp-0C]
:004265AD 0BC1                    or eax, ecx
:004265AF 0345E4                  add eax, dword ptr [ebp-1C]
:004265B2 8B55F0                  mov edx, dword ptr [ebp-10]
:004265B5 8D8402937198FD          lea eax, dword ptr [edx+eax-02678E6D]  //FD987193
:004265BC 8945F0                  mov dword ptr [ebp-10], eax
:004265BF 8B4DF0                  mov ecx, dword ptr [ebp-10]
:004265C2 C1E10C                  shl ecx, 0C
:004265C5 8B55F0                  mov edx, dword ptr [ebp-10]
:004265C8 C1EA14                  shr edx, 14
:004265CB 0BCA                    or ecx, edx
:004265CD 894DF0                  mov dword ptr [ebp-10], ecx
:004265D0 8B45F0                  mov eax, dword ptr [ebp-10]
:004265D3 0345FC                  add eax, dword ptr [ebp-04]
:004265D6 8945F0                  mov dword ptr [ebp-10], eax
:004265D9 8B4DF0                  mov ecx, dword ptr [ebp-10]
:004265DC 234DFC                  and ecx, dword ptr [ebp-04]
:004265DF 8B55F0                  mov edx, dword ptr [ebp-10]
:004265E2 F7D2                    not edx
:004265E4 2355F8                  and edx, dword ptr [ebp-08]
:004265E7 0BCA                    or ecx, edx
:004265E9 034DE8                  add ecx, dword ptr [ebp-18]
:004265EC 8B45F4                  mov eax, dword ptr [ebp-0C]
:004265EF 8D8C088E4379A6          lea ecx, dword ptr [eax+ecx-5986BC72]  //A679438E
:004265F6 894DF4                  mov dword ptr [ebp-0C], ecx
:004265F9 8B55F4                  mov edx, dword ptr [ebp-0C]
:004265FC C1E211                  shl edx, 11
:004265FF 8B45F4                  mov eax, dword ptr [ebp-0C]
:00426602 C1E80F                  shr eax, 0F
:00426605 0BD0                    or edx, eax
:00426607 8955F4                  mov dword ptr [ebp-0C], edx
:0042660A 8B4DF4                  mov ecx, dword ptr [ebp-0C]
:0042660D 034DF0                  add ecx, dword ptr [ebp-10]
:00426610 894DF4                  mov dword ptr [ebp-0C], ecx
:00426613 8B55F4                  mov edx, dword ptr [ebp-0C]
:00426616 2355F0                  and edx, dword ptr [ebp-10]
:00426619 8B45F4                  mov eax, dword ptr [ebp-0C]
:0042661C F7D0                    not eax
:0042661E 2345FC                  and eax, dword ptr [ebp-04]
:00426621 0BD0                    or edx, eax
:00426623 0355EC                  add edx, dword ptr [ebp-14]
:00426626 8B4DF8                  mov ecx, dword ptr [ebp-08]
:00426629 8D94112108B449          lea edx, dword ptr [ecx+edx+49B40821] //49B40821
:00426630 8955F8                  mov dword ptr [ebp-08], edx
:00426633 8B45F8                  mov eax, dword ptr [ebp-08]
:00426636 C1E016                  shl eax, 16
:00426639 8B4DF8                  mov ecx, dword ptr [ebp-08]
:0042663C C1E90A                  shr ecx, 0A
:0042663F 0BC1                    or eax, ecx
:00426641 8945F8                  mov dword ptr [ebp-08], eax
:00426644 8B55F8                  mov edx, dword ptr [ebp-08]
:00426647 0355F4                  add edx, dword ptr [ebp-0C]
:0042664A 8955F8                  mov dword ptr [ebp-08], edx

:0042664D 8B45F8                  mov eax, dword ptr [ebp-08]
:00426650 2345F0                  and eax, dword ptr [ebp-10]
:00426653 8B4DF0                  mov ecx, dword ptr [ebp-10]
:00426656 F7D1                    not ecx
:00426658 8B55F4                  mov edx, dword ptr [ebp-0C]
:0042665B 23D1                    and edx, ecx
:0042665D 0BC2                    or eax, edx
:0042665F 0345B4                  add eax, dword ptr [ebp-4C]
:00426662 8B4DFC                  mov ecx, dword ptr [ebp-04]
:00426665 8D940162251EF6          lea edx, dword ptr [ecx+eax-09E1DA9E]  //第二轮 F61E2562
:0042666C 8955FC                  mov dword ptr [ebp-04], edx
:0042666F 8B45FC                  mov eax, dword ptr [ebp-04]
:00426672 C1E005                  shl eax, 05
:00426675 8B4DFC                  mov ecx, dword ptr [ebp-04]
:00426678 C1E91B                  shr ecx, 1B
:0042667B 0BC1                    or eax, ecx
:0042667D 8945FC                  mov dword ptr [ebp-04], eax
:00426680 8B55FC                  mov edx, dword ptr [ebp-04]
:00426683 0355F8                  add edx, dword ptr [ebp-08]
:00426686 8955FC                  mov dword ptr [ebp-04], edx
:00426689 8B45FC                  mov eax, dword ptr [ebp-04]
:0042668C 2345F4                  and eax, dword ptr [ebp-0C]
:0042668F 8B4DF4                  mov ecx, dword ptr [ebp-0C]
:00426692 F7D1                    not ecx
:00426694 8B55F8                  mov edx, dword ptr [ebp-08]
:00426697 23D1                    and edx, ecx
:00426699 0BC2                    or eax, edx
:0042669B 0345C8                  add eax, dword ptr [ebp-38]
:0042669E 8B4DF0                  mov ecx, dword ptr [ebp-10]
:004266A1 8D940140B340C0          lea edx, dword ptr [ecx+eax-3FBF4CC0] //C040B340
:004266A8 8955F0                  mov dword ptr [ebp-10], edx
:004266AB 8B45F0                  mov eax, dword ptr [ebp-10]
:004266AE C1E009                  shl eax, 09
:004266B1 8B4DF0                  mov ecx, dword ptr [ebp-10]
:004266B4 C1E917                  shr ecx, 17
:004266B7 0BC1                    or eax, ecx
:004266B9 8945F0                  mov dword ptr [ebp-10], eax
:004266BC 8B55F0                  mov edx, dword ptr [ebp-10]
:004266BF 0355FC                  add edx, dword ptr [ebp-04]
:004266C2 8955F0                  mov dword ptr [ebp-10], edx
:004266C5 8B45F0                  mov eax, dword ptr [ebp-10]
:004266C8 2345F8                  and eax, dword ptr [ebp-08]
:004266CB 8B4DF8                  mov ecx, dword ptr [ebp-08]
:004266CE F7D1                    not ecx
:004266D0 8B55FC                  mov edx, dword ptr [ebp-04]
:004266D3 23D1                    and edx, ecx
:004266D5 0BC2                    or eax, edx
:004266D7 0345DC                  add eax, dword ptr [ebp-24]
:004266DA 8B4DF4                  mov ecx, dword ptr [ebp-0C]
:004266DD 8D9401515A5E26          lea edx, dword ptr [ecx+eax+265E5A51] //265E5A51
:004266E4 8955F4                  mov dword ptr [ebp-0C], edx
:004266E7 8B45F4                  mov eax, dword ptr [ebp-0C]
:004266EA C1E00E                  shl eax, 0E
:004266ED 8B4DF4                  mov ecx, dword ptr [ebp-0C]
:004266F0 C1E912                  shr ecx, 12
:004266F3 0BC1                    or eax, ecx
:004266F5 8945F4                  mov dword ptr [ebp-0C], eax
:004266F8 8B55F4                  mov edx, dword ptr [ebp-0C]
:004266FB 0355F0                  add edx, dword ptr [ebp-10]
:004266FE 8955F4                  mov dword ptr [ebp-0C], edx
:00426701 8B45F4                  mov eax, dword ptr [ebp-0C]
:00426704 2345FC                  and eax, dword ptr [ebp-04]
:00426707 8B4DFC                  mov ecx, dword ptr [ebp-04]
:0042670A F7D1                    not ecx
:0042670C 8B55F0                  mov edx, dword ptr [ebp-10]
:0042670F 23D1                    and edx, ecx
:00426711 0BC2                    or eax, edx
:00426713 0345B0                  add eax, dword ptr [ebp-50]
:00426716 8B4DF8                  mov ecx, dword ptr [ebp-08]
:00426719 8D9401AAC7B6E9          lea edx, dword ptr [ecx+eax-16493856]  //E9B6C7AA
:00426720 8955F8                  mov dword ptr [ebp-08], edx
:00426723 8B45F8                  mov eax, dword ptr [ebp-08]
:00426726 C1E014                  shl eax, 14
:00426729 8B4DF8                  mov ecx, dword ptr [ebp-08]
:0042672C C1E90C                  shr ecx, 0C
:0042672F 0BC1                    or eax, ecx
:00426731 8945F8                  mov dword ptr [ebp-08], eax
:00426734 8B55F8                  mov edx, dword ptr [ebp-08]
:00426737 0355F4                  add edx, dword ptr [ebp-0C]
:0042673A 8955F8                  mov dword ptr [ebp-08], edx
:0042673D 8B45F8                  mov eax, dword ptr [ebp-08]
:00426740 2345F0                  and eax, dword ptr [ebp-10]
:00426743 8B4DF0                  mov ecx, dword ptr [ebp-10]
:00426746 F7D1                    not ecx
:00426748 8B55F4                  mov edx, dword ptr [ebp-0C]
:0042674B 23D1                    and edx, ecx
:0042674D 0BC2                    or eax, edx
:0042674F 0345C4                  add eax, dword ptr [ebp-3C]
:00426752 8B4DFC                  mov ecx, dword ptr [ebp-04]
:00426755 8D94015D102FD6          lea edx, dword ptr [ecx+eax-29D0EFA3]  //D62F105D
:0042675C 8955FC                  mov dword ptr [ebp-04], edx
:0042675F 8B45FC                  mov eax, dword ptr [ebp-04]
:00426762 C1E005                  shl eax, 05
:00426765 8B4DFC                  mov ecx, dword ptr [ebp-04]
:00426768 C1E91B                  shr ecx, 1B
:0042676B 0BC1                    or eax, ecx
:0042676D 8945FC                  mov dword ptr [ebp-04], eax
:00426770 8B55FC                  mov edx, dword ptr [ebp-04]
:00426773 0355F8                  add edx, dword ptr [ebp-08]
:00426776 8955FC                  mov dword ptr [ebp-04], edx
:00426779 8B45FC                  mov eax, dword ptr [ebp-04]
:0042677C 2345F4                  and eax, dword ptr [ebp-0C]
:0042677F 8B4DF4                  mov ecx, dword ptr [ebp-0C]
:00426782 F7D1                    not ecx
:00426784 8B55F8                  mov edx, dword ptr [ebp-08]
:00426787 23D1                    and edx, ecx
:00426789 0BC2                    or eax, edx
:0042678B 0345D8                  add eax, dword ptr [ebp-28]
:0042678E 8B4DF0                  mov ecx, dword ptr [ebp-10]
:00426791 8D940153144402          lea edx, dword ptr [ecx+eax+02441453]  //02441453
:00426798 8955F0                  mov dword ptr [ebp-10], edx
:0042679B 8B45F0                  mov eax, dword ptr [ebp-10]
:0042679E C1E009                  shl eax, 09
:004267A1 8B4DF0                  mov ecx, dword ptr [ebp-10]
:004267A4 C1E917                  shr ecx, 17
:004267A7 0BC1                    or eax, ecx
:004267A9 8945F0                  mov dword ptr [ebp-10], eax
:004267AC 8B55F0                  mov edx, dword ptr [ebp-10]
:004267AF 0355FC                  add edx, dword ptr [ebp-04]
:004267B2 8955F0                  mov dword ptr [ebp-10], edx
:004267B5 8B45F0                  mov eax, dword ptr [ebp-10]
:004267B8 2345F8                  and eax, dword ptr [ebp-08]
:004267BB 8B4DF8                  mov ecx, dword ptr [ebp-08]
:004267BE F7D1                    not ecx
:004267C0 8B55FC                  mov edx, dword ptr [ebp-04]
:004267C3 23D1                    and edx, ecx
:004267C5 0BC2                    or eax, edx
:004267C7 0345EC                  add eax, dword ptr [ebp-14]
:004267CA 8B4DF4                  mov ecx, dword ptr [ebp-0C]
:004267CD 8D940181E6A1D8          lea edx, dword ptr [ecx+eax-275E197F] //D8A1E681
:004267D4 8955F4                  mov dword ptr [ebp-0C], edx
:004267D7 8B45F4                  mov eax, dword ptr [ebp-0C]
:004267DA C1E00E                  shl eax, 0E
:004267DD 8B4DF4                  mov ecx, dword ptr [ebp-0C]
:004267E0 C1E912                  shr ecx, 12
:004267E3 0BC1                    or eax, ecx
:004267E5 8945F4                  mov dword ptr [ebp-0C], eax
:004267E8 8B55F4                  mov edx, dword ptr [ebp-0C]
:004267EB 0355F0                  add edx, dword ptr [ebp-10]
:004267EE 8955F4                  mov dword ptr [ebp-0C], edx
:004267F1 8B45F4                  mov eax, dword ptr [ebp-0C]
:004267F4 2345FC                  and eax, dword ptr [ebp-04]
:004267F7 8B4DFC                  mov ecx, dword ptr [ebp-04]
:004267FA F7D1                    not ecx
:004267FC 8B55F0                  mov edx, dword ptr [ebp-10]
:004267FF 23D1                    and edx, ecx
:00426801 0BC2                    or eax, edx
:00426803 0345C0                  add eax, dword ptr [ebp-40]
:00426806 8B4DF8                  mov ecx, dword ptr [ebp-08]
:00426809 8D9401C8FBD3E7          lea edx, dword ptr [ecx+eax-182C0438] //E7D3FBC8
:00426810 8955F8                  mov dword ptr [ebp-08], edx
:00426813 8B45F8                  mov eax, dword ptr [ebp-08]
:00426816 C1E014                  shl eax, 14
:00426819 8B4DF8                  mov ecx, dword ptr [ebp-08]
:0042681C C1E90C                  shr ecx, 0C
:0042681F 0BC1                    or eax, ecx
:00426821 8945F8                  mov dword ptr [ebp-08], eax
:00426824 8B55F8                  mov edx, dword ptr [ebp-08]
:00426827 0355F4                  add edx, dword ptr [ebp-0C]
:0042682A 8955F8                  mov dword ptr [ebp-08], edx
:0042682D 8B45F8                  mov eax, dword ptr [ebp-08]
:00426830 2345F0                  and eax, dword ptr [ebp-10]
:00426833 8B4DF0                  mov ecx, dword ptr [ebp-10]
:00426836 F7D1                    not ecx
:00426838 8B55F4                  mov edx, dword ptr [ebp-0C]
:0042683B 23D1                    and edx, ecx
:0042683D 0BC2                    or eax, edx
:0042683F 0345D4                  add eax, dword ptr [ebp-2C]
:00426842 8B4DFC                  mov ecx, dword ptr [ebp-04]
:00426845 8D9401E6CDE121          lea edx, dword ptr [ecx+eax+21E1CDE6] //21E1CDE6
:0042684C 8955FC                  mov dword ptr [ebp-04], edx
:0042684F 8B45FC                  mov eax, dword ptr [ebp-04]
:00426852 C1E005                  shl eax, 05
:00426855 8B4DFC                  mov ecx, dword ptr [ebp-04]
:00426858 C1E91B                  shr ecx, 1B
:0042685B 0BC1                    or eax, ecx
:0042685D 8945FC                  mov dword ptr [ebp-04], eax
:00426860 8B55FC                  mov edx, dword ptr [ebp-04]
:00426863 0355F8                  add edx, dword ptr [ebp-08]
:00426866 8955FC                  mov dword ptr [ebp-04], edx
:00426869 8B45FC                  mov eax, dword ptr [ebp-04]
:0042686C 2345F4                  and eax, dword ptr [ebp-0C]
:0042686F 8B4DF4                  mov ecx, dword ptr [ebp-0C]
:00426872 F7D1                    not ecx
:00426874 8B55F8                  mov edx, dword ptr [ebp-08]
:00426877 23D1                    and edx, ecx
:00426879 0BC2                    or eax, edx
:0042687B 0345E8                  add eax, dword ptr [ebp-18]
:0042687E 8B4DF0                  mov ecx, dword ptr [ebp-10]
:00426881 8D9401D60737C3          lea edx, dword ptr [ecx+eax-3CC8F82A]  //C33707D6
:00426888 8955F0                  mov dword ptr [ebp-10], edx
:0042688B 8B45F0                  mov eax, dword ptr [ebp-10]
:0042688E C1E009                  shl eax, 09
:00426891 8B4DF0                  mov ecx, dword ptr [ebp-10]
:00426894 C1E917                  shr ecx, 17
:00426897 0BC1                    or eax, ecx
:00426899 8945F0                  mov dword ptr [ebp-10], eax
:0042689C 8B55F0                  mov edx, dword ptr [ebp-10]
:0042689F 0355FC                  add edx, dword ptr [ebp-04]
:004268A2 8955F0                  mov dword ptr [ebp-10], edx
:004268A5 8B45F0                  mov eax, dword ptr [ebp-10]
:004268A8 2345F8                  and eax, dword ptr [ebp-08]
:004268AB 8B4DF8                  mov ecx, dword ptr [ebp-08]
:004268AE F7D1                    not ecx
:004268B0 8B55FC                  mov edx, dword ptr [ebp-04]
:004268B3 23D1                    and edx, ecx
:004268B5 0BC2                    or eax, edx
:004268B7 0345BC                  add eax, dword ptr [ebp-44]
:004268BA 8B4DF4                  mov ecx, dword ptr [ebp-0C]
:004268BD 8D9401870DD5F4          lea edx, dword ptr [ecx+eax-0B2AF279]  //F4D50D87
:004268C4 8955F4                  mov dword ptr [ebp-0C], edx
:004268C7 8B45F4                  mov eax, dword ptr [ebp-0C]
:004268CA C1E00E                  shl eax, 0E
:004268CD 8B4DF4                  mov ecx, dword ptr [ebp-0C]
:004268D0 C1E912                  shr ecx, 12
:004268D3 0BC1                    or eax, ecx
:004268D5 8945F4                  mov dword ptr [ebp-0C], eax
:004268D8 8B55F4                  mov edx, dword ptr [ebp-0C]
:004268DB 0355F0                  add edx, dword ptr [ebp-10]
:004268DE 8955F4                  mov dword ptr [ebp-0C], edx
:004268E1 8B45F4                  mov eax, dword ptr [ebp-0C]
:004268E4 2345FC                  and eax, dword ptr [ebp-04]
:004268E7 8B4DFC                  mov ecx, dword ptr [ebp-04]
:004268EA F7D1                    not ecx
:004268EC 8B55F0                  mov edx, dword ptr [ebp-10]
:004268EF 23D1                    and edx, ecx
:004268F1 0BC2                    or eax, edx
:004268F3 0345D0                  add eax, dword ptr [ebp-30]
:004268F6 8B4DF8                  mov ecx, dword ptr [ebp-08]
:004268F9 8D9401ED145A45          lea edx, dword ptr [ecx+eax+455A14ED]  //455A14ED
:00426900 8955F8                  mov dword ptr [ebp-08], edx
:00426903 8B45F8                  mov eax, dword ptr [ebp-08]
:00426906 C1E014                  shl eax, 14
:00426909 8B4DF8                  mov ecx, dword ptr [ebp-08]
:0042690C C1E90C                  shr ecx, 0C
:0042690F 0BC1                    or eax, ecx
:00426911 8945F8                  mov dword ptr [ebp-08], eax
:00426914 8B55F8                  mov edx, dword ptr [ebp-08]
:00426917 0355F4                  add edx, dword ptr [ebp-0C]
:0042691A 8955F8                  mov dword ptr [ebp-08], edx
:0042691D 8B45F8                  mov eax, dword ptr [ebp-08]
:00426920 2345F0                  and eax, dword ptr [ebp-10]
:00426923 8B4DF0                  mov ecx, dword ptr [ebp-10]
:00426926 F7D1                    not ecx
:00426928 8B55F4                  mov edx, dword ptr [ebp-0C]
:0042692B 23D1                    and edx, ecx
:0042692D 0BC2                    or eax, edx
:0042692F 0345E4                  add eax, dword ptr [ebp-1C]
:00426932 8B4DFC                  mov ecx, dword ptr [ebp-04]
:00426935 8D940105E9E3A9          lea edx, dword ptr [ecx+eax-561C16FB]  //A9E3E905
:0042693C 8955FC                  mov dword ptr [ebp-04], edx
:0042693F 8B45FC                  mov eax, dword ptr [ebp-04]
:00426942 C1E005                  shl eax, 05
:00426945 8B4DFC                  mov ecx, dword ptr [ebp-04]
:00426948 C1E91B                  shr ecx, 1B
:0042694B 0BC1                    or eax, ecx
:0042694D 8945FC                  mov dword ptr [ebp-04], eax
:00426950 8B55FC                  mov edx, dword ptr [ebp-04]
:00426953 0355F8                  add edx, dword ptr [ebp-08]
:00426956 8955FC                  mov dword ptr [ebp-04], edx
:00426959 8B45FC                  mov eax, dword ptr [ebp-04]
:0042695C 2345F4                  and eax, dword ptr [ebp-0C]
:0042695F 8B4DF4                  mov ecx, dword ptr [ebp-0C]
:00426962 F7D1                    not ecx
:00426964 8B55F8                  mov edx, dword ptr [ebp-08]
:00426967 23D1                    and edx, ecx
:00426969 0BC2                    or eax, edx
:0042696B 0345B8                  add eax, dword ptr [ebp-48]
:0042696E 8B4DF0                  mov ecx, dword ptr [ebp-10]
:00426971 8D9401F8A3EFFC          lea edx, dword ptr [ecx+eax-03105C08] //FCEFA3F8
:00426978 8955F0                  mov dword ptr [ebp-10], edx
:0042697B 8B45F0                  mov eax, dword ptr [ebp-10]
:0042697E C1E009                  shl eax, 09
:00426981 8B4DF0                  mov ecx, dword ptr [ebp-10]
:00426984 C1E917                  shr ecx, 17
:00426987 0BC1                    or eax, ecx
:00426989 8945F0                  mov dword ptr [ebp-10], eax
:0042698C 8B55F0                  mov edx, dword ptr [ebp-10]
:0042698F 0355FC                  add edx, dword ptr [ebp-04]
:00426992 8955F0                  mov dword ptr [ebp-10], edx
:00426995 8B45F0                  mov eax, dword ptr [ebp-10]
:00426998 2345F8                  and eax, dword ptr [ebp-08]
:0042699B 8B4DF8                  mov ecx, dword ptr [ebp-08]
:0042699E F7D1                    not ecx
:004269A0 8B55FC                  mov edx, dword ptr [ebp-04]
:004269A3 23D1                    and edx, ecx
:004269A5 0BC2                    or eax, edx
:004269A7 0345CC                  add eax, dword ptr [ebp-34]
:004269AA 8B4DF4                  mov ecx, dword ptr [ebp-0C]
:004269AD 8D9401D9026F67          lea edx, dword ptr [ecx+eax+676F02D9] //676F02D9
:004269B4 8955F4                  mov dword ptr [ebp-0C], edx
:004269B7 8B45F4                  mov eax, dword ptr [ebp-0C]
:004269BA C1E00E                  shl eax, 0E
:004269BD 8B4DF4                  mov ecx, dword ptr [ebp-0C]
:004269C0 C1E912                  shr ecx, 12
:004269C3 0BC1                    or eax, ecx
:004269C5 8945F4                  mov dword ptr [ebp-0C], eax
:004269C8 8B55F4                  mov edx, dword ptr [ebp-0C]
:004269CB 0355F0                  add edx, dword ptr [ebp-10]
:004269CE 8955F4                  mov dword ptr [ebp-0C], edx
:004269D1 8B45F4                  mov eax, dword ptr [ebp-0C]
:004269D4 2345FC                  and eax, dword ptr [ebp-04]
:004269D7 8B4DFC                  mov ecx, dword ptr [ebp-04]
:004269DA F7D1                    not ecx
:004269DC 8B55F0                  mov edx, dword ptr [ebp-10]
:004269DF 23D1                    and edx, ecx
:004269E1 0BC2                    or eax, edx
:004269E3 0345E0                  add eax, dword ptr [ebp-20]
:004269E6 8B4DF8                  mov ecx, dword ptr [ebp-08]
:004269E9 8D94018A4C2A8D          lea edx, dword ptr [ecx+eax-72D5B376]  //8D2A4C8A
:004269F0 8955F8                  mov dword ptr [ebp-08], edx
:004269F3 8B45F8                  mov eax, dword ptr [ebp-08]
:004269F6 C1E014                  shl eax, 14
:004269F9 8B4DF8                  mov ecx, dword ptr [ebp-08]
:004269FC C1E90C                  shr ecx, 0C
:004269FF 0BC1                    or eax, ecx
:00426A01 8945F8                  mov dword ptr [ebp-08], eax
:00426A04 8B55F8                  mov edx, dword ptr [ebp-08]
:00426A07 0355F4                  add edx, dword ptr [ebp-0C]
:00426A0A 8955F8                  mov dword ptr [ebp-08], edx
:00426A0D 8B45F8                  mov eax, dword ptr [ebp-08]
:00426A10 3345F4                  xor eax, dword ptr [ebp-0C]
:00426A13 3345F0                  xor eax, dword ptr [ebp-10]
:00426A16 0345C4                  add eax, dword ptr [ebp-3C]
:00426A19 8B4DFC                  mov ecx, dword ptr [ebp-04]
:00426A1C 8D94014239FAFF          lea edx, dword ptr [ecx+eax-0005C6BE] //第三轮FFFA3942
:00426A23 8955FC                  mov dword ptr [ebp-04], edx
:00426A26 8B45FC                  mov eax, dword ptr [ebp-04]
:00426A29 C1E004                  shl eax, 04
:00426A2C 8B4DFC                  mov ecx, dword ptr [ebp-04]
:00426A2F C1E91C                  shr ecx, 1C
:00426A32 0BC1                    or eax, ecx
:00426A34 8945FC                  mov dword ptr [ebp-04], eax
:00426A37 8B55FC                  mov edx, dword ptr [ebp-04]
:00426A3A 0355F8                  add edx, dword ptr [ebp-08]
:00426A3D 8955FC                  mov dword ptr [ebp-04], edx
:00426A40 8B45FC                  mov eax, dword ptr [ebp-04]
:00426A43 3345F8                  xor eax, dword ptr [ebp-08]
:00426A46 3345F4                  xor eax, dword ptr [ebp-0C]
:00426A49 0345D0                  add eax, dword ptr [ebp-30]
:00426A4C 8B4DF0                  mov ecx, dword ptr [ebp-10]
:00426A4F 8D940181F67187          lea edx, dword ptr [ecx+eax-788E097F] //8771F681
:00426A56 8955F0                  mov dword ptr [ebp-10], edx
:00426A59 8B45F0                  mov eax, dword ptr [ebp-10]
:00426A5C C1E00B                  shl eax, 0B
:00426A5F 8B4DF0                  mov ecx, dword ptr [ebp-10]
:00426A62 C1E915                  shr ecx, 15
:00426A65 0BC1                    or eax, ecx
:00426A67 8945F0                  mov dword ptr [ebp-10], eax
:00426A6A 8B55F0                  mov edx, dword ptr [ebp-10]
:00426A6D 0355FC                  add edx, dword ptr [ebp-04]
:00426A70 8955F0                  mov dword ptr [ebp-10], edx
:00426A73 8B45F0                  mov eax, dword ptr [ebp-10]
:00426A76 3345FC                  xor eax, dword ptr [ebp-04]
:00426A79 3345F8                  xor eax, dword ptr [ebp-08]
:00426A7C 0345DC                  add eax, dword ptr [ebp-24]
:00426A7F 8B4DF4                  mov ecx, dword ptr [ebp-0C]
:00426A82 8D940122619D6D          lea edx, dword ptr [ecx+eax+6D9D6122] //6D9D6122
:00426A89 8955F4                  mov dword ptr [ebp-0C], edx
:00426A8C 8B45F4                  mov eax, dword ptr [ebp-0C]
:00426A8F C1E010                  shl eax, 10
:00426A92 8B4DF4                  mov ecx, dword ptr [ebp-0C]
:00426A95 C1E910                  shr ecx, 10
:00426A98 0BC1                    or eax, ecx
:00426A9A 8945F4                  mov dword ptr [ebp-0C], eax
:00426A9D 8B55F4                  mov edx, dword ptr [ebp-0C]
:00426AA0 0355F0                  add edx, dword ptr [ebp-10]
:00426AA3 8955F4                  mov dword ptr [ebp-0C], edx
:00426AA6 8B45F4                  mov eax, dword ptr [ebp-0C]
:00426AA9 3345F0                  xor eax, dword ptr [ebp-10]
:00426AAC 3345FC                  xor eax, dword ptr [ebp-04]
:00426AAF 0345E8                  add eax, dword ptr [ebp-18]
:00426AB2 8B4DF8                  mov ecx, dword ptr [ebp-08]
:00426AB5 8D94010C38E5FD          lea edx, dword ptr [ecx+eax-021AC7F4]  //FDE5380C
:00426ABC 8955F8                  mov dword ptr [ebp-08], edx
:00426ABF 8B45F8                  mov eax, dword ptr [ebp-08]
:00426AC2 C1E017                  shl eax, 17
:00426AC5 8B4DF8                  mov ecx, dword ptr [ebp-08]
:00426AC8 C1E909                  shr ecx, 09
:00426ACB 0BC1                    or eax, ecx
:00426ACD 8945F8                  mov dword ptr [ebp-08], eax
:00426AD0 8B55F8                  mov edx, dword ptr [ebp-08]
:00426AD3 0355F4                  add edx, dword ptr [ebp-0C]
:00426AD6 8955F8                  mov dword ptr [ebp-08], edx
:00426AD9 8B45F8                  mov eax, dword ptr [ebp-08]
:00426ADC 3345F4                  xor eax, dword ptr [ebp-0C]
:00426ADF 3345F0                  xor eax, dword ptr [ebp-10]
:00426AE2 0345B4                  add eax, dword ptr [ebp-4C]
:00426AE5 8B4DFC                  mov ecx, dword ptr [ebp-04]
:00426AE8 8D940144EABEA4          lea edx, dword ptr [ecx+eax-5B4115BC] //A4BEEA44
:00426AEF 8955FC                  mov dword ptr [ebp-04], edx
:00426AF2 8B45FC                  mov eax, dword ptr [ebp-04]
:00426AF5 C1E004                  shl eax, 04
:00426AF8 8B4DFC                  mov ecx, dword ptr [ebp-04]
:00426AFB C1E91C                  shr ecx, 1C
:00426AFE 0BC1                    or eax, ecx
:00426B00 8945FC                  mov dword ptr [ebp-04], eax
:00426B03 8B55FC                  mov edx, dword ptr [ebp-04]
:00426B06 0355F8                  add edx, dword ptr [ebp-08]
:00426B09 8955FC                  mov dword ptr [ebp-04], edx
:00426B0C 8B45FC                  mov eax, dword ptr [ebp-04]
:00426B0F 3345F8                  xor eax, dword ptr [ebp-08]
:00426B12 3345F4                  xor eax, dword ptr [ebp-0C]
:00426B15 0345C0                  add eax, dword ptr [ebp-40]
:00426B18 8B4DF0                  mov ecx, dword ptr [ebp-10]
:00426B1B 8D9401A9CFDE4B          lea edx, dword ptr [ecx+eax+4BDECFA9] //4BDECFA9
:00426B22 8955F0                  mov dword ptr [ebp-10], edx
:00426B25 8B45F0                  mov eax, dword ptr [ebp-10]
:00426B28 C1E00B                  shl eax, 0B
:00426B2B 8B4DF0                  mov ecx, dword ptr [ebp-10]
:00426B2E C1E915                  shr ecx, 15
:00426B31 0BC1                    or eax, ecx
:00426B33 8945F0                  mov dword ptr [ebp-10], eax
:00426B36 8B55F0                  mov edx, dword ptr [ebp-10]
:00426B39 0355FC                  add edx, dword ptr [ebp-04]
:00426B3C 8955F0                  mov dword ptr [ebp-10], edx
:00426B3F 8B45F0                  mov eax, dword ptr [ebp-10]
:00426B42 3345FC                  xor eax, dword ptr [ebp-04]
:00426B45 3345F8                  xor eax, dword ptr [ebp-08]
:00426B48 0345CC                  add eax, dword ptr [ebp-34]
:00426B4B 8B4DF4                  mov ecx, dword ptr [ebp-0C]
:00426B4E 8D9401604BBBF6          lea edx, dword ptr [ecx+eax-0944B4A0]  //F6BB4B60
:00426B55 8955F4                  mov dword ptr [ebp-0C], edx
:00426B58 8B45F4                  mov eax, dword ptr [ebp-0C]
:00426B5B C1E010                  shl eax, 10
:00426B5E 8B4DF4                  mov ecx, dword ptr [ebp-0C]
:00426B61 C1E910                  shr ecx, 10
:00426B64 0BC1                    or eax, ecx
:00426B66 8945F4                  mov dword ptr [ebp-0C], eax
:00426B69 8B55F4                  mov edx, dword ptr [ebp-0C]
:00426B6C 0355F0                  add edx, dword ptr [ebp-10]
:00426B6F 8955F4                  mov dword ptr [ebp-0C], edx
:00426B72 8B45F4                  mov eax, dword ptr [ebp-0C]
:00426B75 3345F0                  xor eax, dword ptr [ebp-10]
:00426B78 3345FC                  xor eax, dword ptr [ebp-04]
:00426B7B 0345D8                  add eax, dword ptr [ebp-28]
:00426B7E 8B4DF8                  mov ecx, dword ptr [ebp-08]
:00426B81 8D940170BCBFBE          lea edx, dword ptr [ecx+eax-41404390]  //BEBFBC70
:00426B88 8955F8                  mov dword ptr [ebp-08], edx
:00426B8B 8B45F8                  mov eax, dword ptr [ebp-08]
:00426B8E C1E017                  shl eax, 17
:00426B91 8B4DF8                  mov ecx, dword ptr [ebp-08]
:00426B94 C1E909                  shr ecx, 09
:00426B97 0BC1                    or eax, ecx
:00426B99 8945F8                  mov dword ptr [ebp-08], eax
:00426B9C 8B55F8                  mov edx, dword ptr [ebp-08]
:00426B9F 0355F4                  add edx, dword ptr [ebp-0C]
:00426BA2 8955F8                  mov dword ptr [ebp-08], edx
:00426BA5 8B45F8                  mov eax, dword ptr [ebp-08]
:00426BA8 3345F4                  xor eax, dword ptr [ebp-0C]
:00426BAB 3345F0                  xor eax, dword ptr [ebp-10]
:00426BAE 0345E4                  add eax, dword ptr [ebp-1C]
:00426BB1 8B4DFC                  mov ecx, dword ptr [ebp-04]
:00426BB4 8D9401C67E9B28          lea edx, dword ptr [ecx+eax+289B7EC6]   //289B7EC6
:00426BBB 8955FC                  mov dword ptr [ebp-04], edx
:00426BBE 8B45FC                  mov eax, dword ptr [ebp-04]
:00426BC1 C1E004                  shl eax, 04
:00426BC4 8B4DFC                  mov ecx, dword ptr [ebp-04]
:00426BC7 C1E91C                  shr ecx, 1C
:00426BCA 0BC1                    or eax, ecx
:00426BCC 8945FC                  mov dword ptr [ebp-04], eax
:00426BCF 8B55FC                  mov edx, dword ptr [ebp-04]
:00426BD2 0355F8                  add edx, dword ptr [ebp-08]
:00426BD5 8955FC                  mov dword ptr [ebp-04], edx
:00426BD8 8B45FC                  mov eax, dword ptr [ebp-04]
:00426BDB 3345F8                  xor eax, dword ptr [ebp-08]
:00426BDE 3345F4                  xor eax, dword ptr [ebp-0C]
:00426BE1 0345B0                  add eax, dword ptr [ebp-50]
:00426BE4 8B4DF0                  mov ecx, dword ptr [ebp-10]
:00426BE7 8D9401FA27A1EA          lea edx, dword ptr [ecx+eax-155ED806]   //EAA127FA
:00426BEE 8955F0                  mov dword ptr [ebp-10], edx
:00426BF1 8B45F0                  mov eax, dword ptr [ebp-10]
:00426BF4 C1E00B                  shl eax, 0B
:00426BF7 8B4DF0                  mov ecx, dword ptr [ebp-10]
:00426BFA C1E915                  shr ecx, 15
:00426BFD 0BC1                    or eax, ecx
:00426BFF 8945F0                  mov dword ptr [ebp-10], eax
:00426C02 8B55F0                  mov edx, dword ptr [ebp-10]
:00426C05 0355FC                  add edx, dword ptr [ebp-04]
:00426C08 8955F0                  mov dword ptr [ebp-10], edx
:00426C0B 8B45F0                  mov eax, dword ptr [ebp-10]
:00426C0E 3345FC                  xor eax, dword ptr [ebp-04]
:00426C11 3345F8                  xor eax, dword ptr [ebp-08]
:00426C14 0345BC                  add eax, dword ptr [ebp-44]
:00426C17 8B4DF4                  mov ecx, dword ptr [ebp-0C]
:00426C1A 8D94018530EFD4          lea edx, dword ptr [ecx+eax-2B10CF7B]  //D4EF3085
:00426C21 8955F4                  mov dword ptr [ebp-0C], edx
:00426C24 8B45F4                  mov eax, dword ptr [ebp-0C]
:00426C27 C1E010                  shl eax, 10
:00426C2A 8B4DF4                  mov ecx, dword ptr [ebp-0C]
:00426C2D C1E910                  shr ecx, 10
:00426C30 0BC1                    or eax, ecx
:00426C32 8945F4                  mov dword ptr [ebp-0C], eax
:00426C35 8B55F4                  mov edx, dword ptr [ebp-0C]
:00426C38 0355F0                  add edx, dword ptr [ebp-10]
:00426C3B 8955F4                  mov dword ptr [ebp-0C], edx
:00426C3E 8B45F4                  mov eax, dword ptr [ebp-0C]
:00426C41 3345F0                  xor eax, dword ptr [ebp-10]
:00426C44 3345FC                  xor eax, dword ptr [ebp-04]
:00426C47 0345C8                  add eax, dword ptr [ebp-38]
:00426C4A 8B4DF8                  mov ecx, dword ptr [ebp-08]
:00426C4D 8D9401051D8804          lea edx, dword ptr [ecx+eax+04881D05] //04881D05
:00426C54 8955F8                  mov dword ptr [ebp-08], edx
:00426C57 8B45F8                  mov eax, dword ptr [ebp-08]
:00426C5A C1E017                  shl eax, 17
:00426C5D 8B4DF8                  mov ecx, dword ptr [ebp-08]
:00426C60 C1E909                  shr ecx, 09
:00426C63 0BC1                    or eax, ecx
:00426C65 8945F8                  mov dword ptr [ebp-08], eax
:00426C68 8B55F8                  mov edx, dword ptr [ebp-08]
:00426C6B 0355F4                  add edx, dword ptr [ebp-0C]
:00426C6E 8955F8                  mov dword ptr [ebp-08], edx
:00426C71 8B45F8                  mov eax, dword ptr [ebp-08]
:00426C74 3345F4                  xor eax, dword ptr [ebp-0C]
:00426C77 3345F0                  xor eax, dword ptr [ebp-10]
:00426C7A 0345D4                  add eax, dword ptr [ebp-2C]
:00426C7D 8B4DFC                  mov ecx, dword ptr [ebp-04]
:00426C80 8D940139D0D4D9          lea edx, dword ptr [ecx+eax-262B2FC7] //D9D4D039
:00426C87 8955FC                  mov dword ptr [ebp-04], edx
:00426C8A 8B45FC                  mov eax, dword ptr [ebp-04]
:00426C8D C1E004                  shl eax, 04
:00426C90 8B4DFC                  mov ecx, dword ptr [ebp-04]
:00426C93 C1E91C                  shr ecx, 1C
:00426C96 0BC1                    or eax, ecx
:00426C98 8945FC                  mov dword ptr [ebp-04], eax
:00426C9B 8B55FC                  mov edx, dword ptr [ebp-04]
:00426C9E 0355F8                  add edx, dword ptr [ebp-08]
:00426CA1 8955FC                  mov dword ptr [ebp-04], edx
:00426CA4 8B45FC                  mov eax, dword ptr [ebp-04]
:00426CA7 3345F8                  xor eax, dword ptr [ebp-08]
:00426CAA 3345F4                  xor eax, dword ptr [ebp-0C]
:00426CAD 0345E0                  add eax, dword ptr [ebp-20]
:00426CB0 8B4DF0                  mov ecx, dword ptr [ebp-10]
:00426CB3 8D9401E599DBE6          lea edx, dword ptr [ecx+eax-1924661B] //E6DB99E5
:00426CBA 8955F0                  mov dword ptr [ebp-10], edx
:00426CBD 8B45F0                  mov eax, dword ptr [ebp-10]
:00426CC0 C1E00B                  shl eax, 0B
:00426CC3 8B4DF0                  mov ecx, dword ptr [ebp-10]
:00426CC6 C1E915                  shr ecx, 15
:00426CC9 0BC1                    or eax, ecx
:00426CCB 8945F0                  mov dword ptr [ebp-10], eax
:00426CCE 8B55F0                  mov edx, dword ptr [ebp-10]
:00426CD1 0355FC                  add edx, dword ptr [ebp-04]
:00426CD4 8955F0                  mov dword ptr [ebp-10], edx
:00426CD7 8B45F0                  mov eax, dword ptr [ebp-10]
:00426CDA 3345FC                  xor eax, dword ptr [ebp-04]
:00426CDD 3345F8                  xor eax, dword ptr [ebp-08]
:00426CE0 0345EC                  add eax, dword ptr [ebp-14]
:00426CE3 8B4DF4                  mov ecx, dword ptr [ebp-0C]
:00426CE6 8D9401F87CA21F          lea edx, dword ptr [ecx+eax+1FA27CF8] //1FA27CF8
:00426CED 8955F4                  mov dword ptr [ebp-0C], edx
:00426CF0 8B45F4                  mov eax, dword ptr [ebp-0C]
:00426CF3 C1E010                  shl eax, 10
:00426CF6 8B4DF4                  mov ecx, dword ptr [ebp-0C]
:00426CF9 C1E910                  shr ecx, 10
:00426CFC 0BC1                    or eax, ecx
:00426CFE 8945F4                  mov dword ptr [ebp-0C], eax
:00426D01 8B55F4                  mov edx, dword ptr [ebp-0C]
:00426D04 0355F0                  add edx, dword ptr [ebp-10]
:00426D07 8955F4                  mov dword ptr [ebp-0C], edx
:00426D0A 8B45F4                  mov eax, dword ptr [ebp-0C]
:00426D0D 3345F0                  xor eax, dword ptr [ebp-10]
:00426D10 3345FC                  xor eax, dword ptr [ebp-04]
:00426D13 0345B8                  add eax, dword ptr [ebp-48]
:00426D16 8B4DF8                  mov ecx, dword ptr [ebp-08]
:00426D19 8D94016556ACC4          lea edx, dword ptr [ecx+eax-3B53A99B] //C4AC5665
:00426D20 8955F8                  mov dword ptr [ebp-08], edx
:00426D23 8B45F8                  mov eax, dword ptr [ebp-08]
:00426D26 C1E017                  shl eax, 17
:00426D29 8B4DF8                  mov ecx, dword ptr [ebp-08]
:00426D2C C1E909                  shr ecx, 09
:00426D2F 0BC1                    or eax, ecx
:00426D31 8945F8                  mov dword ptr [ebp-08], eax
:00426D34 8B55F8                  mov edx, dword ptr [ebp-08]
:00426D37 0355F4                  add edx, dword ptr [ebp-0C]
:00426D3A 8955F8                  mov dword ptr [ebp-08], edx
:00426D3D 8B45F0                  mov eax, dword ptr [ebp-10]
:00426D40 F7D0                    not eax
:00426D42 8B4DF8                  mov ecx, dword ptr [ebp-08]
:00426D45 0BC8                    or ecx, eax
:00426D47 8B55F4                  mov edx, dword ptr [ebp-0C]
:00426D4A 33D1                    xor edx, ecx
:00426D4C 0355B0                  add edx, dword ptr [ebp-50]
:00426D4F 8B45FC                  mov eax, dword ptr [ebp-04]
:00426D52 8D8C10442229F4          lea ecx, dword ptr [eax+edx-0BD6DDBC] //第四轮F4292244
:00426D59 894DFC                  mov dword ptr [ebp-04], ecx
:00426D5C 8B55FC                  mov edx, dword ptr [ebp-04]
:00426D5F C1E206                  shl edx, 06
:00426D62 8B45FC                  mov eax, dword ptr [ebp-04]
:00426D65 C1E81A                  shr eax, 1A
:00426D68 0BD0                    or edx, eax
:00426D6A 8955FC                  mov dword ptr [ebp-04], edx
:00426D6D 8B4DFC                  mov ecx, dword ptr [ebp-04]
:00426D70 034DF8                  add ecx, dword ptr [ebp-08]
:00426D73 894DFC                  mov dword ptr [ebp-04], ecx
:00426D76 8B55F4                  mov edx, dword ptr [ebp-0C]
:00426D79 F7D2                    not edx
:00426D7B 8B45FC                  mov eax, dword ptr [ebp-04]
:00426D7E 0BC2                    or eax, edx
:00426D80 8B4DF8                  mov ecx, dword ptr [ebp-08]
:00426D83 33C8                    xor ecx, eax
:00426D85 034DCC                  add ecx, dword ptr [ebp-34]
:00426D88 8B55F0                  mov edx, dword ptr [ebp-10]
:00426D8B 8D840A97FF2A43          lea eax, dword ptr [edx+ecx+432AFF97] //432AFF97
:00426D92 8945F0                  mov dword ptr [ebp-10], eax
:00426D95 8B4DF0                  mov ecx, dword ptr [ebp-10]
:00426D98 C1E10A                  shl ecx, 0A
:00426D9B 8B55F0                  mov edx, dword ptr [ebp-10]
:00426D9E C1EA16                  shr edx, 16
:00426DA1 0BCA                    or ecx, edx
:00426DA3 894DF0                  mov dword ptr [ebp-10], ecx
:00426DA6 8B45F0                  mov eax, dword ptr [ebp-10]
:00426DA9 0345FC                  add eax, dword ptr [ebp-04]
:00426DAC 8945F0                  mov dword ptr [ebp-10], eax
:00426DAF 8B4DF8                  mov ecx, dword ptr [ebp-08]
:00426DB2 F7D1                    not ecx
:00426DB4 8B55F0                  mov edx, dword ptr [ebp-10]
:00426DB7 0BD1                    or edx, ecx
:00426DB9 8B45FC                  mov eax, dword ptr [ebp-04]
:00426DBC 33C2                    xor eax, edx
:00426DBE 0345E8                  add eax, dword ptr [ebp-18]
:00426DC1 8B4DF4                  mov ecx, dword ptr [ebp-0C]
:00426DC4 8D9401A72394AB          lea edx, dword ptr [ecx+eax-546BDC59] //AB9423A7
:00426DCB 8955F4                  mov dword ptr [ebp-0C], edx
:00426DCE 8B45F4                  mov eax, dword ptr [ebp-0C]
:00426DD1 C1E00F                  shl eax, 0F
:00426DD4 8B4DF4                  mov ecx, dword ptr [ebp-0C]
:00426DD7 C1E911                  shr ecx, 11
:00426DDA 0BC1                    or eax, ecx
:00426DDC 8945F4                  mov dword ptr [ebp-0C], eax
:00426DDF 8B55F4                  mov edx, dword ptr [ebp-0C]
:00426DE2 0355F0                  add edx, dword ptr [ebp-10]
:00426DE5 8955F4                  mov dword ptr [ebp-0C], edx
:00426DE8 8B45FC                  mov eax, dword ptr [ebp-04]
:00426DEB F7D0                    not eax
:00426DED 8B4DF4                  mov ecx, dword ptr [ebp-0C]
:00426DF0 0BC8                    or ecx, eax
:00426DF2 8B55F0                  mov edx, dword ptr [ebp-10]
:00426DF5 33D1                    xor edx, ecx
:00426DF7 0355C4                  add edx, dword ptr [ebp-3C]
:00426DFA 8B45F8                  mov eax, dword ptr [ebp-08]
:00426DFD 8D8C1039A093FC          lea ecx, dword ptr [eax+edx-036C5FC7] //FC93A039
:00426E04 894DF8                  mov dword ptr [ebp-08], ecx
:00426E07 8B55F8                  mov edx, dword ptr [ebp-08]
:00426E0A C1E215                  shl edx, 15
:00426E0D 8B45F8                  mov eax, dword ptr [ebp-08]
:00426E10 C1E80B                  shr eax, 0B
:00426E13 0BD0                    or edx, eax
:00426E15 8955F8                  mov dword ptr [ebp-08], edx
:00426E18 8B4DF8                  mov ecx, dword ptr [ebp-08]
:00426E1B 034DF4                  add ecx, dword ptr [ebp-0C]
:00426E1E 894DF8                  mov dword ptr [ebp-08], ecx
:00426E21 8B55F0                  mov edx, dword ptr [ebp-10]
:00426E24 F7D2                    not edx
:00426E26 8B45F8                  mov eax, dword ptr [ebp-08]
:00426E29 0BC2                    or eax, edx
:00426E2B 8B4DF4                  mov ecx, dword ptr [ebp-0C]
:00426E2E 33C8                    xor ecx, eax
:00426E30 034DE0                  add ecx, dword ptr [ebp-20]
:00426E33 8B55FC                  mov edx, dword ptr [ebp-04]
:00426E36 8D840AC3595B65          lea eax, dword ptr [edx+ecx+655B59C3] //655B59C3
:00426E3D 8945FC                  mov dword ptr [ebp-04], eax
:00426E40 8B4DFC                  mov ecx, dword ptr [ebp-04]
:00426E43 C1E106                  shl ecx, 06
:00426E46 8B55FC                  mov edx, dword ptr [ebp-04]
:00426E49 C1EA1A                  shr edx, 1A
:00426E4C 0BCA                    or ecx, edx
:00426E4E 894DFC                  mov dword ptr [ebp-04], ecx
:00426E51 8B45FC                  mov eax, dword ptr [ebp-04]
:00426E54 0345F8                  add eax, dword ptr [ebp-08]
:00426E57 8945FC                  mov dword ptr [ebp-04], eax
:00426E5A 8B4DF4                  mov ecx, dword ptr [ebp-0C]
:00426E5D F7D1                    not ecx
:00426E5F 8B55FC                  mov edx, dword ptr [ebp-04]
:00426E62 0BD1                    or edx, ecx
:00426E64 8B45F8                  mov eax, dword ptr [ebp-08]
:00426E67 33C2                    xor eax, edx
:00426E69 0345BC                  add eax, dword ptr [ebp-44]
:00426E6C 8B4DF0                  mov ecx, dword ptr [ebp-10]
:00426E6F 8D940192CC0C8F          lea edx, dword ptr [ecx+eax-70F3336E] //8F0CCC92
:00426E76 8955F0                  mov dword ptr [ebp-10], edx
:00426E79 8B45F0                  mov eax, dword ptr [ebp-10]
:00426E7C C1E00A                  shl eax, 0A
:00426E7F 8B4DF0                  mov ecx, dword ptr [ebp-10]
:00426E82 C1E916                  shr ecx, 16
:00426E85 0BC1                    or eax, ecx
:00426E87 8945F0                  mov dword ptr [ebp-10], eax
:00426E8A 8B55F0                  mov edx, dword ptr [ebp-10]
:00426E8D 0355FC                  add edx, dword ptr [ebp-04]
:00426E90 8955F0                  mov dword ptr [ebp-10], edx
:00426E93 8B45F8                  mov eax, dword ptr [ebp-08]
:00426E96 F7D0                    not eax
:00426E98 8B4DF0                  mov ecx, dword ptr [ebp-10]
:00426E9B 0BC8                    or ecx, eax
:00426E9D 8B55FC                  mov edx, dword ptr [ebp-04]
:00426EA0 33D1                    xor edx, ecx
:00426EA2 0355D8                  add edx, dword ptr [ebp-28]
:00426EA5 8B45F4                  mov eax, dword ptr [ebp-0C]
:00426EA8 8D8C107DF4EFFF          lea ecx, dword ptr [eax+edx-00100B83] //FFEFF47D
:00426EAF 894DF4                  mov dword ptr [ebp-0C], ecx
:00426EB2 8B55F4                  mov edx, dword ptr [ebp-0C]
:00426EB5 C1E20F                  shl edx, 0F
:00426EB8 8B45F4                  mov eax, dword ptr [ebp-0C]
:00426EBB C1E811                  shr eax, 11
:00426EBE 0BD0                    or edx, eax
:00426EC0 8955F4                  mov dword ptr [ebp-0C], edx
:00426EC3 8B4DF4                  mov ecx, dword ptr [ebp-0C]
:00426EC6 034DF0                  add ecx, dword ptr [ebp-10]
:00426EC9 894DF4                  mov dword ptr [ebp-0C], ecx
:00426ECC 8B55FC                  mov edx, dword ptr [ebp-04]
:00426ECF F7D2                    not edx
:00426ED1 8B45F4                  mov eax, dword ptr [ebp-0C]
:00426ED4 0BC2                    or eax, edx
:00426ED6 8B4DF0                  mov ecx, dword ptr [ebp-10]
:00426ED9 33C8                    xor ecx, eax
:00426EDB 034DB4                  add ecx, dword ptr [ebp-4C]
:00426EDE 8B55F8                  mov edx, dword ptr [ebp-08]
:00426EE1 8D840AD15D8485          lea eax, dword ptr [edx+ecx-7A7BA22F] //85845DD1
:00426EE8 8945F8                  mov dword ptr [ebp-08], eax
:00426EEB 8B4DF8                  mov ecx, dword ptr [ebp-08]
:00426EEE C1E115                  shl ecx, 15
:00426EF1 8B55F8                  mov edx, dword ptr [ebp-08]
:00426EF4 C1EA0B                  shr edx, 0B
:00426EF7 0BCA                    or ecx, edx
:00426EF9 894DF8                  mov dword ptr [ebp-08], ecx
:00426EFC 8B45F8                  mov eax, dword ptr [ebp-08]
:00426EFF 0345F4                  add eax, dword ptr [ebp-0C]
:00426F02 8945F8                  mov dword ptr [ebp-08], eax
:00426F05 8B4DF0                  mov ecx, dword ptr [ebp-10]
:00426F08 F7D1                    not ecx
:00426F0A 8B55F8                  mov edx, dword ptr [ebp-08]
:00426F0D 0BD1                    or edx, ecx
:00426F0F 8B45F4                  mov eax, dword ptr [ebp-0C]
:00426F12 33C2                    xor eax, edx
:00426F14 0345D0                  add eax, dword ptr [ebp-30]
:00426F17 8B4DFC                  mov ecx, dword ptr [ebp-04]
:00426F1A 8D94014F7EA86F          lea edx, dword ptr [ecx+eax+6FA87E4F] //6FA87E4F
:00426F21 8955FC                  mov dword ptr [ebp-04], edx
:00426F24 8B45FC                  mov eax, dword ptr [ebp-04]
:00426F27 C1E006                  shl eax, 06
:00426F2A 8B4DFC                  mov ecx, dword ptr [ebp-04]
:00426F2D C1E91A                  shr ecx, 1A
:00426F30 0BC1                    or eax, ecx
:00426F32 8945FC                  mov dword ptr [ebp-04], eax
:00426F35 8B55FC                  mov edx, dword ptr [ebp-04]
:00426F38 0355F8                  add edx, dword ptr [ebp-08]
:00426F3B 8955FC                  mov dword ptr [ebp-04], edx
:00426F3E 8B45F4                  mov eax, dword ptr [ebp-0C]
:00426F41 F7D0                    not eax
:00426F43 8B4DFC                  mov ecx, dword ptr [ebp-04]
:00426F46 0BC8                    or ecx, eax
:00426F48 8B55F8                  mov edx, dword ptr [ebp-08]
:00426F4B 33D1                    xor edx, ecx
:00426F4D 0355EC                  add edx, dword ptr [ebp-14]
:00426F50 8B45F0                  mov eax, dword ptr [ebp-10]
:00426F53 8D8C10E0E62CFE          lea ecx, dword ptr [eax+edx-01D31920] //FE2CE6E0
:00426F5A 894DF0                  mov dword ptr [ebp-10], ecx
:00426F5D 8B55F0                  mov edx, dword ptr [ebp-10]
:00426F60 C1E20A                  shl edx, 0A
:00426F63 8B45F0                  mov eax, dword ptr [ebp-10]
:00426F66 C1E816                  shr eax, 16
:00426F69 0BD0                    or edx, eax
:00426F6B 8955F0                  mov dword ptr [ebp-10], edx
:00426F6E 8B4DF0                  mov ecx, dword ptr [ebp-10]
:00426F71 034DFC                  add ecx, dword ptr [ebp-04]
:00426F74 894DF0                  mov dword ptr [ebp-10], ecx
:00426F77 8B55F8                  mov edx, dword ptr [ebp-08]
:00426F7A F7D2                    not edx
:00426F7C 8B45F0                  mov eax, dword ptr [ebp-10]
:00426F7F 0BC2                    or eax, edx
:00426F81 8B4DFC                  mov ecx, dword ptr [ebp-04]
:00426F84 33C8                    xor ecx, eax
:00426F86 034DC8                  add ecx, dword ptr [ebp-38]
:00426F89 8B55F4                  mov edx, dword ptr [ebp-0C]
:00426F8C 8D840A144301A3          lea eax, dword ptr [edx+ecx-5CFEBCEC] //A3014314
:00426F93 8945F4                  mov dword ptr [ebp-0C], eax
:00426F96 8B4DF4                  mov ecx, dword ptr [ebp-0C]
:00426F99 C1E10F                  shl ecx, 0F
:00426F9C 8B55F4                  mov edx, dword ptr [ebp-0C]
:00426F9F C1EA11                  shr edx, 11
:00426FA2 0BCA                    or ecx, edx
:00426FA4 894DF4                  mov dword ptr [ebp-0C], ecx
:00426FA7 8B45F4                  mov eax, dword ptr [ebp-0C]
:00426FAA 0345F0                  add eax, dword ptr [ebp-10]
:00426FAD 8945F4                  mov dword ptr [ebp-0C], eax
:00426FB0 8B4DFC                  mov ecx, dword ptr [ebp-04]
:00426FB3 F7D1                    not ecx
:00426FB5 8B55F4                  mov edx, dword ptr [ebp-0C]
:00426FB8 0BD1                    or edx, ecx
:00426FBA 8B45F0                  mov eax, dword ptr [ebp-10]
:00426FBD 33C2                    xor eax, edx
:00426FBF 0345E4                  add eax, dword ptr [ebp-1C]
:00426FC2 8B4DF8                  mov ecx, dword ptr [ebp-08]
:00426FC5 8D9401A111084E          lea edx, dword ptr [ecx+eax+4E0811A1] //4E0811A1
:00426FCC 8955F8                  mov dword ptr [ebp-08], edx
:00426FCF 8B45F8                  mov eax, dword ptr [ebp-08]
:00426FD2 C1E015                  shl eax, 15
:00426FD5 8B4DF8                  mov ecx, dword ptr [ebp-08]
:00426FD8 C1E90B                  shr ecx, 0B
:00426FDB 0BC1                    or eax, ecx
:00426FDD 8945F8                  mov dword ptr [ebp-08], eax
:00426FE0 8B55F8                  mov edx, dword ptr [ebp-08]
:00426FE3 0355F4                  add edx, dword ptr [ebp-0C]
:00426FE6 8955F8                  mov dword ptr [ebp-08], edx
:00426FE9 8B45F0                  mov eax, dword ptr [ebp-10]
:00426FEC F7D0                    not eax
:00426FEE 8B4DF8                  mov ecx, dword ptr [ebp-08]
:00426FF1 0BC8                    or ecx, eax
:00426FF3 8B55F4                  mov edx, dword ptr [ebp-0C]
:00426FF6 33D1                    xor edx, ecx
:00426FF8 0355C0                  add edx, dword ptr [ebp-40]
:00426FFB 8B45FC                  mov eax, dword ptr [ebp-04]
:00426FFE 8D8C10827E53F7          lea ecx, dword ptr [eax+edx-08AC817E] //F7537E82
:00427005 894DFC                  mov dword ptr [ebp-04], ecx
:00427008 8B55FC                  mov edx, dword ptr [ebp-04]
:0042700B C1E206                  shl edx, 06
:0042700E 8B45FC                  mov eax, dword ptr [ebp-04]
:00427011 C1E81A                  shr eax, 1A
:00427014 0BD0                    or edx, eax
:00427016 8955FC                  mov dword ptr [ebp-04], edx
:00427019 8B4DFC                  mov ecx, dword ptr [ebp-04]
:0042701C 034DF8                  add ecx, dword ptr [ebp-08]
:0042701F 894DFC                  mov dword ptr [ebp-04], ecx
:00427022 8B55F4                  mov edx, dword ptr [ebp-0C]
:00427025 F7D2                    not edx
:00427027 8B45FC                  mov eax, dword ptr [ebp-04]
:0042702A 0BC2                    or eax, edx
:0042702C 8B4DF8                  mov ecx, dword ptr [ebp-08]
:0042702F 33C8                    xor ecx, eax
:00427031 034DDC                  add ecx, dword ptr [ebp-24]
:00427034 8B55F0                  mov edx, dword ptr [ebp-10]
:00427037 8D840A35F23ABD          lea eax, dword ptr [edx+ecx-42C50DCB] //BD3AF235
:0042703E 8945F0                  mov dword ptr [ebp-10], eax
:00427041 8B4DF0                  mov ecx, dword ptr [ebp-10]
:00427044 C1E10A                  shl ecx, 0A
:00427047 8B55F0                  mov edx, dword ptr [ebp-10]
:0042704A C1EA16                  shr edx, 16
:0042704D 0BCA                    or ecx, edx
:0042704F 894DF0                  mov dword ptr [ebp-10], ecx
:00427052 8B45F0                  mov eax, dword ptr [ebp-10]
:00427055 0345FC                  add eax, dword ptr [ebp-04]
:00427058 8945F0                  mov dword ptr [ebp-10], eax
:0042705B 8B4DF8                  mov ecx, dword ptr [ebp-08]
:0042705E F7D1                    not ecx
:00427060 8B55F0                  mov edx, dword ptr [ebp-10]
:00427063 0BD1                    or edx, ecx
:00427065 8B45FC                  mov eax, dword ptr [ebp-04]
:00427068 33C2                    xor eax, edx
:0042706A 0345B8                  add eax, dword ptr [ebp-48]
:0042706D 8B4DF4                  mov ecx, dword ptr [ebp-0C]
:00427070 8D9401BBD2D72A          lea edx, dword ptr [ecx+eax+2AD7D2BB] //2AD7D2BB
:00427077 8955F4                  mov dword ptr [ebp-0C], edx
:0042707A 8B45F4                  mov eax, dword ptr [ebp-0C]
:0042707D C1E00F                  shl eax, 0F
:00427080 8B4DF4                  mov ecx, dword ptr [ebp-0C]
:00427083 C1E911                  shr ecx, 11
:00427086 0BC1                    or eax, ecx
:00427088 8945F4                  mov dword ptr [ebp-0C], eax
:0042708B 8B55F4                  mov edx, dword ptr [ebp-0C]
:0042708E 0355F0                  add edx, dword ptr [ebp-10]
:00427091 8955F4                  mov dword ptr [ebp-0C], edx
:00427094 8B45FC                  mov eax, dword ptr [ebp-04]
:00427097 F7D0                    not eax
:00427099 8B4DF4                  mov ecx, dword ptr [ebp-0C]
:0042709C 0BC8                    or ecx, eax
:0042709E 8B55F0                  mov edx, dword ptr [ebp-10]
:004270A1 33D1                    xor edx, ecx
:004270A3 0355D4                  add edx, dword ptr [ebp-2C]
:004270A6 8B45F8                  mov eax, dword ptr [ebp-08]
:004270A9 8D8C1091D386EB          lea ecx, dword ptr [eax+edx-14792C6F] //EB86D391
:004270B0 894DF8                  mov dword ptr [ebp-08], ecx
:004270B3 8B55F8                  mov edx, dword ptr [ebp-08]
:004270B6 C1E215                  shl edx, 15
:004270B9 8B45F8                  mov eax, dword ptr [ebp-08]
:004270BC C1E80B                  shr eax, 0B
:004270BF 0BD0                    or edx, eax
:004270C1 8955F8                  mov dword ptr [ebp-08], edx
:004270C4 8B4DF8                  mov ecx, dword ptr [ebp-08]
:004270C7 034DF4                  add ecx, dword ptr [ebp-0C]
:004270CA 894DF8                  mov dword ptr [ebp-08], ecx    //全部结束

:004270CD 8B55AC                  mov edx, dword ptr [ebp-54]
:004270D0 8B02                    mov eax, dword ptr [edx]
:004270D2 0345FC                  add eax, dword ptr [ebp-04]    //inc(State[0], a);
:004270D5 8B4DAC                  mov ecx, dword ptr [ebp-54]
:004270D8 8901                    mov dword ptr [ecx], eax
:004270DA 8B55AC                  mov edx, dword ptr [ebp-54]
:004270DD 8B4204                  mov eax, dword ptr [edx+04]
:004270E0 0345F8                  add eax, dword ptr [ebp-08]    //inc(State[1], b);
:004270E3 8B4DAC                  mov ecx, dword ptr [ebp-54]
:004270E6 894104                  mov dword ptr [ecx+04], eax
:004270E9 8B55AC                  mov edx, dword ptr [ebp-54]
:004270EC 8B4208                  mov eax, dword ptr [edx+08]
:004270EF 0345F4                  add eax, dword ptr [ebp-0C]   //inc(State[2], c);
:004270F2 8B4DAC                  mov ecx, dword ptr [ebp-54]
:004270F5 894108                  mov dword ptr [ecx+08], eax
:004270F8 8B55AC                  mov edx, dword ptr [ebp-54]
:004270FB 8B420C                  mov eax, dword ptr [edx+0C]
:004270FE 0345F0                  add eax, dword ptr [ebp-10]   //inc(State[3], d);
:00427101 8B4DAC                  mov ecx, dword ptr [ebp-54]
:00427104 89410C                  mov dword ptr [ecx+0C], eax

:00427107 B910000000              mov ecx, 00000010
:0042710C 33C0                    xor eax, eax
:0042710E 8D7DB0                  lea edi, dword ptr [ebp-50]
:00427111 F3                      repz
:00427112 AB                      stosd
:00427113 5F                      pop edi
:00427114 8BE5                    mov esp, ebp
:00427116 5D                      pop ebp
:00427117 C3                      ret
2006-6-12 14:28
0
游客
登录 | 注册 方可回帖
返回
//