SleepstudyHelper_RegisterPdoWithParentPdo

INT64 __fastcall SleepstudyHelper_RegisterPdoWithParentPdo(
        INT64 a1,
        UINT64 a2,
        struct _DEVICE_OBJECT *a3,
        KSPIN_LOCK **a4){
  KSPIN_LOCK *v4; 
  PVOID v5; 
  int v7; 
  int v8; 
  PVOID P; 
  _UNICODE_STRING v11; 
  KSPIN_LOCK *a2a; 
  v4 = 0i64;
  v5 = 0i64;
  a2a = 0i64;
  P = 0i64;
  if( a1 && a2 && a3 && a4 )
  {
    v11.Buffer = 0i64;
    *(_QWORD *)&v11.Length = a2;
    v7 = SleepstudyHelperCreateBlockerFromDevice(a1, (__int128 *)&v11, a3, &P);
    v5 = P;
    v8 = v7;
    if( v7 >= 0 )
    {
      v8 = SleepstudyHelperBuildBlocker(P, &a2a);
      if( v8 >= 0 )
      {
        *a4 = a2a;
        return(unsigned int)v8;
      }
      v4 = a2a;
    }
  }
  else
  {
    v8 = -1073741811;
  }
  if( v5 )
    SleepstudyHelperDestroyBlockerBuilder(v5);
  if( v4 )
    SleepstudyHelperDestroyBlocker(v4);
  return(unsigned int)v8;
}

Referenced by:

No references.