NtSetDebugFilterState
NTSTATUS __stdcall NtSetDebugFilterState(UINT64 ComponentId, UINT64 Level, UINT8 State){
unsigned int v3;
__int64 v5;
INT8 v6;
int *v7;
v3 = Level;
v5 = (unsigned int)ComponentId;
v6 = *((_BYTE *)KeGetCurrentThread() + 562);
if( v6 && !SeSinglePrivilegeCheck(*(_QWORD *)&SeDebugPrivilege, v6) )
return -1073741790;
v7 = &Kd_WIN2000_Mask;
if( (unsigned int)v5 >= 0x9C )
{
if( (_DWORD)v5 != -1 )
v7 = (int *)Kd_DEFAULT_Mask;
}
else
{
_mm_lfence();
v7 = (int *)*((_QWORD *)&KdComponentTable + v5);
}
if( v3 <= 0x1F )
v3 = 1 << v3;
*v7 = (State != 0 ? v3 : 0) | *v7 & ~v3;
return 0;
}Referenced by:
DbgSetDebugFilterState
MiInitializeLoadedModuleList
VfInitBootDriversLoaded