user3000 发表于 2012-4-12 16:35:35

回复 13# haijie1223

睡醒没, 等着看表演呢

haijie1223 发表于 2012-4-12 17:08:40

回复 16# user3000


    你不提醒 我还差点忘了这茬了。晚上看看有时间的话搞下,现在上班时间。

tryhi 发表于 2012-4-12 18:12:00


不是很明白在玩什么,凑个热闹
{:face (125):}

Qokelate 发表于 2012-4-12 18:45:26

回复 18# tryhi


    很明显不是真实地址,你改的是显示的地址(显存?)   这两个数字出自同一个变量的

pp648852 发表于 2012-4-12 19:37:19

好深奥,看不懂

tryhi 发表于 2012-4-12 21:15:12

回复tryhi


    很明显不是真实地址,你改的是显示的地址(显存?)   这两个数字出自同一个变量 ...
Qokelate 发表于 2012-4-12 18:45 http://www.autoitx.com/images/common/back.gif

第三个不就是你那个变量吗?前面两个是方框里面的字符,你生成值之后放到方框里面你这个变量怎么锁不是一样没作用?

haijie1223 发表于 2012-4-12 21:28:48

回复 21# tryhi


    大海兄,如果是实际内存地址,应该在任何电脑上都是唯一的。我在我的电脑上测试你的那个地址好像不对。
我中午测试那个也是,可能咱们找打的都是指针,不是真正的地址。
搞不了,让lanfengc来看看吧

Qokelate 发表于 2012-4-12 21:29:32

回复 21# tryhi


    如果第三个值是变量的值,则无论如何点按钮,显示的数都是不变的,因为那数字就是来自变量,你锁定有效果吗?

Qokelate 发表于 2012-4-13 11:01:43

经多方测试证明(XP/srv2008/2003R2)    地址只有一个!!

魔导 发表于 2012-4-13 11:15:45

老板,这东西建议请出   LANFENGC前两天还建他上线的说

Qokelate 发表于 2012-4-13 12:38:31

回复 25# 魔导


    也不知他有没这闲功夫

lanfengc 发表于 2012-4-13 19:01:53

你真是挺蛋疼的。 还得让人脱壳看看再说,不一定搞的定。

ZombieZhao 发表于 2012-4-14 15:54:45

我还是比较喜欢作弊引擎,还有教程的

lanfengc 发表于 2012-4-14 16:40:50

弄了几个小时,CE没戏,OD加载后,可以调试,跟踪了一会,累的不行, 不想弄了。 发来给大家看看, 谁有兴趣自己搞。 另外问楼主求真想……{:face (319):}

