VOID __stdcall KeQueryOwnerMutant(PKMUTANT Mutant, PCLIENT_ID ClientId){
unsigned __int8 CurrentIrql;
_ETHREAD *OwnerThread;
ClientId->UniqueProcess = 0i64;
ClientId->UniqueThread = 0i64;
CurrentIrql = KeGetCurrentIrql();
__writecr8(2ui64);
KiAcquireKobjectLockSafe(Mutant);
OwnerThread = Mutant->OwnerThread;
if( OwnerThread )
*ClientId = OwnerThread->Cid;
_InterlockedAnd((volatile signed __int32 *)Mutant, 0xFFFFFF7F);
__writecr8(CurrentIrql);
}