EtwpTraceFileName

VOID __stdcall EtwpTraceFileName(VOID *FileKey, _UNICODE_STRING *FileName, UINT64 LoggerId, UINT16 HookId){
  __int64 v4; 
  int v7; 
  INT64 v8; 
  INT64 v9; 
  unsigned int v10; 
  INT64 *v11; 
  _ETW_SILODRIVERSTATE *v12; 
  LPCGUID RelatedActivityId; 
  __int16 v14; 
  __int64 v15[2]; 
  _EVENT_DATA_DESCRIPTOR UserData; 
  __int64 v17; 
  unsigned int v18; 
  int v19; 
  __int16 *v20; 
  __int64 v21; 
  unsigned int v22; 
  INT16 v23; 

  v4 = HookId;
  v15[1] = 0i64;
  v14 = 0;
  if( FileKey )
  {
    v8 = *((_QWORD *)FileKey + 270);
  }
  else
  {
    LOBYTE(v7) = KeIsExecutingInArbitraryThreadContext();
    if( v7 )
    {
      v8 = 0i64;
    }
    else
    {
      LODWORD(v9) = PsGetThreadServerSilo((INT64)KeGetCurrentThread());
      v8 = v9;
    }
  }
  v10 = *(unsigned __int16 *)LoggerId;
  v15[0] = (__int64)FileName;
  if( v10 > 0x2000 )
    v10 = 0x2000;
  *(_QWORD *)&UserData.Size = 8i64;
  v18 = v10;
  UserData.Ptr = (unsigned __int64)v15;
  v17 = *(_QWORD *)(LoggerId + 8);
  v20 = &v14;
  v19 = 0;
  v21 = 2i64;
  if( EtwpHostSiloState != -4516 && (*(_DWORD *)(EtwpHostSiloState + 4516) & 0x200) != 0 )
  {
    if( v23 == 1056 )
    {
      EtwWriteEx(*(&ExBootDevicesRemovedEvent + 240), &KFileEvt_NameCreate, 0i64, 0, 0, 0, 3u, &UserData);
LABEL_12:
      LODWORD(RelatedActivityId) = 4200450;
      EtwTraceSiloKernelEvent(
        v8,
        (PGET_UPDATED_BUS_RESOURCE *)&UserData,
        3ui64,
        0x200ui64,
        v23,
        (INT64)RelatedActivityId);
      return;
    }
    if( v23 == 1059 )
      EtwWriteEx(*(&ExBootDevicesRemovedEvent + 240), &KFileEvt_NameDelete, 0i64, 0, 0, 0, 3u, &UserData);
  }
  if( v23 != 1060 )
    goto LABEL_12;
  if( v4 )
  {
    if( v4 != v8 )
      return;
    v11 = *(INT64 **)(v4 + 1272);
  }
  else
  {
    v11 = &PspHostSiloGlobals;
  }
  v12 = (_ETW_SILODRIVERSTATE *)v11[108];
  if( v12 )
    EtwpLogKernelEvent((__int64)&UserData, v12, v22, 3u, 0x424u, 0x401802u);
}

Referenced by:

No references.