SepFreeCapturedTokenSecurityAttributesInformation
VOID __stdcall SepFreeCapturedTokenSecurityAttributesInformation(
_TOKEN_SECURITY_ATTRIBUTES_INFORMATION *CapturedAttributesInfo){
PVOID *v1;
unsigned int i;
unsigned __int16 v4;
v1 = (PVOID *)*((_QWORD *)CapturedAttributesInfo + 1);
for( i = 0; i < CapturedAttributesInfo[1]; ++i )
{
ExFreePoolWithTag(v1[5 * i + 1], 0);
if( LODWORD(v1[5 * i + 3]) )
{
v4 = (unsigned __int16)v1[5 * i + 2];
if( v4 )
{
if( v4 <= 2u || v4 == 3 || v4 == 4 || v4 == 5 || v4 == 6 || v4 == 16 )
ExFreePoolWithTag(v1[5 * i + 4], 0);
}
}
}
if( v1 )
ExFreePoolWithTag(v1, 0);
ExFreePoolWithTag(CapturedAttributesInfo, 0);
}Referenced by:
NtCreateTokenEx
SepCaptureTokenSecurityAttributesAndOperationsInformation
SepReleaseTokenSecurityAttributesAndOperationsInformation