| 1066 | } |
| 1067 | |
| 1068 | BOOL WINAPI KbReadProcessMemory( |
| 1069 | ULONG ProcessId, |
| 1070 | IN WdkTypes::PVOID BaseAddress, |
| 1071 | OUT PVOID Buffer, |
| 1072 | ULONG Size |
| 1073 | ) { |
| 1074 | if (!ProcessId || !BaseAddress || !Buffer || !Size) return FALSE; |
| 1075 | KB_READ_PROCESS_MEMORY_IN Input = {}; |
| 1076 | Input.ProcessId = ProcessId; |
| 1077 | Input.BaseAddress = BaseAddress; |
| 1078 | Input.Buffer = reinterpret_cast<WdkTypes::PVOID>(Buffer); |
| 1079 | Input.Size = Size; |
| 1080 | return KbSendRequest(Ctls::KbReadProcessMemory, &Input, sizeof(Input)); |
| 1081 | } |
| 1082 | |
| 1083 | BOOL WINAPI KbWriteProcessMemory( |
| 1084 | ULONG ProcessId, |