KiOverflowTrapShadow

VOID __stdcall KiOverflowTrapShadow(INT64 a1, INT64 a2, INT64 a3, UINT64 a4){
  unsigned __int64 v4; 
  _KIDTENTRY64 *v7; 
  __int64 v8; 
  _KIDTENTRY64 v9; 
  _KIDTENTRY64 v10; 

  if( (v9.OffsetLow & 1) != 0 )
  {
    __swapgs();
    _mm_lfence();
    if( !_bittest(MK_FP(__GS__, 36888i64), 1u) )
      __writecr3((unsigned __int64)&v8);
    __writegsqword(0x10u, v4);
    v7 = KeGetPcr()->IdtBase + 1056;
    v10 = v7[-1];
    v9 = v7[-2];
    v8 = *(&v7[-3].Alignment + 1);
    __writegsqword(0x10u, 0i64);
    KiOverflowTrap(a1, a2, a3, a4);
  }
  else
  {
    _mm_lfence();
    KiOverflowTrap(a1, a2, a3, a4);
  }
}

Referenced by:

No references.