object frmRescanPointer: TfrmRescanPointer Left = 1527 Height = 342 Top = 540 Width = 377 AutoSize = True BorderStyle = bsDialog Caption = 'Rescan pointerlist' ClientHeight = 342 ClientWidth = 377 OnCreate = FormCreate OnDestroy = FormDestroy OnShow = FormShow Position = poScreenCenter LCLVersion = '1.6.0.4' object pnlButtons: TPanel AnchorSideLeft.Control = Owner AnchorSideLeft.Side = asrCenter AnchorSideTop.Control = Panel1 AnchorSideTop.Side = asrBottom Left = 110 Height = 25 Top = 306 Width = 157 AutoSize = True BorderSpacing.Top = 4 BorderSpacing.Bottom = 4 BevelOuter = bvNone ClientHeight = 25 ClientWidth = 157 TabOrder = 0 object Button2: TButton AnchorSideLeft.Control = Button1 AnchorSideLeft.Side = asrBottom AnchorSideTop.Control = Button1 Left = 82 Height = 25 Top = 0 Width = 75 AutoSize = True BorderSpacing.Left = 7 Cancel = True Caption = 'Cancel' Constraints.MinWidth = 75 ModalResult = 2 OnClick = Button2Click TabOrder = 1 end object Button1: TButton AnchorSideLeft.Control = pnlButtons AnchorSideTop.Control = pnlButtons Left = 0 Height = 25 Top = 0 Width = 75 AutoSize = True Caption = 'OK' Constraints.MinWidth = 75 Default = True OnClick = Button1Click TabOrder = 0 end end object Panel1: TPanel AnchorSideLeft.Control = Owner AnchorSideTop.Control = Owner Left = 0 Height = 302 Top = 0 Width = 344 AutoSize = True BevelOuter = bvNone ClientHeight = 302 ClientWidth = 344 TabOrder = 1 object edtAddress: TEdit AnchorSideLeft.Control = Panel2 AnchorSideTop.Control = Panel2 AnchorSideTop.Side = asrBottom Left = 8 Height = 23 Top = 20 Width = 176 BorderSpacing.Right = 8 CharCase = ecUppercase TabOrder = 0 end object cbValueType: TComboBox AnchorSideLeft.Control = edtAddress AnchorSideLeft.Side = asrBottom AnchorSideTop.Control = edtAddress AnchorSideTop.Side = asrCenter Left = 192 Height = 23 Top = 20 Width = 132 BorderSpacing.Right = 8 ItemHeight = 15 ItemIndex = 0 Items.Strings = ( '4 Byte' 'Float' 'Double' ) Style = csDropDownList TabOrder = 1 Text = '4 Byte' end object Panel2: TPanel AnchorSideLeft.Control = Panel1 AnchorSideTop.Control = Panel1 Left = 8 Height = 19 Top = 1 Width = 197 AutoSize = True BorderSpacing.Left = 8 BorderSpacing.Top = 1 BorderSpacing.Right = 4 BevelOuter = bvNone ClientHeight = 19 ClientWidth = 197 TabOrder = 2 object rbFindAddress: TRadioButton AnchorSideLeft.Control = Panel2 AnchorSideTop.Control = Panel2 Left = 0 Height = 19 Top = 0 Width = 103 Caption = 'Address to find:' Checked = True OnClick = rbFindAddressClick TabOrder = 0 TabStop = True end object rbFindValue: TRadioButton AnchorSideLeft.Control = rbFindAddress AnchorSideLeft.Side = asrBottom AnchorSideTop.Control = Panel2 Left = 107 Height = 19 Top = 0 Width = 90 BorderSpacing.Left = 4 Caption = 'Value to find:' OnClick = rbFindAddressClick TabOrder = 1 end end object cbDelay: TCheckBox AnchorSideLeft.Control = edtAddress AnchorSideTop.Control = edtDelay AnchorSideTop.Side = asrCenter Left = 8 Height = 19 Top = 102 Width = 104 Caption = 'Delay rescan for' TabOrder = 3 end object edtDelay: TEdit AnchorSideLeft.Control = cbDelay AnchorSideLeft.Side = asrBottom AnchorSideTop.Control = cbFilterOutAccessible AnchorSideTop.Side = asrBottom Left = 115 Height = 23 Top = 100 Width = 32 BorderSpacing.Left = 3 TabOrder = 4 Text = '0' end object Label1: TLabel AnchorSideLeft.Control = edtDelay AnchorSideLeft.Side = asrBottom AnchorSideTop.Control = edtDelay AnchorSideTop.Side = asrCenter Left = 150 Height = 15 Top = 104 Width = 43 BorderSpacing.Left = 3 Caption = 'seconds' ParentColor = False end object cbBasePointerMustBeInRange: TCheckBox AnchorSideLeft.Control = edtAddress AnchorSideTop.Control = edtRescanFunction AnchorSideTop.Side = asrBottom Left = 8 Height = 19 Top = 165 Width = 177 Caption = 'Base pointer must be in range' OnChange = cbBasePointerMustBeInRangeChange TabOrder = 5 end object edtBaseStart: TEdit AnchorSideLeft.Control = cbBasePointerMustBeInRange AnchorSideTop.Control = cbBasePointerMustBeInRange AnchorSideTop.Side = asrBottom Left = 24 Height = 23 Top = 184 Width = 112 BorderSpacing.Left = 16 CharCase = ecUppercase Enabled = False TabOrder = 6 Text = '0000000000000000' end object cbMustStartWithSpecificOffsets: TCheckBox AnchorSideLeft.Control = edtAddress AnchorSideTop.Control = pnlRangeOffset AnchorSideTop.Side = asrBottom Left = 8 Height = 19 Top = 264 Width = 137 Caption = 'Must start with offsets' OnChange = cbMustStartWithSpecificOffsetsChange TabOrder = 7 end object edtBaseEnd: TEdit AnchorSideLeft.Control = lblAnd AnchorSideLeft.Side = asrBottom AnchorSideTop.Control = lblAnd AnchorSideTop.Side = asrCenter Left = 162 Height = 23 Top = 184 Width = 112 BorderSpacing.Left = 3 CharCase = ecUppercase Enabled = False TabOrder = 8 Text = 'FFFFFFFFFFFFFFFF' end object lblAnd: TLabel AnchorSideLeft.Control = edtBaseStart AnchorSideLeft.Side = asrBottom AnchorSideTop.Control = edtBaseStart AnchorSideTop.Side = asrCenter Left = 139 Height = 15 Top = 188 Width = 20 BorderSpacing.Left = 3 Caption = 'and' Enabled = False ParentColor = False end object cbMustEndWithSpecificOffsets: TCheckBox AnchorSideLeft.Control = edtAddress AnchorSideTop.Control = cbMustStartWithSpecificOffsets AnchorSideTop.Side = asrBottom Left = 8 Height = 19 Top = 283 Width = 134 Caption = 'Must end with offsets' OnChange = cbMustEndWithSpecificOffsetsChange TabOrder = 9 end object cbRepeat: TCheckBox AnchorSideLeft.Control = edtAddress AnchorSideTop.Control = edtDelay AnchorSideTop.Side = asrBottom Left = 8 Height = 19 Top = 123 Width = 166 Caption = 'Repeat rescan until stopped' TabOrder = 10 end object cbNoValueCheck: TCheckBox AnchorSideLeft.Control = edtAddress AnchorSideTop.Control = cbUseSavedPointermap AnchorSideTop.Side = asrBottom Left = 8 Height = 19 Top = 62 Width = 177 Caption = 'Only filter out invalid pointers' OnChange = cbNoValueCheckChange TabOrder = 11 end object cbFilterOutAccessible: TCheckBox AnchorSideLeft.Control = edtAddress AnchorSideTop.Control = cbNoValueCheck AnchorSideTop.Side = asrBottom Left = 8 Height = 19 Top = 81 Width = 195 Caption = 'Only filter out accessible pointers' OnChange = cbFilterOutAccessibleChange TabOrder = 17 end object cbLuaFilter: TCheckBox AnchorSideLeft.Control = edtAddress AnchorSideTop.Control = edtRescanFunction AnchorSideTop.Side = asrCenter Left = 8 Height = 19 Hint = 'When checked this will call the given function for every pointer being evaluated. Return true if it''s valid, false if not'#13#10'base is the base address (integer)'#13#10'offset is a table with offsets'#13#10'target is the address the pointer points to. Can be nil' Top = 144 Width = 117 Caption = 'Lua filter. function' OnChange = cbLuaFilterChange ParentShowHint = False ShowHint = True TabOrder = 12 end object edtRescanFunction: TEdit AnchorSideLeft.Control = cbLuaFilter AnchorSideLeft.Side = asrBottom AnchorSideTop.Control = cbRepeat AnchorSideTop.Side = asrBottom Left = 127 Height = 23 Top = 142 Width = 72 BorderSpacing.Left = 2 Enabled = False TabOrder = 13 Text = 'RescanFilter' end object lblLuaParams: TLabel AnchorSideLeft.Control = edtRescanFunction AnchorSideLeft.Side = asrBottom AnchorSideTop.Control = edtRescanFunction AnchorSideTop.Side = asrCenter Left = 202 Height = 15 Top = 146 Width = 137 BorderSpacing.Left = 3 BorderSpacing.Right = 5 Caption = '(base, offsets, target):bool' ParentColor = False end object cbUseSavedPointermap: TCheckBox AnchorSideLeft.Control = edtAddress AnchorSideTop.Control = edtAddress AnchorSideTop.Side = asrBottom Left = 8 Height = 19 Hint = 'Normally this should not be used. Saved pointermaps are best suited for the initial scan.'#13#10'One case where it could be useful is where you have a pointerfile that is too big to send to someone else, but the scandata file is not. In that case, ask the other person for the scandata and do the scan on your system against the current pointerfile' Top = 43 Width = 137 Caption = 'Use saved pointermap' OnChange = cbUseSavedPointermapChange ParentShowHint = False ShowHint = True TabOrder = 14 end object cbChangeBasePointerOffset: TCheckBox AnchorSideLeft.Control = edtAddress AnchorSideTop.Control = edtBaseStart AnchorSideTop.Side = asrBottom Left = 8 Height = 19 Top = 207 Width = 264 Caption = 'Change base pointer address by specific offset' OnChange = cbChangeBasePointerOffsetChange TabOrder = 15 Visible = False end object pnlRangeOffset: TPanel AnchorSideLeft.Control = cbChangeBasePointerOffset AnchorSideTop.Control = cbChangeBasePointerOffset AnchorSideTop.Side = asrBottom Left = 8 Height = 38 Top = 226 Width = 284 AutoSize = True BevelOuter = bvNone ClientHeight = 38 ClientWidth = 284 Enabled = False TabOrder = 16 Visible = False object Panel3: TPanel AnchorSideLeft.Control = pnlRangeOffset AnchorSideTop.Control = pnlRangeOffset Left = 16 Height = 30 Top = 0 Width = 112 AutoSize = True BorderSpacing.Left = 16 BevelOuter = bvNone ClientHeight = 30 ClientWidth = 112 TabOrder = 0 object Label3: TLabel AnchorSideLeft.Control = Panel3 AnchorSideTop.Control = Panel3 AnchorSideRight.Control = Panel3 AnchorSideRight.Side = asrBottom Left = 0 Height = 15 Top = 0 Width = 112 Anchors = [akTop, akLeft, akRight] Caption = 'Original base address' ParentColor = False end object lblOriginalBase: TLabel AnchorSideLeft.Control = Panel3 AnchorSideTop.Control = Label3 AnchorSideTop.Side = asrBottom AnchorSideRight.Control = Panel3 AnchorSideRight.Side = asrBottom Left = 0 Height = 15 Top = 15 Width = 112 Alignment = taCenter Anchors = [akTop, akLeft, akRight] Caption = '
' ParentColor = False end end object Label2: TLabel AnchorSideLeft.Control = Panel3 AnchorSideLeft.Side = asrBottom AnchorSideTop.Control = Panel3 AnchorSideRight.Side = asrBottom Left = 136 Height = 15 Top = 0 Width = 94 Alignment = taCenter BorderSpacing.Left = 8 Caption = 'New base address' ParentColor = False end object edtNewBase: TEdit AnchorSideLeft.Control = Label2 AnchorSideTop.Control = Label2 AnchorSideTop.Side = asrBottom AnchorSideRight.Control = Label2 AnchorSideRight.Side = asrBottom Left = 136 Height = 23 Top = 15 Width = 112 OnChange = edtNewBaseChange TabOrder = 1 Text = '12345678' end object lblOffset: TLabel AnchorSideLeft.Control = edtNewBase AnchorSideLeft.Side = asrBottom AnchorSideTop.Control = edtNewBase AnchorSideTop.Side = asrCenter AnchorSideRight.Control = pnlRangeOffset AnchorSideRight.Side = asrBottom Left = 248 Height = 15 Top = 19 Width = 36 Caption = '=XXXX' ParentColor = False end end end object odLoadPointermap: TOpenDialog DefaultExt = '.scandata' Filter = 'All files (*.*)|*.*|scandata files (*.scandata)|*.scandata' FilterIndex = 2 left = 260 top = 44 end end