sub_1407A6B40

__int64 __fastcall sub_1407A6B40(const void *a1, const void *a2){
  unsigned __int16 *v2; 
  SIZE_T v3; 
  bool v4; 
  __int64 v5; 
  unsigned __int16 *v6; 
  __int64 v7; 
  int v8; 
  NTSTATUS v9; 
  v2 = (unsigned __int16 *)*((_QWORD *)a1 + 1);
  v3 = (SIZE_T)(v2 + 8);
  v4 = *(_BYTE *)a1 == 2;
  if( *(_BYTE *)a1 != 2 )
    v3 = *((_QWORD *)v2 + 1);
  v5 = *((_QWORD *)a2 + 1);
  v6 = v2 + 1;
  if( !v4 )
    v6 = v2;
  LODWORD(v7) = v5 + 16;
  if( *(_BYTE *)a2 != 2 )
    v7 = *(_QWORD *)(v5 + 8);
  v8 = 0;
  v9 = RtlCompareUnicodeStrings(v3, (unsigned __int64)*v6 >> 1, v7);
  if( v9 > 0 )
    return 1i64;
  LOBYTE(v8) = v9 >= 0;
  return(unsigned int)(v8 - 1);
}

Referenced by:

SLUpdateLicenseDataInternal