这是某个软件的formcreate,请firstrose帮忙看一下划线的地方应该怎么逆?
unit fmMain;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics,
Controls, Forms, Dialogs, StdCtrls
type
TfMain=class(TForm)
MainMenu: TMainMenu;
File1: TMenuItem;
UpdateNow: TMenuItem;
ExitProgram: TMenuItem;
Help1: TMenuItem;
TextHelp: TMenuItem;
About: TMenuItem;
N1: TMenuItem;
OpenCurr: TMenuItem;
ToolBar1: TToolBar;
Window1: TMenuItem;
CascadeWin: TMenuItem;
TileWin: TMenuItem;
ToolButton1: TToolButton;
ToolButton2: TToolButton;
ToolButton3: TToolButton;
ToolButton4: TToolButton;
ToolButton5: TToolButton;
ToolButton6: TToolButton;
Bar: TStatusBarPro;
AppEvents: TAppEvents;
Popup: TPopupMenu;
SC1: TMenuItem;
Help2: TMenuItem;
N2: TMenuItem;
ToolButton7: TToolButton;
ToolButton8: TToolButton;
ToolButton9: TToolButton;
N3: TMenuItem;
Readme1: TMenuItem;
OFFS_0374: N.A.;
OFFS_0375: N.A.;
OFFS_0378: N.A.;
OFFS_0370: N.A.;
procedure FormCreate(Sender : TObject);
procedure CascadeWinClick(Sender : TObject);
procedure TileWinClick(Sender : TObject);
procedure FormClose(Sender : TObject);
procedure AboutClick(Sender : TObject);
procedure AppEventsMessage(Sender : TObject);
procedure ExitProgramClick(Sender : TObject);
procedure SC1Click(Sender : TObject);
procedure TextHelpClick(Sender : TObject);
procedure FormActivate(Sender : TObject);
procedure HelpClick(Sender : TObject);
procedure UpdateNowClick(Sender : TObject);
procedure Readme1Click(Sender : TObject);
private
{ Private declarations }
public
{ Public declarations }
end ;
var
fMain: TfMain;
{This file is generated by DeDe Ver 3.50.02 Copyright (c) 1999-2002 DaFixer}
implementation
{$R *.DFM}
procedure TfMain.FormCreate(Sender : TObject);
begin
(*
0051B0AC 53 push ebx
0051B0AD 8BD8 mov ebx, eax
* Reference to field TfMain.OFFS_0374 : Byte
|
0051B0AF C6837403000000 mov byte ptr [ebx+$0374], $00
* Reference to field TfMain.OFFS_0375 : Byte
|
0051B0B6 C6837503000001 mov byte ptr [ebx+$0375], $01
* Reference to field TfMain.OFFS_0378 : String
|
0051B0BD 8D8378030000 lea eax, [ebx+$0378]
* Reference to: System.@LStrClr(void;void);
|
0051B0C3 E83497EEFF call 004047FC
-------------------------------------------------------------------------------------------------
* Reference to field TfMain.TileMode : TTileMode
|
0051B0C8 C6833202000001 mov byte ptr [ebx+$0232], $01
* Reference to TScreen instance
|
0051B0CF A1B8EA5100 mov eax, dword ptr [$0051EAB8]
0051B0D4 8B00 mov eax, [eax]
* Reference to: Forms.TScreen.GetWidth(TScreen):Integer;
|
0051B0D6 E835CAF5FF call 00477B10
-------------------------------------------------------------------------------------------------
0051B0DB 8BD0 mov edx, eax
0051B0DD 83EA28 sub edx, +$28
0051B0E0 8BC3 mov eax, ebx
* Reference to: Controls.TControl.SetWidth(TControl;Integer);
|
0051B0E2 E875E4F3FF call 0045955C
* Reference to TScreen instance
|
0051B0E7 A1B8EA5100 mov eax, dword ptr [$0051EAB8]
0051B0EC 8B00 mov eax, [eax]
* Reference to: Forms.TScreen.GetHeight(TScreen):Integer;
|
0051B0EE E811CAF5FF call 00477B04
----------------------------------------------------------------------
0051B0F3 8BD0 mov edx, eax
0051B0F5 83EA28 sub edx, +$28
0051B0F8 8BC3 mov eax, ebx
* Reference to: Controls.TControl.SetHeight(TControl;Integer);
|
0051B0FA E881E4F3FF call 00459580
----------------------------------------------------------------------
0051B0FF 8BC3 mov eax, ebx
|
0051B101 E8C6000000 call 0051B1CC
0051B106 B201 mov dl, $01
* Reference to class TStringList
|
0051B108 A17CBF4100 mov eax, dword ptr [$0041BF7C]
* Reference to: System.TObject.Create(TObject;Boolean);
|
0051B10D E8A688EEFF call 004039B8
* Reference to field TfMain.OFFS_0370 : TStringList
|
0051B112 898370030000 mov [ebx+$0370], eax
0051B118 8BC3 mov eax, ebx
|
0051B11A E8B5010000 call 0051B2D4
0051B11F 5B pop ebx
0051B120 C3 ret
*)
end;
----------------------------------------------------------------------
procedure TfMain.CascadeWinClick(Sender : TObject);
begin
(*
* Reference to: Forms.TForm.Cascade(TForm);
| or: Forms.TForm.ArrangeIcons(TForm);
| or: Forms.TForm.Next(TForm);
|
0051B1A8 E8FBC1F5FF call 004773A8
0051B1AD C3 ret
*)
end;
procedure TfMain.TileWinClick(Sender : TObject);
begin
(*
* Reference to : TApplication._PROC_00477370()
|
0051B1B0 E8BBC1F5FF call 00477370
0051B1B5 C3 ret
*)
end;
procedure TfMain.FormClose(Sender : TObject);
begin
(*
0051B150 53 push ebx
0051B151 56 push esi
0051B152 8BF1 mov esi, ecx
0051B154 8BD8 mov ebx, eax
* Reference to field TfMain.OFFS_0374 : Byte
|
0051B156 80BB7403000000 cmp byte ptr [ebx+$0374], $00
0051B15D 751D jnz 0051B17C
0051B15F 8BC3 mov eax, ebx
* Reference to: Forms.TCustomForm.GetActiveMDIChild(TCustomForm):TForm;
|
0051B161 E8FE8DF5FF call 00473F64
0051B166 85C0 test eax, eax
0051B168 7412 jz 0051B17C
0051B16A 8BC3 mov eax, ebx
* Reference to: Forms.TCustomForm.GetActiveMDIChild(TCustomForm):TForm;
|
0051B16C E8F38DF5FF call 00473F64
* Reference to: Forms.TCustomForm.Close(TCustomForm);
|
0051B171 E80AB7F5FF call 00476880
0051B176 C60600 mov byte ptr [esi], $00
0051B179 5E pop esi
0051B17A 5B pop ebx
0051B17B C3 ret
0051B17C 8B8370030000 mov eax, [ebx+$0370]
* Reference to: System.TObject.Free(TObject);
|
0051B182 E86188EEFF call 004039E8
0051B187 5E pop esi
0051B188 5B pop ebx
0051B189 C3 ret
*)
end;
procedure TfMain.AboutClick(Sender : TObject);
begin
(*
|
0051B1C4 E8EF37FEFF call 004FE9B8
0051B1C9 C3 ret
*)
end;
procedure TfMain.AppEventsMessage(Sender : TObject);
begin
(*
0051AEC8 55 push ebp
0051AEC9 8BEC mov ebp, esp
0051AECB 6A00 push $00
0051AECD 53 push ebx
0051AECE 56 push esi
0051AECF 8BDA mov ebx, edx
0051AED1 8BF0 mov esi, eax
0051AED3 33C0 xor eax, eax
0051AED5 55 push ebp
* Possible String Reference to: '榕??疝[Y]?
|
0051AED6 68B2AF5100 push $0051AFB2
***** TRY
|
0051AEDB 64FF30 push dword ptr fs:[eax]
0051AEDE 648920 mov fs:[eax], esp
0051AEE1 817B0464040000 cmp dword ptr [ebx+$04], $00000464
0051AEE8 0F85AE000000 jnz 0051AF9C
0051AEEE 8B4308 mov eax, [ebx+$08]
0051AEF1 48 dec eax
0051AEF2 7413 jz 0051AF07
0051AEF4 48 dec eax
0051AEF5 0F8488000000 jz 0051AF83
0051AEFB 48 dec eax
0051AEFC 0F8493000000 jz 0051AF95
0051AF02 E995000000 jmp 0051AF9C
0051AF07 C60101 mov byte ptr [ecx], $01
* Reference to control TfMain.Bar : TStatusBarPro
|
0051AF0A 8B8644030000 mov eax, [esi+$0344]
* Reference to field TStatusBarPro.OFFS_0208
|
0051AF10 8B8008020000 mov eax, [eax+$0208]
0051AF16 BA01000000 mov edx, $00000001
* Reference to: ActnMan.TActionListCollection.GetListItem(TActionListCollection;Integer):TActionListItem;
| or: ActnMan.TActionClientsCollection.GetActionClient(TActionClientsCollection;Integer):TActionClient;
| or: ActnMan.TActionBars.GetActionBar(TActionBars;Integer):TActionBarItem;
| or: ActnMan.TActionClients.GetActionClient(TActionClients;Integer):TActionClientItem;
| or: ActnMenus.TMenuList.GetMenu(TMenuList;Integer):TCustomActionMenuBar;
| or: ADODB.TParameters.GetItem(TParameters;Integer):TParameter;
|
0051AF1B E8140CF7FF call 0048BB34
0051AF20 50 push eax
0051AF21 8D45FC lea eax, [ebp-$04]
0051AF24 8B530C mov edx, [ebx+$0C]
* Reference to: System.@LStrFromPChar(String;String;PAnsiChar);
| or: System.@WStrFromPChar(WideString;WideString;PAnsiChar);
|
0051AF27 E8C89AEEFF call 004049F4
0051AF2C 8B55FC mov edx, [ebp-$04]
0051AF2F 58 pop eax
* Reference to: ComCtrls.TStatusPanel.SetText(TStatusPanel;AnsiString);
| or: ComCtrls.THeaderSection.SetText(THeaderSection;AnsiString);
|
0051AF30 E8BB0AF7FF call 0048B9F0
0051AF35 8BC6 mov eax, esi
* Reference to: Forms.TCustomForm.GetMDIChildCount(TCustomForm):Integer;
|
0051AF37 E85C90F5FF call 00473F98
0051AF3C 48 dec eax
0051AF3D 7E22 jle 0051AF61
* Reference to control TfMain.Bar : TStatusBarPro
|
0051AF3F 8B8644030000 mov eax, [esi+$0344]
* Reference to field TStatusBarPro.OFFS_0208
|
0051AF45 8B8008020000 mov eax, [eax+$0208]
0051AF4B BA02000000 mov edx, $00000002
* Reference to: ActnMan.TActionListCollection.GetListItem(TActionListCollection;Integer):TActionListItem;
| or: ActnMan.TActionClientsCollection.GetActionClient(TActionClientsCollection;Integer):TActionClient;
| or: ActnMan.TActionBars.GetActionBar(TActionBars;Integer):TActionBarItem;
| or: ActnMan.TActionClients.GetActionClient(TActionClients;Integer):TActionClientItem;
| or: ActnMenus.TMenuList.GetMenu(TMenuList;Integer):TCustomActionMenuBar;
| or: ADODB.TParameters.GetItem(TParameters;Integer):TParameter;
|
0051AF50 E8DF0BF7FF call 0048BB34
* Possible String Reference to: ' CTRL+TAB - select window F1 - us
| er guide F2/Right click - select c
| urrency F3 - tile F4 - cascade
| F10 - main menu'
|
0051AF55 BAC8AF5100 mov edx, $0051AFC8
* Reference to: ComCtrls.TStatusPanel.SetText(TStatusPanel;AnsiString);
| or: ComCtrls.THeaderSection.SetText(THeaderSection;AnsiString);
|
0051AF5A E8910AF7FF call 0048B9F0
0051AF5F EB3B jmp 0051AF9C
* Reference to control TfMain.Bar : TStatusBarPro
|
0051AF61 8B8644030000 mov eax, [esi+$0344]
* Reference to field TStatusBarPro.OFFS_0208
|
0051AF67 8B8008020000 mov eax, [eax+$0208]
0051AF6D BA02000000 mov edx, $00000002
* Reference to: ActnMan.TActionListCollection.GetListItem(TActionListCollection;Integer):TActionListItem;
| or: ActnMan.TActionClientsCollection.GetActionClient(TActionClientsCollection;Integer):TActionClient;
| or: ActnMan.TActionBars.GetActionBar(TActionBars;Integer):TActionBarItem;
| or: ActnMan.TActionClients.GetActionClient(TActionClients;Integer):TActionClientItem;
| or: ActnMenus.TMenuList.GetMenu(TMenuList;Integer):TCustomActionMenuBar;
| or: ADODB.TParameters.GetItem(TParameters;Integer):TParameter;
|
0051AF72 E8BD0BF7FF call 0048BB34
* Possible String Reference to: ' F1 - user guide F2/Right click -
| select currency F3 - tile F4 -
| cascade F10 - main menu'
|
0051AF77 BA4CB05100 mov edx, $0051B04C
* Reference to: ComCtrls.TStatusPanel.SetText(TStatusPanel;AnsiString);
| or: ComCtrls.THeaderSection.SetText(THeaderSection;AnsiString);
|
0051AF7C E86F0AF7FF call 0048B9F0
0051AF81 EB19 jmp 0051AF9C
0051AF83 C60101 mov byte ptr [ecx], $01
0051AF86 837B0C01 cmp dword ptr [ebx+$0C], +$01
0051AF8A 7F10 jnle 0051AF9C
0051AF8C 8BC6 mov eax, esi
|
0051AF8E E839020000 call 0051B1CC
0051AF93 EB07 jmp 0051AF9C
0051AF95 8BC6 mov eax, esi
|
0051AF97 E838030000 call 0051B2D4
0051AF9C 33C0 xor eax, eax
0051AF9E 5A pop edx
0051AF9F 59 pop ecx
0051AFA0 59 pop ecx
0051AFA1 648910 mov fs:[eax], edx
****** FINALLY
|
* Possible String Reference to: '^[Y]?
|
0051AFA4 68B9AF5100 push $0051AFB9
0051AFA9 8D45FC lea eax, [ebp-$04]
* Reference to: System.@LStrClr(void;void);
|
0051AFAC E84B98EEFF call 004047FC
0051AFB1 C3 ret
* Reference to: System.@HandleFinally;
|
0051AFB2 E9C591EEFF jmp 0040417C
0051AFB7 EBF0 jmp 0051AFA9
****** END
|
0051AFB9 5E pop esi
0051AFBA 5B pop ebx
0051AFBB 59 pop ecx
0051AFBC 5D pop ebp
0051AFBD C3 ret
*)
end;
procedure TfMain.ExitProgramClick(Sender : TObject);
begin
(*
* Reference to field TfMain.OFFS_0374 : Byte
|
0051B24C C6807403000001 mov byte ptr [eax+$0374], $01
* Reference to: Forms.TCustomForm.Close(TCustomForm);
|
0051B253 E828B6F5FF call 00476880
0051B258 C3 ret
*)
end;
procedure TfMain.SC1Click(Sender : TObject);
begin
(*
0051B18C 53 push ebx
* Reference to field TfMain.Top : Integer
|
0051B18D 8B4844 mov ecx, [eax+$44]
0051B190 83C120 add ecx, +$20
* Reference to field TfMain.Left : Integer
|
0051B193 8B5040 mov edx, [eax+$40]
0051B196 83C210 add edx, +$10
* Reference to control TfMain.Popup : TPopupMenu
|
0051B199 8B804C030000 mov eax, [eax+$034C]
0051B19F 8B18 mov ebx, [eax]
* Reference to method TPopupMenu.Popup(Integer,Integer)
|
0051B1A1 FF5340 call dword ptr [ebx+$40]
0051B1A4 5B pop ebx
0051B1A5 C3 ret
*)
end;
procedure TfMain.TextHelpClick(Sender : TObject);
begin
(*
|
0051B25C E8EB80FCFF call 004E334C
0051B261 84C0 test al, al
0051B263 740B jz 0051B270
* Possible String Reference to: 'fxguide.hlp'
|
0051B265 B880B25100 mov eax, $0051B280
|
0051B26A E8F585FCFF call 004E3864
0051B26F C3 ret
|
0051B270 E8AF89FCFF call 004E3C24
0051B275 C3 ret
*)
end;
procedure TfMain.FormActivate(Sender : TObject);
begin
(*
0051B124 53 push ebx
0051B125 8BD8 mov ebx, eax
|
0051B127 E82082FCFF call 004E334C
0051B12C 8BD0 mov edx, eax
* Reference to control TfMain.UpdateNow : TMenuItem
|
0051B12E 8B8300030000 mov eax, [ebx+$0300]
* Reference to: Menus.TMenuItem.SetEnabled(TMenuItem;Boolean);
|
0051B134 E8E30FF5FF call 0046C11C
* Reference to field TfMain.OFFS_0375 : Byte
|
0051B139 80BB7503000000 cmp byte ptr [ebx+$0375], $00
0051B140 7405 jz 0051B147
|
0051B142 E87138FEFF call 004FE9B8
* Reference to field TfMain.OFFS_0375 : Byte
|
0051B147 C6837503000000 mov byte ptr [ebx+$0375], $00
0051B14E 5B pop ebx
0051B14F C3 ret
*)
end;
procedure TfMain.HelpClick(Sender : TObject);
begin
(*
* Possible String Reference to: 'fxhelp.hlp'
|
0051B28C B8A0B25100 mov eax, $0051B2A0
|
0051B291 E8CE85FCFF call 004E3864
0051B296 C3 ret
*)
end;
procedure TfMain.UpdateNowClick(Sender : TObject);
begin
(*
|
0051B2CC E8BBE8FFFF call 00519B8C
0051B2D1 C3 ret
*)
end;
procedure TfMain.Readme1Click(Sender : TObject);
begin
(*
* Possible String Reference to: 'readme.txt'
|
0051B2AC B8C0B25100 mov eax, $0051B2C0
|
0051B2B1 E8AE85FCFF call 004E3864
0051B2B6 C3 ret
*)
end;
end.
[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课