ExpDeleteSiloState
NTSTATUS __stdcall ExpDeleteSiloState(PVOID P){
void *v2;
VOID *v3;
VOID *v4;
_EX_RUNDOWN_REF *v5;
PVOID *v6;
PVOID Pa;
v2 = *(void **)P;
if( v2 )
{
ExFreePoolWithTag(v2, 0x69534C53u);
*(_QWORD *)P = 0i64;
}
v3 = (VOID *)*((_QWORD *)P + 2);
if( v3 )
{
ObfDereferenceObjectWithTag(v3, 0x746C6644ui64);
*((_QWORD *)P + 2) = 0i64;
}
v4 = (VOID *)*((_QWORD *)P + 5854);
if( v4 )
{
MmUnmapViewInSystemSpace(v4);
*((_QWORD *)P + 5854) = 0i64;
}
v5 = (_EX_RUNDOWN_REF *)*((_QWORD *)P + 5856);
if( v5 )
{
ExWaitForCallBacks(v5);
SC_ENV::Free(*((void **)P + 5856));
*((_QWORD *)P + 5856) = 0i64;
}
v6 = (PVOID *)*((_QWORD *)P + 5877);
if( v6 )
{
Pa = *v6;
if( (int)sub_14061BF48((__int64 *)&Pa) >= 0 )
ExFreePoolWithTag(Pa, 0x20534C53u);
ExFreePoolWithTag(*((PVOID *)P + 5877), 0x20534C53u);
*((_QWORD *)P + 5877) = 0i64;
}
return(unsigned int)ExFreePoolWithTag(P, 0x69534C53u);
}Referenced by:
PspDeleteServerSiloGlobals