⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 main.pas

📁 BLUE源码 BLUE源码 BLUE源码
💻 PAS
字号:
unit Main;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics,
  Controls, Forms, Dialogs, StdCtrls
type
  TFrmMain=class(TForm)
    ServerSocket: TServerSocket;
    MemoLog: TMemo;
    SendTimer: TTimer;
    ClientSocket: TClientSocket;
    Panel: TPanel;
    Timer: TTimer;
    DecodeTimer: TTimer;
    LbHold: TLabel;
    LbLack: TLabel;
    Label2: TLabel;
    StatusBar: TStatusBar;
    MainMenu: TMainMenu;
    MENU_CONTROL: TMenuItem;
    StartTimer: TTimer;
    MENU_CONTROL_START: TMenuItem;
    MENU_CONTROL_STOP: TMenuItem;
    MENU_CONTROL_RECONNECT: TMenuItem;
    MENU_CONTROL_CLEAELOG: TMenuItem;
    MENU_CONTROL_EXIT: TMenuItem;
    MENU_VIEW: TMenuItem;
    MENU_VIEW_LOGMSG: TMenuItem;
    MENU_OPTION: TMenuItem;
    MENU_OPTION_GENERAL: TMenuItem;
    MENU_OPTION_IPFILTER: TMenuItem;
    procedure MemoLogChange(Sender : TObject);
    procedure FormDestroy(Sender : TObject);
    procedure SendTimerTimer(Sender : TObject);
    procedure TimerTimer(Sender : TObject);
    procedure DecodeTimerTimer(Sender : TObject);
    procedure ClientSocketConnect(Sender : TObject);
    procedure ClientSocketDisconnect(Sender : TObject);
    procedure ClientSocketError(Sender : TObject);
    procedure ClientSocketRead(Sender : TObject);
    procedure ServerSocketClientConnect(Sender : TObject);
    procedure ServerSocketClientDisconnect(Sender : TObject);
    procedure ServerSocketClientError(Sender : TObject);
    procedure ServerSocketClientRead(Sender : TObject);
    procedure FormCloseQuery(Sender : TObject);
    procedure StartTimerTimer(Sender : TObject);
    procedure FormCreate(Sender : TObject);
    procedure MENU_CONTROL_STARTClick(Sender : TObject);
    procedure MENU_CONTROL_STOPClick(Sender : TObject);
    procedure MENU_CONTROL_RECONNECTClick(Sender : TObject);
    procedure MENU_CONTROL_CLEAELOGClick(Sender : TObject);
    procedure MENU_CONTROL_EXITClick(Sender : TObject);
    procedure MENU_VIEW_LOGMSGClick(Sender : TObject);
    procedure MENU_OPTION_GENERALClick(Sender : TObject);
    procedure MENU_OPTION_IPFILTERClick(Sender : TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end ;

var
  FrmMain: TFrmMain;

{This file is generated by DaRk Ver 3.50.04 Copyright (c) 1999-2002 DaFixer}

implementation

{$R *.DFM}

procedure TFrmMain.MemoLogChange(Sender : TObject);
begin
(*
0046F3BC   56                     push    esi
0046F3BD   8BF0                   mov     esi, eax
0046F3BF   8B86FC020000           mov     eax, [esi+$02FC]
0046F3C5   8B8020020000           mov     eax, [eax+$0220]
0046F3CB   8B10                   mov     edx, [eax]
0046F3CD   FF5214                 call    dword ptr [edx+$14]
0046F3D0   3DC8000000             cmp     eax, $000000C8
0046F3D5   7E0E                   jle     0046F3E5
0046F3D7   8B86FC020000           mov     eax, [esi+$02FC]
0046F3DD   8B10                   mov     edx, [eax]
0046F3DF   FF92E0000000           call    dword ptr [edx+$00E0]
0046F3E5   5E                     pop     esi
0046F3E6   C3                     ret

*)
end;

procedure TFrmMain.FormDestroy(Sender : TObject);
begin
(*
0046F3E8   53                     push    ebx
0046F3E9   56                     push    esi
0046F3EA   8B8060030000           mov     eax, [eax+$0360]

* Reference to: System.TObject.Free(TObject);
|
0046F3F0   E83F46F9FF             call    00403A34
0046F3F5   BEE8030000             mov     esi, $000003E8
0046F3FA   BB88934700             mov     ebx, $00479388
0046F3FF   8B03                   mov     eax, [ebx]

* Reference to: System.TObject.Free(TObject);
|
0046F401   E82E46F9FF             call    00403A34
0046F406   83C330                 add     ebx, +$30
0046F409   4E                     dec     esi
0046F40A   75F3                   jnz     0046F3FF
0046F40C   5E                     pop     esi
0046F40D   5B                     pop     ebx
0046F40E   C3                     ret

*)
end;

procedure TFrmMain.SendTimerTimer(Sender : TObject);
begin
(*
0046F594   55                     push    ebp
0046F595   8BEC                   mov     ebp, esp
0046F597   6A00                   push    $00
0046F599   6A00                   push    $00
0046F59B   6A00                   push    $00
0046F59D   53                     push    ebx
0046F59E   56                     push    esi
0046F59F   57                     push    edi
0046F5A0   8BF0                   mov     esi, eax
0046F5A2   33C0                   xor     eax, eax
0046F5A4   55                     push    ebp
0046F5A5   683EF74600             push    $0046F73E

***** TRY
|
0046F5AA   64FF30                 push    dword ptr fs:[eax]
0046F5AD   648920                 mov     fs:[eax], esp
0046F5B0   8B9EF8020000           mov     ebx, [esi+$02F8]
0046F5B6   807B3000               cmp     byte ptr [ebx+$30], $00
0046F5BA   7413                   jz      0046F5CF
0046F5BC   8B8390000000           mov     eax, [ebx+$0090]

* Reference to: ADODB.TADOConnection.GetCommandCount(TADOConnection):Integer;
|
0046F5C2   E85D69FFFF             call    00465F24
0046F5C7   8B1504564700           mov     edx, [$00475604]
0046F5CD   8902                   mov     [edx], eax
0046F5CF   A1F8524700             mov     eax, dword ptr [$004752F8]
0046F5D4   803800                 cmp     byte ptr [eax], $00
0046F5D7   7448                   jz      0046F621
0046F5D9   8D55F8                 lea     edx, [ebp-$08]
0046F5DC   A104564700             mov     eax, dword ptr [$00475604]
0046F5E1   8B00                   mov     eax, [eax]

* Reference to: SysUtils.IntToStr(Integer):AnsiString;overload;
|
0046F5E3   E8B4AFF9FF             call    0040A59C
0046F5E8   8D45F8                 lea     eax, [ebp-$08]
0046F5EB   BA54F74600             mov     edx, $0046F754

* Reference to: System.@LStrCat;
|
0046F5F0   E8FF54F9FF             call    00404AF4
0046F5F5   8B55F8                 mov     edx, [ebp-$08]
0046F5F8   8B8614030000           mov     eax, [esi+$0314]

* Reference to: Controls.TControl.SetText(TControl;TCaption);
|
0046F5FE   E8F52AFDFF             call    004420F8

* Reference to: kernel32.GetTickCount()
|
0046F603   E80476F9FF             call    00406C0C
0046F608   8B15B8554700           mov     edx, [$004755B8]
0046F60E   2B02                   sub     eax, dword ptr [edx]
0046F610   3DB80B0000             cmp     eax, $00000BB8
0046F615   7627                   jbe     0046F63E
0046F617   A1F8524700             mov     eax, dword ptr [$004752F8]
0046F61C   C60000                 mov     byte ptr [eax], $00
0046F61F   EB1D                   jmp     0046F63E
0046F621   8D55F4                 lea     edx, [ebp-$0C]
0046F624   A104564700             mov     eax, dword ptr [$00475604]
0046F629   8B00                   mov     eax, [eax]

* Reference to: SysUtils.IntToStr(Integer):AnsiString;overload;
|
0046F62B   E86CAFF9FF             call    0040A59C
0046F630   8B55F4                 mov     edx, [ebp-$0C]
0046F633   8B8614030000           mov     eax, [esi+$0314]

* Reference to: Controls.TControl.SetText(TControl;TCaption);
|
0046F639   E8BA2AFDFF             call    004420F8
0046F63E   A120544700             mov     eax, dword ptr [$00475420]
0046F643   803800                 cmp     byte ptr [eax], $00
0046F646   746A                   jz      0046F6B2
0046F648   A168574700             mov     eax, dword ptr [$00475768]
0046F64D   803800                 cmp     byte ptr [eax], $00
0046F650   7560                   jnz     0046F6B2
0046F652   BFE8030000             mov     edi, $000003E8
0046F657   BB60934700             mov     ebx, $00479360
0046F65C   8BC3                   mov     eax, ebx
0046F65E   8945FC                 mov     [ebp-$04], eax
0046F661   8B45FC                 mov     eax, [ebp-$04]
0046F664   833800                 cmp     dword ptr [eax], +$00
0046F667   7443                   jz      0046F6AC

* Reference to: kernel32.GetTickCount()
|
0046F669   E89E75F9FF             call    00406C0C
0046F66E   8B55FC                 mov     edx, [ebp-$04]
0046F671   2B421C                 sub     eax, dword ptr [edx+$1C]
0046F674   3D80EE3600             cmp     eax, $0036EE80
0046F679   7631                   jbe     0046F6AC
0046F67B   8B45FC                 mov     eax, [ebp-$04]
0046F67E   8B00                   mov     eax, [eax]

* Reference to: ScktComp.TCustomWinSocket.Close(TCustomWinSocket);
|
0046F680   E8DB54FFFF             call    00464B60
0046F685   8B45FC                 mov     eax, [ebp-$04]
0046F688   33D2                   xor     edx, edx
0046F68A   8910                   mov     [eax], edx
0046F68C   8B45FC                 mov     eax, [ebp-$04]
0046F68F   C74020FFFFFFFF         mov     dword ptr [eax+$20], $FFFFFFFF
0046F696   8B45FC                 mov     eax, [ebp-$04]
0046F699   8B4028                 mov     eax, [eax+$28]
0046F69C   8B10                   mov     edx, [eax]
0046F69E   FF5244                 call    dword ptr [edx+$44]
0046F6A1   8B45FC                 mov     eax, [ebp-$04]
0046F6A4   83C004                 add     eax, +$04

* Reference to: System.@LStrClr(void;void);
|
0046F6A7   E88051F9FF             call    0040482C
0046F6AC   83C330                 add     ebx, +$30
0046F6AF   4F                     dec     edi
0046F6B0   75AA                   jnz     0046F65C
0046F6B2   A120544700             mov     eax, dword ptr [$00475420]
0046F6B7   803800                 cmp     byte ptr [eax], $00
0046F6BA   7567                   jnz     0046F723
0046F6BC   A1E0544700             mov     eax, dword ptr [$004754E0]
0046F6C1   803800                 cmp     byte ptr [eax], $00
0046F6C4   745D                   jz      0046F723

* Reference to: kernel32.GetTickCount()
|
0046F6C6   E84175F9FF             call    00406C0C
0046F6CB   2B8674030000           sub     eax, dword ptr [esi+$0374]
0046F6D1   3DE8030000             cmp     eax, $000003E8
0046F6D6   764B                   jbe     0046F723

* Reference to: kernel32.GetTickCount()
|
0046F6D8   E82F75F9FF             call    00406C0C
0046F6DD   898674030000           mov     [esi+$0374], eax
0046F6E3   33D2                   xor     edx, edx
0046F6E5   8B8604030000           mov     eax, [esi+$0304]

* Reference to: ScktComp.TAbstractSocket.SetActive(TAbstractSocket;Boolean);
|
0046F6EB   E82C72FFFF             call    0046691C
0046F6F0   8B15DC524700           mov     edx, [$004752DC]
0046F6F6   8B12                   mov     edx, [edx]
0046F6F8   8B8604030000           mov     eax, [esi+$0304]

* Reference to: ScktComp.TAbstractSocket.SetPort(TAbstractSocket;Integer);
|
0046F6FE   E86973FFFF             call    00466A6C
0046F703   8B1598564700           mov     edx, [$00475698]
0046F709   8B12                   mov     edx, [edx]
0046F70B   8B8604030000           mov     eax, [esi+$0304]

* Reference to: ScktComp.TAbstractSocket.SetHost(TAbstractSocket;AnsiString);
|
0046F711   E8D672FFFF             call    004669EC
0046F716   B201                   mov     dl, $01
0046F718   8B8604030000           mov     eax, [esi+$0304]

* Reference to: ScktComp.TAbstractSocket.SetActive(TAbstractSocket;Boolean);
|
0046F71E   E8F971FFFF             call    0046691C
0046F723   33C0                   xor     eax, eax
0046F725   5A                     pop     edx
0046F726   59                     pop     ecx
0046F727   59                     pop     ecx
0046F728   648910                 mov     fs:[eax], edx

****** FINALLY
|
0046F72B   6845F74600             push    $0046F745
0046F730   8D45F4                 lea     eax, [ebp-$0C]
0046F733   BA02000000             mov     edx, $00000002

* Reference to: System.@LStrArrayClr(void;void;Integer);
|
0046F738   E81351F9FF             call    00404850
0046F73D   C3                     ret


* Reference to: System.@HandleFinally;
|
0046F73E   E9414AF9FF             jmp     00404184
0046F743   EBEB                   jmp     0046F730

****** END
|
0046F745   5F                     pop     edi
0046F746   5E                     pop     esi
0046F747   5B                     pop     ebx
0046F748   8BE5                   mov     esp, ebp
0046F74A   5D                     pop     ebp
0046F74B   C3                     ret

*)
end;

procedure TFrmMain.TimerTimer(Sender : TObject);
begin
(*
0046F758   55                     push    ebp
0046F759   8BEC                   mov     ebp, esp
0046F75B   B905000000             mov     ecx, $00000005
0046F760   6A00                   push    $00
0046F762   6A00                   push    $00
0046F764   49                     dec     ecx
0046F765   75F9                   jnz     0046F760
0046F767   51                     push    ecx
0046F768   53                     push    ebx
0046F769   8BD8                   mov     ebx, eax
0046F76B   33C0                   xor     eax, eax
0046F76D   55                     push    ebp

* Possible String Reference to: '槁G

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -