.syntax unified push {r4, r5, r6, lr} mov ip, r0 adds r5, r1, #0 ldrb r1, [r0, #0xb] movs r0, #0x10 ands r0, r1 cmp r0, #0 beq _0806650A mov r1, ip ldrh r0, [r1, #0x2e] adds r1, #0x86 strh r0, [r1] mov r0, ip adds r0, #0x7e ldrh r2, [r0] adds r0, #4 ldrh r0, [r0] adds r3, r2, r0 subs r4, r2, r0 movs r6, #0x2e ldrsh r0, [r5, r6] cmp r0, r3 bge _080664C6 cmp r0, r4 ble _080664C6 adds r2, r0, #0 b _080664D2 _080664C6: movs r2, #0x2e ldrsh r0, [r5, r2] adds r2, r4, #0 cmp r0, r3 blt _080664D2 adds r2, r3, #0 _080664D2: ldrh r0, [r1] cmp r0, r2 bne _080664F0 mov r1, ip adds r1, #0x84 ldrh r0, [r1] cmp r0, #1 bne _0806650A movs r0, #0 strh r0, [r1] mov r0, ip movs r1, #2 bl InitializeAnimation b _0806650A _080664F0: mov r6, ip strh r2, [r6, #0x2e] mov r1, ip adds r1, #0x84 ldrh r0, [r1] cmp r0, #0 bne _0806650A movs r0, #1 strh r0, [r1] mov r0, ip movs r1, #6 bl InitializeAnimation _0806650A: pop {r4, r5, r6, pc} .syntax divided