char __fastcall KiBlockAndActivateUmsThread(__int64 a1, struct _KQUEUE *a2, __int64 a3, struct _KEVENT *a4){
KeSetEvent(a4 + 2, 1);
KiLeaveGuardedRegionUnsafe(a1);
LOBYTE(a1) = *((_QWORD *)KeGetCurrentPrcb() + 2) != 0i64;
KeRemoveQueue(a2, 0, 0i64);
return a1;
}