ExSetTimer
INT64 __fastcall ExSetTimer(UINT64 a1, INT64 a2, INT64 a3, INT64 a4){
ULONG_PTR BugCheckParameter4;
ULONG_PTR v9;
INT64 result;
__int64 v11[3];
ULONG_PTR BugCheckParameter3;
if( a2 > 0 && (*(_BYTE *)(a1 + 129) & 4) != 0 )
{
BugCheckParameter3 = a2;
KeBugCheckEx(0xC7u, 9ui64, 2ui64, (ULONG_PTR)&BugCheckParameter3, 0i64);
}
if( a3 < 0 )
{
v11[0] = a3;
KeBugCheckEx(0xC7u, 9ui64, 4ui64, (ULONG_PTR)v11, 0i64);
}
if( a4 && !ExpTimerSetParametersAreValid((_EXT_SET_PARAMETERS_V0 *)a4) )
KeBugCheckEx(0xC7u, 9ui64, 1ui64, v9, BugCheckParameter4);
ExpCheckForFreedEnhancedTimer(a1);
LOBYTE(result) = KeSetTimer2((_KTIMER2 *)a1, a2, a3, (_EXT_SET_PARAMETERS_V0 *)a4);
return result;
}Referenced by:
CmFcpManagerArmFeatureUsageRetryTimer
EnableFlushTimer
EtwpUpdatePeriodicCaptureState
RtlpHpScheduleCompaction
SendCaptureStateNotificationsWorker
WdipTimeoutCheckRoutine
WdtpArmTimer
WdtpTimerCallback