HvpGenerateLogEntryDirtyData

UINT16 __fastcall HvpGenerateLogEntryDirtyData(_HHIVE *Hive, INT64 a2, INT64 a3, UINT64 *a4, UINT64 *a5, UINT64 Offset){
  _RTL_BITMAP *p_DirtyVector; 
  INT64 v10; 
  UINT64 *v11; 
  unsigned int v12; 
  unsigned int v13; 
  UINT16 result; 
  UINT8 *Address[2]; 
  UINT64 Current; 
  UINT64 Length; 

  Address[0] = 0i64;
  LODWORD(Length) = 0;
  p_DirtyVector = &Hive->DirtyVector;
  LODWORD(Offset) = 0;
  LODWORD(Current) = 0;
  if( HvpFindNextDirtyBlock(Hive, &Hive->DirtyVector, &Current, Address, &Length, &Offset, 0) )
  {
    v11 = a5;
    do
      HvpCopyDataToOffsetArray((INT64)Address[0], (unsigned int)Length, a2, v10, a4, v11);
    while( HvpFindNextDirtyBlock(Hive, p_DirtyVector, &Current, Address, &Length, &Offset, 0) );
  }
  v12 = RtlNumberOfSetBits((UINT64 *)&p_DirtyVector->SizeOfBitMap);
  v13 = HvpCountSetRangesInVector(p_DirtyVector);
  CmpLogDirtyVectorUse((_CMHIVE *)Hive, DirtyDataCaptureEnd, v13, v12);
  return result;
}

Referenced by:

HvpGenerateLogEntry