BgkResumePrepare

NTSTATUS __stdcall BgkResumePrepare(PVOID MemoryMap){
  NTSTATUS v1; 
  unsigned int *Context; 
  void *v4; 
  VOID *v5; 
  _QWORD *v7; 
  INT64 v8; 
  VOID *v9; 
  UINT64 Tag; 
  UINT64 Taga; 
  v1 = 0;
  if( MemoryMap )
  {
    BgkpLockBgfxCodeSection();
    Context = (unsigned int *)BgGetContext();
    v4 = Context;
    if( Context )
    {
      v5 = (VOID *)*((_QWORD *)Context + 2);
      if( v5 )
      {
        LODWORD(Tag) = 1263093570;
        PoSetHiberRange(MemoryMap, 0x8000ui64, v5, Context[6], Tag);
      }
      qword_140C50388 = v4;
      return v1;
    }
    BgkpUnlockBgfxCodeSection();
    return -1073741670;
  }
  v7 = qword_140C50388;
  if( !qword_140C50388 )
    return -1073741670;
  LODWORD(Tag) = 0;
  PoSetHiberRange(0i64, 0x10000ui64, qword_140C50388, *(unsigned int *)qword_140C50388, Tag);
  v9 = (VOID *)v7[2];
  if( v9 )
  {
    LODWORD(Taga) = 0;
    PoSetHiberRange(0i64, 0x10000ui64, v9, *((unsigned int *)v7 + 6), Taga);
  }
  return BgMarkHiberPhase(v8);
}

Referenced by:

PopAllocateHiberContext
PopMarkComponentsBootPhase