int *__fastcall sub_60A0(int *buf_1, int value_2, unsigned __int64 n4) { int *buf; // rdi int value_1; // eax unsigned __int64 count; // rcx __int16 value; // bx int v7; // eax __int64 v8; // rdx char count_1; // dl unsigned __int64 i; // rcx buf = buf_1; /*0x60a3*/ value_1 = value_2; /*0x60a6*/ count = n4; /*0x60a9*/ BYTE1(value_1) = value_2; /*0x60ba*/ value = value_1; /*0x60bc*/ v7 = value_1 << 16; /*0x60bf*/ LOWORD(v7) = value; /*0x60c3*/ if ( n4 >= 4 ) /*0x60ca*/ { v8 = (unsigned __int8)buf & 3; /*0x60cf*/ if ( ((unsigned __int8)buf & 3) != 0 ) /*0x60d3*/ { memset(buf, value, 4 - v8); /*0x60e2*/ buf = (int *)((char *)buf + 4 - v8); /*0x60e2*/ count = n4 - (4 - v8); /*0x60e4*/ } count_1 = count; /*0x60e7*/ for ( i = count >> 2; i; --i ) /*0x60ea*/ *buf++ = v7; /*0x60ee*/ count = count_1 & 3; /*0x60f4*/ } memset(buf, value, count); /*0x60f7*/ return buf_1; /*0x60fa*/ }