| HyperDbg Debugger
    | 
Routines for common tasks in debugger. More...
Go to the source code of this file.
| Classes | |
| struct | _NT_KPROCESS | 
| KPROCESS Brief structure.  More... | |
| Macros | |
| #define | KGDT64_NULL (0 * 16) | 
| #define | KGDT64_R0_CODE (1 * 16) | 
| #define | KGDT64_R0_DATA (1 * 16) + 8 | 
| #define | KGDT64_R3_CMCODE (2 * 16) | 
| #define | KGDT64_R3_DATA (2 * 16) + 8 | 
| #define | KGDT64_R3_CODE (3 * 16) | 
| #define | KGDT64_SYS_TSS (4 * 16) | 
| #define | KGDT64_R3_CMTEB (5 * 16) | 
| #define | KGDT64_R0_CMCODE (6 * 16) | 
| #define | KGDT64_LAST (7 * 16) | 
| Typedefs | |
| typedef struct _NT_KPROCESS | NT_KPROCESS | 
| KPROCESS Brief structure. | |
| typedef struct _NT_KPROCESS * | PNT_KPROCESS | 
| typedef enum _PROCESS_KILL_METHODS | PROCESS_KILL_METHODS | 
| Different methods of killing a process. | |
| Enumerations | |
| enum | _PROCESS_KILL_METHODS { PROCESS_KILL_METHOD_1 = 0 , PROCESS_KILL_METHOD_2 , PROCESS_KILL_METHOD_3 } | 
| Different methods of killing a process.  More... | |
| Functions | |
| UCHAR * | PsGetProcessImageFileName (IN PEPROCESS Process) | 
| PVOID | PsGetProcessSectionBaseAddress (PEPROCESS Process) | 
| NTKERNELAPI NTSTATUS NTAPI | SeCreateAccessState (PACCESS_STATE AccessState, PVOID AuxData, ACCESS_MASK DesiredAccess, PGENERIC_MAPPING Mapping) | 
| NTKERNELAPI VOID NTAPI | SeDeleteAccessState (PACCESS_STATE AccessState) | 
| NTSTATUS | MmUnmapViewOfSection (PEPROCESS Process, PVOID BaseAddress) | 
| BOOLEAN | CommonIsProcessExist (UINT32 ProcId) | 
| Checks whether the process with ProcId exists or not. | |
| PCHAR | CommonGetProcessNameFromProcessControlBlock (PEPROCESS Eprocess) | 
| Get process name by eprocess. | |
| BOOLEAN | CommonKillProcess (UINT32 ProcessId, PROCESS_KILL_METHODS KillingMethod) | 
| Kill a user-mode process with different methods. | |
| BOOLEAN | CommonValidateCoreNumber (UINT32 CoreNumber) | 
| Validate core number. | |
Routines for common tasks in debugger.
| #define KGDT64_LAST (7 * 16) | 
| #define KGDT64_NULL (0 * 16) | 
| #define KGDT64_R0_CMCODE (6 * 16) | 
| #define KGDT64_R0_CODE (1 * 16) | 
| #define KGDT64_R0_DATA (1 * 16) + 8 | 
| #define KGDT64_R3_CMCODE (2 * 16) | 
| #define KGDT64_R3_CMTEB (5 * 16) | 
| #define KGDT64_R3_CODE (3 * 16) | 
| #define KGDT64_R3_DATA (2 * 16) + 8 | 
| #define KGDT64_SYS_TSS (4 * 16) | 
| typedef struct _NT_KPROCESS NT_KPROCESS | 
KPROCESS Brief structure.
| typedef struct _NT_KPROCESS * PNT_KPROCESS | 
| typedef enum _PROCESS_KILL_METHODS PROCESS_KILL_METHODS | 
Different methods of killing a process.
Different methods of killing a process.
| Enumerator | |
|---|---|
| PROCESS_KILL_METHOD_1 | |
| PROCESS_KILL_METHOD_2 | |
| PROCESS_KILL_METHOD_3 | |
| PCHAR CommonGetProcessNameFromProcessControlBlock | ( | PEPROCESS | Eprocess | ) | 
Get process name by eprocess.
| Eprocess | Process eprocess | 
Checks whether the process with ProcId exists or not.
this function should NOT be called from vmx-root mode
| UINT32 | ProcId | 
| BOOLEAN CommonKillProcess | ( | UINT32 | ProcessId, | 
| PROCESS_KILL_METHODS | KillingMethod ) | 
Kill a user-mode process with different methods.
| ProcessId | |
| KillingMethod | 
Validate core number.
| CoreNumber | 
| NTSTATUS MmUnmapViewOfSection | ( | PEPROCESS | Process, | 
| PVOID | BaseAddress ) | 
| UCHAR * PsGetProcessImageFileName | ( | IN PEPROCESS | Process | ) | 
| PVOID PsGetProcessSectionBaseAddress | ( | PEPROCESS | Process | ) | 
| NTKERNELAPI NTSTATUS NTAPI SeCreateAccessState | ( | PACCESS_STATE | AccessState, | 
| PVOID | AuxData, | ||
| ACCESS_MASK | DesiredAccess, | ||
| PGENERIC_MAPPING | Mapping ) | 
| NTKERNELAPI VOID NTAPI SeDeleteAccessState | ( | PACCESS_STATE | AccessState | ) |