PiLookupInDDB

VOID __fastcall PiLookupInDDB(_UNICODE_STRING *FullPath, VOID *ImageBase, UINT64 ImageSize, _GUID *EntryGuid){
  VOID *v4; 
  VOID *v6; 
  unsigned int v7; 
  int v9; 
  INT64 v10[2]; 
  __int128 v11; 
  INT64 v12[2]; 
  __int128 v13; 

  v4 = PpDDBPatchHandle;
  v6 = PpDDBHandle;
  v7 = ImageSize;
  *(_OWORD *)v10 = 0i64;
  v11 = 0i64;
  *(_OWORD *)v12 = 0i64;
  v13 = 0i64;
  if( !PpDDBHandle )
  {
    if( PiInitializeDDB(L"\\SystemRoot\\AppPatch\\drvmain.sdb") < 0 )
      goto LABEL_6;
    v6 = (VOID *)v10[0];
  }
  PiIsDriverBlocked(v6, FullPath, ImageBase, v7);
  if( v9 < 0 )
    goto LABEL_6;
  if( !PpDDBHandle )
  {
    if( PiInitializeDDB(L"\\SystemRoot\\AppPatch\\drvpatch.sdb") < 0 )
      goto LABEL_6;
    v4 = (VOID *)v12[0];
  }
  if( v4 )
    PiIsDriverBlocked(v4, FullPath, ImageBase, v7);
LABEL_6:
  if( v10[0] )
    PiReleaseDDB((INT64)v10);
  if( v12[0] )
    PiReleaseDDB((INT64)v12);
}

Referenced by:

PpCheckInDriverDatabase