EtwpRealtimeZeroTruncateLogfile
VOID __stdcall EtwpRealtimeZeroTruncateLogfile(_WMI_LOGGER_CONTEXT *LoggerContext){
_LARGE_INTEGER v1;
void *RealtimeLogfileHandle;
void *v4;
UINT64 FileInformationClass;
UINT64 FileInformationClassa;
_IO_STATUS_BLOCK IoStatusBlock;
__int64 FileInformation;
__int64 v9;
FileInformation = 0i64;
v1.QuadPart = 72i64;
LODWORD(FileInformationClass) = 20;
v9 = 72i64;
RealtimeLogfileHandle = LoggerContext->RealtimeLogfileHandle;
IoStatusBlock = 0i64;
if( ZwSetInformationFile(
(UINT64)RealtimeLogfileHandle,
(UINT64)&IoStatusBlock,
(INT8 *)&v9,
8ui64,
FileInformationClass) < 0
|| (v4 = LoggerContext->RealtimeLogfileHandle,
FileInformation = 72i64,
LODWORD(FileInformationClassa) = 19,
ZwSetInformationFile((UINT64)v4, (UINT64)&IoStatusBlock, (INT8 *)&FileInformation, 8ui64, FileInformationClassa) < 0) )
{
ZwClose((_HANDLE)LoggerContext->RealtimeLogfileHandle);
LoggerContext->RealtimeLogfileHandle = 0i64;
v1.QuadPart = 0i64;
}
LoggerContext->RealtimeLogfileSize = v1;
LoggerContext->RealtimeReadOffset = v1;
LoggerContext->RealtimeWriteOffset = v1;
}Referenced by:
EtwpRealtimeCreateLogfile
EtwpRealtimeFlushSavedBuffers