KiTpSetFlagsZeroSignParity

NTSTATUS __stdcall KiTpSetFlagsZeroSignParity(INT64 a1, INT64 a2, INT64 a3){
  unsigned __int8 v3; 
  INT64 v4; 
  int v5; 
  NTSTATUS result; 

  v3 = *(_BYTE *)(a1 + 1);
  v4 = a3 >> (v3 - 1);
  v5 = *((unsigned __int8 *)KiTpParityLookupTable + (unsigned __int8)a3);
  if( v3 < 0x40u )
    a3 &= (1i64 << v3) - 1;
  *(_DWORD *)(*(_QWORD *)(a2 + 8) + 68i64) &= 0xFFFFFF3B;
  result = a3 == 0 ? 0x10 : 0;
  *(_DWORD *)(*(_QWORD *)(a2 + 8) + 68i64) |= 4 * (v5 | result | (32 * (v4 & 1)));
  return result;
}

Referenced by:

KiTpEmulateGroup0Instruction
KiTpEmulateGroup1Instruction
KiTpEmulateInstruction
KiTpSetFlagsAdd
KiTpSetFlagsSub