771A8EBF >8BFF            MOV EDI,EDI                                       ; 申请一个4字节的空间
771A8EC1    55            PUSH EBP                                          ; 保存EBP
771A8EC2    8BEC            MOV EBP,ESP                                       ; ESP写入EBP
771A8EC4    83EC 74         SUB ESP,74                                          ; ESP-74
771A8EC7    A1 E0232177   MOV EAX,DWORD PTR DS:                     ; 4A64写入EAX
771A8ECC    8B4D 10         MOV ECX,DWORD PTR SS:                     ; 将EBP+10的数据写入ECX   1
771A8ECF    8365 B4 00      AND DWORD PTR SS:,0                         ; 置零
771A8ED3    53            PUSH EBX                                          ; 保存EBX
771A8ED4    8B1D 2C141877   MOV EBX,DWORD PTR DS:[<&USER32.GetWindowLongW>]   ; 将获取窗口属性的函数入口地址写入EBX
771A8EDA    56            PUSH ESI                                          ; 控件句柄
771A8EDB    57            PUSH EDI                                          ; 要获取的属性
771A8EDC    8B7D 14         MOV EDI,DWORD PTR SS:                     ; EBP+14写入EDI 40026
771A8EDF    8945 FC         MOV DWORD PTR SS:,EAX                        ; EAX 的4A64写入EBP-4
771A8EE2    8B45 08         MOV EAX,DWORD PTR SS:                        ; 9040E按钮的句柄
771A8EE5    6A 00         PUSH 0
771A8EE7    50            PUSH EAX
771A8EE8    8945 B0         MOV DWORD PTR SS:,EAX                     ; 按钮句柄
771A8EEB    894D B8         MOV DWORD PTR SS:,ECX                     ; 1
771A8EEE    897D AC         MOV DWORD PTR SS:,EDI                     ; 40026
771A8EF1    FFD3            CALL EBX                                          ; GetWindowLongW
771A8EF3    8B4D 0C         MOV ECX,DWORD PTR SS:                        ; 消息ID 左键按下201
771A8EF6    8BF0            MOV ESI,EAX                                       ; 903480
771A8EF8    85F6            TEST ESI,ESI                                        ; 检查ESI是否为空
771A8EFA    BA 81000000   MOV EDX,81                                          ; 81
771A8EFF    75 08         JNZ SHORT COMCTL32.771A8F09
771A8F01    3BCA            CMP ECX,EDX
771A8F03    0F85 540A0000   JNZ COMCTL32.771A995D
771A8F09    B8 F5000000   MOV EAX,0F5                                       ; 0f5
771A8F0E    3BC8            CMP ECX,EAX                                       ; 比较消息ID和F5
771A8F10    0F87 8B060000   JA COMCTL32.771A95A1                              ; 高于转移
771A8F16    0F84 14060000   JE COMCTL32.771A9530
771A8F1C    83F9 3D         CMP ECX,3D                                          ; 比较消息ID和3D 注意,第二次发送的BM_SETSTATE也参与
771A8F1F    0F87 41020000   JA COMCTL32.771A9166
771A8F25    0F84 21020000   JE COMCTL32.771A914C
771A8F2B    83F9 0C         CMP ECX,0C
771A8F2E    0F87 8C010000   JA COMCTL32.771A90C0
771A8F34    0F84 03010000   JE COMCTL32.771A903D
771A8F3A    8BC1            MOV EAX,ECX
771A8F3C    48            DEC EAX
771A8F3D    0F84 D6000000   JE COMCTL32.771A9019
771A8F43    83E8 06         SUB EAX,6
771A8F46    74 54         JE SHORT COMCTL32.771A8F9C
771A8F48    48            DEC EAX
771A8F49    74 11         JE SHORT COMCTL32.771A8F5C
771A8F4B    48            DEC EAX
771A8F4C    48            DEC EAX
771A8F4D    0F85 F3090000   JNZ COMCTL32.771A9946
771A8F53    8365 B4 00      AND DWORD PTR SS:,0
771A8F57    E9 59010000   JMP COMCTL32.771A90B5
771A8F5C    F646 24 40      TEST BYTE PTR DS:,40
771A8F60    74 11         JE SHORT COMCTL32.771A8F73
771A8F62    6A 00         PUSH 0
771A8F64    6A 00         PUSH 0
771A8F66    68 F3000000   PUSH 0F3
771A8F6B    FF36            PUSH DWORD PTR DS:
771A8F6D    FF15 FC131877   CALL DWORD PTR DS:[<&USER32.SendMessageW>]          ; USER32.SendMessageW
771A8F73    6A 01         PUSH 1
771A8F75    56            PUSH ESI
771A8F76    E8 EFE3FFFF   CALL COMCTL32.771A736A
771A8F7B    8B46 60         MOV EAX,DWORD PTR DS:
771A8F7E    8366 24 F7      AND DWORD PTR DS:,FFFFFFF7
771A8F82    F640 0D 40      TEST BYTE PTR DS:,40
771A8F86    74 08         JE SHORT COMCTL32.771A8F90
771A8F88    6A 07         PUSH 7
771A8F8A    56            PUSH ESI
771A8F8B    E8 92E3FFFF   CALL COMCTL32.771A7322
771A8F90    6A 00         PUSH 0
771A8F92    6A 00         PUSH 0
771A8F94    FF75 B0         PUSH DWORD PTR SS:
771A8F97    E9 58090000   JMP COMCTL32.771A98F4
771A8F9C    834E 24 08      OR DWORD PTR DS:,8
771A8FA0    8B46 60         MOV EAX,DWORD PTR DS:
771A8FA3    8B40 0C         MOV EAX,DWORD PTR DS:
771A8FA6    83E0 0F         AND EAX,0F
771A8FA9    3C 0B         CMP AL,0B
771A8FAB    75 23         JNZ SHORT COMCTL32.771A8FD0
771A8FAD    33DB            XOR EBX,EBX
771A8FAF    53            PUSH EBX
771A8FB0    56            PUSH ESI
771A8FB1    E8 ACE0FFFF   CALL COMCTL32.771A7062
771A8FB6    8BF8            MOV EDI,EAX
771A8FB8    3BFB            CMP EDI,EBX
771A8FBA    74 20         JE SHORT COMCTL32.771A8FDC
771A8FBC    53            PUSH EBX
771A8FBD    6A 02         PUSH 2
771A8FBF    57            PUSH EDI
771A8FC0    56            PUSH ESI
771A8FC1    E8 B4EAFFFF   CALL COMCTL32.771A7A7A
771A8FC6    53            PUSH EBX
771A8FC7    57            PUSH EDI
771A8FC8    56            PUSH ESI
771A8FC9    E8 D7E0FFFF   CALL COMCTL32.771A70A5
771A8FCE    EB 0C         JMP SHORT COMCTL32.771A8FDC
771A8FD0    6A 00         PUSH 0
771A8FD2    6A 00         PUSH 0
771A8FD4    FF36            PUSH DWORD PTR DS:
771A8FD6    FF15 9C141877   CALL DWORD PTR DS:[<&USER32.InvalidateRect>]      ; USER32.InvalidateRect
771A8FDC    8B46 60         MOV EAX,DWORD PTR DS:
771A8FDF    F640 0D 40      TEST BYTE PTR DS:,40
771A8FE3    74 08         JE SHORT COMCTL32.771A8FED
771A8FE5    6A 06         PUSH 6
771A8FE7    56            PUSH ESI
771A8FE8    E8 35E3FFFF   CALL COMCTL32.771A7322
771A8FED    8B4E 24         MOV ECX,DWORD PTR DS:
771A8FF0    F6C1 10         TEST CL,10
771A8FF3    75 1C         JNZ SHORT COMCTL32.771A9011
771A8FF5    8B46 60         MOV EAX,DWORD PTR DS:
771A8FF8    8B40 0C         MOV EAX,DWORD PTR DS:
771A8FFB    83E0 0F         AND EAX,0F
771A8FFE    83F8 04         CMP EAX,4
771A9001    74 05         JE SHORT COMCTL32.771A9008
771A9003    83F8 09         CMP EAX,9
771A9006    75 09         JNZ SHORT COMCTL32.771A9011
771A9008    F6C1 83         TEST CL,83
771A900B    0F84 68060000   JE COMCTL32.771A9679
771A9011    8B45 B4         MOV EAX,DWORD PTR SS:
771A9014    E9 A7090000   JMP COMCTL32.771A99C0
771A9019    56            PUSH ESI
771A901A    E8 B3DDFFFF   CALL COMCTL32.771A6DD2
771A901F    57            PUSH EDI
771A9020    FF75 B0         PUSH DWORD PTR SS:
771A9023    8946 5C         MOV DWORD PTR DS:,EAX
771A9026    56            PUSH ESI
771A9027    E8 50E1FDFF   CALL COMCTL32.7718717C
771A902C    6A 00         PUSH 0
771A902E    6A 03         PUSH 3
771A9030    68 27010000   PUSH 127
771A9035    FF75 B0         PUSH DWORD PTR SS:
771A9038    E9 59050000   JMP COMCTL32.771A9596
771A903D    8B46 60         MOV EAX,DWORD PTR DS:
771A9040    8B40 0C         MOV EAX,DWORD PTR DS:
771A9043    83E0 0F         AND EAX,0F
771A9046    3C 07         CMP AL,7
771A9048    75 47         JNZ SHORT COMCTL32.771A9091
771A904A    8D45 AC         LEA EAX,DWORD PTR SS:
771A904D    50            PUSH EAX
771A904E    56            PUSH ESI
771A904F    E8 0EE0FFFF   CALL COMCTL32.771A7062
771A9054    8BD8            MOV EBX,EAX
771A9056    85DB            TEST EBX,EBX
771A9058    74 37         JE SHORT COMCTL32.771A9091
771A905A    6A 00         PUSH 0
771A905C    6A 03         PUSH 3
771A905E    8D45 9C         LEA EAX,DWORD PTR SS:
771A9061    50            PUSH EAX
771A9062    53            PUSH EBX
771A9063    56            PUSH ESI
771A9064    E8 C7E6FFFF   CALL COMCTL32.771A7730
771A9069    6A 01         PUSH 1
771A906B    8D45 9C         LEA EAX,DWORD PTR SS:
771A906E    50            PUSH EAX
771A906F    FF75 B0         PUSH DWORD PTR SS:
771A9072    FF15 9C141877   CALL DWORD PTR DS:[<&USER32.InvalidateRect>]      ; USER32.InvalidateRect
771A9078    FF75 AC         PUSH DWORD PTR SS:
771A907B    8D45 9C         LEA EAX,DWORD PTR SS:
771A907E    50            PUSH EAX
771A907F    53            PUSH EBX
771A9080    FF15 3C141877   CALL DWORD PTR DS:[<&USER32.FillRect>]            ; USER32.FillRect
771A9086    8D45 AC         LEA EAX,DWORD PTR SS:
771A9089    50            PUSH EAX
771A908A    53            PUSH EBX
771A908B    56            PUSH ESI
771A908C    E8 14E0FFFF   CALL COMCTL32.771A70A5
771A9091    57            PUSH EDI
771A9092    FF75 B8         PUSH DWORD PTR SS:
771A9095    6A 0C         PUSH 0C
771A9097    FF75 B0         PUSH DWORD PTR SS:
771A909A    FF15 38141877   CALL DWORD PTR DS:[<&USER32.DefWindowProcW>]      ; USER32.DefWindowProcW
771A90A0    6A 00         PUSH 0
771A90A2    6A 00         PUSH 0
771A90A4    FF75 B0         PUSH DWORD PTR SS:
771A90A7    8945 B4         MOV DWORD PTR SS:,EAX
771A90AA    68 0C800000   PUSH 800C
771A90AF    FF15 18151877   CALL DWORD PTR DS:[<&USER32.NotifyWinEvent>]      ; USER32.NotifyWinEvent
771A90B5    56            PUSH ESI
771A90B6    E8 D0FDFFFF   CALL COMCTL32.771A8E8B
771A90BB^ E9 51FFFFFF   JMP COMCTL32.771A9011
771A90C0    8BC1            MOV EAX,ECX
771A90C2    83E8 0F         SUB EAX,0F
771A90C5    74 40         JE SHORT COMCTL32.771A9107
771A90C7    83E8 05         SUB EAX,5
771A90CA    74 2D         JE SHORT COMCTL32.771A90F9
771A90CC    83E8 1C         SUB EAX,1C
771A90CF    74 12         JE SHORT COMCTL32.771A90E3
771A90D1    48            DEC EAX
771A90D2    0F85 6E080000   JNZ COMCTL32.771A9946
771A90D8    8B46 28         MOV EAX,DWORD PTR DS:
771A90DB    8945 B4         MOV DWORD PTR SS:,EAX
771A90DE^ E9 2EFFFFFF   JMP COMCTL32.771A9011
771A90E3    33C0            XOR EAX,EAX
771A90E5    85FF            TEST EDI,EDI
771A90E7    0F95C0          SETNE AL
771A90EA    50            PUSH EAX
771A90EB    FF75 B8         PUSH DWORD PTR SS:
771A90EE    56            PUSH ESI
771A90EF    E8 73DEFFFF   CALL COMCTL32.771A6F67
771A90F4^ E9 18FFFFFF   JMP COMCTL32.771A9011
771A90F9    FF75 B8         PUSH DWORD PTR SS:
771A90FC    56            PUSH ESI
771A90FD    E8 FAE3FFFF   CALL COMCTL32.771A74FC
771A9102    E9 B0070000   JMP COMCTL32.771A98B7
771A9107    8B7D B8         MOV EDI,DWORD PTR SS:
771A910A    85FF            TEST EDI,EDI
771A910C    75 0F         JNZ SHORT COMCTL32.771A911D
771A910E    8D45 BC         LEA EAX,DWORD PTR SS:
771A9111    50            PUSH EAX
771A9112    FF75 B0         PUSH DWORD PTR SS:
771A9115    FF15 E8141877   CALL DWORD PTR DS:[<&USER32.BeginPaint>]            ; USER32.BeginPaint
771A911B    8BF8            MOV EDI,EAX
771A911D    FF36            PUSH DWORD PTR DS:
771A911F    FF15 70141877   CALL DWORD PTR DS:[<&USER32.IsWindowVisible>]       ; USER32.IsWindowVisible
771A9125    85C0            TEST EAX,EAX
771A9127    74 07         JE SHORT COMCTL32.771A9130
771A9129    57            PUSH EDI
771A912A    56            PUSH ESI
771A912B    E8 F3F9FFFF   CALL COMCTL32.771A8B23
771A9130    837D B8 00      CMP DWORD PTR SS:,0
771A9134^ 0F85 D7FEFFFF   JNZ COMCTL32.771A9011
771A913A    8D45 BC         LEA EAX,DWORD PTR SS:
771A913D    50            PUSH EAX
771A913E    FF75 B0         PUSH DWORD PTR SS:
771A9141    FF15 E4141877   CALL DWORD PTR DS:[<&USER32.EndPaint>]            ; USER32.EndPaint
771A9147^ E9 C5FEFFFF   JMP COMCTL32.771A9011
771A914C    83FF F4         CMP EDI,-0C
771A914F    75 0C         JNZ SHORT COMCTL32.771A915D
771A9151    C745 B4 0200010>MOV DWORD PTR SS:,10002                     ; UNICODE "830B7BD-F7A3-4c4d-989B-C004DE465EDE=204:904430"
771A9158^ E9 B4FEFFFF   JMP COMCTL32.771A9011
771A915D    8365 B4 00      AND DWORD PTR SS:,0
771A9161^ E9 ABFEFFFF   JMP COMCTL32.771A9011
771A9166    B8 F0000000   MOV EAX,0F0                                       ; EAX写入F0
771A916B    3BC8            CMP ECX,EAX                                       ; 消息ID和F0对比
771A916D    0F87 7A020000   JA COMCTL32.771A93ED                              ; 大于跳转
771A9173    0F84 66020000   JE COMCTL32.771A93DF
771A9179    8BC1            MOV EAX,ECX
771A917B    2BC2            SUB EAX,EDX
771A917D    0F84 9A010000   JE COMCTL32.771A931D
771A9183    48            DEC EAX
771A9184    0F84 64010000   JE COMCTL32.771A92EE
771A918A    6A 02         PUSH 2
771A918C    5A            POP EDX
771A918D    2BC2            SUB EAX,EDX
771A918F    0F84 AE000000   JE COMCTL32.771A9243
771A9195    83E8 03         SUB EAX,3
771A9198    0F85 A8070000   JNZ COMCTL32.771A9946
771A919E    C745 B4 0020000>MOV DWORD PTR SS:,2000
771A91A5    8B46 60         MOV EAX,DWORD PTR DS:
771A91A8    8B40 0C         MOV EAX,DWORD PTR DS:
771A91AB    83E0 0F         AND EAX,0F
771A91AE    83F8 04         CMP EAX,4
771A91B1    77 5C         JA SHORT COMCTL32.771A920F
771A91B3    74 76         JE SHORT COMCTL32.771A922B
771A91B5    85C0            TEST EAX,EAX
771A91B7    74 66         JE SHORT COMCTL32.771A921F
771A91B9    83F8 01         CMP EAX,1
771A91BC    74 45         JE SHORT COMCTL32.771A9203
771A91BE^ 0F86 4DFEFFFF   JBE COMCTL32.771A9011
771A91C4    83F8 03         CMP EAX,3
771A91C7^ 0F87 44FEFFFF   JA COMCTL32.771A9011
771A91CD    85FF            TEST EDI,EDI
771A91CF^ 0F84 3CFEFFFF   JE COMCTL32.771A9011
771A91D5    817F 04 0201000>CMP DWORD PTR DS:,102
771A91DC^ 0F85 2FFEFFFF   JNZ COMCTL32.771A9011
771A91E2    8B45 B8         MOV EAX,DWORD PTR SS:
771A91E5    83E8 2B         SUB EAX,2B
771A91E8    74 0D         JE SHORT COMCTL32.771A91F7
771A91EA    2BC2            SUB EAX,EDX
771A91EC    74 09         JE SHORT COMCTL32.771A91F7
771A91EE    83E8 10         SUB EAX,10
771A91F1^ 0F85 1AFEFFFF   JNZ COMCTL32.771A9011
771A91F7    C745 B4 8020000>MOV DWORD PTR SS:,2080
771A91FE^ E9 0EFEFFFF   JMP COMCTL32.771A9011
771A9203    C745 B4 1020000>MOV DWORD PTR SS:,2010
771A920A^ E9 02FEFFFF   JMP COMCTL32.771A9011
771A920F    83E8 07         SUB EAX,7
771A9212    74 23         JE SHORT COMCTL32.771A9237
771A9214    2BC2            SUB EAX,EDX
771A9216    74 13         JE SHORT COMCTL32.771A922B
771A9218    48            DEC EAX
771A9219^ 0F85 F2FDFFFF   JNZ COMCTL32.771A9011
771A921F    C745 B4 2020000>MOV DWORD PTR SS:,2020
771A9226^ E9 E6FDFFFF   JMP COMCTL32.771A9011
771A922B    C745 B4 4020000>MOV DWORD PTR SS:,2040
771A9232^ E9 DAFDFFFF   JMP COMCTL32.771A9011
771A9237    C745 B4 0001000>MOV DWORD PTR SS:,100
771A923E^ E9 CEFDFFFF   JMP COMCTL32.771A9011
771A9243    8B46 60         MOV EAX,DWORD PTR DS:
771A9246    8B40 0C         MOV EAX,DWORD PTR DS:
771A9249    83E0 0F         AND EAX,0F
771A924C    3C 07         CMP AL,7
771A924E    75 09         JNZ SHORT COMCTL32.771A9259
771A9250    834D B4 FF      OR DWORD PTR SS:,FFFFFFFF
771A9254^ E9 B8FDFFFF   JMP COMCTL32.771A9011
771A9259    57            PUSH EDI
771A925A    FF75 B8         PUSH DWORD PTR SS:
771A925D    68 84000000   PUSH 84
771A9262    FF75 B0         PUSH DWORD PTR SS:
771A9265    FF15 38141877   CALL DWORD PTR DS:[<&USER32.DefWindowProcW>]      ; USER32.DefWindowProcW
771A926B    83F8 01         CMP EAX,1
771A926E    8945 B4         MOV DWORD PTR SS:,EAX
771A9271^ 0F85 9AFDFFFF   JNZ COMCTL32.771A9011
771A9277    33DB            XOR EBX,EBX
771A9279    395E 5C         CMP DWORD PTR DS:,EBX
771A927C^ 0F84 8FFDFFFF   JE COMCTL32.771A9011
771A9282    395E 2C         CMP DWORD PTR DS:,EBX
771A9285^ 0F85 86FDFFFF   JNZ COMCTL32.771A9011
771A928B    8D45 AC         LEA EAX,DWORD PTR SS:
771A928E    50            PUSH EAX
771A928F    8D45 B0         LEA EAX,DWORD PTR SS:
771A9292    50            PUSH EAX
771A9293    56            PUSH ESI
771A9294    895D B0         MOV DWORD PTR SS:,EBX
771A9297    895D AC         MOV DWORD PTR SS:,EBX
771A929A    E8 B3E2FFFF   CALL COMCTL32.771A7552
771A929F    85C0            TEST EAX,EAX
771A92A1    7C 0C         JL SHORT COMCTL32.771A92AF
771A92A3    8D45 9C         LEA EAX,DWORD PTR SS:
771A92A6    50            PUSH EAX
771A92A7    FF36            PUSH DWORD PTR DS:
771A92A9    FF15 C0131877   CALL DWORD PTR DS:[<&USER32.GetWindowRect>]         ; USER32.GetWindowRect
771A92AF    0FBFC7          MOVSX EAX,DI
771A92B2    C1EF 10         SHR EDI,10
771A92B5    0FBFCF          MOVSX ECX,DI
771A92B8    8D55 BA         LEA EDX,DWORD PTR SS:
771A92BB    52            PUSH EDX
771A92BC    51            PUSH ECX
771A92BD    50            PUSH EAX
771A92BE    53            PUSH EBX
771A92BF    8D45 9C         LEA EAX,DWORD PTR SS:
771A92C2    50            PUSH EAX
771A92C3    53            PUSH EBX
771A92C4    FF75 AC         PUSH DWORD PTR SS:
771A92C7    FF75 B0         PUSH DWORD PTR SS:
771A92CA    53            PUSH EBX
771A92CB    FF76 5C         PUSH DWORD PTR DS:
771A92CE    FF15 CC242177   CALL DWORD PTR DS:                        ; COMCTL32.7720A39F
771A92D4    85C0            TEST EAX,EAX
771A92D6^ 0F8C 35FDFFFF   JL COMCTL32.771A9011
771A92DC    0FB745 BA       MOVZX EAX,WORD PTR SS:
771A92E0    83F8 FF         CMP EAX,-1
771A92E3^ 0F85 28FDFFFF   JNZ COMCTL32.771A9011
771A92E9^ E9 62FFFFFF   JMP COMCTL32.771A9250
771A92EE    8B46 5C         MOV EAX,DWORD PTR DS:
771A92F1    85C0            TEST EAX,EAX
771A92F3    74 07         JE SHORT COMCTL32.771A92FC
771A92F5    50            PUSH EAX
771A92F6    FF15 94242177   CALL DWORD PTR DS:                        ; COMCTL32.7720A36D
771A92FC    56            PUSH ESI
771A92FD    33F6            XOR ESI,ESI
771A92FF    56            PUSH ESI
771A9300    FF15 B0121877   CALL DWORD PTR DS:[<&KERNEL32.GetProcessHeap>]      ; kernel32.GetProcessHeap
771A9306    50            PUSH EAX
771A9307    FF15 B4121877   CALL DWORD PTR DS:[<&KERNEL32.HeapFree>]            ; ntdll.RtlFreeHeap
771A930D    56            PUSH ESI
771A930E    56            PUSH ESI
771A930F    FF75 B0         PUSH DWORD PTR SS:
771A9312    FF15 28141877   CALL DWORD PTR DS:[<&USER32.SetWindowLongW>]      ; USER32.SetWindowLongW
771A9318^ E9 F4FCFFFF   JMP COMCTL32.771A9011
771A931D    6A 64         PUSH 64
771A931F    6A 08         PUSH 8
771A9321    FF15 B0121877   CALL DWORD PTR DS:[<&KERNEL32.GetProcessHeap>]      ; kernel32.GetProcessHeap
771A9327    50            PUSH EAX
771A9328    FF15 AC121877   CALL DWORD PTR DS:[<&KERNEL32.HeapAlloc>]         ; ntdll.RtlAllocateHeap
771A932E    8BF8            MOV EDI,EAX
771A9330    85FF            TEST EDI,EDI
771A9332^ 0F84 25FEFFFF   JE COMCTL32.771A915D
771A9338    8B75 B0         MOV ESI,DWORD PTR SS:
771A933B    57            PUSH EDI
771A933C    6A 00         PUSH 0
771A933E    56            PUSH ESI
771A933F    FF15 28141877   CALL DWORD PTR DS:[<&USER32.SetWindowLongW>]      ; USER32.SetWindowLongW
771A9345    6A FF         PUSH -1
771A9347    56            PUSH ESI
771A9348    8937            MOV DWORD PTR DS:,ESI
771A934A    FFD3            CALL EBX
771A934C    8B35 7C151877   MOV ESI,DWORD PTR DS:[<&USER32.GetSystemMetrics>]   ; USER32.GetSystemMetrics
771A9352    6A 2E         PUSH 2E
771A9354    8947 60         MOV DWORD PTR DS:,EAX
771A9357    FFD6            CALL ESI
771A9359    99            CDQ
771A935A    2BC2            SUB EAX,EDX
771A935C    D1F8            SAR EAX,1
771A935E    50            PUSH EAX
771A935F    6A 2D         PUSH 2D
771A9361    FFD6            CALL ESI
771A9363    99            CDQ
771A9364    2BC2            SUB EAX,EDX
771A9366    D1F8            SAR EAX,1
771A9368    50            PUSH EAX
771A9369    6A 2E         PUSH 2E
771A936B    FFD6            CALL ESI
771A936D    99            CDQ
771A936E    2BC2            SUB EAX,EDX
771A9370    D1F8            SAR EAX,1
771A9372    50            PUSH EAX
771A9373    6A 2D         PUSH 2D
771A9375    FFD6            CALL ESI
771A9377    99            CDQ
771A9378    2BC2            SUB EAX,EDX
771A937A    D1F8            SAR EAX,1
771A937C    50            PUSH EAX
771A937D    8D47 34         LEA EAX,DWORD PTR DS:
771A9380    50            PUSH EAX
771A9381    FF15 F4131877   CALL DWORD PTR DS:[<&USER32.SetRect>]               ; USER32.SetRect
771A9387    8B47 60         MOV EAX,DWORD PTR DS:
771A938A    8B48 04         MOV ECX,DWORD PTR DS:
771A938D    F6C5 01         TEST CH,1
771A9390    74 2C         JE SHORT COMCTL32.771A93BE
771A9392    C1E9 09         SHR ECX,9
771A9395    83E1 01         AND ECX,1
771A9398    75 0B         JNZ SHORT COMCTL32.771A93A5
771A939A    8A50 0C         MOV DL,BYTE PTR DS:
771A939D    80E2 DF         AND DL,0DF
771A93A0    80FA 08         CMP DL,8
771A93A3    74 0D         JE SHORT COMCTL32.771A93B2
771A93A5    85C9            TEST ECX,ECX
771A93A7    74 15         JE SHORT COMCTL32.771A93BE
771A93A9    8B40 0C         MOV EAX,DWORD PTR DS:
771A93AC    24 0F         AND AL,0F
771A93AE    3C 08         CMP AL,8
771A93B0    75 0C         JNZ SHORT COMCTL32.771A93BE
771A93B2    6A 00         PUSH 0
771A93B4    6A 0F         PUSH 0F
771A93B6    FF75 B0         PUSH DWORD PTR SS:
771A93B9    E8 EACF0200   CALL COMCTL32.771D63A8
771A93BE    8B47 60         MOV EAX,DWORD PTR DS:
771A93C1    F640 09 10      TEST BYTE PTR DS:,10
771A93C5    0F84 92050000   JE COMCTL32.771A995D
771A93CB    B8 20020000   MOV EAX,220
771A93D0    50            PUSH EAX
771A93D1    50            PUSH EAX
771A93D2    FF75 B0         PUSH DWORD PTR SS:
771A93D5    E8 CECF0200   CALL COMCTL32.771D63A8
771A93DA    E9 7E050000   JMP COMCTL32.771A995D
771A93DF    8B76 24         MOV ESI,DWORD PTR DS:
771A93E2    83E6 03         AND ESI,3
771A93E5    8975 B4         MOV DWORD PTR SS:,ESI
771A93E8^ E9 24FCFFFF   JMP COMCTL32.771A9011
771A93ED    8BC1            MOV EAX,ECX                                       ; ECX存入EAX
771A93EF    2D F1000000   SUB EAX,0F1                                       ; EAX-F1=2
771A93F4    0F84 A1000000   JE COMCTL32.771A949B                              ; 为0挑走
771A93FA    48            DEC EAX                                             ; 自减 等同于EAX--
771A93FB    0F84 92000000   JE COMCTL32.771A9493                              ; 为0跳走
771A9401    48            DEC EAX                                             ; 自减
771A9402    74 3C         JE SHORT COMCTL32.771A9440                        ; 为0挑走
771A9404    48            DEC EAX
771A9405    0F85 3B050000   JNZ COMCTL32.771A9946
771A940B    FF75 B8         PUSH DWORD PTR SS:
771A940E    6A 0F         PUSH 0F
771A9410    FF75 B0         PUSH DWORD PTR SS:
771A9413    E8 90CF0200   CALL COMCTL32.771D63A8
771A9418    85FF            TEST EDI,EDI
771A941A    74 0D         JE SHORT COMCTL32.771A9429
771A941C    6A 01         PUSH 1
771A941E    6A 00         PUSH 0
771A9420    FF75 B0         PUSH DWORD PTR SS:
771A9423    FF15 9C141877   CALL DWORD PTR DS:[<&USER32.InvalidateRect>]      ; USER32.InvalidateRect
771A9429    6A 00         PUSH 0
771A942B    6A FC         PUSH -4
771A942D    FF75 B0         PUSH DWORD PTR SS:
771A9430    68 0A800000   PUSH 800A
771A9435    FF15 18151877   CALL DWORD PTR DS:[<&USER32.NotifyWinEvent>]      ; NotifyWinEvent 函数
771A943B^ E9 D1FBFFFF   JMP COMCTL32.771A9011
771A9440    8B46 24         MOV EAX,DWORD PTR DS:                     ; 268
771A9443    8BF8            MOV EDI,EAX                                       ; 268
771A9445    83E7 04         AND EDI,4                                           ; 位与100置零
771A9448    837D B8 00      CMP DWORD PTR SS:,0                         ; 1和0 对比
771A944C    74 05         JE SHORT COMCTL32.771A9453
771A944E    83C8 04         OR EAX,4                                          ; EAX+4
771A9451    EB 03         JMP SHORT COMCTL32.771A9456
771A9453    83E0 FB         AND EAX,FFFFFFFB
771A9456    8946 24         MOV DWORD PTR DS:,EAX                     ; 26C回写入刚才读出的地址 应该是变量赋值了
771A9459    8B46 60         MOV EAX,DWORD PTR DS:                     ; 47d74
771A945C    8B40 0C         MOV EAX,DWORD PTR DS:                        ; 50010001
771A945F    24 0F         AND AL,0F                                           ; 低位保持
771A9461    3C 08         CMP AL,8                                          ; 如果低位不是8 跳走
771A9463    75 11         JNZ SHORT COMCTL32.771A9476
771A9465    8B45 B8         MOV EAX,DWORD PTR SS:
771A9468    F7D8            NEG EAX
771A946A    1BC0            SBB EAX,EAX
771A946C    83C0 03         ADD EAX,3
771A946F    50            PUSH EAX
771A9470    56            PUSH ESI
771A9471    E8 ACDEFFFF   CALL COMCTL32.771A7322
771A9476    8B46 24         MOV EAX,DWORD PTR DS:                     ; 26c 使用变量?
771A9479    83E0 04         AND EAX,4                                           ; 位与4 4
771A947C    3BF8            CMP EDI,EAX                                       ; EDI EAX比较 相等跳
771A947E^ 0F84 8DFBFFFF   JE COMCTL32.771A9011
771A9484    33FF            XOR EDI,EDI                                       ; 置零EDI
771A9486    57            PUSH EDI
771A9487    57            PUSH EDI
771A9488    FF36            PUSH DWORD PTR DS:                           ; 按钮ID
771A948A    FF15 9C141877   CALL DWORD PTR DS:[<&USER32.InvalidateRect>]      ; 重绘窗口
771A9490    57            PUSH EDI
771A9491^ EB 98         JMP SHORT COMCTL32.771A942B
771A9493    8B46 24         MOV EAX,DWORD PTR DS:
771A9496^ E9 40FCFFFF   JMP COMCTL32.771A90DB
771A949B    8B46 60         MOV EAX,DWORD PTR DS:
771A949E    8B40 0C         MOV EAX,DWORD PTR DS:
771A94A1    6A 02         PUSH 2
771A94A3    83E0 0F         AND EAX,0F
771A94A6    5A            POP EDX
771A94A7    3BC2            CMP EAX,EDX
771A94A9^ 0F82 62FBFFFF   JB COMCTL32.771A9011
771A94AF    83F8 03         CMP EAX,3
771A94B2    76 46         JBE SHORT COMCTL32.771A94FA
771A94B4    83F8 04         CMP EAX,4
771A94B7    74 14         JE SHORT COMCTL32.771A94CD
771A94B9^ 0F86 52FBFFFF   JBE COMCTL32.771A9011
771A94BF    83F8 06         CMP EAX,6
771A94C2    76 1C         JBE SHORT COMCTL32.771A94E0
771A94C4    83F8 09         CMP EAX,9
771A94C7^ 0F85 44FBFFFF   JNZ COMCTL32.771A9011
771A94CD    6A F0         PUSH -10
771A94CF    FF36            PUSH DWORD PTR DS:
771A94D1    FFD3            CALL EBX
771A94D3    837D B8 00      CMP DWORD PTR SS:,0
771A94D7    74 11         JE SHORT COMCTL32.771A94EA
771A94D9    0D 00000100   OR EAX,10000
771A94DE    EB 0F         JMP SHORT COMCTL32.771A94EF
771A94E0    3955 B8         CMP DWORD PTR SS:,EDX
771A94E3    76 22         JBE SHORT COMCTL32.771A9507
771A94E5    8955 B8         MOV DWORD PTR SS:,EDX
771A94E8    EB 1D         JMP SHORT COMCTL32.771A9507
771A94EA    25 FFFFFEFF   AND EAX,FFFEFFFF
771A94EF    50            PUSH EAX
771A94F0    6A F0         PUSH -10
771A94F2    FF36            PUSH DWORD PTR DS:
771A94F4    FF15 28141877   CALL DWORD PTR DS:[<&USER32.SetWindowLongW>]      ; USER32.SetWindowLongW
771A94FA    837D B8 00      CMP DWORD PTR SS:,0
771A94FE    74 07         JE SHORT COMCTL32.771A9507
771A9500    C745 B8 0100000>MOV DWORD PTR SS:,1
771A9507    8B46 24         MOV EAX,DWORD PTR DS:
771A950A    8BC8            MOV ECX,EAX
771A950C    83E1 03         AND ECX,3
771A950F    3B4D B8         CMP ECX,DWORD PTR SS:
771A9512^ 0F84 F9FAFFFF   JE COMCTL32.771A9011
771A9518    FF36            PUSH DWORD PTR DS:
771A951A    83E0 FC         AND EAX,FFFFFFFC
771A951D    0B45 B8         OR EAX,DWORD PTR SS:
771A9520    8946 24         MOV DWORD PTR DS:,EAX
771A9523    FF15 70141877   CALL DWORD PTR DS:[<&USER32.IsWindowVisible>]       ; USER32.IsWindowVisible
771A9529    85C0            TEST EAX,EAX
771A952B^ E9 4EFFFFFF   JMP COMCTL32.771A947E
771A9530    8B46 24         MOV EAX,DWORD PTR DS:
771A9533    B9 00010000   MOV ECX,100
771A9538    85C1            TEST ECX,EAX
771A953A^ 0F85 D1FAFFFF   JNZ COMCTL32.771A9011
771A9540    8B3D FC131877   MOV EDI,DWORD PTR DS:[<&USER32.SendMessageW>]       ; USER32.SendMessageW
771A9546    33DB            XOR EBX,EBX
771A9548    53            PUSH EBX
771A9549    53            PUSH EBX
771A954A    68 01020000   PUSH 201
771A954F    FF36            PUSH DWORD PTR DS:
771A9551    0BC1            OR EAX,ECX
771A9553    8946 24         MOV DWORD PTR DS:,EAX
771A9556    FFD7            CALL EDI
771A9558    53            PUSH EBX
771A9559    53            PUSH EBX
771A955A    68 02020000   PUSH 202
771A955F    FF36            PUSH DWORD PTR DS:
771A9561    FFD7            CALL EDI
771A9563    8066 25 FE      AND BYTE PTR DS:,0FE
771A9567    F646 24 40      TEST BYTE PTR DS:,40
771A956B^ 0F85 A0FAFFFF   JNZ COMCTL32.771A9011
771A9571    837D B8 20      CMP DWORD PTR SS:,20
771A9575    6A 00         PUSH 0
771A9577    56            PUSH ESI
771A9578    0F85 C3010000   JNZ COMCTL32.771A9741
771A957E    E8 61DDFFFF   CALL COMCTL32.771A72E4
771A9583    85C0            TEST EAX,EAX
771A9585^ 0F84 86FAFFFF   JE COMCTL32.771A9011
771A958B    6A 00         PUSH 0
771A958D    6A 01         PUSH 1
771A958F    68 F3000000   PUSH 0F3
771A9594    FF36            PUSH DWORD PTR DS:                           ; 按钮句柄
771A9596    FF15 FC131877   CALL DWORD PTR DS:[<&USER32.SendMessageW>]          ; 发送消息BM_SETSTATE
771A959C^ E9 70FAFFFF   JMP COMCTL32.771A9011
771A95A1    B8 03020000   MOV EAX,203                                       ; 203
771A95A6    3BC8            CMP ECX,EAX                                       ; 比较消息和203的区别
771A95A8    0F87 90020000   JA COMCTL32.771A983E                              ; 高于转移
771A95AE    0F84 2B020000   JE COMCTL32.771A97DF                              ; 相等转移
771A95B4    BB 05010000   MOV EBX,105                                       ; 105
771A95B9    3BCB            CMP ECX,EBX                                       ; 消息和105比较
771A95BB    0F87 4E010000   JA COMCTL32.771A970F                              ; 高于转移
771A95C1    0F84 16010000   JE COMCTL32.771A96DD
771A95C7    81F9 F6000000   CMP ECX,0F6
771A95CD    0F82 73030000   JB COMCTL32.771A9946
771A95D3    B8 F7000000   MOV EAX,0F7
771A95D8    3BC8            CMP ECX,EAX
771A95DA    0F86 AA000000   JBE COMCTL32.771A968A
771A95E0    81F9 00010000   CMP ECX,100
771A95E6^ 0F84 7BFFFFFF   JE COMCTL32.771A9567
771A95EC    81F9 01010000   CMP ECX,101
771A95F2    0F84 E5000000   JE COMCTL32.771A96DD
771A95F8    81F9 02010000   CMP ECX,102
771A95FE    0F85 42030000   JNZ COMCTL32.771A9946
771A9604    F646 24 40      TEST BYTE PTR DS:,40
771A9608    0F85 4F030000   JNZ COMCTL32.771A995D
771A960E    8B46 60         MOV EAX,DWORD PTR DS:
771A9611    8B48 0C         MOV ECX,DWORD PTR DS:
771A9614    6A 02         PUSH 2
771A9616    83E1 0F         AND ECX,0F
771A9619    5A            POP EDX
771A961A    3BCA            CMP ECX,EDX
771A961C    74 09         JE SHORT COMCTL32.771A9627
771A961E    83F9 03         CMP ECX,3
771A9621    0F85 36030000   JNZ COMCTL32.771A995D
771A9627    8B45 B8         MOV EAX,DWORD PTR SS:
771A962A    83E8 2B         SUB EAX,2B
771A962D    74 0D         JE SHORT COMCTL32.771A963C
771A962F    2BC2            SUB EAX,EDX
771A9631    74 53         JE SHORT COMCTL32.771A9686
771A9633    83E8 10         SUB EAX,10
771A9636    0F85 21030000   JNZ COMCTL32.771A995D
771A963C    33FF            XOR EDI,EDI
771A963E    47            INC EDI
771A963F    33C0            XOR EAX,EAX
771A9641    8A46 24         MOV AL,BYTE PTR DS:
771A9644    83E0 03         AND EAX,3
771A9647    66:3BC7         CMP AX,DI
771A964A^ 0F84 C1F9FFFF   JE COMCTL32.771A9011
771A9650    83F9 03         CMP ECX,3
771A9653    75 24         JNZ SHORT COMCTL32.771A9679
771A9655    6A 00         PUSH 0
771A9657    56            PUSH ESI
771A9658    E8 87DCFFFF   CALL COMCTL32.771A72E4
771A965D    85C0            TEST EAX,EAX
771A965F    74 18         JE SHORT COMCTL32.771A9679
771A9661    6A 00         PUSH 0
771A9663    57            PUSH EDI
771A9664    68 F1000000   PUSH 0F1
771A9669    FF36            PUSH DWORD PTR DS:
771A966B    FF15 FC131877   CALL DWORD PTR DS:[<&USER32.SendMessageW>]          ; USER32.SendMessageW
771A9671    6A 01         PUSH 1
771A9673    56            PUSH ESI
771A9674    E8 F1DCFFFF   CALL COMCTL32.771A736A
771A9679    6A 00         PUSH 0
771A967B    56            PUSH ESI
771A967C    E8 A1DCFFFF   CALL COMCTL32.771A7322
771A9681^ E9 8BF9FFFF   JMP COMCTL32.771A9011
771A9686    33FF            XOR EDI,EDI
771A9688^ EB B5         JMP SHORT COMCTL32.771A963F
771A968A    8B55 B8         MOV EDX,DWORD PTR SS:
771A968D    83FA 03         CMP EDX,3
771A9690    73 3E         JNB SHORT COMCTL32.771A96D0
771A9692    8B5E 60         MOV EBX,DWORD PTR DS:
771A9695    8B5B 0C         MOV EBX,DWORD PTR DS:
771A9698    66:81E3 C000    AND BX,0C0
771A969D    389A 94241877   CMP BYTE PTR DS:,BL
771A96A3    75 2B         JNZ SHORT COMCTL32.771A96D0
771A96A5    3BC8            CMP ECX,EAX
771A96A7    8B5E 2C         MOV EBX,DWORD PTR DS:
771A96AA    75 1C         JNZ SHORT COMCTL32.771A96C8
771A96AC    FF36            PUSH DWORD PTR DS:
771A96AE    897E 2C         MOV DWORD PTR DS:,EDI
771A96B1    FF15 70141877   CALL DWORD PTR DS:[<&USER32.IsWindowVisible>]       ; USER32.IsWindowVisible
771A96B7    85C0            TEST EAX,EAX
771A96B9    74 0D         JE SHORT COMCTL32.771A96C8
771A96BB    6A 01         PUSH 1
771A96BD    6A 00         PUSH 0
771A96BF    FF75 B0         PUSH DWORD PTR SS:
771A96C2    FF15 9C141877   CALL DWORD PTR DS:[<&USER32.InvalidateRect>]      ; USER32.InvalidateRect
771A96C8    895D B4         MOV DWORD PTR SS:,EBX
771A96CB^ E9 41F9FFFF   JMP COMCTL32.771A9011
771A96D0    6A 57         PUSH 57
771A96D2    FF15 E0121877   CALL DWORD PTR DS:[<&KERNEL32.SetLastError>]      ; ntdll.RtlSetLastWin32Error
771A96D8^ E9 34F9FFFF   JMP COMCTL32.771A9011
771A96DD    F646 24 40      TEST BYTE PTR DS:,40
771A96E1    0F85 76020000   JNZ COMCTL32.771A995D
771A96E7    837D B8 09      CMP DWORD PTR SS:,9
771A96EB    0F84 6C020000   JE COMCTL32.771A995D
771A96F1    33C0            XOR EAX,EAX
771A96F3    837D B8 20      CMP DWORD PTR SS:,20
771A96F7    0F94C0          SETE AL
771A96FA    50            PUSH EAX
771A96FB    56            PUSH ESI
771A96FC    E8 69DCFFFF   CALL COMCTL32.771A736A
771A9701    395D 0C         CMP DWORD PTR SS:,EBX
771A9704    0F84 53020000   JE COMCTL32.771A995D
771A970A^ E9 02F9FFFF   JMP COMCTL32.771A9011
771A970F    8BD1            MOV EDX,ECX                                       ; 201
771A9711    B8 28010000   MOV EAX,128                                       ; 128
771A9716    2BD0            SUB EDX,EAX                                       ; 相减得D9
771A9718    0F84 82000000   JE COMCTL32.771A97A0                              ; 为0跳
771A971E    81EA D8000000   SUB EDX,0D8                                       ; 再减去D8 得1
771A9724    74 25         JE SHORT COMCTL32.771A974B                        ; 为0跳
771A9726    4A            DEC EDX                                             ; 自减1
771A9727    0F84 D1000000   JE COMCTL32.771A97FE                              ; 为0跳
771A972D    4A            DEC EDX
771A972E    0F85 12020000   JNZ COMCTL32.771A9946
771A9734    F646 24 40      TEST BYTE PTR DS:,40
771A9738^ 0F84 D3F8FFFF   JE COMCTL32.771A9011
771A973E    6A 01         PUSH 1
771A9740    56            PUSH ESI
771A9741    E8 24DCFFFF   CALL COMCTL32.771A736A
771A9746^ E9 C6F8FFFF   JMP COMCTL32.771A9011
771A974B    F646 25 02      TEST BYTE PTR DS:,2
771A974F    75 44         JNZ SHORT COMCTL32.771A9795
771A9751    8B46 60         MOV EAX,DWORD PTR DS:
771A9754    8B40 0C         MOV EAX,DWORD PTR DS:
771A9757    83E0 0F         AND EAX,0F
771A975A    3C 0B         CMP AL,0B
771A975C    74 37         JE SHORT COMCTL32.771A9795
771A975E    6A 01         PUSH 1
771A9760    6A 01         PUSH 1
771A9762    56            PUSH ESI
771A9763    E8 48DDFFFF   CALL COMCTL32.771A74B0
771A9768    8B06            MOV EAX,DWORD PTR DS:
771A976A    8365 98 00      AND DWORD PTR SS:,0
771A976E    8945 94         MOV DWORD PTR SS:,EAX
771A9771    8D45 8C         LEA EAX,DWORD PTR SS:
771A9774    50            PUSH EAX
771A9775    C745 8C 1000000>MOV DWORD PTR SS:,10
771A977C    C745 90 0200000>MOV DWORD PTR SS:,2
771A9783    FF15 F8131877   CALL DWORD PTR DS:[<&USER32.TrackMouseEvent>]       ; USER32.TrackMouseEvent
771A9789    6A 01         PUSH 1
771A978B    6A 00         PUSH 0
771A978D    FF36            PUSH DWORD PTR DS:
771A978F    FF15 9C141877   CALL DWORD PTR DS:[<&USER32.InvalidateRect>]      ; USER32.InvalidateRect
771A9795    F646 24 40      TEST BYTE PTR DS:,40
771A9799    75 63         JNZ SHORT COMCTL32.771A97FE
771A979B^ E9 71F8FFFF   JMP COMCTL32.771A9011
771A97A0    57            PUSH EDI
771A97A1    FF75 B8         PUSH DWORD PTR SS:
771A97A4    50            PUSH EAX
771A97A5    FF75 B0         PUSH DWORD PTR SS:
771A97A8    FF15 38141877   CALL DWORD PTR DS:[<&USER32.DefWindowProcW>]      ; USER32.DefWindowProcW
771A97AE    8B46 60         MOV EAX,DWORD PTR DS:
771A97B1    F640 0C C0      TEST BYTE PTR DS:,0C0
771A97B5^ 0F85 56F8FFFF   JNZ COMCTL32.771A9011
771A97BB    E8 9FD0FDFF   CALL COMCTL32.7718685F
771A97C0    33C9            XOR ECX,ECX
771A97C2    85C0            TEST EAX,EAX
771A97C4    0F94C1          SETE CL
771A97C7    56            PUSH ESI
771A97C8    334E 30         XOR ECX,DWORD PTR DS:
771A97CB    83E1 01         AND ECX,1
771A97CE    314E 30         XOR DWORD PTR DS:,ECX
771A97D1    E8 B5F6FFFF   CALL COMCTL32.771A8E8B
771A97D6    8366 30 FE      AND DWORD PTR DS:,FFFFFFFE
771A97DA^ E9 32F8FFFF   JMP COMCTL32.771A9011
771A97DF    8B46 60         MOV EAX,DWORD PTR DS:
771A97E2    8B48 0C         MOV ECX,DWORD PTR DS:
771A97E5    8BC1            MOV EAX,ECX
771A97E7    83E0 0F         AND EAX,0F
771A97EA    83F8 04         CMP EAX,4
771A97ED    74 48         JE SHORT COMCTL32.771A9837
771A97EF    83F8 08         CMP EAX,8
771A97F2    74 43         JE SHORT COMCTL32.771A9837
771A97F4    83F8 0B         CMP EAX,0B
771A97F7    74 3E         JE SHORT COMCTL32.771A9837
771A97F9    F6C5 40         TEST CH,40
771A97FC    75 39         JNZ SHORT COMCTL32.771A9837
771A97FE    6A 40         PUSH 40                                             ; 40
771A9800    56            PUSH ESI                                          ; 903480
771A9801    E8 DEDAFFFF   CALL COMCTL32.771A72E4
771A9806    85C0            TEST EAX,EAX                                        ; EAX为空?
771A9808^ 0F84 03F8FFFF   JE COMCTL32.771A9011                              ; 为空则跳,不为空则不跳
771A980E    8D45 9C         LEA EAX,DWORD PTR SS:                     ; 地址载入EAX
771A9811    50            PUSH EAX                                          ; EAX入栈
771A9812    FF36            PUSH DWORD PTR DS:                           ; 入栈 9040e 按钮句柄
771A9814    FF15 54171877   CALL DWORD PTR DS:[<&USER32.GetClientRect>]         ; 获取按钮的Rect属性
771A981A    0FBFC7          MOVSX EAX,DI                                        ; EDI低位DI放入EAX31
771A981D    C1EF 10         SHR EDI,10                                          ; 右移10位9
771A9820    0FBFCF          MOVSX ECX,DI                                        ; EDI低位DI放入ECX9
771A9823    6A 00         PUSH 0
771A9825    51            PUSH ECX
771A9826    50            PUSH EAX
771A9827    8D45 9C         LEA EAX,DWORD PTR SS:                     ; 存放按钮矩形的地址载入EAX
771A982A    50            PUSH EAX                                          ; EAX入栈
771A982B    FF15 D8131877   CALL DWORD PTR DS:[<&USER32.PtInRect>]            ; PtInRect 点X=31 Y=9是否在按钮矩形中
771A9831    50            PUSH EAX                                          ; 在,返回1,不在 返回0 。结果在EAX中
771A9832^ E9 58FDFFFF   JMP COMCTL32.771A958F
771A9837    6A 05         PUSH 5
771A9839^ E9 3DFEFFFF   JMP COMCTL32.771A967B
771A983E    B8 01160000   MOV EAX,1601
771A9843    3BC8            CMP ECX,EAX
771A9845    0F87 E9000000   JA COMCTL32.771A9934
771A984B    0F84 D7000000   JE COMCTL32.771A9928
771A9851    8BC1            MOV EAX,ECX
771A9853    2D 15020000   SUB EAX,215
771A9858    0F84 A1000000   JE COMCTL32.771A98FF
771A985E    2D 8E000000   SUB EAX,8E
771A9863    74 75         JE SHORT COMCTL32.771A98DA
771A9865    83E8 75         SUB EAX,75
771A9868    74 59         JE SHORT COMCTL32.771A98C3
771A986A    48            DEC EAX
771A986B    48            DEC EAX
771A986C    0F85 D4000000   JNZ COMCTL32.771A9946
771A9872    8B46 5C         MOV EAX,DWORD PTR DS:
771A9875    85C0            TEST EAX,EAX
771A9877    74 07         JE SHORT COMCTL32.771A9880
771A9879    50            PUSH EAX
771A987A    FF15 94242177   CALL DWORD PTR DS:                        ; COMCTL32.7720A36D
771A9880    33FF            XOR EDI,EDI
771A9882    56            PUSH ESI
771A9883    893D E0252177   MOV DWORD PTR DS:,EDI
771A9889    893D E4252177   MOV DWORD PTR DS:,EDI
771A988F    893D E8252177   MOV DWORD PTR DS:,EDI
771A9895    893D EC252177   MOV DWORD PTR DS:,EDI
771A989B    E8 32D5FFFF   CALL COMCTL32.771A6DD2
771A98A0    6A 01         PUSH 1
771A98A2    57            PUSH EDI
771A98A3    FF36            PUSH DWORD PTR DS:
771A98A5    8946 5C         MOV DWORD PTR DS:,EAX
771A98A8    FF15 9C141877   CALL DWORD PTR DS:[<&USER32.InvalidateRect>]      ; USER32.InvalidateRect
771A98AE    57            PUSH EDI
771A98AF    6A EA         PUSH -16
771A98B1    56            PUSH ESI
771A98B2    E8 350BFFFF   CALL COMCTL32.7719A3EC
771A98B7    C745 B4 0100000>MOV DWORD PTR SS:,1
771A98BE^ E9 4EF7FFFF   JMP COMCTL32.771A9011
771A98C3    FF75 B8         PUSH DWORD PTR SS:
771A98C6    56            PUSH ESI
771A98C7    E8 30DCFFFF   CALL COMCTL32.771A74FC
771A98CC    FF75 B8         PUSH DWORD PTR SS:
771A98CF    56            PUSH ESI
771A98D0    E8 4EF2FFFF   CALL COMCTL32.771A8B23
771A98D5^ E9 37F7FFFF   JMP COMCTL32.771A9011
771A98DA    F646 25 02      TEST BYTE PTR DS:,2
771A98DE^ 0F84 2DF7FFFF   JE COMCTL32.771A9011
771A98E4    6A 01         PUSH 1
771A98E6    6A 00         PUSH 0
771A98E8    56            PUSH ESI
771A98E9    E8 C2DBFFFF   CALL COMCTL32.771A74B0
771A98EE    6A 01         PUSH 1
771A98F0    6A 00         PUSH 0
771A98F2    FF36            PUSH DWORD PTR DS:
771A98F4    FF15 9C141877   CALL DWORD PTR DS:[<&USER32.InvalidateRect>]      ; USER32.InvalidateRect
771A98FA^ E9 12F7FFFF   JMP COMCTL32.771A9011
771A98FF    8B46 24         MOV EAX,DWORD PTR DS:
771A9902    A8 20         TEST AL,20
771A9904^ 0F84 07F7FFFF   JE COMCTL32.771A9011
771A990A    A8 40         TEST AL,40
771A990C    74 11         JE SHORT COMCTL32.771A991F
771A990E    6A 00         PUSH 0
771A9910    6A 00         PUSH 0
771A9912    68 F3000000   PUSH 0F3
771A9917    FF36            PUSH DWORD PTR DS:
771A9919    FF15 FC131877   CALL DWORD PTR DS:[<&USER32.SendMessageW>]          ; USER32.SendMessageW
771A991F    8366 24 9F      AND DWORD PTR DS:,FFFFFF9F
771A9923^ E9 E9F6FFFF   JMP COMCTL32.771A9011
771A9928    57            PUSH EDI
771A9929    56            PUSH ESI
771A992A    E8 1EE7FFFF   CALL COMCTL32.771A804D
771A992F    E9 8C000000   JMP COMCTL32.771A99C0
771A9934    8BC1            MOV EAX,ECX
771A9936    2D 02160000   SUB EAX,1602
771A993B    74 7C         JE SHORT COMCTL32.771A99B9
771A993D    48            DEC EAX
771A993E    74 5B         JE SHORT COMCTL32.771A999B
771A9940    48            DEC EAX
771A9941    74 48         JE SHORT COMCTL32.771A998B
771A9943    48            DEC EAX
771A9944    74 2E         JE SHORT COMCTL32.771A9974
771A9946    8D45 B4         LEA EAX,DWORD PTR SS:
771A9949    50            PUSH EAX
771A994A    57            PUSH EDI
771A994B    FF75 B8         PUSH DWORD PTR SS:
771A994E    51            PUSH ECX
771A994F    56            PUSH ESI
771A9950    E8 FFCAFDFF   CALL COMCTL32.77186454
771A9955    85C0            TEST EAX,EAX
771A9957^ 0F85 B4F6FFFF   JNZ COMCTL32.771A9011
771A995D    FF75 AC         PUSH DWORD PTR SS:
771A9960    FF75 B8         PUSH DWORD PTR SS:
771A9963    FF75 0C         PUSH DWORD PTR SS:
771A9966    FF75 B0         PUSH DWORD PTR SS:
771A9969    FF15 38141877   CALL DWORD PTR DS:[<&USER32.DefWindowProcW>]      ; USER32.DefWindowProcW
771A996F^ E9 67F7FFFF   JMP COMCTL32.771A90DB
771A9974    85FF            TEST EDI,EDI
771A9976^ 0F84 95F6FFFF   JE COMCTL32.771A9011
771A997C    8B7D AC         MOV EDI,DWORD PTR SS:
771A997F    83C6 34         ADD ESI,34
771A9982    A5            MOVS DWORD PTR ES:,DWORD PTR DS:
771A9983    A5            MOVS DWORD PTR ES:,DWORD PTR DS:
771A9984    A5            MOVS DWORD PTR ES:,DWORD PTR DS:
771A9985    33C0            XOR EAX,EAX
771A9987    A5            MOVS DWORD PTR ES:,DWORD PTR DS:
771A9988    40            INC EAX
771A9989    EB 35         JMP SHORT COMCTL32.771A99C0
771A998B    85FF            TEST EDI,EDI
771A998D^ 0F84 7EF6FFFF   JE COMCTL32.771A9011
771A9993    8D7E 34         LEA EDI,DWORD PTR DS:
771A9996    8B75 AC         MOV ESI,DWORD PTR SS:
771A9999^ EB E7         JMP SHORT COMCTL32.771A9982
771A999B    85FF            TEST EDI,EDI
771A999D^ 0F84 6EF6FFFF   JE COMCTL32.771A9011
771A99A3    8B4E 54         MOV ECX,DWORD PTR DS:
771A99A6    8B45 AC         MOV EAX,DWORD PTR SS:
771A99A9    8908            MOV DWORD PTR DS:,ECX
771A99AB    8B4E 58         MOV ECX,DWORD PTR DS:
771A99AE    8948 14         MOV DWORD PTR DS:,ECX
771A99B1    83C6 44         ADD ESI,44
771A99B4    8D78 04         LEA EDI,DWORD PTR DS:
771A99B7^ EB C9         JMP SHORT COMCTL32.771A9982
771A99B9    57            PUSH EDI
771A99BA    56            PUSH ESI
771A99BB    E8 8CDAFFFF   CALL COMCTL32.771A744C
771A99C0    8B4D FC         MOV ECX,DWORD PTR SS:
771A99C3    5F            POP EDI
771A99C4    5E            POP ESI
771A99C5    5B            POP EBX
771A99C6    E8 08210600   CALL COMCTL32.7720BAD3
771A99CB    C9            LEAVE
771A99CC    C2 1000         RETN 10


lanfengc 发表于 2012-4-14 16:47:07

我使用的是消息断点,想分析出按钮事件的处理函数是如何操作的,可是分析了2个多小时也没有弄出来, 现在手头还有工作要做, 所以就不弄了。

把OD下消息断点的办法发出来。

打开OD,附加程序, 工具栏上有个 查看 ,选 窗口, 右键,刷新,里面有button1这样的字,
在上面点右键,消息断点 ,
然后弹出一个框, 在下拉列表中选WM_LBUTTONDOWN 这个消息, ID为201的那个
确定。 切换这个程序中,点按钮,OD就会断下。 然后自己跟踪吧。
页: 1 [2] 3 4
查看完整版本: 再次提高诱惑 悬赏200金币 !!一个金山游侠无法作弊的例子