ExpVerifyWindowsOsOptions

NTSTATUS __fastcall ExpVerifyWindowsOsOptions(__int64 a1, unsigned int a2){
  VOID *v2; 
  _DWORD *v3; 
  unsigned int v4; 
  __int64 v5; 
  unsigned int v6; 
  __int64 v7; 
  _FILE_PATH *v8; 

  v5 = (unsigned int)ExpSafeWcslen((WCHAR *)(a1 + 20), (VOID *)(a1 + a2));
  v6 = v3[3];
  if( v6 < 0x14 )
    return -1073741811;
  if( v6 > v4 )
    return -1073741811;
  if( v3[2] != 1 )
    return -1073741811;
  v7 = (unsigned int)v3[4];
  if( (v7 & 3) != 0 )
    return -1073741811;
  if( (unsigned int)v7 >= v4 )
    return -1073741811;
  if( (_DWORD)v5 == -1 )
    return -1073741811;
  v8 = (_FILE_PATH *)((char *)v3 + v7);
  if( (_FILE_PATH *)((char *)v3 + 2 * v5 + 22) > v8 )
    return -1073741811;
  else
    return ExpVerifyFilePath(v8, v2);
}

Referenced by:

ExpSetBootEntry
NtEnumerateBootEntries