ExpTimeRefreshDpcRoutine

VOID __stdcall ExpTimeRefreshDpcRoutine(KDPC *Dpc, PVOID DeferredContext, PVOID SystemArgument1, PVOID SystemArgument2){
  _DWORD v8[50]; 
  _QWORD v9[16]; 
  v9[13] = v8;
  memset((INT64)v9, 0i64);
  if( (__int64)DeferredContext >> 47 != -1 && (__int64)DeferredContext >> 47 != 0 )
  {
    v8[14] = 0;
    Dpc->Type = 0;
    Dpc->DeferredContext = (void *)((unsigned __int64)SystemArgument2 >> 8);
    v9[11] = SystemArgument1;
    v9[8] = __ROL8__(DeferredContext, (char)SystemArgument1);
    v9[3] = __ROR8__(Dpc, (char)SystemArgument1);
    Dpc->SystemArgument1 = (void *)((unsigned __int64)Dpc->SystemArgument1 ^ (unsigned __int64)SystemArgument2);
    Dpc->SystemArgument2 = (void *)((unsigned __int64)Dpc->SystemArgument2 ^ (unsigned __int64)SystemArgument1);
    KiCustomAccessRoutine7((UINT64 *)DeferredContext);
  }
  if( _InterlockedIncrement((volatile signed __int32 *)DeferredContext) == 1 )
    ExQueueWorkItem(&ExpTimeRefreshWorkItem, DelayedWorkQueue);
}

Referenced by:

No references.