SeMaximumAuditMaskFromGlobalSacl
VOID __fastcall SeMaximumAuditMaskFromGlobalSacl(
_UNICODE_STRING *ObjectTypeName,
UINT64 GrantedAccess,
VOID *Token,
UINT64 *AuditMask){
_ETHREAD *CurrentThread;
__int64 v7[3];
if( ObjectTypeName && ObjectTypeName->Buffer )
{
v7[0] = 0i64;
CurrentThread = (_ETHREAD *)KeGetCurrentThread();
--*((_WORD *)CurrentThread + 242);
ExAcquireResourceSharedLite(&SepRmGlobalSaclLock, 1);
if( (int)SepRmGlobalSaclFind(v7, 0i64, ObjectTypeName, 0) >= 0 )
{
SeMaximumAuditMask(*(_QWORD *)(v7[0] + 24));
*(_DWORD *)AuditMask = *(_DWORD *)AuditMask;
}
ExReleaseResourceLite(&SepRmGlobalSaclLock);
KeLeaveCriticalRegion();
}
}Referenced by:
SeOpenObjectAuditAlarmWithTransaction
SeSecurityDescriptorChangedAuditAlarm