Показать сообщение отдельно

  #6  
Старый 14.04.2025, 23:05
вайега52
Флудер
Регистрация: 19.06.2022
Сообщений: 2,997
С нами: 2055431

Репутация: 3


По умолчанию

Цитата:
Сообщение от Byte  

C++:





Код:
#include 
subhook_t original_function_hook
;
typedef
int
(
*
original_func_t
)
(
/* параметры */
)
;
int
my_hook_function
(
/* параметры */
)
{
// Получаем трамплин и вызываем оригинальную функцию
int
result
=
(
(
original_func_t
)
subhook_get_trampoline
(
original_function_hook
)
)
(
/* параметры */
)
;
// Модифицируем результат (значение в eax)
result
=
/* твоя модификация например result * 2 */
;
return
result
;
}
void
setup_hook
(
)
{
original_function_hook
=
subhook_new
(
(
void
*
)
original_function
,
(
void
*
)
my_hook_function
)
;
subhook_install
(
original_function_hook
)
;
}

Если ставить хук на call, то оно крашит, ибо там 6 байт, я так понимаю, на инструкцию, а хукер меняет только 5, а если ставить позже, оно разве не должно работать с нейкид функой?
 
Ответить с цитированием