sub_1403E933C

UINT8 __fastcall sub_1403E933C(INT64 a1, INT64 a2, UINT64 a3){
  int v4; 
  __int64 v5; 
  UINT8 result; 
  INT64 v7; 
  _DWORD *v8; 
  __int64 v9; 
  UINT8 i; 
  v4 = a3;
  v5 = (unsigned int)a3;
  result = (*(__int64(__fastcall **)(INT64, _QWORD))(a1 + 1032))(a2, (unsigned int)a3);
  if( v4 )
  {
    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