EtwpAddLastDroppedEvent
NTSTATUS __stdcall EtwpAddLastDroppedEvent(_WMI_LOGGER_CONTEXT *LoggerContext, _WMI_BUFFER_HEADER *Buffer, INT64 a3){
_DWORD *v6;
_DWORD *v7;
int UsedProcessorCount;
UINT64 DataSize;
UINT64 RemainingBufferSize;
UINT64 EventSize;
if( !LoggerContext->FlushingLastDroppedTime )
return -1073741637;
LODWORD(RemainingBufferSize) = a3 - *((_DWORD *)Buffer + 12);
LODWORD(DataSize) = 8 * EtwpQueryUsedProcessorCount(LoggerContext) + 8;
LODWORD(v6) = EtwpAddEventToBuffer(
Buffer,
0x52u,
(_LARGE_INTEGER *)Buffer + 11,
(UINT8 *)LoggerContext->FlushingLastDroppedTime,
DataSize,
RemainingBufferSize,
&EventSize);
v7 = v6;
if( !v6 )
return -1073741306;
UsedProcessorCount = EtwpQueryUsedProcessorCount(LoggerContext);
*v7 = UsedProcessorCount;
memmove(v7 + 2, LoggerContext->FlushingLastDroppedTime, 8 * UsedProcessorCount);
return 0;
}Referenced by:
EtwpFinalizeHeader