Interactive Delphi Reconstructor (IDR). Миттельшпиль

Тема в разделе "WASM.RESEARCH", создана пользователем crypto, 6 дек 2009.

Статус темы:
Закрыта.
  1. crypto

    crypto Active Member

    Публикаций:
    0
    Регистрация:
    13 дек 2005
    Сообщения:
    2.533
    Итак, игрища с Дельфи вошли в новое состояние. Нужны активные тестировщики, которые бы проверили правильность создаваемого контента с точки зрения реверсера. Желающие шлите мне сообщения в личку. Отзывы можно будет выкладывать здесь.
     
  2. crypto

    crypto Active Member

    Публикаций:
    0
    Регистрация:
    13 дек 2005
    Сообщения:
    2.533
    Чтобы было понятно, о чем речь, вот ссылка
    http://www.wasm.ru/forum/viewtopic.php?id=17441
     
  3. InsidE

    InsidE Member

    Публикаций:
    0
    Регистрация:
    28 май 2009
    Сообщения:
    357
    Адрес:
    Over the hills and far away...
    Interactive Delphi Reconstructor = IDR а не IRD ,как в загаловке
     
  4. crypto

    crypto Active Member

    Публикаций:
    0
    Регистрация:
    13 дек 2005
    Сообщения:
    2.533
    1nsidE
    Опепятка в загаловке
     
  5. InsidE

    InsidE Member

    Публикаций:
    0
    Регистрация:
    28 май 2009
    Сообщения:
    357
    Адрес:
    Over the hills and far away...
    а я что другое имел ввиду?
     
  6. InsidE

    InsidE Member

    Публикаций:
    0
    Регистрация:
    28 май 2009
    Сообщения:
    357
    Адрес:
    Over the hills and far away...
    у мну не запустился,выпадает с еррором "Cannot initialize disasm",система xp sp3
    [​IMG]
     
  7. crypto

    crypto Active Member

    Публикаций:
    0
    Регистрация:
    13 дек 2005
    Сообщения:
    2.533
    1nsidE
    Да у тебя просто остальных файлоы нет! Вот линки

    http://rapidshare.com/files/277625537/kb2006.rar
    http://hamstershare.com/dload/dff22f30bb58fa6e246c49ed52a3f512

    http://rapidshare.com/files/277625387/kb7.rar
    http://hamstershare.com/dload/d7b18834addf071dc69369d28b98239c

    http://rapidshare.com/files/277625246/kb6.rar
    http://hamstershare.com/dload/9337dbd34628a68bb9d75d377ab46607

    http://rapidshare.com/files/277625108/kb5.rar
    http://hamstershare.com/dload/70388f1dc5089a3ecbba7c5ad5c73440

    http://rapidshare.com/files/277622585/kb4.rar
    http://hamstershare.com/dload/b36a60bc0cbacba4ace7459bc505680c

    http://rapidshare.com/files/277622318/kb3.rar
    http://hamstershare.com/dload/e9f963ee0058b15309d4579817fefe9e

    http://rapidshare.com/files/277622146/kb2.rar
    http://hamstershare.com/dload/c9862e873eb372ea05179ccb17073c40

    http://rapidshare.com/files/277621796/idr.rar
    http://hamstershare.com/dload/acd77a4a7b08d749033fea83abd7f326

    Скачиваешь idr.rar из этих линков, потом базы знаний и заменяешь idr.exe на тот, который получил от меня сегодня
     
  8. crypto

    crypto Active Member

    Публикаций:
    0
    Регистрация:
    13 дек 2005
    Сообщения:
    2.533
    Вот состав обязательных файлов (содержимое архива idr.rar по ссылке http://hamstershare.com/dload/acd77a4a7 … 83abd7f326):
    idr.exe
    msdis110.dll
    syskb*.*

    Остальные файлы опциональны - если хочется разбирать файлы написанные на Дельфи N, скачиваем архив kbN.rar
     
  9. InsidE

    InsidE Member

    Публикаций:
    0
    Регистрация:
    28 май 2009
    Сообщения:
    357
    Адрес:
    Over the hills and far away...
    скачал,пока полет нормальный,как я понял функция 'decompile' не резлизована....
     
  10. crypto

    crypto Active Member

    Публикаций:
    0
    Регистрация:
    13 дек 2005
    Сообщения:
    2.533
    Вот небольшой пример того, что получается в результате анализа:

    Код (Text):
    1. sub_0048B3D4
    2.  0048B3D4     push       ebp
    3.  0048B3D5     mov        ebp,esp
    4.  0048B3D7     push       0
    5.  0048B3D9     push       0
    6.  0048B3DB     push       ebx
    7.  0048B3DC     push       esi
    8.  0048B3DD     mov        ebx,eax
    9.  0048B3DF     xor        eax,eax
    10.  0048B3E1     push       ebp
    11.  0048B3E2     push       48B4EC
    12.  0048B3E7     push       dword ptr fs:[eax]
    13.  0048B3EA     mov        dword ptr fs:[eax],esp
    14.  0048B3ED     mov        eax,ebx
    15.  0048B3EF     call       004A9DB8
    16.  0048B3F4     mov        byte ptr [ebx+57C],1; TMainForm.?f57C:?
    17.  0048B3FB     mov        byte ptr [ebx+57D],0; TMainForm.?f57D:?
    18.  0048B402     mov        edx,48B504; 'Beyond Compare'
    19.  0048B407     mov        eax,ebx
    20.  0048B409     call       TControl.SetText
    21.  0048B40E     xor        eax,eax
    22.  0048B410     mov        dword ptr [ebx+5B8],eax; TMainForm.?f5B8:?
    23.  0048B416     mov        dl,1
    24.  0048B418     mov        eax,[0041B174]; TBitmap:TBitmap
    25.  0048B41D     call       TBitmap.Create; TBitmap.Create
    26.  0048B422     mov        [004AEA00],eax; gvar_004AEA00:TBitmap
    27.  0048B427     push       48B514; 'FLDRCLSD'
    28.  0048B42C     mov        eax,[004AD814]; ->HInstance:System.Longword
    29.  0048B431     mov        eax,dword ptr [eax]
    30.  0048B433     push       eax
    31.  0048B434     call       user32.LoadBitmapA
    32.  0048B439     mov        edx,eax
    33.  0048B43B     mov        eax,[004AEA00]; gvar_004AEA00:TBitmap
    34.  0048B440     call       TBitmap.SetHandle
    35.  0048B445     mov        dl,1
    36.  0048B447     mov        eax,[0041B174]; TBitmap:TBitmap
    37.  0048B44C     call       TBitmap.Create; TBitmap.Create
    38.  0048B451     mov        [004AEA04],eax; gvar_004AEA04:TBitmap
    39.  0048B456     push       48B520; 'FLDROPND'
    40.  0048B45B     mov        eax,[004AD814]; ->HInstance:System.Longword
    41.  0048B460     mov        eax,dword ptr [eax]
    42.  0048B462     push       eax
    43.  0048B463     call       user32.LoadBitmapA
    44.  0048B468     mov        edx,eax
    45.  0048B46A     mov        eax,[004AEA04]; gvar_004AEA04:TBitmap
    46.  0048B46F     call       TBitmap.SetHandle
    47.  0048B474     mov        eax,dword ptr [ebx+548]; TMainForm.OvcIniFileStore:TOvcIniFileStore
    48.  0048B47A     add        eax,2C; TOvcIniFileStore.IniFileName:String
    49.  0048B47D     mov        edx,dword ptr ds:[4AD580]; ->gvar_004AEEA0:AnsiString
    50.  0048B483     mov        edx,dword ptr [edx]
    51.  0048B485     call       @LStrAsg
    52.  0048B48A     mov        edx,dword ptr ds:[4AD580]; ->gvar_004AEEA0:AnsiString
    53.  0048B490     mov        edx,dword ptr [edx]
    54.  0048B492     mov        eax,dword ptr [ebx+2E0]; TMainForm.MainToolbar:TToolbarControl
    55.  0048B498     call       TToolbarControl.SetIniFilename
    56.  0048B49D     mov        esi,dword ptr [ebx+348]; TMainForm.Delete1:TMenuItem
    57.  0048B4A3     push       dword ptr [esi+24]; TMenuItem.Caption:String
    58.  0048B4A6     push       48B534; '\t'
    59.  0048B4AB     lea        edx,[ebp-8]
    60.  0048B4AE     mov        ax,2E
    61.  0048B4B2     call       ShortCutToText
    62.  0048B4B7     push       dword ptr [ebp-8]
    63.  0048B4BA     lea        eax,[ebp-4]
    64.  0048B4BD     mov        edx,3
    65.  0048B4C2     call       @LStrCatN
    66.  0048B4C7     mov        edx,dword ptr [ebp-4]
    67.  0048B4CA     mov        eax,esi
    68.  0048B4CC     call       TMenuItem.SetCaption
    69.  0048B4D1     xor        eax,eax
    70.  0048B4D3     pop        edx
    71.  0048B4D4     pop        ecx
    72.  0048B4D5     pop        ecx
    73.  0048B4D6     mov        dword ptr fs:[eax],edx
    74.  0048B4D9     push       48B4F3
    75.  0048B4DE     lea        eax,[ebp-8]
    76.  0048B4E1     mov        edx,2
    77.  0048B4E6     call       @LStrArrayClr
    78.  0048B4EB     ret
    79. <0048B4EC     jmp        @HandleFinally
    80. <0048B4F1     jmp        0048B4DE
    81.  0048B4F3     pop        esi
    82.  0048B4F4     pop        ebx
    83.  0048B4F5     pop        ecx
    84.  0048B4F6     pop        ecx
    85.  0048B4F7     pop        ebp
    86.  0048B4F8     ret
     
  11. crypto

    crypto Active Member

    Публикаций:
    0
    Регистрация:
    13 дек 2005
    Сообщения:
    2.533
    Вот еще один фрагмент, в котором определяются вызовы виртуальных методов
    Код (Text):
    1. sub_0048B538
    2.  0048B538     push       ebp
    3.  0048B539     mov        ebp,esp
    4.  0048B53B     add        esp,0FFFFFFE0
    5.  0048B53E     push       ebx
    6.  0048B53F     push       esi
    7.  0048B540     push       edi
    8.  0048B541     xor        ecx,ecx
    9.  0048B543     mov        dword ptr [ebp-18],ecx
    10.  0048B546     mov        dword ptr [ebp-0C],ecx
    11.  0048B549     mov        dword ptr [ebp-4],eax
    12.  0048B54C     xor        eax,eax
    13.  0048B54E     push       ebp
    14.  0048B54F     push       48BC20
    15.  0048B554     push       dword ptr fs:[eax]
    16.  0048B557     mov        dword ptr fs:[eax],esp
    17.  0048B55A     mov        ecx,dword ptr ds:[4AD580]; ->gvar_004AEEA0:AnsiString
    18.  0048B560     mov        ecx,dword ptr [ecx]
    19.  0048B562     mov        dl,1
    20.  0048B564     mov        eax,[0045AD48]; TIniFile:TIniFile
    21.  0048B569     call       TCustomIniFile.Create; TIniFile.Create
    22.  0048B56E     mov        dword ptr [ebp-8],eax
    23.  0048B571     xor        eax,eax
    24.  0048B573     push       ebp
    25.  0048B574     push       48BAD2
    26.  0048B579     push       dword ptr fs:[eax]
    27.  0048B57C     mov        dword ptr fs:[eax],esp
    28.  0048B57F     mov        eax,dword ptr [ebp-4]
    29.  0048B582     call       0048DAB0
    30.  0048B587     push       1
    31.  0048B589     mov        ecx,48BC38; 'AutoPick'
    32.  0048B58E     mov        edx,48BC4C; 'Directory Window'
    33.  0048B593     mov        eax,dword ptr [ebp-8]
    34.  0048B596     mov        ebx,dword ptr [eax]
    35.  0048B598     call       dword ptr [ebx+10]; TCustomIniFile.ReadBool
    36.  0048B59B     mov        edx,dword ptr [ebp-4]
    37.  0048B59E     mov        byte ptr [edx+5E2],al; TMainForm.?f5E2:?
    38.  0048B5A4     mov        eax,[004AD780]
    39.  0048B5A9     mov        al,byte ptr [eax]
    40.  0048B5AB     sub        al,2
    41. >0048B5AD     jae        0048B5BB
    42.  0048B5AF     mov        eax,dword ptr [ebp-4]
    43.  0048B5B2     mov        byte ptr [eax+5E0],1; TMainForm.?f5E0:?
    44. >0048B5B9     jmp        0048B5D8
    45.  0048B5BB     push       0
    46.  0048B5BD     mov        edx,48BC4C; 'Directory Window'
    47.  0048B5C2     mov        ecx,48BC68; 'ClassicSS'
    48.  0048B5C7     mov        eax,dword ptr [ebp-8]
    49.  0048B5CA     mov        ebx,dword ptr [eax]
    50.  0048B5CC     call       dword ptr [ebx+10]; TCustomIniFile.ReadBool
    51.  0048B5CF     mov        edx,dword ptr [ebp-4]
    52.  0048B5D2     mov        byte ptr [edx+5E0],al; TMainForm.?f5E0:?
    53.  0048B5D8     push       0
    54.  0048B5DA     mov        edx,48BC4C; 'Directory Window'
    55.  0048B5DF     mov        ecx,48BC7C; 'MakeBackups'
    56.  0048B5E4     mov        eax,dword ptr [ebp-8]
    57.  0048B5E7     mov        ebx,dword ptr [eax]
    58.  0048B5E9     call       dword ptr [ebx+10]; TCustomIniFile.ReadBool
    59.  0048B5EC     mov        edx,eax
    60.  0048B5EE     mov        eax,dword ptr [ebp-4]
    61.  0048B5F1     mov        eax,dword ptr [eax+3E0]; TMainForm.MakeBackups:TMenuItem
    62.  0048B5F7     call       TMenuItem.SetChecked
    63.  0048B5FC     push       1
    64.  0048B5FE     mov        edx,48BC4C; 'Directory Window'
    65.  0048B603     mov        ecx,48BC90; 'ShowHidden'
    66.  0048B608     mov        eax,dword ptr [ebp-8]
    67.  0048B60B     mov        ebx,dword ptr [eax]
    68.  0048B60D     call       dword ptr [ebx+10]; TCustomIniFile.ReadBool
    69.  0048B610     mov        edx,dword ptr ds:[4AD970]; ->gvar_004AEE44:TTreeCompare
    70.  0048B616     mov        edx,dword ptr [edx]
    71.  0048B618     mov        byte ptr [edx+0C],al; TTreeCompare.?fC:?
    72.  0048B61B     push       1
    73.  0048B61D     mov        edx,48BC4C; 'Directory Window'
    74.  0048B622     mov        ecx,48BCA4; 'Subdirectories'
    75.  0048B627     mov        eax,dword ptr [ebp-8]
    76.  0048B62A     mov        ebx,dword ptr [eax]
    77.  0048B62C     call       dword ptr [ebx+10]; TCustomIniFile.ReadBool
    78.  0048B62F     mov        edx,dword ptr ds:[4AD970]; ->gvar_004AEE44:TTreeCompare
    79.  0048B635     mov        edx,dword ptr [edx]
    80.  0048B637     mov        byte ptr [edx+0D],al; TTreeCompare.?fD:?
    81.  0048B63A     push       0
    82.  0048B63C     mov        edx,48BC4C; 'Directory Window'
    83.  0048B641     mov        ecx,48BCBC; 'ShowArchive'
    84.  0048B646     mov        eax,dword ptr [ebp-8]
    85.  0048B649     mov        ebx,dword ptr [eax]
    86.  0048B64B     call       dword ptr [ebx+10]; TCustomIniFile.ReadBool
    87.  0048B64E     mov        edx,dword ptr [ebp-4]
    88.  0048B651     mov        byte ptr [edx+5E1],al; TMainForm.?f5E1:?
    89.  0048B657     push       0
    90.  0048B659     mov        edx,48BC4C; 'Directory Window'
    91.  0048B65E     mov        ecx,48BCD0; '8.3'
    92.  0048B663     mov        eax,dword ptr [ebp-8]
    93.  0048B666     mov        ebx,dword ptr [eax]
    94.  0048B668     call       dword ptr [ebx+10]; TCustomIniFile.ReadBool
    95.  0048B66B     mov        edx,dword ptr ds:[4ADA1C]
    96.  0048B671     mov        byte ptr [edx],al
    97.  0048B673     push       0
    98.  0048B675     mov        edx,48BC4C; 'Directory Window'
    99.  0048B67A     mov        ecx,48BCDC; 'CaseSensitive'
    100.  0048B67F     mov        eax,dword ptr [ebp-8]
    101.  0048B682     mov        ebx,dword ptr [eax]
    102.  0048B684     call       dword ptr [ebx+10]; TCustomIniFile.ReadBool
    103.  0048B687     mov        edx,dword ptr ds:[4AD5E8]
    104.  0048B68D     mov        byte ptr [edx],al
    105.  0048B68F     push       1
    106.  0048B691     mov        edx,48BC4C; 'Directory Window'
    107.  0048B696     mov        ecx,48BCF4; 'ConfirmCopy'
    108.  0048B69B     mov        eax,dword ptr [ebp-8]
    109.  0048B69E     mov        ebx,dword ptr [eax]
    110.  0048B6A0     call       dword ptr [ebx+10]; TCustomIniFile.ReadBool
    111.  0048B6A3     mov        edx,dword ptr ds:[4ADA54]
    112.  0048B6A9     mov        byte ptr [edx],al
    113.  0048B6AB     push       1
    114.  0048B6AD     mov        edx,48BC4C; 'Directory Window'
    115.  0048B6B2     mov        ecx,48BD08; 'ConfirmCreate'
    116.  0048B6B7     mov        eax,dword ptr [ebp-8]
    117.  0048B6BA     mov        ebx,dword ptr [eax]
    118.  0048B6BC     call       dword ptr [ebx+10]; TCustomIniFile.ReadBool
    119.  0048B6BF     mov        edx,dword ptr ds:[4AD924]
    120.  0048B6C5     mov        byte ptr [edx],al
    121.  0048B6C7     push       1
    122.  0048B6C9     mov        edx,48BC4C; 'Directory Window'
    123.  0048B6CE     mov        ecx,48BD20; 'ConfirmReadonly'
    124.  0048B6D3     mov        eax,dword ptr [ebp-8]
    125.  0048B6D6     mov        ebx,dword ptr [eax]
    126.  0048B6D8     call       dword ptr [ebx+10]; TCustomIniFile.ReadBool
    127.  0048B6DB     mov        edx,dword ptr ds:[4AD93C]
    128.  0048B6E1     mov        byte ptr [edx],al
    129.  0048B6E3     push       1
    130.  0048B6E5     mov        edx,48BC4C; 'Directory Window'
    131.  0048B6EA     mov        ecx,48BD38; 'Toolbar'
    132.  0048B6EF     mov        eax,dword ptr [ebp-8]
    133.  0048B6F2     mov        ebx,dword ptr [eax]
    134.  0048B6F4     call       dword ptr [ebx+10]; TCustomIniFile.ReadBool
    135.  0048B6F7     mov        edx,eax
    136.  0048B6F9     mov        eax,dword ptr [ebp-4]
    137.  0048B6FC     mov        eax,dword ptr [eax+3B0]; TMainForm.ShowToolbar:TMenuItem
    138.  0048B702     call       TMenuItem.SetChecked
    139.  0048B707     push       1
    140.  0048B709     mov        edx,48BC4C; 'Directory Window'
    141.  0048B70E     mov        ecx,48BD48; 'Statusbar'
    142.  0048B713     mov        eax,dword ptr [ebp-8]
    143.  0048B716     mov        ebx,dword ptr [eax]
    144.  0048B718     call       dword ptr [ebx+10]; TCustomIniFile.ReadBool
    145.  0048B71B     mov        edx,eax
    146.  0048B71D     mov        eax,dword ptr [ebp-4]
    147.  0048B720     mov        eax,dword ptr [eax+3B4]; TMainForm.ShowStatusbar:TMenuItem
    148.  0048B726     call       TMenuItem.SetChecked
    149.  0048B72B     push       0
    150.  0048B72D     mov        edx,48BC4C; 'Directory Window'
    151.  0048B732     mov        ecx,48BD5C; 'TimeButtons'
    152.  0048B737     mov        eax,dword ptr [ebp-8]
    153.  0048B73A     mov        ebx,dword ptr [eax]
    154.  0048B73C     call       dword ptr [ebx+10]; TCustomIniFile.ReadBool
    155.  0048B73F     mov        edx,dword ptr [ebp-4]
    156.  0048B742     mov        byte ptr [edx+5E4],al; TMainForm.?f5E4:?
    157.  0048B748     push       1
    158.  0048B74A     mov        edx,48BC4C; 'Directory Window'
    159.  0048B74F     mov        ecx,48BD70; 'Legend'
    160.  0048B754     mov        eax,dword ptr [ebp-8]
    161.  0048B757     mov        ebx,dword ptr [eax]
    162.  0048B759     call       dword ptr [ebx+10]; TCustomIniFile.ReadBool
    163.  0048B75C     mov        edx,eax
    164.  0048B75E     mov        eax,dword ptr [ebp-4]
    165.  0048B761     mov        eax,dword ptr [eax+40C]; TMainForm.ShowLegend:TMenuItem
    166.  0048B767     call       TMenuItem.SetChecked
    167.  0048B76C     push       0
    168.  0048B76E     lea        eax,[ebp-0C]
    169.  0048B771     push       eax
    170.  0048B772     mov        edx,48BC4C; 'Directory Window'
    171.  0048B777     mov        ecx,48BD80; 'Font'
    172.  0048B77C     mov        eax,dword ptr [ebp-8]
    173.  0048B77F     mov        ebx,dword ptr [eax]
    174.  0048B781     call       dword ptr [ebx]; TIniFile.ReadString
    175.  0048B783     cmp        dword ptr [ebp-0C],0
    176. >0048B787     jne        0048B79B
    177.  0048B789     lea        edx,[ebp-0C]
    178.  0048B78C     mov        eax,[004ADA44]; ->Screen:TScreen
    179.  0048B791     mov        eax,dword ptr [eax]
    180.  0048B793     mov        eax,dword ptr [eax+74]; TScreen.FIconFont:Graphics.TFont
    181.  0048B796     call       00466CC4
    182.  0048B79B     mov        eax,dword ptr [ebp-4]
    183.  0048B79E     mov        eax,dword ptr [eax+2C4]; TMainForm.ListBox:TListBox
    184.  0048B7A4     mov        edx,dword ptr [eax+58]; TListBox.Font:TFont
    185.  0048B7A7     mov        eax,dword ptr [ebp-0C]
    186.  0048B7AA     call       00466EB4
    187.  0048B7AF     push       48BD90; 'Arial;10'
    188.  0048B7B4     lea        eax,[ebp-18]
    189.  0048B7B7     push       eax
    190.  0048B7B8     mov        edx,48BC4C; 'Directory Window'
    191.  0048B7BD     mov        ecx,48BDA4; 'ReportFont'
    192.  0048B7C2     mov        eax,dword ptr [ebp-8]
    193.  0048B7C5     mov        ebx,dword ptr [eax]
    194.  0048B7C7     call       dword ptr [ebx]; TIniFile.ReadString
    195.  0048B7C9     mov        edx,dword ptr [ebp-18]
    196.  0048B7CC     mov        eax,dword ptr [ebp-4]
    197.  0048B7CF     add        eax,5E8; TMainForm.?f5E8:String
    198.  0048B7D4     call       @LStrAsg
    199.  0048B7D9     push       0
    200.  0048B7DB     mov        edx,48BC4C; 'Directory Window'
    201.  0048B7E0     mov        ecx,48BDB8; 'ReportInColor'
    202.  0048B7E5     mov        eax,dword ptr [ebp-8]
    203.  0048B7E8     mov        ebx,dword ptr [eax]
    204.  0048B7EA     call       dword ptr [ebx+10]; TCustomIniFile.ReadBool
    205.  0048B7ED     mov        edx,dword ptr [ebp-4]
    206.  0048B7F0     mov        byte ptr [edx+5EC],al; TMainForm.?f5EC:?
    207.  0048B7F6     push       0FF
    208.  0048B7FB     mov        edx,48BC4C; 'Directory Window'
    209.  0048B800     mov        ecx,48BDD0; 'NewerColor'
    210.  0048B805     mov        eax,dword ptr [ebp-8]
    211.  0048B808     mov        ebx,dword ptr [eax]
    212.  0048B80A     call       dword ptr [ebx+8]; TCustomIniFile.ReadInteger
    213.  0048B80D     mov        edx,dword ptr [ebp-4]
    214.  0048B810     mov        dword ptr [edx+5C8],eax; TMainForm.?f5C8:?
    215.  0048B816     push       808080
    216.  0048B81B     mov        edx,48BC4C; 'Directory Window'
    217.  0048B820     mov        ecx,48BDE4; 'OlderColor'
    218.  0048B825     mov        eax,dword ptr [ebp-8]
    219.  0048B828     mov        ebx,dword ptr [eax]
    220.  0048B82A     call       dword ptr [ebx+8]; TCustomIniFile.ReadInteger
    221.  0048B82D     mov        edx,dword ptr [ebp-4]
    222.  0048B830     mov        dword ptr [edx+5CC],eax; TMainForm.?f5CC:?
    223.  0048B836     push       808000
    224.  0048B83B     mov        edx,48BC4C; 'Directory Window'
    225.  0048B840     mov        ecx,48BDF8; 'OlderThanColor'
    226.  0048B845     mov        eax,dword ptr [ebp-8]
    227.  0048B848     mov        ebx,dword ptr [eax]
    228.  0048B84A     call       dword ptr [ebx+8]; TCustomIniFile.ReadInteger
    229.  0048B84D     mov        edx,dword ptr [ebp-4]
    230.  0048B850     mov        dword ptr [edx+5D0],eax; TMainForm.?f5D0:?
    231.  0048B856     push       0FF0000
    232.  0048B85B     mov        edx,48BC4C; 'Directory Window'
    233.  0048B860     mov        ecx,48BE10; 'SingleSideColor'
    234.  0048B865     mov        eax,dword ptr [ebp-8]
    235.  0048B868     mov        ebx,dword ptr [eax]
    236.  0048B86A     call       dword ptr [ebx+8]; TCustomIniFile.ReadInteger
    237.  0048B86D     mov        edx,dword ptr [ebp-4]
    238.  0048B870     mov        dword ptr [edx+5D4],eax; TMainForm.?f5D4:?
    239.  0048B876     push       0C0C0C0
    240.  0048B87B     mov        edx,48BC4C; 'Directory Window'
    241.  0048B880     mov        ecx,48BE28; 'FolderStampColor'
    242.  0048B885     mov        eax,dword ptr [ebp-8]
    243.  0048B888     mov        ebx,dword ptr [eax]
    244.  0048B88A     call       dword ptr [ebx+8]; TCustomIniFile.ReadInteger
    245.  0048B88D     mov        edx,dword ptr [ebp-4]
    246.  0048B890     mov        dword ptr [edx+5D8],eax; TMainForm.?f5D8:?
    247.  0048B896     push       80000005
    248.  0048B89B     mov        edx,48BC4C; 'Directory Window'
    249.  0048B8A0     mov        ecx,48BE44; 'StripeColor'
    250.  0048B8A5     mov        eax,dword ptr [ebp-8]
    251.  0048B8A8     mov        ebx,dword ptr [eax]
    252.  0048B8AA     call       dword ptr [ebx+8]; TCustomIniFile.ReadInteger
    253.  0048B8AD     mov        edx,dword ptr [ebp-4]
    254.  0048B8B0     mov        dword ptr [edx+5DC],eax; TMainForm.?f5DC:?
    255.  0048B8B6     push       1
    256.  0048B8B8     mov        edx,48BC4C; 'Directory Window'
    257.  0048B8BD     mov        ecx,48BE58; 'ColorSpots'
    258.  0048B8C2     mov        eax,dword ptr [ebp-8]
    259.  0048B8C5     mov        ebx,dword ptr [eax]
    260.  0048B8C7     call       dword ptr [ebx+10]; TCustomIniFile.ReadBool
    261.  0048B8CA     mov        edx,dword ptr [ebp-4]
    262.  0048B8CD     mov        byte ptr [edx+5E3],al; TMainForm.?f5E3:?
    263.  0048B8D3     push       9
    264.  0048B8D5     mov        edx,48BC4C; 'Directory Window'
    265.  0048B8DA     mov        ecx,48BE6C; 'MRU'
    266.  0048B8DF     mov        eax,dword ptr [ebp-8]
    267.  0048B8E2     mov        ebx,dword ptr [eax]
    268.  0048B8E4     call       dword ptr [ebx+8]; TCustomIniFile.ReadInteger
    269.  0048B8E7     mov        ebx,eax
    270.  0048B8E9     mov        eax,dword ptr [ebp-4]
    271.  0048B8EC     mov        dword ptr [eax+580],ebx; TMainForm.?f580:?
    272.  0048B8F2     cmp        ebx,1E
    273. >0048B8F5     jle        0048B904
    274.  0048B8F7     mov        eax,dword ptr [ebp-4]
    275.  0048B8FA     mov        dword ptr [eax+580],1E; TMainForm.?f580:?
    276.  0048B904     lea        edx,[ebp-14]
    277.  0048B907     mov        eax,48BE78; '19800101000000'
    278.  0048B90C     call       0049A328
    279.  0048B911     mov        eax,[004AD970]; ->gvar_004AEE44:TTreeCompare
    280.  0048B916     mov        eax,dword ptr [eax]
    281.  0048B918     mov        edx,dword ptr [ebp-14]
    282.  0048B91B     mov        dword ptr [eax+18],edx; TTreeCompare.?f18:?
    283.  0048B91E     mov        edx,dword ptr [ebp-10]
    284.  0048B921     mov        dword ptr [eax+1C],edx; TTreeCompare.?f1C:?
    285.  0048B924     mov        eax,[004AD970]; ->gvar_004AEE44:TTreeCompare
    286.  0048B929     mov        eax,dword ptr [eax]
    287.  0048B92B     mov        edx,dword ptr [ebp-14]
    288.  0048B92E     mov        dword ptr [eax+18],edx; TTreeCompare.?f18:?
    289.  0048B931     mov        edx,dword ptr [ebp-10]
    290.  0048B934     mov        dword ptr [eax+1C],edx; TTreeCompare.?f1C:?
    291.  0048B937     push       0
    292.  0048B939     lea        eax,[ebp-0C]
    293.  0048B93C     push       eax
    294.  0048B93D     mov        edx,48BC4C; 'Directory Window'
    295.  0048B942     mov        ecx,48BE90; 'Cutoff'
    296.  0048B947     mov        eax,dword ptr [ebp-8]
    297.  0048B94A     mov        ebx,dword ptr [eax]
    298.  0048B94C     call       dword ptr [ebx]; TIniFile.ReadString
    299.  0048B94E     mov        eax,dword ptr [ebp-0C]
    300.  0048B951     mov        edx,48BEA0; '0'
    301.  0048B956     call       @LStrCmp
    302. >0048B95B     jne        0048B96A
    303.  0048B95D     mov        eax,[004AD970]; ->gvar_004AEE44:TTreeCompare
    304.  0048B962     mov        eax,dword ptr [eax]
    305.  0048B964     mov        byte ptr [eax+14],1; TTreeCompare.?f14:?
    306. >0048B968     jmp        0048B9B7
    307.  0048B96A     xor        eax,eax
    308.  0048B96C     push       ebp
    309.  0048B96D     push       48B9AD
    310.  0048B972     push       dword ptr fs:[eax]
    311.  0048B975     mov        dword ptr fs:[eax],esp
    312.  0048B978     mov        eax,dword ptr [ebp-0C]
    313.  0048B97B     call       @LStrLen
    314.  0048B980     cmp        eax,0E
    315. >0048B983     jne        0048B9A3
    316.  0048B985     lea        edx,[ebp-20]
    317.  0048B988     mov        eax,dword ptr [ebp-0C]
    318.  0048B98B     call       0049A328
    319.  0048B990     mov        eax,[004AD970]; ->gvar_004AEE44:TTreeCompare
    320.  0048B995     mov        eax,dword ptr [eax]
    321.  0048B997     mov        edx,dword ptr [ebp-20]
    322.  0048B99A     mov        dword ptr [eax+18],edx; TTreeCompare.?f18:?
    323.  0048B99D     mov        edx,dword ptr [ebp-1C]
    324.  0048B9A0     mov        dword ptr [eax+1C],edx; TTreeCompare.?f1C:?
    325.  0048B9A3     xor        eax,eax
    326.  0048B9A5     pop        edx
    327.  0048B9A6     pop        ecx
    328.  0048B9A7     pop        ecx
    329.  0048B9A8     mov        dword ptr fs:[eax],edx
    330. >0048B9AB     jmp        0048B9B7
    331. <0048B9AD     jmp        @HandleAnyException
    332.  0048B9B2     call       @DoneExcept
    333.  0048B9B7     push       0
    334.  0048B9B9     mov        edx,48BC4C; 'Directory Window'
    335.  0048B9BE     mov        ecx,48BEAC; 'CutoffNewer'
    336.  0048B9C3     mov        eax,dword ptr [ebp-8]
    337.  0048B9C6     mov        ebx,dword ptr [eax]
    338.  0048B9C8     call       dword ptr [ebx+10]; TCustomIniFile.ReadBool
    339.  0048B9CB     mov        edx,dword ptr ds:[4AD970]; ->gvar_004AEE44:TTreeCompare
    340.  0048B9D1     mov        edx,dword ptr [edx]
    341.  0048B9D3     mov        byte ptr [edx+20],al; TTreeCompare.?f20:?
    342.  0048B9D6     mov        eax,dword ptr [ebp-4]
    343.  0048B9D9     call       004914A8
    344.  0048B9DE     mov        eax,[004ADA00]
    345.  0048B9E3     mov        edx,dword ptr [ebp-14]
    346.  0048B9E6     mov        dword ptr [eax],edx
    347.  0048B9E8     mov        edx,dword ptr [ebp-10]
    348.  0048B9EB     mov        dword ptr [eax+4],edx
    349.  0048B9EE     xor        eax,eax
    350.  0048B9F0     push       ebp
    351.  0048B9F1     push       48BA38
    352.  0048B9F6     push       dword ptr fs:[eax]
    353.  0048B9F9     mov        dword ptr fs:[eax],esp
    354.  0048B9FC     push       0
    355.  0048B9FE     lea        eax,[ebp-18]
    356.  0048BA01     push       eax
    357.  0048BA02     mov        edx,48BC4C; 'Directory Window'
    358.  0048BA07     mov        ecx,48BEC0; 'TouchStamp'
    359.  0048BA0C     mov        eax,dword ptr [ebp-8]
    360.  0048BA0F     mov        ebx,dword ptr [eax]
    361.  0048BA11     call       dword ptr [ebx]; TIniFile.ReadString
    362.  0048BA13     mov        eax,dword ptr [ebp-18]
    363.  0048BA16     lea        edx,[ebp-20]
    364.  0048BA19     call       0049A328
    365.  0048BA1E     mov        eax,[004ADA00]
    366.  0048BA23     mov        edx,dword ptr [ebp-20]
    367.  0048BA26     mov        dword ptr [eax],edx
    368.  0048BA28     mov        edx,dword ptr [ebp-1C]
    369.  0048BA2B     mov        dword ptr [eax+4],edx
    370.  0048BA2E     xor        eax,eax
    371.  0048BA30     pop        edx
    372.  0048BA31     pop        ecx
    373.  0048BA32     pop        ecx
    374.  0048BA33     mov        dword ptr fs:[eax],edx
    375. >0048BA36     jmp        0048BA42
    376. <0048BA38     jmp        @HandleAnyException
    377.  0048BA3D     call       @DoneExcept
    378.  0048BA42     push       0
    379.  0048BA44     mov        edx,48BC4C; 'Directory Window'
    380.  0048BA49     mov        ecx,48BED4; 'TouchAction'
    381.  0048BA4E     mov        eax,dword ptr [ebp-8]
    382.  0048BA51     mov        ebx,dword ptr [eax]
    383.  0048BA53     call       dword ptr [ebx+8]; TCustomIniFile.ReadInteger
    384.  0048BA56     mov        edx,dword ptr ds:[4AD764]
    385.  0048BA5C     mov        dword ptr [edx],eax
    386.  0048BA5E     mov        eax,dword ptr [ebp-4]
    387.  0048BA61     mov        ebx,dword ptr [eax+2C4]; TMainForm.ListBox:TListBox
    388.  0048BA67     mov        eax,dword ptr [ebx+58]; TListBox.Font:TFont
    389.  0048BA6A     call       TFont.GetHeight
    390.  0048BA6F     cdq
    391.  0048BA70     xor        eax,edx
    392.  0048BA72     sub        eax,edx
    393.  0048BA74     mov        edx,eax
    394.  0048BA76     add        edx,5
    395.  0048BA79     mov        eax,ebx
    396.  0048BA7B     call       TCustomListBox.SetItemHeight
    397.  0048BA80     mov        eax,dword ptr [ebp-4]
    398.  0048BA83     push       eax
    399.  0048BA84     push       48F5E0; sub_0048F5E0
    400.  0048BA89     mov        eax,dword ptr [ebp-4]
    401.  0048BA8C     mov        eax,dword ptr [eax+3D4]; TMainForm.OpenWith1:TMenuItem
    402.  0048BA92     mov        dl,1
    403.  0048BA94     call       004AA090
    404.  0048BA99     mov        eax,dword ptr [ebp-4]
    405.  0048BA9C     push       eax
    406.  0048BA9D     push       48F5E0; sub_0048F5E0
    407.  0048BAA2     mov        eax,dword ptr [ebp-4]
    408.  0048BAA5     mov        eax,dword ptr [eax+3A8]; TMainForm.OpenWith2:TMenuItem
    409.  0048BAAB     mov        dl,1
    410.  0048BAAD     call       004AA090
    411.  0048BAB2     mov        eax,dword ptr [ebp-4]
    412.  0048BAB5     mov        byte ptr [eax+57D],1; TMainForm.?f57D:?
    413.  0048BABC     xor        eax,eax
    414.  0048BABE     pop        edx
    415.  0048BABF     pop        ecx
    416.  0048BAC0     pop        ecx
    417.  0048BAC1     mov        dword ptr fs:[eax],edx
    418.  0048BAC4     push       48BAD9
    419.  0048BAC9     mov        eax,dword ptr [ebp-8]
    420.  0048BACC     call       TObject.Free
    421.  0048BAD1     ret
    422. <0048BAD2     jmp        @HandleFinally
    423. <0048BAD7     jmp        0048BAC9
    424.  0048BAD9     mov        eax,[004AD55C]; ->gvar_004AEED8:TStringList
    425.  0048BADE     mov        eax,dword ptr [eax]
    426.  0048BAE0     mov        edx,48BEE8; 'readonly'
    427.  0048BAE5     mov        ecx,dword ptr [eax]
    428.  0048BAE7     call       dword ptr [ecx+50]; TStringList.IndexOf
    429.  0048BAEA     test       eax,eax
    430.  0048BAEC     setge      al
    431.  0048BAEF     mov        edx,dword ptr [ebp-4]
    432.  0048BAF2     mov        byte ptr [edx+5E5],al; TMainForm.?f5E5:?
    433.  0048BAF8     mov        eax,[004AD55C]; ->gvar_004AEED8:TStringList
    434.  0048BAFD     mov        eax,dword ptr [eax]
    435.  0048BAFF     mov        edx,48BEFC; 'leftreadonly'
    436.  0048BB04     mov        ecx,dword ptr [eax]
    437.  0048BB06     call       dword ptr [ecx+50]; TStringList.IndexOf
    438.  0048BB09     test       eax,eax
    439.  0048BB0B     setge      al
    440.  0048BB0E     mov        edx,dword ptr [ebp-4]
    441.  0048BB11     mov        byte ptr [edx+5E6],al; TMainForm.?f5E6:?
    442.  0048BB17     mov        eax,dword ptr [ebp-4]
    443.  0048BB1A     mov        dl,byte ptr [eax+5E4]; TMainForm.?f5E4:?
    444.  0048BB20     mov        eax,dword ptr [ebp-4]
    445.  0048BB23     mov        eax,dword ptr [eax+4C0]; TMainForm.TimeZoneAdjust1:TSpeedButton
    446.  0048BB29     call       TControl.SetVisible
    447.  0048BB2E     mov        eax,dword ptr [ebp-4]
    448.  0048BB31     mov        dl,byte ptr [eax+5E4]; TMainForm.?f5E4:?
    449.  0048BB37     mov        eax,dword ptr [ebp-4]
    450.  0048BB3A     mov        eax,dword ptr [eax+4C4]; TMainForm.TimeZoneAdjust2:TSpeedButton
    451.  0048BB40     call       TControl.SetVisible
    452.  0048BB45     mov        eax,[004AD5A4]
    453.  0048BB4A     xor        edx,edx
    454.  0048BB4C     mov        dword ptr [eax],edx
    455.  0048BB4E     mov        eax,dword ptr [ebp-4]
    456.  0048BB51     mov        eax,dword ptr [eax+50C]; TMainForm.SortByNameBtn:TSpeedButton
    457.  0048BB57     mov        dl,1
    458.  0048BB59     call       TSpeedButton.SetDown
    459.  0048BB5E     mov        eax,[004AD9EC]
    460.  0048BB63     mov        dword ptr [eax],1
    461.  0048BB69     mov        eax,dword ptr [ebp-4]
    462.  0048BB6C     mov        dword ptr [eax+59C],0FFFFFFFF; TMainForm.?f59C:?
    463.  0048BB76     mov        eax,dword ptr [ebp-4]
    464.  0048BB79     call       0048C8D4
    465.  0048BB7E     mov        eax,dword ptr [ebp-4]
    466.  0048BB81     mov        eax,dword ptr [eax+2C4]; TMainForm.ListBox:TListBox
    467.  0048BB87     xor        edx,edx
    468.  0048BB89     call       TControl.SetCursor
    469.  0048BB8E     mov        eax,dword ptr [ebp-4]
    470.  0048BB91     mov        eax,dword ptr [eax+2C4]; TMainForm.ListBox:TListBox
    471.  0048BB97     mov        edx,dword ptr [eax+1EC]; TListBox.Items:TStrings
    472.  0048BB9D     mov        eax,[004AD970]; ->gvar_004AEE44:TTreeCompare
    473.  0048BBA2     mov        eax,dword ptr [eax]
    474.  0048BBA4     call       0049D12C
    475.  0048BBA9     mov        eax,dword ptr [ebp-4]
    476.  0048BBAC     call       0048FC20
    477.  0048BBB1     mov        eax,dword ptr [ebp-4]
    478.  0048BBB4     mov        eax,dword ptr [eax+2E0]; TMainForm.MainToolbar:TToolbarControl
    479.  0048BBBA     call       004674AC
    480.  0048BBBF     mov        eax,dword ptr [ebp-4]
    481.  0048BBC2     call       0048CE78
    482.  0048BBC7     push       0FF
    483.  0048BBC9     mov        eax,dword ptr [ebp-4]
    484.  0048BBCC     call       TWinControl.GetHandle
    485.  0048BBD1     push       eax
    486.  0048BBD2     call       shell32.DragAcceptFiles
    487.  0048BBD7     mov        eax,[004AD89C]; ->Application:TApplication
    488.  0048BBDC     mov        eax,dword ptr [eax]
    489.  0048BBDE     mov        edx,dword ptr [ebp-4]
    490.  0048BBE1     mov        dword ptr [eax+0FC],edx; TApplication.?fFC:?
    491.  0048BBE7     mov        dword ptr [eax+0F8],48C8B4; sub_0048C8B4 TApplication.FOnActivate:Classes.TNotifyEvent
    492.  0048BBF1     mov        eax,dword ptr [ebp-4]
    493.  0048BBF4     mov        edx,dword ptr [eax+2C4]; TMainForm.ListBox:TListBox
    494.  0048BBFA     mov        eax,dword ptr [ebp-4]
    495.  0048BBFD     call       TCustomForm.SetActiveControl
    496.  0048BC02     xor        eax,eax
    497.  0048BC04     pop        edx
    498.  0048BC05     pop        ecx
    499.  0048BC06     pop        ecx
    500.  0048BC07     mov        dword ptr fs:[eax],edx
    501.  0048BC0A     push       48BC27
    502.  0048BC0F     lea        eax,[ebp-18]
    503.  0048BC12     call       @LStrClr
    504.  0048BC17     lea        eax,[ebp-0C]
    505.  0048BC1A     call       @LStrClr
    506.  0048BC1F     ret
    507. <0048BC20     jmp        @HandleFinally
    508. <0048BC25     jmp        0048BC0F
    509.  0048BC27     pop        edi
    510.  0048BC28     pop        esi
    511.  0048BC29     pop        ebx
    512.  0048BC2A     mov        esp,ebp
    513.  0048BC2C     pop        ebp
    514.  0048BC2D     ret
     
  12. InsidE

    InsidE Member

    Публикаций:
    0
    Регистрация:
    28 май 2009
    Сообщения:
    357
    Адрес:
    Over the hills and far away...
    Итак начну.

    1.хотелось бы какую никакую ,но подсветку.
    2.интерактивность :))),которую в этом релизе я не заметил
    3.юзабилити хромает,интерфейс не интуитивний,предложение по исправлению скоро будет
    4.декомпилятор ))
    --------------------------------------------------------------------------------------------
    багов замечено почти небыло - иногда файлы открывал со второго раза,хз почему,причину так и не понял,определителоь версий иногда хромал приходилось в ручную загружать файл( уж,не помню какой именно,но постарюсь найти ),ну и там по мелочам...вобщем если развивать будет отличной тулзой.
     
  13. crypto

    crypto Active Member

    Публикаций:
    0
    Регистрация:
    13 дек 2005
    Сообщения:
    2.533
    1nsidE
    Подсветку уже многие просили, руки до этого пока не дошли (хочется функционал развить), но в планах есть.
    Интерактивность, конечно заявлена и кое-что уже сделать можно (например, переименовать объект), будет наращиваться постепенно, по мере выяснения неясных пока моментов.

    В этой версии я уже нашел баги, связанные с распространением типов, исправляю. Ждите следующий билд.
    ЗЫ
    Жду предложения по развитию интерфейса.
     
  14. svl63

    svl63 New Member

    Публикаций:
    0
    Регистрация:
    29 апр 2009
    Сообщения:
    1
    Появилось постоянное место (site) http://kpnc.org/idr32
    Заинтересованные лица приглашаются за последними обновлениями.
     
  15. crypto

    crypto Active Member

    Публикаций:
    0
    Регистрация:
    13 дек 2005
    Сообщения:
    2.533
    На сайте http://kpnc.org/idr32 обновление программы (билд 66).
     
  16. crypto

    crypto Active Member

    Публикаций:
    0
    Регистрация:
    13 дек 2005
    Сообщения:
    2.533
    Обновление программы - теперь поддерживается версия Дельфи 2009.
     
  17. crypto

    crypto Active Member

    Публикаций:
    0
    Регистрация:
    13 дек 2005
    Сообщения:
    2.533
    Очередное обновление программы, в частности, добавлена поддержка версии Дельфи 2010.
    ЗЫ
    Похоже тема здесь мало кому интересна, к Новому Году я ее прикрою.
     
  18. t00x

    t00x New Member

    Публикаций:
    0
    Регистрация:
    15 фев 2007
    Сообщения:
    1.921
    видимо количество Дельфи-кодеров и сложность Дельфи-программ превышает количество реверсеров, которые, конечно же, успели оценить продукт.

    P.S. что дальше? IDR непаблик?
     
  19. crypto

    crypto Active Member

    Публикаций:
    0
    Регистрация:
    13 дек 2005
    Сообщения:
    2.533
    t00x
    Поясни, что ты имел в виду? Переход на коммерческую основу?
     
  20. CyberManiac

    CyberManiac New Member

    Публикаций:
    0
    Регистрация:
    2 сен 2003
    Сообщения:
    2.473
    Адрес:
    Russia
    crypto, то, что мы молчим, не значит, что нам скучно.
     
Статус темы:
Закрыта.