SleepstudyHelper_RegisterPdoWithParentHandle

INT64 __fastcall SleepstudyHelper_RegisterPdoWithParentHandle(INT64 a1, INT64 a2, _DEVICE_OBJECT *a3, KSPIN_LOCK **a4){
  KSPIN_LOCK *v4; 
  void *v5; 
  int BlockerGuid; 
  int v10; 
  void *a4a; 
  __int128 a2a[3]; 
  KSPIN_LOCK *v14; 
  v4 = 0i64;
  v5 = 0i64;
  v14 = 0i64;
  a4a = 0i64;
  a2a[0] = 0i64;
  if( a1 && a2 && a3 && a4 )
  {
    BlockerGuid = SleepstudyHelperGetBlockerGuid(a2, a2a);
    if( BlockerGuid < 0 )
      return(unsigned int)BlockerGuid;
    v10 = SleepstudyHelperCreateBlockerFromDevice(a1, a2a, a3, &a4a);
    v5 = a4a;
    BlockerGuid = v10;
    if( v10 >= 0 )
    {
      BlockerGuid = SleepstudyHelperBuildBlocker(a4a, &v14);
      if( BlockerGuid >= 0 )
      {
        *a4 = v14;
        return(unsigned int)BlockerGuid;
      }
      v4 = v14;
    }
  }
  else
  {
    BlockerGuid = -1073741811;
  }
  if( v5 )
    SleepstudyHelperDestroyBlockerBuilder(v5);
  if( v4 )
    SleepstudyHelperDestroyBlocker(v4);
  return(unsigned int)BlockerGuid;
}

Referenced by:

No references.