memexec/peloader/
def.rs

1use std::os::raw::{c_char, c_void};
2
3pub(crate) type PVOID = *const c_void;
4pub(crate) type HANDLE = PVOID;
5pub(crate) type HMODULE = PVOID;
6pub(crate) type LPCSTR = *const c_char;
7pub(crate) type ULONG = u32;
8pub(crate) type PULONG = *const ULONG;
9pub(crate) type ULONG_PTR = usize;
10pub(crate) type PSIZE_T = *const ULONG_PTR;
11pub(crate) type NTSTATUS = i32;
12pub(crate) type BOOL = bool;
13pub(crate) type DWORD = u32;
14
15pub(crate) const MEM_COMMIT: DWORD = 0x00001000;
16pub(crate) const MEM_RESERVE: DWORD = 0x00002000;
17
18pub const DLL_PROCESS_ATTACH: DWORD = 1;
19pub const DLL_THREAD_ATTACH: DWORD = 2;
20pub const DLL_THREAD_DETACH: DWORD = 3;
21pub const DLL_PROCESS_DETACH: DWORD = 0;
22
23/*
24BOOL APIENTRY DllMain(
25    HMODULE hModule,
26    DWORD  ul_reason_for_call,
27    LPVOID lpReserved
28)
29*/
30pub type DllMain = extern "system" fn(HMODULE, DWORD, PVOID) -> BOOL;