Само модифицирующийся код.

Тема в разделе "WASM.BEGINNERS", создана пользователем Otebebe, 15 май 2007.

  1. Otebebe

    Otebebe New Member

    Публикаций:
    0
    Регистрация:
    3 апр 2006
    Сообщения:
    91
    FreeManCPM
    Да.Это очень правильно! :dntknw:.
    А вот смотрите :) ,вот это можно было бы оформить в виде <.....С3 >
    Код (Text):
    1. xor SI,SI
    2. xor DI,DI
    3. PREPARE:
    4. lodsb
    5. mov byte ptr CS:[DI+0014H],AL
    6. inc DI
    7. cmp AL,0C3H
    8. jne PREPARE
    и тогда бы программа сама бы затирала свой код,порождая саму себя 8-[].
    Разве это не самомодификация ? Пусть даже и эквивалентная....
    Спасибо.Буду обдумывать.
     
  2. Otebebe

    Otebebe New Member

    Публикаций:
    0
    Регистрация:
    3 апр 2006
    Сообщения:
    91
    FreeManCPM
    различие сущностей 0С3H как маркера и как данных можно обойти "лентой"
    L...C3L.........C3LC3L..........C3L....
    где L-заголовок "подпрограммы" являющийся ее длинной.
    Тогда правда не нужен будет скан по маркеру :)
     
  3. Freeman

    Freeman New Member

    Публикаций:
    0
    Регистрация:
    10 фев 2005
    Сообщения:
    1.385
    Адрес:
    Ukraine
    тогда не надо завершать данные 0c3h, как я и показал.
     
  4. Otebebe

    Otebebe New Member

    Публикаций:
    0
    Регистрация:
    3 апр 2006
    Сообщения:
    91
    В общем построил "ленту"
    L....C3L....C3L..C3...........

    Блок начинается с заголовка L-описывающего длину блока считая вместе с L
    Если назвать часть кода загружающую [L...C3] блок инициализатором,то в принципе
    ничто не может помешать иметь их разные типы.
    Например,первый же блок мы можем сделать NOT-инициализатором.Он заместит "нормальный"
    инициализатор и будет подгружать оставшую часть ленты инвертированно.
    Потом,может "взбрести в голову" получать часть "ленты" xor'я и т.д и т.п
    (естественно по крайней мере следующий за xor-инициализатором блок должен быть подготовлен _до_)
    Т.о можно на ходу менять методы интерпритации.
    А это похоже на примитив антиотладки...
    Или я ошибаюсь ?

    P.S.Если кого заинтересует исходник(бинарник ?) "Hello world" :)
    c замещающим NOT-инициализатором,буду рад.
     
  5. MHajduk

    MHajduk New Member

    Публикаций:
    0
    Регистрация:
    7 ноя 2006
    Сообщения:
    123
    Мне это интересно. :)
     
  6. Otebebe

    Otebebe New Member

    Публикаций:
    0
    Регистрация:
    3 апр 2006
    Сообщения:
    91
    MHajduk
    Пробую "прицепить".
     
  7. MHajduk

    MHajduk New Member

    Публикаций:
    0
    Регистрация:
    7 ноя 2006
    Сообщения:
    123
    Спасибо. :) Скачал. Буду смотреть. Может быть, что идея окажется полезной. :)
     
  8. Otebebe

    Otebebe New Member

    Публикаций:
    0
    Регистрация:
    3 апр 2006
    Сообщения:
    91
    MHajduk
    Вы не знаете как заставить существовать TSR c программами использующими экстендеры ?
     
  9. Vov4ick

    Vov4ick Владимир

    Публикаций:
    0
    Регистрация:
    8 окт 2006
    Сообщения:
    581
    Адрес:
    МО
    Никак, в защищённом режиме другие обработчики прерываний, иначе нельзя.
    Хочешь одновремено играть в игрушку и чтобы жил резидент? :derisive:
     
  10. Otebebe

    Otebebe New Member

    Публикаций:
    0
    Регистрация:
    3 апр 2006
    Сообщения:
    91
    Vov4ick
    Почти :) Хочу в "реальном режиме " отслеживать работу с портами.
     
  11. MHajduk

    MHajduk New Member

    Публикаций:
    0
    Регистрация:
    7 ноя 2006
    Сообщения:
    123
    Otebebe

    Обращайся ко мне на "ты" не "вы", :) ведь мы, программисты асма, все равны. :lol:

    Коля.
     
  12. Otebebe

    Otebebe New Member

    Публикаций:
    0
    Регистрация:
    3 апр 2006
    Сообщения:
    91
    MHajduk
    Так я не программист :dntknw:(поздно уже). А в "вы" букв столько же,a вежливости больше :).
     
  13. MHajduk

    MHajduk New Member

    Публикаций:
    0
    Регистрация:
    7 ноя 2006
    Сообщения:
    123
    Ну ладно. :lol: Тогда пиши(те), как тебе/вам угодно. ;)
     
  14. Otebebe

    Otebebe New Member

    Публикаций:
    0
    Регистрация:
    3 апр 2006
    Сообщения:
    91
    Так значит нет никакой возможности "обнять врага" в протектед моде ?