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

  #7  
Старый 22.10.2021, 15:31
legendabrn
Участник форума
Регистрация: 08.03.2019
Сообщений: 121
С нами: 3781678

Репутация: 113
По умолчанию

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

Пытаюсь изменить

на

Если делать это через Сheat Engine то все работает прекрасно.
Программа которую я написал должна делать то же самое но не работает.
Если скомпилировать код ниже и закинуть в папку с игрой Asi-loader выдает:

C:





Код:
#include 
#include 
#include 
void
write_memory
(
void
)
{
DWORD old_prot
;
void
*
ptr
=
(
void
*
)
0x2A3F4D
;
char
patch
[
]
=
"\xB0\x05\x90\x90\x90\x90"
;
size_t size
=
sizeof
(
patch
)
-
1
;
VirtualProtect
(
ptr
,
size
,
PAGE_READWRITE
,
&
old_prot
)
;
memcpy
(
ptr
,
patch
,
size
)
;
VirtualProtect
(
ptr
,
size
,
old_prot
,
&
old_prot
)
;
return
;
}
int
__stdcall
DllMain
(
HMODULE module
,
DWORD reason
,
LPVOID reserved
)
{
switch
(
reason
)
{
case
DLL_PROCESS_ATTACH
:
write_memory
(
)
;
break
;
}
return
1
;
}


Также пробовал написать тоже самое на Lua, но функции из библиотеки memory не работают

Lua:





Код:
local
wrt
=
require
(
'memory'
)
.
setint8
local
ptr
=
0x2A3F4D
local
result
=
wrt
(
ptr
+
0
,
0xB0
,
true
)
result
=
result
or
wrt
(
ptr
+
1
,
0x05
,
true
)
for
i
=
2
,
5
do
result
=
result
or
wrt
(
ptr
+
i
,
0x90
,
true
)
end
print
(
result
)
-- FALSE

C++:





Код:
void
write_memory
(
)
{
DWORD old_prot
;
void
*
ptr
=
reinterpret_cast

(
0x6A3F4D
)
;
char
patch
[
]
=
"\xB0\x05\x90\x90\x90\x90"
;
size_t size
=
sizeof
(
patch
)
-
1
;
VirtualProtect
(
ptr
,
size
,
PAGE_READWRITE
,
&
old_prot
)
;
memcpy
(
ptr
,
patch
,
size
)
;
VirtualProtect
(
ptr
,
size
,
old_prot
,
&
old_prot
)
;
}
BOOL APIENTRY
DllMain
(
HMODULE hModule
,
DWORD ul_reason_for_call
,
LPVOID lpReserved
)
{
if
(
ul_reason_for_call
==
DLL_PROCESS_ATTACH
)
{
write_memory
(
)
;
}
return
TRUE
;
}


1634902404939.pnglegendabrn · 22 Окт 2021 в 14:31' data-fancybox="lb-post-868040" data-lb-caption-extra-html="" data-lb-sidebar-href="" data-single-image="1" data-src="https://www.blast.hk/attachments/118747/" style="cursor: pointer;" title="1634902404939.png">


upd: не работало потому что, ты пытался перезаписать только адрес смещения а не статический адрес
 
Ответить с цитированием