HvpIsLogEntryHeaderCoherent

UINT8 __stdcall HvpIsLogEntryHeaderCoherent(_HLOG_ENTRY_HEADER *LogEntryHeader, UINT64 LogEntryFileOffset){
  unsigned int v2; 
  unsigned int EntrySize; 
  unsigned __int64 v4; 
  unsigned int HiveSize; 
  __int64 MetadataEntryCount; 
  unsigned __int64 v7; 
  UINT8 result; 

  result = 0;
  if( LogEntryHeader->Signature == 1162638920 )
  {
    EntrySize = LogEntryHeader->EntrySize;
    if( EntrySize > 0x28 )
    {
      v4 = EntrySize;
      if( EntrySize + (unsigned __int64)(unsigned int)LogEntryFileOffset <= 0xFFFFFFFF )
      {
        HiveSize = LogEntryHeader->HiveSize;
        if( HiveSize - 1 <= 0x7FFFDFFF && (HiveSize & 0xFFF) == 0 && (!v2 || HiveSize <= v2) )
        {
          MetadataEntryCount = LogEntryHeader->MetadataEntryCount;
          if( (_DWORD)MetadataEntryCount )
          {
            v7 = 8 * MetadataEntryCount + 40;
            if( v7 <= 0xFFFFFFFF && v4 >= v7 && (unsigned int)HvpLogEntryCheckHeaderChecksum(LogEntryHeader) )
              return 1;
          }
        }
      }
    }
  }
  return result;
}

Referenced by:

HvpApplyIncrementalLogFile
HvpDetermineIncrementalLogFileMaximums