Все отслеживается. Сначала строится граф использования функций а потом уже все обфусцируется. То есть обфускатор в отличии от моего обфускатора VB не тупо затирает имена нулями, а переименовывает синхронно во всех структурах и в формах при этом учитывая то что одна функция может использоваться в разных ивентах, учитывая такие контролы как MainMenu, Tab, Page, когда имя прописывается в нескольких местах. Короче на обфускатор было убито около месяца каждодневной работы потому все уже отлажено, дело за малым (GUI, хелп, сайт, и так далее).
На все нужно время. Три прошлых года я тратил на изучение 1400 опкодов пикода. На натив не было времени. Сейчас пришло время заняться нативом. А так как дельфи тот же натив, то появилась идеясоздать универсальный двиг для натива VB и натива Delphi. Двиг уже корректно определяет конец процедуры и в VB (100%) и в Delphi (99%, так как бывают процедуры вида jmp Addr, а после jmp идет следующая процедура, которую отделить от предыдущей можно только после анализа всех функций). В общем все упирается только в быстрый декодинг VCL функций по сигнатурам.
Ограничений на использование is никаких так как он сравнивает имена КЛАССОВ, а не юзеримена объектов. То есть если было написано: txtRegister: TButton OnClick = txtRegisterClick end то после обфускации будет: n0000000: TButton OnClick = d00000 end то есть TButton останется неизменным. Вломы RTTI все классов в EXE искать. Чтонить не найдешь и будут баги
Еще очень любят имена объектов использовать для перевода интерфейса на тот или иной язык. типа Button1.Hint = "..."