MiInitializeCfg

INT64 __fastcall MiInitializeCfg(){
  INT64 result; 
  __int64 *v1; 
  int v2; 
  _SECTION *v3; 
  UINT64 SectionPageProtection; 
  UINT64 SectionPageProtectiona; 
  UINT64 AllocationAttributes; 
  UINT64 AllocationAttributesa; 
  _SECTION *Section; 
  LARGE_INTEGER InputMaximumSize; 
  Section = 0i64;
  LODWORD(AllocationAttributes) = 0x4000000;
  LODWORD(SectionPageProtection) = 4;
  InputMaximumSize.QuadPart = 0x20000000000i64;
  LODWORD(result) = MmCreateSection(
                      (PVOID *)&Section,
                      0xF001Fui64,
                      0i64,
                      &InputMaximumSize,
                      SectionPageProtection,
                      AllocationAttributes,
                      0i64,
                      0i64);
  if( (int)result >= 0 )
  {
    ::Section = (INT64)Section;
    qword_140C4C968 = (__int64)MiSectionControlArea(Section);
    v1 = &qword_140C4C900;
    v2 = 0;
    InputMaximumSize.QuadPart = 0x4000000i64;
    while( 1 )
    {
      LODWORD(AllocationAttributesa) = 0x4000000;
      LODWORD(SectionPageProtectiona) = 4;
      LODWORD(result) = MmCreateSection(
                          (PVOID *)&Section,
                          0xF001Fui64,
                          0i64,
                          &InputMaximumSize,
                          SectionPageProtectiona,
                          AllocationAttributesa,
                          0i64,
                          0i64);
      if( (int)result < 0 )
        break;
      v3 = Section;
      *(v1 - 1) = (__int64)Section;
      *v1 = (__int64)MiSectionControlArea(v3);
      ++v2;
      v1 += 8;
      if( v2 )
        return 0i64;
    }
  }
  return result;
}

Referenced by:

MiInitSystem