PipProcessPendingServices

INT64 __stdcall PipProcessPendingServices(){
  __int64 v0; 
  int CachedContextBaseKey; 
  int v2; 
  void *v3; 
  PWCHAR ObjectName; 
  char *v6; 
  v6 = 0i64;
  ObjectName = 0i64;
  CachedContextBaseKey = PnpCtxGetCachedContextBaseKey(PiPnpRtlCtx, 4, (__int64 *)&v6);
  if( CachedContextBaseKey >= 0 )
  {
    v2 = PnpCtxRegOpenKey(
           PiPnpRtlCtx,
           v6,
           L"Control\\PendingDriverOperations\\Services",
           0,
           0x2001Fu,
           (void **)&ObjectName);
    CachedContextBaseKey = v2;
    if( v2 == -1073741772 || v2 == -1073741444 )
    {
      CachedContextBaseKey = 0;
    }
    else if( v2 >= 0 )
    {
      CachedContextBaseKey = PipProcessPendingObjects(
                               ObjectName,
                               PipPendingServicesFilter,
                               v3,
                               (UINT8 *)PipCommitPendingService);
    }
  }
  if( ObjectName )
    PnpCtxRegCloseKey(v0, ObjectName);
  return(unsigned int)CachedContextBaseKey;
}

Referenced by:

PipProcessPendingOperations