
14.10.2024, 13:04
|
|
Познающий
Регистрация: 22.12.2018
Сообщений: 72
С нами:
3890632
Репутация:
63
|
|
Сообщение от moreveal
Открой список структур в IDA и посмотри из чего состоит CChat; обращение по указателю - это фактически разыменовывание адреса по смещению от начала структуры до нужного элемента, m_nPageSize является первым элементом структуры, поэтому тебе повезло - просто представь адрес this в виде 32-битного числа (тип dd в IDA) и поменяй его на нужное
C++:
Код:
*
reinterpret_cast
(
this_ptr
)
=
15
;
Но в твоем случае нужно, разумеется, патчить функцию, а не ставить хук, чтобы получить адрес на this, поскольку если ты сперва изменишь его, а потом вызовешь оригинал - оно ресетнется в 10
Код:
Код:
.text:10067C05 56 push esi
.text:10067C6F C7 06 0A 00 mov dword ptr [esi], 0Ah
esi я так понимаю будет как this? пробовал разные варианты, крашит
к примеру
Код:
Код:
int* esi = reinterpret_cast(0x67C05);
*esi = 15;
|
|
|