ppb (PPVOID) - output
cb (ULONG) - input
The size is rounded up to the next page-size boundary. The size of a page is 4KB.
flag (ULONG) - input
A set of flags describing the allocation attributes and desired access protection for the private memory object. Possible values are shown in the lists below:
Allocation Attributes
PAG_COMMIT (0x00000010)
32-bit 32-bit 16-bit alias
Offset Object Selectors
BaseAddress+000KB┌──────────────┐ ───── Sel
│ │
BaseAddress+064KB├──────────────┤ ───── Sel+HugeInc
│ │
BaseAddress+128KB├──────────────┤ ───── Sel+HugeInc*2
│ │
BaseAddress+192KB├──────────────┤ ───── Sel+HugeInc*3
│ │
HugeInc is the huge increment used for DosAllocHuge.
Desired Access Protection
PAG_EXECUTE (0x00000004)
ulrc (APIRET) - returns
DosAllocMem returns one of the following values: