значид так, перехватываю KiUserExceptionDispatcher (с целью сохранить оригинальные регистры и занулить их после этого, а потом уже в ZwContinue вернуть всё обратно): Код (Text): 0013001E 60 PUSHAD 0013001F 83C1 04 ADD ECX,4 // ECX - контекст 00130022 8BF1 MOV ESI,ECX 00130024 8BD1 MOV EDX,ECX 00130026 BF 00001300 MOV EDI,130000 // тут сохраняем 0013002B B9 18000000 MOV ECX,18 // 18h байтов 00130030 FC CLD 00130031 F3:A4 REP MOVS BYTE PTR ES:[EDI],BYTE PTR DS:[ESI] 00130033 B9 06000000 MOV ECX,6 00130038 C702 00000000 MOV DWORD PTR DS:[EDX],0 // зануляем 0013003E 83C2 04 ADD EDX,4 00130041 ^ E2 F5 LOOPD SHORT 00130038 00130043 61 POPAD 00130044 E8 69CBE777 CALL ntdll.77FACBB2 // затёртый код 00130049 - E9 781BE677 JMP ntdll.77F91BC6 // обратно дык вот, на простых прогах для теста прокатываед, а вот на протах, проги валяться в беск. цикл с аксессами =( что я не так сделал?
Я так понимаю, что на проте у тебя сложности с тестированием этого участка кода? Когда я отлаживал dll-ку с этой функцией, внедряемую в запакованную прогу, я специально, для удобства отладки, добавлял команду cli перед исследуемым кодом. Потом запускал ехешник и прога вываливалась в отладчике на этой команде cli. Менял ее на nop и далее уже трассировал нужный мне код (хотя есть наверное и другие варианты). Или я не верно понял твой вопрос? А так по коду - сложно что сказать.
хех, вроде разобрался... я всё делаю правильно, но Obsidium что-то делает с этими ДРх и когда я их обнуляю, он валиться. Мля, надо думать...
Во-во, я так и думал, что прот виноват (ты ведь не написал, какой используешь). Так может их вообще не использовать, если прот их отслеживает? Ведь они нужны тебе для остановки на определенных адресах. Вместо бряка создай в этом адресе искусственно исключительную ситуация, а затем ее сам обрабатывай через функцию KiUserExceptionDispatcher.
я реализовал как хотел... ASPr, Obsidium, ExeCryptor молчат и позволяюд ставить "железные" бряки... =) как вариант можно юзать и твой способ...
Где-то я читал, что какой-то протектор уже юзает "железные бряки". Наверное, недалеко то время, когда и остальные придут к этому же решению.