"Очередной" декомпилятор?!..

Тема в разделе "WASM.RESEARCH", создана пользователем mrhx, 11 окт 2006.

  1. MrHammer

    MrHammer New Member

    Публикаций:
    0
    Регистрация:
    9 июл 2003
    Сообщения:
    197
    Без учета контекста жертва вивисекции сдохнет прямо на операционном столе =)
     
  2. GPcH

    GPcH Member

    Публикаций:
    0
    Регистрация:
    2 авг 2004
    Сообщения:
    136
    Все отслеживается. Сначала строится граф использования функций а потом уже все обфусцируется.
    То есть обфускатор в отличии от моего обфускатора VB не тупо затирает имена нулями, а переименовывает синхронно во всех структурах и в формах при этом учитывая то что одна функция может использоваться в разных ивентах, учитывая такие контролы как MainMenu, Tab, Page, когда имя прописывается в нескольких местах. Короче на обфускатор было убито около месяца каждодневной работы потому все уже отлажено, дело за малым (GUI, хелп, сайт, и так далее).
     
  3. GPcH

    GPcH Member

    Публикаций:
    0
    Регистрация:
    2 авг 2004
    Сообщения:
    136
  4. MrHammer

    MrHammer New Member

    Публикаций:
    0
    Регистрация:
    9 июл 2003
    Сообщения:
    197
    Это же тот же пикод, немного пооптимизированный кодогеном VC++.
     
  5. GPcH

    GPcH Member

    Публикаций:
    0
    Регистрация:
    2 авг 2004
    Сообщения:
    136
    На все нужно время. Три прошлых года я тратил на изучение 1400 опкодов пикода. На натив не было времени. Сейчас пришло время заняться нативом. А так как дельфи тот же натив, то появилась идеясоздать универсальный двиг для натива VB и натива Delphi. Двиг уже корректно определяет конец процедуры и в VB (100%) и в Delphi (99%, так как бывают процедуры вида jmp Addr, а после jmp идет следующая процедура, которую отделить от предыдущей можно только после анализа всех функций). В общем все упирается только в быстрый декодинг VCL функций по сигнатурам.
     
  6. PE_Kill

    PE_Kill New Member

    Публикаций:
    0
    Регистрация:
    16 янв 2006
    Сообщения:
    107
    У меня он используется в 9 из 10 серьёзных проектов
     
  7. GPcH

    GPcH Member

    Публикаций:
    0
    Регистрация:
    2 авг 2004
    Сообщения:
    136
    Ограничений на использование is никаких так как он сравнивает имена КЛАССОВ, а не юзеримена объектов. То есть если было написано:

    txtRegister: TButton
    OnClick = txtRegisterClick
    end

    то после обфускации будет:

    n0000000: TButton
    OnClick = d00000
    end

    то есть TButton останется неизменным. Вломы RTTI все классов в EXE искать. Чтонить не найдешь и будут баги
     
  8. MrHammer

    MrHammer New Member

    Публикаций:
    0
    Регистрация:
    9 июл 2003
    Сообщения:
    197
    Кстати, кодоген (backend) для Билдера и Делфя один и тот же.
     
  9. MrHammer

    MrHammer New Member

    Публикаций:
    0
    Регистрация:
    9 июл 2003
    Сообщения:
    197
    Еще очень любят имена объектов использовать для перевода интерфейса на тот или иной язык.
    типа
    Button1.Hint = "..."
     
  10. GPcH

    GPcH Member

    Публикаций:
    0
    Регистрация:
    2 авг 2004
    Сообщения:
    136
    Имена берутся из таблицы имен, ее обфускатор переименовывае синхронно с формами.

    Я в курсе