You are not logged in.
Pages: 1
Имеется участок кода:
.text:004C47DF 028 inc ebx ; default .text:004C47E0 028 add ebp, 38h .text:004C47E3 028 cmp ebx, 4Bh ; ? .text:004C47E6 028 fldz .text:004C47E8 028 fldz .text:004C47EA 028 fldz .text:004C47EC 028 jl loc_4C49F0 .text:004C47F2 028 cmp ds:_menu.field_35, 0 .text:004C47F9 028 jz loc_4C4A00 .text:004C47FF 028 cmp ds:?drawRadar, 0 .text:004C4806 028 jz short loc_4C4820 .text:004C4808 028 fld flt_68FDA0 .text:004C480E 028 fsub ds:flt_704734
cmp ebx, 4Bh
Беда такая что сюда не влазеет больше байта...
По пытался с инжектить:
void injectFunctionCall(DWORD address, DWORD function) { DWORD Old; VirtualProtect( PVOID(address), 16, PAGE_READWRITE, &Old); BYTE * patch = (BYTE *)address; *patch = 0xE8; // Call *(DWORD *)(patch+1) = (function-(address+5)); VirtualProtect( PVOID(address), 16, Old, &Old); } __declspec(naked) void Code_1() { _asm inc ebx _asm add ebp, 38h _asm cmp ebx, 1600h _asm retn; }
injectFunctionCall(0x04C47DF, (DWORD)Code_1); PathByte(0x04C47E4, 0x90); PathByte(0x04C47E5, 0x90);
Но не че не заменяется!!! Игра вылетает, как же заменить кусок кода на свой?
Offline
Обычно инжекты делают с помощью опкода jmp и ссылаются им на участок размеченной памяти (VirtualAlloc).
Offline
Тут не просто инжект надо было делать))))
Offline
Pages: 1