SleepstudyHelper_RegisterPdoWithParentHandle
__int64 __fastcall SleepstudyHelper_RegisterPdoWithParentHandle(
__int64 a1,
_SC_DEVICE *rdx0,
_DEVICE_OBJECT *a3,
_EX_PUSH_LOCK **a4){
_EX_PUSH_LOCK *v4;
PVOID v5;
int v9;
unsigned int v10;
int v11;
PVOID P;
__int128 v14[3];
_EX_PUSH_LOCK *a2;
v4 = 0i64;
v5 = 0i64;
a2 = 0i64;
P = 0i64;
v14[0] = 0i64;
if( a1 && rdx0 && a3 && a4 )
{
SleepstudyHelperGetBlockerGuid(rdx0, (INT64)v14, a3);
v10 = v9;
if( v9 < 0 )
return v10;
v11 = SleepstudyHelperCreateBlockerFromDevice(a1, v14, a3, &P);
v5 = P;
v10 = v11;
if( v11 >= 0 )
{
v10 = SleepstudyHelperBuildBlocker(P, &a2);
if( (v10 & 0x80000000) == 0 )
{
*a4 = a2;
return v10;
}
v4 = a2;
}
}
else
{
v10 = -1073741811;
}
if( v5 )
SleepstudyHelperDestroyBlockerBuilder(v5);
if( v4 )
SleepstudyHelperDestroyBlocker((PKSPIN_LOCK)v4);
return v10;
}Referenced by:
No references.