[an error occurred while processing this directive]
|
Как мы использовали мегафункции до появления
программы дешифрования ? - ясно, если нам разрешают
компилировать проект, то компилятор читает исходный
текст файлов.
Заглянем в файл cpt.dll из maxplus там живут функции
с хорошо продуманными именами :
cpt_ampp_viewable
cpt_ampp_tdo_writable
cpt_ampp_edo_writable
cpt_ampp_pof_writable
И действительно, замена их на заглушки
mov eax,0ffffffffh
ret
приводит к тому, что формируются эти pof, tdo и тд.
( к размышлению : Quartus написан на cpp , поэтому там
в файле sys_cpt.dll
?allow_edo_vho_vo@CPT_AMPP_IFSTREAM@@QAE_NXZ
?allow_pof@CPT_AMPP_IFSTREAM@@QAE_NXZ
?allow_source_view@CPT_AMPP_IFSTREAM@@QAE_NXZ
?allow_tdo@CPT_AMPP_IFSTREAM@@QAE_NXZ
)
Maxplus старых версий легко удовлетворял желание
посмотреть, что там внутри - его текстовый редактор
вызывал cpt_ampp_viewable и получив правильный
ответ показывал исходный текст и сохранял его
в дешифрированном виде. В новых версиях он этого
не делает, но можно подсунуть ted.dll от старой
версии.
Компиляторы и редактор читают файлы используя
функции из cpt.dll:
cpt_ampp_fread
cpt_ampp_fgets
при этом происходит дешифровка и можно увидеть
исходный текст.
В quartus есть аналогичные по назначению функции
потокового ввода.
Может кому-нибудь это пригодится. Успехов.
E-mail: info@telesys.ru