NTSTATUS __stdcall SleepstudyHelperBlockerActiveDereference(PKSPIN_LOCK SpinLock){
NTSTATUS v1;
PKSPIN_LOCK v2;
unsigned __int8 v3;
bool v4;
unsigned __int64 v5;
v1 = 0;
v2 = SpinLock;
if( !SpinLock )
return -1073741811;
do
{
v3 = KeAcquireSpinLockRaiseToDpc(v2);
v4 = (*((_DWORD *)v2 + 3))-- == 1;
v5 = v3;
if( v4 )
SshpSetBlockerActive((INT64)v2, 0);
KxReleaseSpinLock(v2);
__writecr8(v5);
v2 = (PKSPIN_LOCK)v2[35];
}
while( v2 );
return v1;
}