sub_1403E933C

unsigned __int8 __fastcall sub_1403E933C(__int64 a1, __int64 a2, unsigned int a3){
  __int64 v5; 
  unsigned __int8 result; 
  __int64 v7; 
  _DWORD *v8; 
  __int64 v9; 
  unsigned __int8 i; 

  v5 = a3;
  result = (*(__int64(__fastcall **)(__int64, _QWORD))(a1 + 1032))(a2, a3);
  if( a3 )
  {
    v7 = a2 + 16;
    do
    {
      v8 = (_DWORD *)v7;
      v9 = 4i64;
      do
      {
        *v8 ^= v8[4];
        ++v8;
        --v9;
      }
      while( v9 );
      result = *(_BYTE *)(v7 + 15);
      for( i = result; ; i ^= result )
      {
        result >>= 7;
        if( !result )
          break;
      }
      *(_BYTE *)(v7 + 15) = i & 0x7F;
      v7 += 48i64;
      --v5;
    }
    while( v5 );
  }
  return result;
}

Referenced by:

sub_1403E93BC
sub_140A1BFE4