📄 spin.pas
字号:
0045A02B E860E1FAFF call 00408190
0045A030 50 push eax
0045A031 8B83F4010000 mov eax, [ebx+$01F4]
* Reference to : TGlyphList._PROC_004575E0()
|
0045A037 E8A4D5FFFF call 004575E0
0045A03C 5A pop edx
* Reference to : TBitmapCanvas._PROC_0041FA10()
|
0045A03D E8CE59FCFF call 0041FA10
0045A042 B201 mov dl, $01
0045A044 8B83F0010000 mov eax, [ebx+$01F0]
* Reference to : TGlyphList._PROC_00457610()
|
0045A04A E8C1D5FFFF call 00457610
0045A04F 8B83F4010000 mov eax, [ebx+$01F4]
0045A055 8B10 mov edx, [eax]
0045A057 FF5274 call dword ptr [edx+$74]
0045A05A 5B pop ebx
0045A05B C3 ret
*)
end;
procedure TTimerSpeedButton._PROC_0045A05C(Sender : TObject);
begin
(*
0045A05C 53 push ebx
0045A05D 7069 jo 0045A0C8
0045A05F 6E outsb
0045A060 44 inc esp
0045A061 6F outsd
0045A062 776E jnbe 0045A0D2
0045A064 0000 add [eax], al
0045A066 0000 add [eax], al
* Reference to field TTimerSpeedButton.OFFS_01F4
|
0045A068 8B80F4010000 mov eax, [eax+$01F4]
* Reference to : TGlyphList._PROC_00457604()
|
0045A06E E891D5FFFF call 00457604
0045A073 C3 ret
0045A074 8B80F4010000 mov eax, [eax+$01F4]
* Reference to : TGlyphList._PROC_00457610()
|
0045A07A E891D5FFFF call 00457610
0045A07F C3 ret
0045A080 55 push ebp
0045A081 8BEC mov ebp, esp
0045A083 51 push ecx
0045A084 53 push ebx
0045A085 56 push esi
0045A086 84D2 test dl, dl
0045A088 7408 jz 0045A092
0045A08A 83C4F0 add esp, -$10
* Reference to: System.Proc_0040326C
|
0045A08D E8DA91FAFF call 0040326C
0045A092 8855FF mov [ebp-$01], dl
0045A095 8BD8 mov ebx, eax
0045A097 33D2 xor edx, edx
0045A099 8BC3 mov eax, ebx
* Reference to : TMemoStrings._PROC_00425B64()
|
0045A09B E8C4BAFCFF call 00425B64
0045A0A0 8BCB mov ecx, ebx
0045A0A2 B201 mov dl, $01
* Reference to class TSpinButton
|
0045A0A4 A1E48C4500 mov eax, dword ptr [$00458CE4]
* Reference to: Spin.Proc_00459AC8
|
0045A0A9 E81AFAFFFF call 00459AC8
0045A0AE 8BF0 mov esi, eax
0045A0B0 89B314020000 mov [ebx+$0214], esi
0045A0B6 BA0F000000 mov edx, $0000000F
0045A0BB 8BC6 mov eax, esi
* Reference to: Controls.Proc_0042BB20
|
0045A0BD E85E1AFDFF call 0042BB20
0045A0C2 BA11000000 mov edx, $00000011
0045A0C7 8B8314020000 mov eax, [ebx+$0214]
* Reference to: Controls.Proc_0042BB40
|
0045A0CD E86E1AFDFF call 0042BB40
0045A0D2 B201 mov dl, $01
0045A0D4 8B8314020000 mov eax, [ebx+$0214]
* Reference to: Controls.Proc_0042C1D4
|
0045A0DA E8F520FDFF call 0042C1D4
0045A0DF 8BD3 mov edx, ebx
0045A0E1 8B8314020000 mov eax, [ebx+$0214]
0045A0E7 8B08 mov ecx, [eax]
0045A0E9 FF5160 call dword ptr [ecx+$60]
0045A0EC 8B8314020000 mov eax, [ebx+$0214]
0045A0F2 8998FC010000 mov [eax+$01FC], ebx
0045A0F8 899804020000 mov [eax+$0204], ebx
0045A0FE 8B13 mov edx, [ebx]
0045A100 8B92D8000000 mov edx, [edx+$00D8]
0045A106 899000020000 mov [eax+$0200], edx
0045A10C 89980C020000 mov [eax+$020C], ebx
0045A112 8B13 mov edx, [ebx]
0045A114 8B92DC000000 mov edx, [edx+$00DC]
0045A11A 899008020000 mov [eax+$0208], edx
0045A120 BA70A14500 mov edx, $0045A170
0045A125 8BC3 mov eax, ebx
* Reference to: Controls.Proc_0042C2EC
|
0045A127 E8C021FDFF call 0042C2EC
0045A12C A174A14500 mov eax, dword ptr [$0045A174]
0045A131 F7D0 not eax
0045A133 234340 and eax, [ebx+$40]
0045A136 894340 mov [ebx+$40], eax
0045A139 C7831002000001000000 mov dword ptr [ebx+$0210], $00000001
0045A143 C6831802000001 mov byte ptr [ebx+$0218], $01
0045A14A 8BC3 mov eax, ebx
0045A14C 807DFF00 cmp byte ptr [ebp-$01], $00
0045A150 740F jz 0045A161
* Reference to: System.Proc_004032C4
|
0045A152 E86D91FAFF call 004032C4
0045A157 648F0500000000 pop dword ptr fs:[$00000000]
0045A15E 83C40C add esp, +$0C
0045A161 8BC3 mov eax, ebx
0045A163 5E pop esi
0045A164 5B pop ebx
0045A165 59 pop ecx
0045A166 5D pop ebp
0045A167 C3 ret
*)
end;
procedure TTimerSpeedButton._PROC_0045A1A9(Sender : TObject);
begin
(*
0045A1A9 8BEC mov ebp, esp
0045A1AB 5D pop ebp
0045A1AC C20800 ret $0008
*)
end;
procedure TTimerSpeedButton._PROC_0045A1B0(Sender : TObject);
begin
(*
0045A1B0 53 push ebx
0045A1B1 56 push esi
0045A1B2 51 push ecx
0045A1B3 880C24 mov [esp], cl
0045A1B6 8BF2 mov esi, edx
0045A1B8 8BD8 mov ebx, eax
0045A1BA 66833E26 cmp word ptr [esi], +$26
0045A1BE 750E jnz 0045A1CE
0045A1C0 8BD3 mov edx, ebx
0045A1C2 8BC3 mov eax, ebx
0045A1C4 8B08 mov ecx, [eax]
* Possible reference to virtual method TTimerSpeedButton.OFFS_00D8
|
0045A1C6 FF91D8000000 call dword ptr [ecx+$00D8]
0045A1CC EB12 jmp 0045A1E0
0045A1CE 66833E28 cmp word ptr [esi], +$28
0045A1D2 750C jnz 0045A1E0
0045A1D4 8BD3 mov edx, ebx
0045A1D6 8BC3 mov eax, ebx
0045A1D8 8B08 mov ecx, [eax]
* Possible reference to virtual method TTimerSpeedButton.OFFS_00DC
|
0045A1DA FF91DC000000 call dword ptr [ecx+$00DC]
0045A1E0 8BD6 mov edx, esi
0045A1E2 8A0C24 mov cl, byte ptr [esp]
0045A1E5 8BC3 mov eax, ebx
* Reference to: Controls.Proc_00431018
|
0045A1E7 E82C6EFDFF call 00431018
0045A1EC 5A pop edx
0045A1ED 5E pop esi
0045A1EE 5B pop ebx
0045A1EF C3 ret
*)
end;
procedure TTimerSpeedButton._PROC_0045A1F0(Sender : TObject);
begin
(*
0045A1F0 53 push ebx
0045A1F1 56 push esi
0045A1F2 8BDA mov ebx, edx
0045A1F4 8BF0 mov esi, eax
0045A1F6 8A13 mov dl, byte ptr [ebx]
0045A1F8 8BC6 mov eax, esi
0045A1FA 8B08 mov ecx, [eax]
* Possible reference to virtual method TTimerSpeedButton.OFFS_00D4
|
0045A1FC FF91D4000000 call dword ptr [ecx+$00D4]
0045A202 84C0 test al, al
0045A204 750A jnz 0045A210
0045A206 C60300 mov byte ptr [ebx], $00
0045A209 6A00 push $00
* Reference to: user32.MessageBeep()
|
0045A20B E8B8DFFAFF call 004081C8
0045A210 803B00 cmp byte ptr [ebx], $00
0045A213 7409 jz 0045A21E
0045A215 8BD3 mov edx, ebx
0045A217 8BC6 mov eax, esi
* Reference to: Controls.Proc_004311B8
|
0045A219 E89A6FFDFF call 004311B8
0045A21E 5E pop esi
0045A21F 5B pop ebx
0045A220 C3 ret
*)
end;
procedure TTimerSpeedButton._PROC_0045A224(Sender : TObject);
begin
(*
0045A224 53 push ebx
0045A225 56 push esi
0045A226 57 push edi
0045A227 83C4E0 add esp, -$20
0045A22A 8BDA mov ebx, edx
0045A22C 8BF0 mov esi, eax
0045A22E 56 push esi
0045A22F BE94A24500 mov esi, $0045A294
0045A234 8D7C2404 lea edi, [esp+$04]
0045A238 B908000000 mov ecx, $00000008
0045A23D F3 rep
0045A23E A5 movsd
0045A23F 5E pop esi
* Reference to pointer to GlobalVar_005034FB
|
0045A240 A1482F5000 mov eax, dword ptr [$00502F48]
0045A245 8A00 mov al, byte ptr [eax]
0045A247 25FF000000 and eax, $000000FF
0045A24C 0FAB0424 bts [esp], eax
0045A250 8BC3 mov eax, ebx
0045A252 25FF000000 and eax, $000000FF
0045A257 0FA30424 bt [esp], eax
0045A25B 720E jb 0045A26B
0045A25D 80FB20 cmp bl, $20
0045A260 7305 jnb 0045A267
0045A262 80FB0D cmp bl, $0D
0045A265 7504 jnz 0045A26B
0045A267 33C0 xor eax, eax
0045A269 EB02 jmp 0045A26D
0045A26B B001 mov al, $01
0045A26D 8A9618020000 mov dl, byte ptr [esi+$0218]
0045A273 80F201 xor dl, $01
0045A276 84C2 test dl, al
0045A278 7411 jz 0045A28B
0045A27A 80FB20 cmp bl, $20
0045A27D 730A jnb 0045A289
0045A27F 80FB08 cmp bl, $08
0045A282 7405 jz 0045A289
0045A284 80FB2E cmp bl, $2E
0045A287 7502 jnz 0045A28B
0045A289 33C0 xor eax, eax
0045A28B 83C420 add esp, +$20
0045A28E 5F pop edi
0045A28F 5E pop esi
0045A290 5B pop ebx
0045A291 C3 ret
*)
end;
procedure TTimerSpeedButton._PROC_0045A2C2(Sender : TObject);
begin
(*
0045A2C2 C804 enter , $04
0045A2C4 0D00000002 or eax, $02000000
0045A2C9 894304 mov [ebx+$04], eax
0045A2CC 5B pop ebx
0045A2CD C3 ret
*)
end;
procedure TTimerSpeedButton._PROC_0045A2D0(Sender : TObject);
begin
(*
0045A2D0 53 push ebx
0045A2D1 8BD8 mov ebx, eax
0045A2D3 8BC3 mov eax, ebx
* Reference to : TMemoStrings._PROC_00426178()
|
0045A2D5 E89EBEFCFF call 00426178
0045A2DA 8BC3 mov eax, ebx
* Reference to : TTimerSpeedButton._PROC_0045A2E4()
|
0045A2DC E803000000 call 0045A2E4
0045A2E1 5B pop ebx
0045A2E2 C3 ret
*)
end;
procedure TTimerSpeedButton._PROC_0045A2E4(Sender : TObject);
begin
(*
0045A2E4 53 push ebx
0045A2E5 83C4F0 add esp, -$10
0045A2E8 8BD8 mov ebx, eax
0045A2EA 8BC4 mov eax, esp
0045A2EC 50 push eax
0045A2ED 6A00 push $00
0045A2EF 68B2000000 push $000000B2
0045A2F4 8BC3 mov eax, ebx
* Reference to: Controls.Proc_00432394
|
0045A2F6 E89980FDFF call 00432394
0045A2FB 50 push eax
* Reference to: user32.SendMessageA()
|
0045A2FC E867DFFAFF call 00408268
0045A301 8BC3 mov eax, ebx
* Reference to: Controls.Proc_0042BD64
|
0045A303 E85C1AFDFF call 0042BD64
0045A308 40 inc eax
0045A309 8944240C mov [esp+$0C], eax
0045A30D 8BC3 mov eax, ebx
* Reference to: Controls.Proc_0042BD20
|
0045A30F E80C1AFDFF call 0042BD20
* Reference to field TTimerSpeedButton.OFFS_0214
|
0045A314 8B9314020000 mov edx, [ebx+$0214]
0045A31A 2B4238 sub eax, dword ptr [edx+$38]
0045A31D 83E802 sub eax, +$02
0045A320 89442408 mov [esp+$08], eax
0045A324 33C0 xor eax, eax
0045A326 89442404 mov [esp+$04], eax
0045A32A 33C0 xor eax, eax
0045A32C 890424 mov [esp], eax
0045A32F 8BC4 mov eax, esp
0045A331 50 push eax
0045A332 6A00 push $00
0045A334 68B4000000 push $000000B4
0045A339 8BC3 mov eax, ebx
* Reference to: Controls.Proc_00432394
|
0045A33B E85480FDFF call 00432394
0045A340 50 push eax
* Reference to: user32.SendMessageA()
|
0045A341 E822DFFAFF call 00408268
0045A346 8BC4 mov eax, esp
0045A348 50 push eax
0045A349 6A00 push $00
0045A34B 68B2000000 push $000000B2
0045A350 8BC3 mov eax, ebx
* Reference to: Controls.Proc_00432394
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -