| 64 | // Virtual Memory |
| 65 | |
| 66 | ntapi::NTSTATUS |
| 67 | NTAPI |
| 68 | ntapi::NtProtectVirtualMemory( |
| 69 | IN HANDLE ProcessHandle, |
| 70 | IN OUT PVOID *BaseAddress, |
| 71 | IN OUT PSIZE_T NumberOfBytesToProtect, |
| 72 | IN ULONG NewAccessProtection, |
| 73 | OUT PULONG OldAccessProtection) |
| 74 | { |
| 75 | typedef NTSTATUS(NTAPI* NtProtectVirtualMemory_t)(HANDLE, PVOID, PSIZE_T, ULONG, PULONG); |
| 76 | static NtProtectVirtualMemory_t Fn = NtProtectVirtualMemory_t(GetProcAddress(hmNtdll, "NtProtectVirtualMemory")); |
| 77 | if (Fn) |
| 78 | return Fn(ProcessHandle, BaseAddress, NumberOfBytesToProtect, NewAccessProtection, OldAccessProtection); |
| 79 | SetLastError(ERROR_PROC_NOT_FOUND); |
| 80 | return STATUS_PROCEDURE_NOT_FOUND; |
| 81 | } |
nothing calls this directly
no outgoing calls
no test coverage detected