_guard_retpoline_exit

void _guard_retpoline_exit(){
  unsigned __int8 v0; 
  char v1; 
  signed __int64 v2; 
  _disable();
  v0 = *((_BYTE *)KeGetPcr() + 2129);
  if( *((_BYTE *)KeGetPcr() + 634) != v0 )
  {
    __writegsbyte(0x27Au, v0);
    __writemsr(0x48u, v0);
  }
  v1 = *((_BYTE *)KeGetPcr() + 2130);
  if( (v1 & 0x10) != 0 )
  {
    __writemsr(0x49u, 1ui64);
    v1 = *((_BYTE *)KeGetPcr() + 2130);
  }
  if( (v1 & 0x40) != 0 )
    __flush_rsb();
  _mm_lfence();
  __writegsbyte(0x853u, *((_BYTE *)KeGetPcr() + 2131) | 2);
  if( _bittest64(&v2, 9u) )
    _enable();
}

Referenced by:

KeExitRetpoline
_guard_retpoline_exit_indirect_rax
_guard_retpoline_import_r10