-
Постов
10 -
Зарегистрирован
-
Посещение
-
keng подписался на black56rus
-
black56rus подписался на keng
-
Прописать В Адрес Своё Значения.
black56rus опубликовал тема в Создание трейнеров в специальных студиях
Здравствуйте! Я хотел обратиться с таким вопросам. Мы через сигнатуру нашли адрес, как теперь прописать своё значения в этот адрес? public int FindSignature() { var moduleName = "NxCharacter.2.8.1.dll"; var startAddress = 0; var sizeToAllocate = 0; var pattern = new int[] {137, 144, -1, -1, -1, -1, 139, 80, 16, 221, 4, 209, 139, 136, -1, -1, -1, -1}; if (pID != 0) { foreach (var p in Process.GetProcesses()) { if (p.Id ==pID) { foreach (ProcessModule m in p.Modules) { if (m.ModuleName == moduleName) { startAddress = (int)m.BaseAddress; sizeToAllocate = m.ModuleMemorySize; break; } } } } var handle = OpenProcess(0x001F0FFF, false, pID); if (handle != IntPtr.Zero) { byte[] buffer = new byte[sizeToAllocate]; int bytesread; ReadProcessMemory(handle, (IntPtr)startAddress, buffer, sizeToAllocate, out bytesread); CloseHandle(handle); var counter = 0; if (pattern.Length <= buffer.Length) { for (var i = 0; i < buffer.Length; i++) { if (buffer[i] == pattern[0] | pattern[0] == -1) { for (var j = 0; j < pattern.Length; j++) { if (buffer[i + j] == pattern[j] | pattern[j] == -1) { counter++; if (counter == pattern.Length) { var result = i + startAddress; return (int)result; } } else { counter = 0; } } } } } } } return -1; } Заранее благодарю за ответ!