ExpAllocateMidLevelTable
CHAR *__fastcall ExpAllocateMidLevelTable(INT64 a1, CHAR **a2, INT64 a3){
CHAR *TablePagedPool;
CHAR *LowLevelTable;
TablePagedPool = (CHAR *)ExpAllocateTablePagedPool(*(_QWORD *)(a1 + 16), 0x1000ui64);
if( TablePagedPool )
{
LowLevelTable = ExpAllocateLowLevelTable(a1, a3);
*a2 = LowLevelTable;
if( LowLevelTable )
{
*(_QWORD *)TablePagedPool = LowLevelTable;
return TablePagedPool;
}
ExpFreeTablePagedPool(*(_EPROCESS **)(a1 + 16), TablePagedPool, 0x1000ui64);
}
return 0i64;
}Referenced by:
ExpAllocateHandleTableEntrySlow