Исследуем exe на Delphi

Тема в разделе "WASM.BEGINNERS", создана пользователем ht1515, 10 янв 2010.

  1. ht1515

    ht1515 New Member

    Публикаций:
    0
    Регистрация:
    7 янв 2010
    Сообщения:
    17
    Почему у программы скомпилинной на делфи в момент когда до call доходит ip(по шагам на Ф8 нажимаю) , он дальше не идет? Ну то есть olly dbg открыл, и пошел по шагам (ф8), дохожу до(см рис) и всё.
    Это особенность какая-то или я что то с olly не так делаю?
    [​IMG]
     
  2. lobzik

    lobzik New Member

    Публикаций:
    0
    Регистрация:
    9 апр 2009
    Сообщения:
    34
    Вся прога в этом CALL Project2.00404424
     
  3. djmans

    djmans New Member

    Публикаций:
    0
    Регистрация:
    27 дек 2006
    Сообщения:
    312
    слева от F8 есть F7. Нужна нажимать ее
     
  4. ht1515

    ht1515 New Member

    Публикаций:
    0
    Регистрация:
    7 янв 2010
    Сообщения:
    17
    нее... не надо

    нет конечно же. вся прога за ней. Видишь там 2 мov?

    Вот консольная на делфе.
    Код (Text):
    1. program Project2;
    2. {$APPTYPE CONSOLE}
    3. uses
    4.   SysUtils;
    5.   var
    6.    tr:integer;
    7. begin
    8.    tr:=3281;
    9.   asm
    10.    mov eax,tr
    11.   end;
    12. end.
     
  5. djmans

    djmans New Member

    Публикаций:
    0
    Регистрация:
    27 дек 2006
    Сообщения:
    312
    >нее... не надо
    тогда дальше сиди и ломай голову над "какой-то особенностью оли".
     
  6. ht1515

    ht1515 New Member

    Публикаций:
    0
    Регистрация:
    7 янв 2010
    Сообщения:
    17
    djmans, нажимая ф8 за нее зайти нельзя что ли? Если мне не надо в входить в процедуру. Предположим я хочу её пропустить...
     
  7. crypto

    crypto Active Member

    Публикаций:
    0
    Регистрация:
    13 дек 2005
    Сообщения:
    2.533
    ht1515
    Project2.00404424 - это InitExe, эту процедуру исполнять не нужно, тело твоей программы начинается с адреса 407ce0, ставь туда breakpoint и зпускай Run.
     
  8. ht1515

    ht1515 New Member

    Публикаций:
    0
    Регистрация:
    7 янв 2010
    Сообщения:
    17
    crypto, понятно. Но все равно странно почему он InitExe не проходит(но входит). Если в отладчике делфи трассировать,то норм вроде. В самом InitExe есть call ,которые он успешно проходит.
    Кстати в vc++6 то же есть подобное, там тоже есть call на main. Но вижлсивские проги он норм трассирует(то есть ф8 я все прохожу).
     
  9. dr_godsl

    dr_godsl New Member

    Публикаций:
    0
    Регистрация:
    13 дек 2009
    Сообщения:
    60
    че мудить то то тут? надо бряк в оле?
    пишем
    asm int 3 end;
    втыкаем куда надо и радуемся.

    мож я чего не понял, но помоему тебе уже сказали.
    если ты конечно решил изучить принцип работы RTL дельфовой.
     
  10. ht1515

    ht1515 New Member

    Публикаций:
    0
    Регистрация:
    7 янв 2010
    Сообщения:
    17
    сразу хочу сказать,что никого хочу обидеть. И не хочу ,чтобы на меня наезжали.
    И не охото казаться кривым,тупым дебилом не способным читать и нажимать ф7.

    Я скину экзешник. Нажмите 7 раз Ф8(можете 8, 9 ,10 и тд) и посмотрите чему равно ip.

    Вы меня не понимаете, а я не понимаю зачем мне ф7 нажимать и входить в процедуру, если я её пропустить хочу.

    Единственный кто понял что я спросил похоже crypto.
    Черт, словно в сумеречной зоне всё...
     
  11. ht1515

    ht1515 New Member

    Публикаций:
    0
    Регистрация:
    7 янв 2010
    Сообщения:
    17
  12. ht1515

    ht1515 New Member

    Публикаций:
    0
    Регистрация:
    7 янв 2010
    Сообщения:
    17
  13. FLASH300

    FLASH300 New Member

    Публикаций:
    0
    Регистрация:
    30 окт 2008
    Сообщения:
    72
    ht1515
    Не парься баг там какой то, у меня например на XP SP2 все норм а на обновленной до SP3 та-же ерунда. Если уж попался на горячем нажимай Pause потом Run.
     
  14. dr_godsl

    dr_godsl New Member

    Публикаций:
    0
    Регистрация:
    13 дек 2009
    Сообщения:
    60
    незнаю почему у вас она виснет на call
    у меня оля прекрасно дошла до конца хоть по ф7 хоть по ф8
    XP SP3
     
  15. dr_godsl

    dr_godsl New Member

    Публикаций:
    0
    Регистрация:
    13 дек 2009
    Сообщения:
    60
    OllyDbg v 2.00 (beta 2)
     
  16. valterg

    valterg Active Member

    Публикаций:
    0
    Регистрация:
    19 авг 2004
    Сообщения:
    2.105
    Ну так войди туда и выясни. Возможно он циклит на ожидании какого-то события, возможно еще что-то происходит. Вариантов масса. Скорее всего несоместимость с ОС или глюки.
    Откомпилил на Дельфи-4 и в ХП СП2 на олли 1.10 все ОК.
     
  17. valterg

    valterg Active Member

    Публикаций:
    0
    Регистрация:
    19 авг 2004
    Сообщения:
    2.105
    Можно чуть попроще :
    1) убедись что твое приложение не "загнулось" и есть в списке процессов. посмотри циклит оно (100% CPU) или "висит". Кстати, про азбуку не забываем - останови в олли свое приложение и посмотри, что с ним.... :)
    2) Исследуй консольное окно - может там есть какие сообщения.
     
  18. FLASH300

    FLASH300 New Member

    Публикаций:
    0
    Регистрация:
    30 окт 2008
    Сообщения:
    72
    В OllyDbg v 2.00 все равно из функции (например) GetSaveFileName самостоятельно по F8 не выходит. Разница лишь в том что она за собой бряк от F8 после паузы чистит.

    dr_godsl
    чего трассировал то ? :)
     
  19. FLASH300

    FLASH300 New Member

    Публикаций:
    0
    Регистрация:
    30 окт 2008
    Сообщения:
    72
    О О_о на самом деле поток где то зациклило проц на 25 % загружен (4 ядра тока сейчас заметил) При чем циклит именно Ольгу, после паузы всплывает после SYSENTER :).
     
  20. valterg

    valterg Active Member

    Публикаций:
    0
    Регистрация:
    19 авг 2004
    Сообщения:
    2.105
    ht1515 Скачал и экзешник - результат аналогичный. Нормально по F8 входит и выходит :)
    Так что ищите у себя. На этот и другие случаи я держу чистую ОС. Ну и олли чистую ставлю, если вдруг чудеса появляются. Если же у вас олли 2.0 "глючит", то это не сюда, это к авторам, только сначала проверьте на чистой ОС.