Foamplast Исследование IDA 4.01. Схема защиты с "водяными знаками"
boozook Не сработает.
volodya Ok, убедил, так код короче будет =)
volodya > А если flag предварительно в регистр загрузить? Предложи свой код, сравним ;-)
leo Вроде работает но длиннее моего на 1 байт 00401000 >/$ FF0D 00304000 DEC DWORD PTR DS:[403000] 00401006 |. 0B05 00304000 OR...
Вот мой первый вариант: neg eax sbb eax,eax inc eax and eax,flag jnz @F обнулять флаг в этом случае придётся после прыжка на метку.
volodya Если flag==0 и eax==-1 что тогда?
volodya Если я тебя правильно понял, то ответ содержится в условии задачи, если "flag==1 && eax==0 обнулить flag и сделать прыжок на метку",...
_Chingachguk_ eax != 0 в двух случаях тебе о чём-нибудь говорит? volodya Не понял твой вопрос..
Необходимо проверить значение flag и eax, в случае flag==1 && eax==0 обнулить flag и сделать прыжок на метку. Задача оптимизировать по скорости...
> в одном из первых релизов 1.54 был баг, вызванный оптимизацией. Вот блин :(, но у меня не первый релиз, а релиз после того как был пофикшен...
S_T_A_S_ А чего там нового в fasm 1.55 ? ЗЫ: я уже задолбался каждые полмесяца дописывать код в fasmw.asm и перекомпилять..
Four-F Ага, теперь понял. Нет, с дескриптором что-то дело не пошло, или я намудрил или PETools умеет хорошо процессы убивать ;-) Я сделал,...
PRO А вообще, поиск по форуму по ключевому слову "$invoke", и ты найдёшь макрос и его обсуждение, где узнаешь на какие моменты стоит...
PRO Под какой ассемблер?
dondrakon Поиск по форуму по ключевому слову "NTIceDump" рулит.
Four-F > Прикрутил. Два варианта воркэраунда. Спасибо. ЗдОрово. > А что там, кстати, с "protection against TerminateProcess"?...
Four-F > Кстати, в strings.mac в разделе "L I M I T A T I O N S" про это написано. Ну да, я помню что где-то читал, но забыл где ;-) Я...
volodya У меня не было времени им заниматься, сейчас решил доделать наконец-то мессаги и выпустить очередную версию плагина, тем более что в нём...
Пытаюсь сделать так: invoke ErrorToLog, $CTA0(" \[Failed to apply protection against TerminateProcess\]") получаю строку вида: db ' <Failed...
Имена участников (разделяйте запятой).