ANDLL » 22.12.2005 (Чт) 22:26
Что тебе нужно мы поняли. Мы не поняли, зачем это может понадобится.
А так - встраиваешся в процесс-жертву, далее снимаешь защиту(VirtualProtect) с того модуля, где лежит функция. Потом, как наиболее общий метод, вычисляешь, где, в таблице экспорта модуля лежит адрес твоей функции, и перезаписываешь адрес. Перед этим не забываешь сохранить у себя то, что собственно перезаписал.
Как более простой в реализации способ, перезаписать код самой функции. Это очень удобно, если это nt-функция(почти все API к ним сводятся).
Там есть строчка mov edx,7FFE0300h call dword ptr [edx]
Просто перезаписываешь это 7FFE0300h, а когда надо, вызываешь его.
Гастрономия - наука о пище, о ее приготовлении, употреблении, переварении и испражнении.
Блог