char *__fastcall sub_350(char *dst, char *src, unsigned __int64 count) { char *dst_2; // rax unsigned __int64 count_1; // rcx char *dst_1; // rdi char *src_1; // rsi dst_2 = dst; /*0x360*/ if ( src < dst && &src[count - 1] >= dst ) /*0x368*/ { src_1 = &src[count - 1]; /*0x380*/ dst_1 = &dst[count - 1]; /*0x383*/ } else { count_1 = count; /*0x36a*/ count &= 7u; /*0x36d*/ count_1 >>= 3; /*0x374*/ qmemcpy(dst, src, 8 * count_1); /*0x378*/ src_1 = &src[8 * count_1]; /*0x378*/ dst_1 = &dst[8 * count_1]; /*0x378*/ } qmemcpy(dst_1, src_1, count); /*0x38c*/ return dst_2; /*0x38f*/ }