[Asm] 纯文本查看 复制代码
0054E3F4 55 push ebp
0054E3F5 8BEC mov ebp, esp
0054E3F7 B90D000000 mov ecx, $0000000D
0054E3FC 6A00 push $00
0054E3FE 6A00 push $00
0054E400 49 dec ecx
0054E401 75F9 jnz 0054E3FC
0054E403 53 push ebx
0054E404 56 push esi
0054E405 57 push edi
0054E406 8BF8 mov edi, eax
0054E408 33C0 xor eax, eax
0054E40A 55 push ebp
* Possible String Reference to: '閊^?氡_^[嬪]?
|
0054E40B 68D5E85400 push $0054E8D5
***** TRY
|
0054E410 64FF30 push dword ptr fs:[eax]
0054E413 648920 mov fs:[eax], esp
0054E416 8D55D0 lea edx, [ebp-$30]
0054E419 8B87F0020000 mov eax, [edi+$02F0]
* Reference to: Controls.TControl.GetText(TControl):TCaption;
|
0054E41F E8A4D3EFFF call 0044B7C8
0054E424 8B45D0 mov eax, [ebp-$30]
0054E427 8D55D4 lea edx, [ebp-$2C]
* Reference to: SysUtils.Trim(AnsiString):AnsiString;overload;
|
0054E42A E865B3EBFF call 00409794
0054E42F 837DD400 cmp dword ptr [ebp-$2C], +$00
0054E433 752E jnz 0054E463
0054E435 8B15BC995800 mov edx, [$005899BC]
0054E43B 8B12 mov edx, [edx]
0054E43D A1A4995800 mov eax, dword ptr [$005899A4]
0054E442 8B00 mov eax, [eax]
* Reference to control MaskEdit1 : TMaskEdit
|
0054E444 8B80F4020000 mov eax, [eax+$02F4]
* Reference to: Controls.TControl.SetText(TControl;TCaption);
|
0054E44A E8A9D3EFFF call 0044B7F8
0054E44F A1A4995800 mov eax, dword ptr [$005899A4]
0054E454 8B00 mov eax, [eax]
0054E456 8B10 mov edx, [eax]
0054E458 FF92E8000000 call dword ptr [edx+$00E8]
0054E45E E91D040000 jmp 0054E880
0054E463 8D55C8 lea edx, [ebp-$38]
0054E466 8B87F4020000 mov eax, [edi+$02F4]
* Reference to: Mask.TCustomMaskEdit.GetText(TCustomMaskEdit):TMaskedText;
|
0054E46C E8EB69F3FF call 00484E5C
0054E471 8B45C8 mov eax, [ebp-$38]
0054E474 8D55CC lea edx, [ebp-$34]
* Reference to: SysUtils.Trim(AnsiString):AnsiString;overload;
|
0054E477 E818B3EBFF call 00409794
0054E47C 837DCC00 cmp dword ptr [ebp-$34], +$00
0054E480 752E jnz 0054E4B0
0054E482 8B15BC995800 mov edx, [$005899BC]
0054E488 8B12 mov edx, [edx]
0054E48A A1A4995800 mov eax, dword ptr [$005899A4]
0054E48F 8B00 mov eax, [eax]
* Reference to control MaskEdit1 : TMaskEdit
|
0054E491 8B80F4020000 mov eax, [eax+$02F4]
* Reference to: Controls.TControl.SetText(TControl;TCaption);
|
0054E497 E85CD3EFFF call 0044B7F8
0054E49C A1A4995800 mov eax, dword ptr [$005899A4]
0054E4A1 8B00 mov eax, [eax]
0054E4A3 8B10 mov edx, [eax]
0054E4A5 FF92E8000000 call dword ptr [edx+$00E8]
0054E4AB E9D0030000 jmp 0054E880
0054E4B0 8D55C4 lea edx, [ebp-$3C]
0054E4B3 8B87F0020000 mov eax, [edi+$02F0]
* Reference to: Controls.TControl.GetText(TControl):TCaption;
|
0054E4B9 E80AD3EFFF call 0044B7C8
0054E4BE 8B55C4 mov edx, [ebp-$3C]
0054E4C1 B8ECE85400 mov eax, $0054E8EC
* Reference to: System.@LStrPos;
|
0054E4C6 E85D6EEBFF call 00405328
0054E4CB 8945EC mov [ebp-$14], eax
0054E4CE 837DEC00 cmp dword ptr [ebp-$14], +$00
0054E4D2 752E jnz 0054E502
0054E4D4 8B15549A5800 mov edx, [$00589A54]
0054E4DA 8B12 mov edx, [edx]
0054E4DC A1A4995800 mov eax, dword ptr [$005899A4]
0054E4E1 8B00 mov eax, [eax]
* Reference to control MaskEdit1 : TMaskEdit
|
0054E4E3 8B80F4020000 mov eax, [eax+$02F4]
* Reference to: Controls.TControl.SetText(TControl;TCaption);
|
0054E4E9 E80AD3EFFF call 0044B7F8
0054E4EE A1A4995800 mov eax, dword ptr [$005899A4]
0054E4F3 8B00 mov eax, [eax]
0054E4F5 8B10 mov edx, [eax]
0054E4F7 FF92E8000000 call dword ptr [edx+$00E8]
0054E4FD E97E030000 jmp 0054E880
0054E502 C745E47A0D0000 mov dword ptr [ebp-$1C], $00000D7A
0054E509 8B75EC mov esi, [ebp-$14]
0054E50C 85F6 test esi, esi
0054E50E 7E24 jle 0054E534
0054E510 BB01000000 mov ebx, $00000001
0054E515 8D55C0 lea edx, [ebp-$40]
0054E518 8B87F0020000 mov eax, [edi+$02F0]
* Reference to: Controls.TControl.GetText(TControl):TCaption;
|
0054E51E E8A5D2EFFF call 0044B7C8
0054E523 8B45C0 mov eax, [ebp-$40]
0054E526 0FB64418FF movzx eax, byte ptr [eax+ebx-$01]
0054E52B F7EB imul ebx
0054E52D 0145E4 add [ebp-$1C], eax
0054E530 43 inc ebx
0054E531 4E dec esi
0054E532 75E1 jnz 0054E515
0054E534 8D55F8 lea edx, [ebp-$08]
0054E537 8B45E4 mov eax, [ebp-$1C]
* Reference to: SysUtils.IntToStr(Integer):AnsiString;overload;
|
0054E53A E871B5EBFF call 00409AB0
0054E53F 8D55BC lea edx, [ebp-$44]
0054E542 8B87F0020000 mov eax, [edi+$02F0]
* Reference to: Controls.TControl.GetText(TControl):TCaption;
|
0054E548 E87BD2EFFF call 0044B7C8
0054E54D 8B45BC mov eax, [ebp-$44]
* Reference to: System.@LStrLen(String):Integer;
| or: System.@DynArrayLength;
| or: System.DynArraySize(Pointer):Integer;
| or: Variants.DynArraySize(Pointer):Integer;
|
0054E550 E8976AEBFF call 00404FEC
0054E555 83F800 cmp eax, +$00
0054E558 7C27 jl 0054E581
0054E55A 8945E8 mov [ebp-$18], eax
0054E55D 8D55B8 lea edx, [ebp-$48]
0054E560 8B87F0020000 mov eax, [edi+$02F0]
* Reference to: Controls.TControl.GetText(TControl):TCaption;
|
0054E566 E85DD2EFFF call 0044B7C8
0054E56B 8B45B8 mov eax, [ebp-$48]
0054E56E 8B55E8 mov edx, [ebp-$18]
0054E571 807C10FF2E cmp byte ptr [eax+edx-$01], $2E
0054E576 7409 jz 0054E581
0054E578 FF4DE8 dec dword ptr [ebp-$18]
0054E57B 837DE8FF cmp dword ptr [ebp-$18], -$01
0054E57F 75DC jnz 0054E55D
0054E581 837DE800 cmp dword ptr [ebp-$18], +$00
0054E585 752E jnz 0054E5B5
0054E587 8B15549A5800 mov edx, [$00589A54]
0054E58D 8B12 mov edx, [edx]
0054E58F A1A4995800 mov eax, dword ptr [$005899A4]
0054E594 8B00 mov eax, [eax]
* Reference to control MaskEdit1 : TMaskEdit
|
0054E596 8B80F4020000 mov eax, [eax+$02F4]
* Reference to: Controls.TControl.SetText(TControl;TCaption);
|
0054E59C E857D2EFFF call 0044B7F8
0054E5A1 A1A4995800 mov eax, dword ptr [$005899A4]
0054E5A6 8B00 mov eax, [eax]
0054E5A8 8B10 mov edx, [eax]
0054E5AA FF92E8000000 call dword ptr [edx+$00E8]
0054E5B0 E9CB020000 jmp 0054E880
0054E5B5 C745E0B41C0000 mov dword ptr [ebp-$20], $00001CB4
0054E5BC 8B5DEC mov ebx, [ebp-$14]
0054E5BF 8B75E8 mov esi, [ebp-$18]
0054E5C2 83EE02 sub esi, +$02
0054E5C5 2BF3 sub esi, ebx
0054E5C7 7C20 jl 0054E5E9
0054E5C9 46 inc esi
0054E5CA 8D55B4 lea edx, [ebp-$4C]
0054E5CD 8B87F0020000 mov eax, [edi+$02F0]
* Reference to: Controls.TControl.GetText(TControl):TCaption;
|
0054E5D3 E8F0D1EFFF call 0044B7C8
0054E5D8 8B45B4 mov eax, [ebp-$4C]
0054E5DB 0FB64418FF movzx eax, byte ptr [eax+ebx-$01]
0054E5E0 F7EB imul ebx
0054E5E2 0145E0 add [ebp-$20], eax
0054E5E5 43 inc ebx
0054E5E6 4E dec esi
0054E5E7 75E1 jnz 0054E5CA
0054E5E9 8D55F4 lea edx, [ebp-$0C]
0054E5EC 8B45E0 mov eax, [ebp-$20]
* Reference to: SysUtils.IntToStr(Integer):AnsiString;overload;
|
0054E5EF E8BCB4EBFF call 00409AB0
0054E5F4 C745DCE9100000 mov dword ptr [ebp-$24], $000010E9
0054E5FB 8B5DE8 mov ebx, [ebp-$18]
0054E5FE 83EB02 sub ebx, +$02
0054E601 8D55B0 lea edx, [ebp-$50]
0054E604 8B87F0020000 mov eax, [edi+$02F0]
* Reference to: Controls.TControl.GetText(TControl):TCaption;
|
0054E60A E8B9D1EFFF call 0044B7C8
0054E60F 8B45B0 mov eax, [ebp-$50]
* Reference to: System.@LStrLen(String):Integer;
| or: System.@DynArrayLength;
| or: System.DynArraySize(Pointer):Integer;
| or: Variants.DynArraySize(Pointer):Integer;
|
0054E612 E8D569EBFF call 00404FEC
0054E617 8BF0 mov esi, eax
0054E619 2BF3 sub esi, ebx
0054E61B 7C20 jl 0054E63D
0054E61D 46 inc esi
0054E61E 8D55AC lea edx, [ebp-$54]
0054E621 8B87F0020000 mov eax, [edi+$02F0]
* Reference to: Controls.TControl.GetText(TControl):TCaption;
|
0054E627 E89CD1EFFF call 0044B7C8
0054E62C 8B45AC mov eax, [ebp-$54]
0054E62F 0FB64418FF movzx eax, byte ptr [eax+ebx-$01]
0054E634 F7EB imul ebx
0054E636 0145DC add [ebp-$24], eax
0054E639 43 inc ebx
0054E63A 4E dec esi
0054E63B 75E1 jnz 0054E61E
0054E63D 8D55F0 lea edx, [ebp-$10]
0054E640 8B45DC mov eax, [ebp-$24]
* Reference to: SysUtils.IntToStr(Integer):AnsiString;overload;
|
0054E643 E868B4EBFF call 00409AB0
0054E648 8D55FC lea edx, [ebp-$04]
0054E64B 8B87F4020000 mov eax, [edi+$02F4]
* Reference to: Mask.TCustomMaskEdit.GetText(TCustomMaskEdit):TMaskedText;
|
0054E651 E80668F3FF call 00484E5C
0054E656 8B55FC mov edx, [ebp-$04]
0054E659 B8F8E85400 mov eax, $0054E8F8
* Reference to: System.@LStrPos;
|
0054E65E E8C56CEBFF call 00405328
0054E663 8BD8 mov ebx, eax
0054E665 85DB test ebx, ebx
0054E667 7504 jnz 0054E66D
0054E669 33F6 xor esi, esi
0054E66B EB32 jmp 0054E69F
0054E66D 8D45A8 lea eax, [ebp-$58]
0054E670 50 push eax
0054E671 8BCB mov ecx, ebx
0054E673 49 dec ecx
0054E674 BA01000000 mov edx, $00000001
0054E679 8B45FC mov eax, [ebp-$04]
* Reference to: System.@LStrCopy;
|
0054E67C E8C36BEBFF call 00405244
0054E681 8B45A8 mov eax, [ebp-$58]
* Reference to: SysUtils.StrToInt(AnsiString):Integer;
|
0054E684 E88BB4EBFF call 00409B14
0054E689 8BF0 mov esi, eax
0054E68B 8D45FC lea eax, [ebp-$04]
0054E68E 50 push eax
0054E68F 8D5301 lea edx, [ebx+$01]
0054E692 B9FF000000 mov ecx, $000000FF
0054E697 8B45FC mov eax, [ebp-$04]
* Reference to: System.@LStrCopy;
|
0054E69A E8A56BEBFF call 00405244
0054E69F 8B55FC mov edx, [ebp-$04]
0054E6A2 B8F8E85400 mov eax, $0054E8F8
* Reference to: System.@LStrPos;
|
0054E6A7 E87C6CEBFF call 00405328
0054E6AC 8BD8 mov ebx, eax
0054E6AE 85DB test ebx, ebx
0054E6B0 7509 jnz 0054E6BB
0054E6B2 33C0 xor eax, eax
0054E6B4 8945D8 mov [ebp-$28], eax
0054E6B7 33C0 xor eax, eax
0054E6B9 EB3B jmp 0054E6F6
0054E6BB 8D45A4 lea eax, [ebp-$5C]
0054E6BE 50 push eax
0054E6BF 8BCB mov ecx, ebx
0054E6C1 49 dec ecx
0054E6C2 BA01000000 mov edx, $00000001
0054E6C7 8B45FC mov eax, [ebp-$04]
* Reference to: System.@LStrCopy;
|
0054E6CA E8756BEBFF call 00405244
0054E6CF 8B45A4 mov eax, [ebp-$5C]
* Reference to: SysUtils.StrToInt(AnsiString):Integer;
|
0054E6D2 E83DB4EBFF call 00409B14
0054E6D7 8945D8 mov [ebp-$28], eax
0054E6DA 8D45FC lea eax, [ebp-$04]
0054E6DD 50 push eax
0054E6DE 8D5301 lea edx, [ebx+$01]
0054E6E1 B9FF000000 mov ecx, $000000FF
0054E6E6 8B45FC mov eax, [ebp-$04]
* Reference to: System.@LStrCopy;
|
0054E6E9 E8566BEBFF call 00405244
0054E6EE 8B45FC mov eax, [ebp-$04]
* Reference to: SysUtils.StrToInt(AnsiString):Integer;
|
0054E6F1 E81EB4EBFF call 00409B14
0054E6F6 3B75E4 cmp esi, [ebp-$1C]
0054E6F9 0F8553010000 jnz 0054E852
0054E6FF 8B55D8 mov edx, [ebp-$28]
0054E702 3B55E0 cmp edx, [ebp-$20]
0054E705 0F8547010000 jnz 0054E852
0054E70B 3B45DC cmp eax, [ebp-$24]
0054E70E 0F853E010000 jnz 0054E852
0054E714 B201 mov dl, $01
0054E716 A144274700 mov eax, dword ptr [$00472744]
* Reference to: Registry.TRegistry.Create(TRegistry;boolean);overload;
|
0054E71B E82441F2FF call 00472844
0054E720 A3D8FB5800 mov dword ptr [$0058FBD8], eax
0054E725 BA01000080 mov edx, $80000001
0054E72A A1D8FB5800 mov eax, dword ptr [$0058FBD8]
* Reference to: Registry.TRegistry.SetRootKey(TRegistry;HKEY);
|
0054E72F E8B041F2FF call 004728E4
0054E734 6804E95400 push $0054E904
0054E739 A1309B5800 mov eax, dword ptr [$00589B30]
0054E73E FF30 push dword ptr [eax]
0054E740 6804E95400 push $0054E904
0054E745 8D45A0 lea eax, [ebp-$60]
0054E748 BA03000000 mov edx, $00000003
|
0054E74D E85A69EBFF call 004050AC
0054E752 8B55A0 mov edx, [ebp-$60]
0054E755 B101 mov cl, $01
0054E757 A1D8FB5800 mov eax, dword ptr [$0058FBD8]
* Reference to: Registry.TRegistry.OpenKey(TRegistry;AnsiString;Boolean):Boolean;
|
0054E75C E8C342F2FF call 00472A24
0054E761 6804E95400 push $0054E904
0054E766 A1309B5800 mov eax, dword ptr [$00589B30]
0054E76B FF30 push dword ptr [eax]
0054E76D 6804E95400 push $0054E904
0054E772 A1AC9B5800 mov eax, dword ptr [$00589BAC]
0054E777 FF30 push dword ptr [eax]
0054E779 8D459C lea eax, [ebp-$64]
0054E77C BA04000000 mov edx, $00000004
|
0054E781 E82669EBFF call 004050AC
0054E786 8B559C mov edx, [ebp-$64]
0054E789 A1D8FB5800 mov eax, dword ptr [$0058FBD8]
* Reference to: Registry.TRegistry.CreateKey(TRegistry;AnsiString):Boolean;
|
0054E78E E8B541F2FF call 00472948
0054E793 8B15AC9B5800 mov edx, [$00589BAC]
0054E799 8B12 mov edx, [edx]
0054E79B B101 mov cl, $01
0054E79D A1D8FB5800 mov eax, dword ptr [$0058FBD8]
* Reference to: Registry.TRegistry.OpenKey(TRegistry;AnsiString;Boolean):Boolean;
|
0054E7A2 E87D42F2FF call 00472A24
0054E7A7 A1C0A05800 mov eax, dword ptr [$0058A0C0]
0054E7AC C60001 mov byte ptr [eax], $01
0054E7AF 8B0DC0A05800 mov ecx, [$0058A0C0]
0054E7B5 8A09 mov cl, byte ptr [ecx]
0054E7B7 8B15AC9B5800 mov edx, [$00589BAC]
0054E7BD 8B12 mov edx, [edx]
0054E7BF A1D8FB5800 mov eax, dword ptr [$0058FBD8]
* Reference to: Registry.TRegistry.WriteBool(TRegistry;AnsiString;Boolean);
|
0054E7C4 E85F44F2FF call 00472C28
0054E7C9 A1D8FB5800 mov eax, dword ptr [$0058FBD8]
* Reference to: Registry.TRegistry.CloseKey(TRegistry);
|
0054E7CE E8E140F2FF call 004728B4
0054E7D3 A1D8FB5800 mov eax, dword ptr [$0058FBD8]
* Reference to: System.TObject.Free(TObject);
|
0054E7D8 E8C757EBFF call 00403FA4
0054E7DD A138995800 mov eax, dword ptr [$00589938]
0054E7E2 8B00 mov eax, [eax]
0054E7E4 8B806C050000 mov eax, [eax+$056C]
0054E7EA 33D2 xor edx, edx
* Reference to: Menus.TMenuItem.SetEnabled(TMenuItem;Boolean);
|
0054E7EC E8DBF4F0FF call 0045DCCC
0054E7F1 6810E95400 push $0054E910
0054E7F6 A144965800 mov eax, dword ptr [$00589644]
0054E7FB FF30 push dword ptr [eax]
0054E7FD 6810E95400 push $0054E910
0054E802 6810E95400 push $0054E910
0054E807 6810E95400 push $0054E910
0054E80C A1509F5800 mov eax, dword ptr [$00589F50]
0054E811 FF30 push dword ptr [eax]
0054E813 6810E95400 push $0054E910
0054E818 8D4598 lea eax, [ebp-$68]
0054E81B BA07000000 mov edx, $00000007
|
0054E820 E88768EBFF call 004050AC
0054E825 8B5598 mov edx, [ebp-$68]
0054E828 A1A4995800 mov eax, dword ptr [$005899A4]
0054E82D 8B00 mov eax, [eax]
* Reference to control MaskEdit1 : TMaskEdit
|
0054E82F 8B80F4020000 mov eax, [eax+$02F4]
* Reference to: Controls.TControl.SetText(TControl;TCaption);
|
0054E835 E8BECFEFFF call 0044B7F8
0054E83A A1A4995800 mov eax, dword ptr [$005899A4]
0054E83F 8B00 mov eax, [eax]
0054E841 8B10 mov edx, [eax]
0054E843 FF92E8000000 call dword ptr [edx+$00E8]
0054E849 8BC7 mov eax, edi
* Reference to: Forms.TCustomForm.Close(TCustomForm);
|
0054E84B E8DCA3F1FF call 00468C2C
0054E850 EB2E jmp 0054E880
0054E852 8B1564985800 mov edx, [$00589864]
0054E858 8B12 mov edx, [edx]
0054E85A A1A4995800 mov eax, dword ptr [$005899A4]
0054E85F 8B00 mov eax, [eax]
* Reference to control MaskEdit1 : TMaskEdit
|
0054E861 8B80F4020000 mov eax, [eax+$02F4]
* Reference to: Controls.TControl.SetText(TControl;TCaption);
|
0054E867 E88CCFEFFF call 0044B7F8
0054E86C A1A4995800 mov eax, dword ptr [$005899A4]
0054E871 8B00 mov eax, [eax]
0054E873 8B10 mov edx, [eax]
0054E875 FF92E8000000 call dword ptr [edx+$00E8]
* Reference to: System.@Halt0;
|
0054E87B E8C463EBFF call 00404C44
0054E880 33C0 xor eax, eax
0054E882 5A pop edx
0054E883 59 pop ecx
0054E884 59 pop ecx
0054E885 648910 mov fs:[eax], edx
****** FINALLY
|
* Possible String Reference to: '_^[嬪]?
|
0054E888 68DCE85400 push $0054E8DC
0054E88D 8D4598 lea eax, [ebp-$68]
0054E890 BA05000000 mov edx, $00000005
* Reference to: System.@LStrArrayClr(void;void;Integer);
|
0054E895 E8BE64EBFF call 00404D58
0054E89A 8D45AC lea eax, [ebp-$54]
0054E89D BA07000000 mov edx, $00000007
* Reference to: System.@LStrArrayClr(void;void;Integer);
|
0054E8A2 E8B164EBFF call 00404D58
0054E8A7 8D45C8 lea eax, [ebp-$38]
* Reference to: System.@LStrClr(void;void);
|
0054E8AA E88564EBFF call 00404D34
0054E8AF 8D45CC lea eax, [ebp-$34]
* Reference to: System.@LStrClr(void;void);
|
0054E8B2 E87D64EBFF call 00404D34
0054E8B7 8D45D0 lea eax, [ebp-$30]
* Reference to: System.@LStrClr(void;void);
|
0054E8BA E87564EBFF call 00404D34
0054E8BF 8D45D4 lea eax, [ebp-$2C]
* Reference to: System.@LStrClr(void;void);
|
0054E8C2 E86D64EBFF call 00404D34
0054E8C7 8D45F0 lea eax, [ebp-$10]
0054E8CA BA04000000 mov edx, $00000004
* Reference to: System.@LStrArrayClr(void;void;Integer);
|
0054E8CF E88464EBFF call 00404D58
0054E8D4 C3 ret
* Reference to: System.@HandleFinally;
|
0054E8D5 E95E5EEBFF jmp 00404738
0054E8DA EBB1 jmp 0054E88D
****** END
|
0054E8DC 5F pop edi
0054E8DD 5E pop esi
0054E8DE 5B pop ebx
0054E8DF 8BE5 mov esp, ebp
0054E8E1 5D pop ebp
0054E8E2 C3 ret