KiTraceSetTimer

VOID __stdcall KiTraceSetTimer(_KTIMER *Timer, _KDPC *Dpc, UINT8 ThreadTimer){
  UINT64 Processor; 
  _KPRCB *Prcb; 
  UINT16 v8; 
  __int64 v9[2]; 
  __int16 Group; 
  unsigned __int8 GroupIndex; 
  char v12; 
  unsigned int Period; 
  char v14; 
  char v15; 
  __int16 UniqueProcessId; 
  int v17; 
  __int64 *v18; 
  int v19; 
  int v20; 

  v17 = 0;
  Processor = Timer->Processor;
  v12 = 0;
  v9[0] = Timer->DueTime.QuadPart;
  Period = Timer->Period;
  v14 = Timer->gap0[1] >> 2;
  _InterlockedAnd((volatile signed __int32 *)Timer, 0xFFFFFF7F);
  Prcb = KeGetPrcb(Processor);
  v9[1] = (__int64)Timer;
  Group = Prcb->Group;
  GroupIndex = Prcb->GroupIndex;
  v12 = 0;
  v15 = 0;
  UniqueProcessId = (__int16)KeGetCurrentThread()->ApcState.Process->UniqueProcessId;
  v12 = v14 != 0;
  if( Dpc )
    v12 = (v14 != 0) | 2;
  if( Timer->Period )
  {
    v8 = 3922;
  }
  else
  {
    v8 = 3924;
    if( !ThreadTimer )
      v8 = 3923;
  }
  v20 = 0;
  v18 = v9;
  v19 = 32;
  EtwTraceKernelEvent((__int64)&v18, 1u, 0x40020000u, v8, ThreadTimer != 0 ? 1538 : 6298370);
}

Referenced by:

No references.