.data .globl SHIFT_TABLE .p2align 2 SHIFT_TABLE: .word 1 .word 2 .word 4 .word 8 .word 16 .word 32 .word 64 .word 128 .word 256 .word 512 .word 1024 .word 2048 .word 4096 .word 8192 .word 16384 .word 32768 .text .globl long_func .p2align 2 long_func: .L.long_func.0: stp x29, x30, [sp, #-16]! mov x29, sp sub sp, sp, #384 mov w9, #0 stur w9, [x29, #-4] stur w9, [x29, #-8] stur w9, [x29, #-12] stur w9, [x29, #-16] stur w9, [x29, #-20] mov w8, #2 stur w8, [x29, #-24] stur w9, [x29, #-28] mov w8, #1 stur w8, [x29, #-32] b .L.long_func.1 .L.long_func.1: ldur w9, [x29, #-28] mov w8, #0 cmp w9, w8 b.gt .L.long_func.2 b .L.long_func.3 .L.long_func.2: mov w8, #0 stur w8, [x29, #-4] stur w8, [x29, #-8] ldur w8, [x29, #-28] stur w8, [x29, #-12] mov w8, #1 stur w8, [x29, #-16] b .L.long_func.4 .L.long_func.3: ldur w8, [x29, #-32] stur w8, [x29, #-4] mov w0, w8 bl putint mov w8, #10 mov w0, w8 bl putch mov w8, #2 stur w8, [x29, #-108] mov w8, #1 stur w8, [x29, #-112] stur w8, [x29, #-116] b .L.long_func.178 .L.long_func.4: ldur w9, [x29, #-8] mov w8, #16 cmp w9, w8 b.lt .L.long_func.5 b .L.long_func.6 .L.long_func.5: ldur w10, [x29, #-12] mov w8, #2 add w8, w10, #1 cmp w10, #0 csel w8, w8, w10, lt asr w9, w8, #1 mov w8, #2 msub w9, w9, w8, w10 mov w8, #0 cmp w9, w8 b.ne .L.long_func.9 b .L.long_func.8 .L.long_func.6: ldur w9, [x29, #-4] mov w8, #0 cmp w9, w8 b.ne .L.long_func.10 b .L.long_func.11 .L.long_func.7: ldur w10, [x29, #-4] ldur w8, [x29, #-8] adrp x9, SHIFT_TABLE add x9, x9, :lo12:SHIFT_TABLE sxtw x8, w8 lsl x8, x8, #2 add x8, x9, x8 ldr w8, [x8] add w8, w10, w8 stur w8, [x29, #-4] b .L.long_func.8 .L.long_func.8: ldur w9, [x29, #-12] mov w8, #2 add w8, w9, #1 cmp w9, #0 csel w8, w8, w9, lt asr w8, w8, #1 stur w8, [x29, #-12] ldur w9, [x29, #-16] add w8, w9, #1 cmp w9, #0 csel w8, w8, w9, lt asr w8, w8, #1 stur w8, [x29, #-16] ldur w9, [x29, #-8] mov w8, #1 add w8, w9, w8 stur w8, [x29, #-8] b .L.long_func.4 .L.long_func.9: ldur w10, [x29, #-16] mov w8, #2 add w8, w10, #1 cmp w10, #0 csel w8, w8, w10, lt asr w9, w8, #1 mov w8, #2 msub w9, w9, w8, w10 mov w8, #0 cmp w9, w8 b.ne .L.long_func.7 b .L.long_func.8 .L.long_func.10: ldur w8, [x29, #-32] stur w8, [x29, #-36] ldur w8, [x29, #-24] stur w8, [x29, #-40] mov w8, #0 stur w8, [x29, #-44] b .L.long_func.12 .L.long_func.11: ldur w8, [x29, #-24] stur w8, [x29, #-72] ldur w8, [x29, #-24] stur w8, [x29, #-76] mov w8, #0 stur w8, [x29, #-80] b .L.long_func.89 .L.long_func.12: ldur w9, [x29, #-40] mov w8, #0 cmp w9, w8 b.ne .L.long_func.13 b .L.long_func.14 .L.long_func.13: mov w8, #0 stur w8, [x29, #-4] stur w8, [x29, #-8] ldur w8, [x29, #-40] stur w8, [x29, #-12] mov w8, #1 stur w8, [x29, #-16] b .L.long_func.15 .L.long_func.14: ldur w8, [x29, #-44] stur w8, [x29, #-4] stur w8, [x29, #-32] b .L.long_func.11 .L.long_func.15: ldur w9, [x29, #-8] mov w8, #16 cmp w9, w8 b.lt .L.long_func.16 b .L.long_func.17 .L.long_func.16: ldur w10, [x29, #-12] mov w8, #2 add w8, w10, #1 cmp w10, #0 csel w8, w8, w10, lt asr w9, w8, #1 mov w8, #2 msub w9, w9, w8, w10 mov w8, #0 cmp w9, w8 b.ne .L.long_func.20 b .L.long_func.19 .L.long_func.17: ldur w9, [x29, #-4] mov w8, #0 cmp w9, w8 b.ne .L.long_func.21 b .L.long_func.22 .L.long_func.18: ldur w10, [x29, #-4] ldur w8, [x29, #-8] adrp x9, SHIFT_TABLE add x9, x9, :lo12:SHIFT_TABLE sxtw x8, w8 lsl x8, x8, #2 add x8, x9, x8 ldr w8, [x8] add w8, w10, w8 stur w8, [x29, #-4] b .L.long_func.19 .L.long_func.19: ldur w9, [x29, #-12] mov w8, #2 add w8, w9, #1 cmp w9, #0 csel w8, w8, w9, lt asr w8, w8, #1 stur w8, [x29, #-12] ldur w9, [x29, #-16] add w8, w9, #1 cmp w9, #0 csel w8, w8, w9, lt asr w8, w8, #1 stur w8, [x29, #-16] ldur w9, [x29, #-8] mov w8, #1 add w8, w9, w8 stur w8, [x29, #-8] b .L.long_func.15 .L.long_func.20: ldur w10, [x29, #-16] mov w8, #2 add w8, w10, #1 cmp w10, #0 csel w8, w8, w10, lt asr w9, w8, #1 mov w8, #2 msub w9, w9, w8, w10 mov w8, #0 cmp w9, w8 b.ne .L.long_func.18 b .L.long_func.19 .L.long_func.21: ldur w8, [x29, #-44] stur w8, [x29, #-48] ldur w8, [x29, #-36] stur w8, [x29, #-52] mov w8, #0 stur w8, [x29, #-56] b .L.long_func.23 .L.long_func.22: ldur w8, [x29, #-36] stur w8, [x29, #-60] ldur w8, [x29, #-36] stur w8, [x29, #-64] mov w8, #0 stur w8, [x29, #-68] b .L.long_func.50 .L.long_func.23: ldur w9, [x29, #-52] mov w8, #0 cmp w9, w8 b.ne .L.long_func.24 b .L.long_func.25 .L.long_func.24: mov w8, #0 stur w8, [x29, #-4] stur w8, [x29, #-8] ldur w8, [x29, #-48] stur w8, [x29, #-12] ldur w8, [x29, #-52] stur w8, [x29, #-16] b .L.long_func.26 .L.long_func.25: ldur w8, [x29, #-48] stur w8, [x29, #-4] stur w8, [x29, #-44] b .L.long_func.22 .L.long_func.26: ldur w9, [x29, #-8] mov w8, #16 cmp w9, w8 b.lt .L.long_func.27 b .L.long_func.28 .L.long_func.27: ldur w10, [x29, #-12] mov w8, #2 add w8, w10, #1 cmp w10, #0 csel w8, w8, w10, lt asr w9, w8, #1 mov w8, #2 msub w9, w9, w8, w10 mov w8, #0 cmp w9, w8 b.ne .L.long_func.29 b .L.long_func.30 .L.long_func.28: ldur w8, [x29, #-4] stur w8, [x29, #-56] mov w8, #0 stur w8, [x29, #-4] stur w8, [x29, #-8] ldur w8, [x29, #-48] stur w8, [x29, #-12] ldur w8, [x29, #-52] stur w8, [x29, #-16] b .L.long_func.36 .L.long_func.29: ldur w10, [x29, #-16] mov w8, #2 add w8, w10, #1 cmp w10, #0 csel w8, w8, w10, lt asr w9, w8, #1 mov w8, #2 msub w9, w9, w8, w10 mov w8, #0 cmp w9, w8 b.eq .L.long_func.32 b .L.long_func.33 .L.long_func.30: ldur w10, [x29, #-16] mov w8, #2 add w8, w10, #1 cmp w10, #0 csel w8, w8, w10, lt asr w9, w8, #1 mov w8, #2 msub w9, w9, w8, w10 mov w8, #0 cmp w9, w8 b.ne .L.long_func.34 b .L.long_func.35 .L.long_func.31: ldur w9, [x29, #-12] mov w8, #2 add w8, w9, #1 cmp w9, #0 csel w8, w8, w9, lt asr w8, w8, #1 stur w8, [x29, #-12] ldur w8, [x29, #-16] add w9, w8, #1 cmp w8, #0 csel w8, w9, w8, lt asr w8, w8, #1 stur w8, [x29, #-16] ldur w8, [x29, #-8] mov w9, #1 add w8, w8, w9 stur w8, [x29, #-8] b .L.long_func.26 .L.long_func.32: ldur w8, [x29, #-4] ldur w9, [x29, #-8] adrp x10, SHIFT_TABLE add x10, x10, :lo12:SHIFT_TABLE sxtw x9, w9 lsl x9, x9, #2 add x9, x10, x9 ldr w9, [x9] add w8, w8, w9 stur w8, [x29, #-4] b .L.long_func.33 .L.long_func.33: b .L.long_func.31 .L.long_func.34: ldur w8, [x29, #-4] ldur w9, [x29, #-8] adrp x10, SHIFT_TABLE add x10, x10, :lo12:SHIFT_TABLE sxtw x9, w9 lsl x9, x9, #2 add x9, x10, x9 ldr w9, [x9] add w8, w8, w9 stur w8, [x29, #-4] b .L.long_func.35 .L.long_func.35: b .L.long_func.31 .L.long_func.36: ldur w8, [x29, #-8] mov w9, #16 cmp w8, w9 b.lt .L.long_func.37 b .L.long_func.38 .L.long_func.37: ldur w8, [x29, #-12] mov w9, #2 add w9, w8, #1 cmp w8, #0 csel w9, w9, w8, lt asr w9, w9, #1 mov w10, #2 msub w8, w9, w10, w8 mov w9, #0 cmp w8, w9 b.ne .L.long_func.41 b .L.long_func.40 .L.long_func.38: ldur w8, [x29, #-4] stur w8, [x29, #-52] b .L.long_func.42 .L.long_func.39: ldur w8, [x29, #-4] ldur w9, [x29, #-8] adrp x10, SHIFT_TABLE add x10, x10, :lo12:SHIFT_TABLE sxtw x9, w9 lsl x9, x9, #2 add x9, x10, x9 ldr w9, [x9] add w8, w8, w9 stur w8, [x29, #-4] b .L.long_func.40 .L.long_func.40: ldur w8, [x29, #-12] mov w9, #2 add w9, w8, #1 cmp w8, #0 csel w8, w9, w8, lt asr w8, w8, #1 stur w8, [x29, #-12] ldur w8, [x29, #-16] add w9, w8, #1 cmp w8, #0 csel w8, w9, w8, lt asr w8, w8, #1 stur w8, [x29, #-16] ldur w8, [x29, #-8] mov w9, #1 add w8, w8, w9 stur w8, [x29, #-8] b .L.long_func.36 .L.long_func.41: ldur w8, [x29, #-16] mov w9, #2 add w9, w8, #1 cmp w8, #0 csel w9, w9, w8, lt asr w9, w9, #1 mov w10, #2 msub w8, w9, w10, w8 mov w9, #0 cmp w8, w9 b.ne .L.long_func.39 b .L.long_func.40 .L.long_func.42: mov w8, #0 stur w8, [x29, #-4] stur w8, [x29, #-8] ldur w8, [x29, #-52] adrp x9, SHIFT_TABLE add x9, x9, :lo12:SHIFT_TABLE mov x10, #4 add x9, x9, x10 ldr w9, [x9] mul w8, w8, w9 stur w8, [x29, #-12] mov w8, #65535 stur w8, [x29, #-16] b .L.long_func.44 .L.long_func.43: ldur w8, [x29, #-4] stur w8, [x29, #-52] ldur w8, [x29, #-56] stur w8, [x29, #-48] b .L.long_func.23 .L.long_func.44: ldur w8, [x29, #-8] mov w9, #16 cmp w8, w9 b.lt .L.long_func.45 b .L.long_func.46 .L.long_func.45: ldur w8, [x29, #-12] mov w9, #2 add w9, w8, #1 cmp w8, #0 csel w9, w9, w8, lt asr w9, w9, #1 mov w10, #2 msub w8, w9, w10, w8 mov w9, #0 cmp w8, w9 b.ne .L.long_func.49 b .L.long_func.48 .L.long_func.46: b .L.long_func.43 .L.long_func.47: ldur w8, [x29, #-4] ldur w9, [x29, #-8] adrp x10, SHIFT_TABLE add x10, x10, :lo12:SHIFT_TABLE sxtw x9, w9 lsl x9, x9, #2 add x9, x10, x9 ldr w9, [x9] add w8, w8, w9 stur w8, [x29, #-4] b .L.long_func.48 .L.long_func.48: ldur w8, [x29, #-12] mov w9, #2 add w9, w8, #1 cmp w8, #0 csel w8, w9, w8, lt asr w8, w8, #1 stur w8, [x29, #-12] ldur w8, [x29, #-16] add w9, w8, #1 cmp w8, #0 csel w8, w9, w8, lt asr w8, w8, #1 stur w8, [x29, #-16] ldur w8, [x29, #-8] mov w9, #1 add w8, w8, w9 stur w8, [x29, #-8] b .L.long_func.44 .L.long_func.49: ldur w8, [x29, #-16] mov w9, #2 add w9, w8, #1 cmp w8, #0 csel w9, w9, w8, lt asr w9, w9, #1 mov w10, #2 msub w8, w9, w10, w8 mov w9, #0 cmp w8, w9 b.ne .L.long_func.47 b .L.long_func.48 .L.long_func.50: ldur w8, [x29, #-64] mov w9, #0 cmp w8, w9 b.ne .L.long_func.51 b .L.long_func.52 .L.long_func.51: mov w8, #0 stur w8, [x29, #-4] stur w8, [x29, #-8] ldur w8, [x29, #-60] stur w8, [x29, #-12] ldur w8, [x29, #-64] stur w8, [x29, #-16] b .L.long_func.53 .L.long_func.52: ldur w8, [x29, #-60] stur w8, [x29, #-4] stur w8, [x29, #-36] ldur w8, [x29, #-40] stur w8, [x29, #-12] mov w8, #1 stur w8, [x29, #-16] mov w9, #15 cmp w8, w9 b.ge .L.long_func.77 b .L.long_func.78 .L.long_func.53: ldur w8, [x29, #-8] mov w9, #16 cmp w8, w9 b.lt .L.long_func.54 b .L.long_func.55 .L.long_func.54: ldur w8, [x29, #-12] mov w9, #2 add w9, w8, #1 cmp w8, #0 csel w9, w9, w8, lt asr w9, w9, #1 mov w10, #2 msub w8, w9, w10, w8 mov w9, #0 cmp w8, w9 b.ne .L.long_func.56 b .L.long_func.57 .L.long_func.55: ldur w8, [x29, #-4] stur w8, [x29, #-68] mov w8, #0 stur w8, [x29, #-4] stur w8, [x29, #-8] ldur w8, [x29, #-60] stur w8, [x29, #-12] ldur w8, [x29, #-64] stur w8, [x29, #-16] b .L.long_func.63 .L.long_func.56: ldur w8, [x29, #-16] mov w9, #2 add w9, w8, #1 cmp w8, #0 csel w9, w9, w8, lt asr w9, w9, #1 mov w10, #2 msub w8, w9, w10, w8 mov w9, #0 cmp w8, w9 b.eq .L.long_func.59 b .L.long_func.60 .L.long_func.57: ldur w8, [x29, #-16] mov w9, #2 add w9, w8, #1 cmp w8, #0 csel w9, w9, w8, lt asr w9, w9, #1 mov w10, #2 msub w8, w9, w10, w8 mov w9, #0 cmp w8, w9 b.ne .L.long_func.61 b .L.long_func.62 .L.long_func.58: ldur w8, [x29, #-12] mov w9, #2 add w9, w8, #1 cmp w8, #0 csel w8, w9, w8, lt asr w8, w8, #1 stur w8, [x29, #-12] ldur w8, [x29, #-16] add w9, w8, #1 cmp w8, #0 csel w8, w9, w8, lt asr w8, w8, #1 stur w8, [x29, #-16] ldur w8, [x29, #-8] mov w9, #1 add w8, w8, w9 stur w8, [x29, #-8] b .L.long_func.53 .L.long_func.59: ldur w8, [x29, #-4] ldur w9, [x29, #-8] adrp x10, SHIFT_TABLE add x10, x10, :lo12:SHIFT_TABLE sxtw x9, w9 lsl x9, x9, #2 add x9, x10, x9 ldr w9, [x9] add w8, w8, w9 stur w8, [x29, #-4] b .L.long_func.60 .L.long_func.60: b .L.long_func.58 .L.long_func.61: ldur w8, [x29, #-4] ldur w9, [x29, #-8] adrp x10, SHIFT_TABLE add x10, x10, :lo12:SHIFT_TABLE sxtw x9, w9 lsl x9, x9, #2 add x9, x10, x9 ldr w9, [x9] add w8, w8, w9 stur w8, [x29, #-4] b .L.long_func.62 .L.long_func.62: b .L.long_func.58 .L.long_func.63: ldur w8, [x29, #-8] mov w9, #16 cmp w8, w9 b.lt .L.long_func.64 b .L.long_func.65 .L.long_func.64: ldur w8, [x29, #-12] mov w9, #2 add w9, w8, #1 cmp w8, #0 csel w9, w9, w8, lt asr w9, w9, #1 mov w10, #2 msub w8, w9, w10, w8 mov w9, #0 cmp w8, w9 b.ne .L.long_func.68 b .L.long_func.67 .L.long_func.65: ldur w8, [x29, #-4] stur w8, [x29, #-64] b .L.long_func.69 .L.long_func.66: ldur w8, [x29, #-4] ldur w9, [x29, #-8] adrp x10, SHIFT_TABLE add x10, x10, :lo12:SHIFT_TABLE sxtw x9, w9 lsl x9, x9, #2 add x9, x10, x9 ldr w9, [x9] add w8, w8, w9 stur w8, [x29, #-4] b .L.long_func.67 .L.long_func.67: ldur w8, [x29, #-12] mov w9, #2 add w9, w8, #1 cmp w8, #0 csel w8, w9, w8, lt asr w8, w8, #1 stur w8, [x29, #-12] ldur w8, [x29, #-16] add w9, w8, #1 cmp w8, #0 csel w8, w9, w8, lt asr w8, w8, #1 stur w8, [x29, #-16] ldur w8, [x29, #-8] mov w9, #1 add w8, w8, w9 stur w8, [x29, #-8] b .L.long_func.63 .L.long_func.68: ldur w8, [x29, #-16] mov w9, #2 add w9, w8, #1 cmp w8, #0 csel w9, w9, w8, lt asr w9, w9, #1 mov w10, #2 msub w8, w9, w10, w8 mov w9, #0 cmp w8, w9 b.ne .L.long_func.66 b .L.long_func.67 .L.long_func.69: mov w8, #0 stur w8, [x29, #-4] stur w8, [x29, #-8] ldur w8, [x29, #-64] adrp x9, SHIFT_TABLE add x9, x9, :lo12:SHIFT_TABLE mov x10, #4 add x9, x9, x10 ldr w9, [x9] mul w8, w8, w9 stur w8, [x29, #-12] mov w8, #65535 stur w8, [x29, #-16] b .L.long_func.71 .L.long_func.70: ldur w8, [x29, #-4] stur w8, [x29, #-64] ldur w8, [x29, #-68] stur w8, [x29, #-60] b .L.long_func.50 .L.long_func.71: ldur w8, [x29, #-8] mov w9, #16 cmp w8, w9 b.lt .L.long_func.72 b .L.long_func.73 .L.long_func.72: ldur w8, [x29, #-12] mov w9, #2 add w9, w8, #1 cmp w8, #0 csel w9, w9, w8, lt asr w9, w9, #1 mov w10, #2 msub w8, w9, w10, w8 mov w9, #0 cmp w8, w9 b.ne .L.long_func.76 b .L.long_func.75 .L.long_func.73: b .L.long_func.70 .L.long_func.74: ldur w8, [x29, #-4] ldur w9, [x29, #-8] adrp x10, SHIFT_TABLE add x10, x10, :lo12:SHIFT_TABLE sxtw x9, w9 lsl x9, x9, #2 add x9, x10, x9 ldr w9, [x9] add w8, w8, w9 stur w8, [x29, #-4] b .L.long_func.75 .L.long_func.75: ldur w8, [x29, #-12] mov w9, #2 add w9, w8, #1 cmp w8, #0 csel w8, w9, w8, lt asr w8, w8, #1 stur w8, [x29, #-12] ldur w8, [x29, #-16] add w9, w8, #1 cmp w8, #0 csel w8, w9, w8, lt asr w8, w8, #1 stur w8, [x29, #-16] ldur w8, [x29, #-8] mov w9, #1 add w8, w8, w9 stur w8, [x29, #-8] b .L.long_func.71 .L.long_func.76: ldur w8, [x29, #-16] mov w9, #2 add w9, w8, #1 cmp w8, #0 csel w9, w9, w8, lt asr w9, w9, #1 mov w10, #2 msub w8, w9, w10, w8 mov w9, #0 cmp w8, w9 b.ne .L.long_func.74 b .L.long_func.75 .L.long_func.77: ldur w8, [x29, #-12] mov w9, #0 cmp w8, w9 b.lt .L.long_func.80 b .L.long_func.81 .L.long_func.78: ldur w8, [x29, #-16] mov w9, #0 cmp w8, w9 b.gt .L.long_func.83 b .L.long_func.84 .L.long_func.79: ldur w8, [x29, #-4] stur w8, [x29, #-40] b .L.long_func.12 .L.long_func.80: mov w8, #65535 stur w8, [x29, #-4] b .L.long_func.82 .L.long_func.81: mov w8, #0 stur w8, [x29, #-4] b .L.long_func.82 .L.long_func.82: b .L.long_func.79 .L.long_func.83: ldur w8, [x29, #-12] mov w9, #32767 cmp w8, w9 b.gt .L.long_func.86 b .L.long_func.87 .L.long_func.84: ldur w8, [x29, #-12] stur w8, [x29, #-4] b .L.long_func.85 .L.long_func.85: b .L.long_func.79 .L.long_func.86: ldur w8, [x29, #-12] ldur w9, [x29, #-16] adrp x11, SHIFT_TABLE add x11, x11, :lo12:SHIFT_TABLE sxtw x9, w9 lsl x9, x9, #2 add x9, x11, x9 ldr w9, [x9] sdiv w8, w8, w9 stur w8, [x29, #-12] movz w9, #0 movk w9, #1, lsl #16 add w8, w8, w9 ldur w9, [x29, #-16] mov w10, #15 sub w9, w10, w9 mov w10, #1 add w9, w9, w10 sxtw x9, w9 lsl x9, x9, #2 add x9, x11, x9 ldr w9, [x9] sub w8, w8, w9 stur w8, [x29, #-4] b .L.long_func.88 .L.long_func.87: ldur w8, [x29, #-12] ldur w9, [x29, #-16] adrp x10, SHIFT_TABLE add x10, x10, :lo12:SHIFT_TABLE sxtw x9, w9 lsl x9, x9, #2 add x9, x10, x9 ldr w9, [x9] sdiv w8, w8, w9 stur w8, [x29, #-4] b .L.long_func.88 .L.long_func.88: b .L.long_func.85 .L.long_func.89: ldur w8, [x29, #-76] mov w9, #0 cmp w8, w9 b.ne .L.long_func.90 b .L.long_func.91 .L.long_func.90: mov w8, #0 stur w8, [x29, #-4] stur w8, [x29, #-8] ldur w8, [x29, #-76] stur w8, [x29, #-12] mov w8, #1 stur w8, [x29, #-16] b .L.long_func.92 .L.long_func.91: ldur w8, [x29, #-80] stur w8, [x29, #-4] stur w8, [x29, #-24] ldur w8, [x29, #-28] stur w8, [x29, #-12] mov w8, #1 stur w8, [x29, #-16] mov w9, #15 cmp w8, w9 b.ge .L.long_func.166 b .L.long_func.167 .L.long_func.92: ldur w8, [x29, #-8] mov w9, #16 cmp w8, w9 b.lt .L.long_func.93 b .L.long_func.94 .L.long_func.93: ldur w8, [x29, #-12] mov w9, #2 add w9, w8, #1 cmp w8, #0 csel w9, w9, w8, lt asr w9, w9, #1 mov w10, #2 msub w8, w9, w10, w8 mov w9, #0 cmp w8, w9 b.ne .L.long_func.97 b .L.long_func.96 .L.long_func.94: ldur w8, [x29, #-4] mov w9, #0 cmp w8, w9 b.ne .L.long_func.98 b .L.long_func.99 .L.long_func.95: ldur w8, [x29, #-4] ldur w9, [x29, #-8] adrp x10, SHIFT_TABLE add x10, x10, :lo12:SHIFT_TABLE sxtw x9, w9 lsl x9, x9, #2 add x9, x10, x9 ldr w9, [x9] add w8, w8, w9 stur w8, [x29, #-4] b .L.long_func.96 .L.long_func.96: ldur w8, [x29, #-12] mov w9, #2 add w9, w8, #1 cmp w8, #0 csel w8, w9, w8, lt asr w8, w8, #1 stur w8, [x29, #-12] ldur w8, [x29, #-16] add w9, w8, #1 cmp w8, #0 csel w8, w9, w8, lt asr w8, w8, #1 stur w8, [x29, #-16] ldur w8, [x29, #-8] mov w9, #1 add w8, w8, w9 stur w8, [x29, #-8] b .L.long_func.92 .L.long_func.97: ldur w8, [x29, #-16] mov w9, #2 add w9, w8, #1 cmp w8, #0 csel w9, w9, w8, lt asr w9, w9, #1 mov w10, #2 msub w8, w9, w10, w8 mov w9, #0 cmp w8, w9 b.ne .L.long_func.95 b .L.long_func.96 .L.long_func.98: ldur w8, [x29, #-80] stur w8, [x29, #-84] ldur w8, [x29, #-72] stur w8, [x29, #-88] mov w8, #0 stur w8, [x29, #-92] b .L.long_func.100 .L.long_func.99: ldur w8, [x29, #-72] stur w8, [x29, #-96] ldur w8, [x29, #-72] stur w8, [x29, #-100] mov w8, #0 stur w8, [x29, #-104] b .L.long_func.127 .L.long_func.100: ldur w8, [x29, #-88] mov w9, #0 cmp w8, w9 b.ne .L.long_func.101 b .L.long_func.102 .L.long_func.101: mov w8, #0 stur w8, [x29, #-4] stur w8, [x29, #-8] ldur w8, [x29, #-84] stur w8, [x29, #-12] ldur w8, [x29, #-88] stur w8, [x29, #-16] b .L.long_func.103 .L.long_func.102: ldur w8, [x29, #-84] stur w8, [x29, #-4] stur w8, [x29, #-80] b .L.long_func.99 .L.long_func.103: ldur w8, [x29, #-8] mov w9, #16 cmp w8, w9 b.lt .L.long_func.104 b .L.long_func.105 .L.long_func.104: ldur w10, [x29, #-12] mov w8, #2 add w8, w10, #1 cmp w10, #0 csel w8, w8, w10, lt asr w9, w8, #1 mov w8, #2 msub w9, w9, w8, w10 mov w8, #0 cmp w9, w8 b.ne .L.long_func.106 b .L.long_func.107 .L.long_func.105: ldur w8, [x29, #-4] stur w8, [x29, #-92] mov w8, #0 stur w8, [x29, #-4] stur w8, [x29, #-8] ldur w8, [x29, #-84] stur w8, [x29, #-12] ldur w8, [x29, #-88] stur w8, [x29, #-16] b .L.long_func.113 .L.long_func.106: ldur w9, [x29, #-16] mov w8, #2 add w8, w9, #1 cmp w9, #0 csel w8, w8, w9, lt asr w8, w8, #1 mov w10, #2 msub w8, w8, w10, w9 mov w9, #0 cmp w8, w9 b.eq .L.long_func.109 b .L.long_func.110 .L.long_func.107: ldur w8, [x29, #-16] mov w9, #2 add w9, w8, #1 cmp w8, #0 csel w9, w9, w8, lt asr w9, w9, #1 mov w10, #2 msub w8, w9, w10, w8 mov w9, #0 cmp w8, w9 b.ne .L.long_func.111 b .L.long_func.112 .L.long_func.108: ldur w8, [x29, #-12] mov w9, #2 add w9, w8, #1 cmp w8, #0 csel w8, w9, w8, lt asr w8, w8, #1 stur w8, [x29, #-12] ldur w8, [x29, #-16] add w9, w8, #1 cmp w8, #0 csel w8, w9, w8, lt asr w8, w8, #1 stur w8, [x29, #-16] ldur w8, [x29, #-8] mov w9, #1 add w8, w8, w9 stur w8, [x29, #-8] b .L.long_func.103 .L.long_func.109: ldur w8, [x29, #-4] ldur w9, [x29, #-8] adrp x10, SHIFT_TABLE add x10, x10, :lo12:SHIFT_TABLE sxtw x9, w9 lsl x9, x9, #2 add x9, x10, x9 ldr w9, [x9] add w8, w8, w9 stur w8, [x29, #-4] b .L.long_func.110 .L.long_func.110: b .L.long_func.108 .L.long_func.111: ldur w8, [x29, #-4] ldur w9, [x29, #-8] adrp x10, SHIFT_TABLE add x10, x10, :lo12:SHIFT_TABLE sxtw x9, w9 lsl x9, x9, #2 add x9, x10, x9 ldr w9, [x9] add w8, w8, w9 stur w8, [x29, #-4] b .L.long_func.112 .L.long_func.112: b .L.long_func.108 .L.long_func.113: ldur w8, [x29, #-8] mov w9, #16 cmp w8, w9 b.lt .L.long_func.114 b .L.long_func.115 .L.long_func.114: ldur w8, [x29, #-12] mov w9, #2 add w9, w8, #1 cmp w8, #0 csel w9, w9, w8, lt asr w9, w9, #1 mov w10, #2 msub w8, w9, w10, w8 mov w9, #0 cmp w8, w9 b.ne .L.long_func.118 b .L.long_func.117 .L.long_func.115: ldur w8, [x29, #-4] stur w8, [x29, #-88] b .L.long_func.119 .L.long_func.116: ldur w8, [x29, #-4] ldur w9, [x29, #-8] adrp x10, SHIFT_TABLE add x10, x10, :lo12:SHIFT_TABLE sxtw x9, w9 lsl x9, x9, #2 add x9, x10, x9 ldr w9, [x9] add w8, w8, w9 stur w8, [x29, #-4] b .L.long_func.117 .L.long_func.117: ldur w8, [x29, #-12] mov w9, #2 add w9, w8, #1 cmp w8, #0 csel w8, w9, w8, lt asr w8, w8, #1 stur w8, [x29, #-12] ldur w8, [x29, #-16] add w9, w8, #1 cmp w8, #0 csel w8, w9, w8, lt asr w8, w8, #1 stur w8, [x29, #-16] ldur w8, [x29, #-8] mov w9, #1 add w8, w8, w9 stur w8, [x29, #-8] b .L.long_func.113 .L.long_func.118: ldur w8, [x29, #-16] mov w9, #2 add w9, w8, #1 cmp w8, #0 csel w9, w9, w8, lt asr w9, w9, #1 mov w10, #2 msub w8, w9, w10, w8 mov w9, #0 cmp w8, w9 b.ne .L.long_func.116 b .L.long_func.117 .L.long_func.119: mov w8, #0 stur w8, [x29, #-4] stur w8, [x29, #-8] ldur w8, [x29, #-88] adrp x9, SHIFT_TABLE add x9, x9, :lo12:SHIFT_TABLE mov x10, #4 add x9, x9, x10 ldr w9, [x9] mul w8, w8, w9 stur w8, [x29, #-12] mov w8, #65535 stur w8, [x29, #-16] b .L.long_func.121 .L.long_func.120: ldur w8, [x29, #-4] stur w8, [x29, #-88] ldur w8, [x29, #-92] stur w8, [x29, #-84] b .L.long_func.100 .L.long_func.121: ldur w8, [x29, #-8] mov w9, #16 cmp w8, w9 b.lt .L.long_func.122 b .L.long_func.123 .L.long_func.122: ldur w8, [x29, #-12] mov w9, #2 add w9, w8, #1 cmp w8, #0 csel w9, w9, w8, lt asr w9, w9, #1 mov w10, #2 msub w8, w9, w10, w8 mov w9, #0 cmp w8, w9 b.ne .L.long_func.126 b .L.long_func.125 .L.long_func.123: b .L.long_func.120 .L.long_func.124: ldur w8, [x29, #-4] ldur w9, [x29, #-8] adrp x10, SHIFT_TABLE add x10, x10, :lo12:SHIFT_TABLE sxtw x9, w9 lsl x9, x9, #2 add x9, x10, x9 ldr w9, [x9] add w8, w8, w9 stur w8, [x29, #-4] b .L.long_func.125 .L.long_func.125: ldur w8, [x29, #-12] mov w9, #2 add w9, w8, #1 cmp w8, #0 csel w8, w9, w8, lt asr w8, w8, #1 stur w8, [x29, #-12] ldur w8, [x29, #-16] add w9, w8, #1 cmp w8, #0 csel w8, w9, w8, lt asr w8, w8, #1 stur w8, [x29, #-16] ldur w8, [x29, #-8] mov w9, #1 add w8, w8, w9 stur w8, [x29, #-8] b .L.long_func.121 .L.long_func.126: ldur w8, [x29, #-16] mov w9, #2 add w9, w8, #1 cmp w8, #0 csel w9, w9, w8, lt asr w9, w9, #1 mov w10, #2 msub w8, w9, w10, w8 mov w9, #0 cmp w8, w9 b.ne .L.long_func.124 b .L.long_func.125 .L.long_func.127: ldur w8, [x29, #-100] mov w9, #0 cmp w8, w9 b.ne .L.long_func.128 b .L.long_func.129 .L.long_func.128: mov w8, #0 stur w8, [x29, #-4] stur w8, [x29, #-8] ldur w8, [x29, #-96] stur w8, [x29, #-12] ldur w8, [x29, #-100] stur w8, [x29, #-16] b .L.long_func.130 .L.long_func.129: ldur w8, [x29, #-96] stur w8, [x29, #-4] stur w8, [x29, #-72] ldur w8, [x29, #-76] stur w8, [x29, #-12] mov w8, #1 stur w8, [x29, #-16] mov w9, #15 cmp w8, w9 b.ge .L.long_func.154 b .L.long_func.155 .L.long_func.130: ldur w8, [x29, #-8] mov w9, #16 cmp w8, w9 b.lt .L.long_func.131 b .L.long_func.132 .L.long_func.131: ldur w8, [x29, #-12] mov w9, #2 add w9, w8, #1 cmp w8, #0 csel w9, w9, w8, lt asr w9, w9, #1 mov w10, #2 msub w8, w9, w10, w8 mov w9, #0 cmp w8, w9 b.ne .L.long_func.133 b .L.long_func.134 .L.long_func.132: ldur w8, [x29, #-4] stur w8, [x29, #-104] mov w8, #0 stur w8, [x29, #-4] stur w8, [x29, #-8] ldur w8, [x29, #-96] stur w8, [x29, #-12] ldur w8, [x29, #-100] stur w8, [x29, #-16] b .L.long_func.140 .L.long_func.133: ldur w8, [x29, #-16] mov w9, #2 add w9, w8, #1 cmp w8, #0 csel w9, w9, w8, lt asr w9, w9, #1 mov w10, #2 msub w8, w9, w10, w8 mov w9, #0 cmp w8, w9 b.eq .L.long_func.136 b .L.long_func.137 .L.long_func.134: ldur w8, [x29, #-16] mov w9, #2 add w9, w8, #1 cmp w8, #0 csel w9, w9, w8, lt asr w9, w9, #1 mov w10, #2 msub w8, w9, w10, w8 mov w9, #0 cmp w8, w9 b.ne .L.long_func.138 b .L.long_func.139 .L.long_func.135: ldur w8, [x29, #-12] mov w9, #2 add w9, w8, #1 cmp w8, #0 csel w8, w9, w8, lt asr w8, w8, #1 stur w8, [x29, #-12] ldur w8, [x29, #-16] add w9, w8, #1 cmp w8, #0 csel w8, w9, w8, lt asr w8, w8, #1 stur w8, [x29, #-16] ldur w8, [x29, #-8] mov w9, #1 add w8, w8, w9 stur w8, [x29, #-8] b .L.long_func.130 .L.long_func.136: ldur w10, [x29, #-4] ldur w8, [x29, #-8] adrp x9, SHIFT_TABLE add x9, x9, :lo12:SHIFT_TABLE sxtw x8, w8 lsl x8, x8, #2 add x8, x9, x8 ldr w8, [x8] add w8, w10, w8 stur w8, [x29, #-4] b .L.long_func.137 .L.long_func.137: b .L.long_func.135 .L.long_func.138: ldur w10, [x29, #-4] ldur w8, [x29, #-8] adrp x9, SHIFT_TABLE add x9, x9, :lo12:SHIFT_TABLE sxtw x8, w8 lsl x8, x8, #2 add x8, x9, x8 ldr w8, [x8] add w8, w10, w8 stur w8, [x29, #-4] b .L.long_func.139 .L.long_func.139: b .L.long_func.135 .L.long_func.140: ldur w9, [x29, #-8] mov w8, #16 cmp w9, w8 b.lt .L.long_func.141 b .L.long_func.142 .L.long_func.141: ldur w10, [x29, #-12] mov w8, #2 add w8, w10, #1 cmp w10, #0 csel w8, w8, w10, lt asr w9, w8, #1 mov w8, #2 msub w9, w9, w8, w10 mov w8, #0 cmp w9, w8 b.ne .L.long_func.145 b .L.long_func.144 .L.long_func.142: ldur w8, [x29, #-4] stur w8, [x29, #-100] b .L.long_func.146 .L.long_func.143: ldur w10, [x29, #-4] ldur w8, [x29, #-8] adrp x9, SHIFT_TABLE add x9, x9, :lo12:SHIFT_TABLE sxtw x8, w8 lsl x8, x8, #2 add x8, x9, x8 ldr w8, [x8] add w8, w10, w8 stur w8, [x29, #-4] b .L.long_func.144 .L.long_func.144: ldur w9, [x29, #-12] mov w8, #2 add w8, w9, #1 cmp w9, #0 csel w8, w8, w9, lt asr w8, w8, #1 stur w8, [x29, #-12] ldur w9, [x29, #-16] add w8, w9, #1 cmp w9, #0 csel w8, w8, w9, lt asr w8, w8, #1 stur w8, [x29, #-16] ldur w9, [x29, #-8] mov w8, #1 add w8, w9, w8 stur w8, [x29, #-8] b .L.long_func.140 .L.long_func.145: ldur w10, [x29, #-16] mov w8, #2 add w8, w10, #1 cmp w10, #0 csel w8, w8, w10, lt asr w9, w8, #1 mov w8, #2 msub w9, w9, w8, w10 mov w8, #0 cmp w9, w8 b.ne .L.long_func.143 b .L.long_func.144 .L.long_func.146: mov w8, #0 stur w8, [x29, #-4] stur w8, [x29, #-8] ldur w10, [x29, #-100] adrp x9, SHIFT_TABLE add x9, x9, :lo12:SHIFT_TABLE mov x8, #4 add x8, x9, x8 ldr w8, [x8] mul w8, w10, w8 stur w8, [x29, #-12] mov w8, #65535 stur w8, [x29, #-16] b .L.long_func.148 .L.long_func.147: ldur w8, [x29, #-4] stur w8, [x29, #-100] ldur w8, [x29, #-104] stur w8, [x29, #-96] b .L.long_func.127 .L.long_func.148: ldur w9, [x29, #-8] mov w8, #16 cmp w9, w8 b.lt .L.long_func.149 b .L.long_func.150 .L.long_func.149: ldur w10, [x29, #-12] mov w8, #2 add w8, w10, #1 cmp w10, #0 csel w8, w8, w10, lt asr w9, w8, #1 mov w8, #2 msub w9, w9, w8, w10 mov w8, #0 cmp w9, w8 b.ne .L.long_func.153 b .L.long_func.152 .L.long_func.150: b .L.long_func.147 .L.long_func.151: ldur w10, [x29, #-4] ldur w8, [x29, #-8] adrp x9, SHIFT_TABLE add x9, x9, :lo12:SHIFT_TABLE sxtw x8, w8 lsl x8, x8, #2 add x8, x9, x8 ldr w8, [x8] add w8, w10, w8 stur w8, [x29, #-4] b .L.long_func.152 .L.long_func.152: ldur w9, [x29, #-12] mov w8, #2 add w8, w9, #1 cmp w9, #0 csel w8, w8, w9, lt asr w8, w8, #1 stur w8, [x29, #-12] ldur w9, [x29, #-16] add w8, w9, #1 cmp w9, #0 csel w8, w8, w9, lt asr w8, w8, #1 stur w8, [x29, #-16] ldur w9, [x29, #-8] mov w8, #1 add w8, w9, w8 stur w8, [x29, #-8] b .L.long_func.148 .L.long_func.153: ldur w10, [x29, #-16] mov w8, #2 add w8, w10, #1 cmp w10, #0 csel w8, w8, w10, lt asr w9, w8, #1 mov w8, #2 msub w9, w9, w8, w10 mov w8, #0 cmp w9, w8 b.ne .L.long_func.151 b .L.long_func.152 .L.long_func.154: ldur w9, [x29, #-12] mov w8, #0 cmp w9, w8 b.lt .L.long_func.157 b .L.long_func.158 .L.long_func.155: ldur w9, [x29, #-16] mov w8, #0 cmp w9, w8 b.gt .L.long_func.160 b .L.long_func.161 .L.long_func.156: ldur w8, [x29, #-4] stur w8, [x29, #-76] b .L.long_func.89 .L.long_func.157: mov w8, #65535 stur w8, [x29, #-4] b .L.long_func.159 .L.long_func.158: mov w8, #0 stur w8, [x29, #-4] b .L.long_func.159 .L.long_func.159: b .L.long_func.156 .L.long_func.160: ldur w9, [x29, #-12] mov w8, #32767 cmp w9, w8 b.gt .L.long_func.163 b .L.long_func.164 .L.long_func.161: ldur w8, [x29, #-12] stur w8, [x29, #-4] b .L.long_func.162 .L.long_func.162: b .L.long_func.156 .L.long_func.163: ldur w9, [x29, #-12] ldur w8, [x29, #-16] adrp x11, SHIFT_TABLE add x11, x11, :lo12:SHIFT_TABLE sxtw x8, w8 lsl x8, x8, #2 add x8, x11, x8 ldr w8, [x8] sdiv w8, w9, w8 stur w8, [x29, #-12] ldur w9, [x29, #-12] movz w8, #0 movk w8, #1, lsl #16 add w10, w9, w8 ldur w9, [x29, #-16] mov w8, #15 sub w9, w8, w9 mov w8, #1 add w8, w9, w8 sxtw x8, w8 lsl x8, x8, #2 add x8, x11, x8 ldr w8, [x8] sub w8, w10, w8 stur w8, [x29, #-4] b .L.long_func.165 .L.long_func.164: ldur w10, [x29, #-12] ldur w8, [x29, #-16] adrp x9, SHIFT_TABLE add x9, x9, :lo12:SHIFT_TABLE sxtw x8, w8 lsl x8, x8, #2 add x8, x9, x8 ldr w8, [x8] sdiv w8, w10, w8 stur w8, [x29, #-4] b .L.long_func.165 .L.long_func.165: b .L.long_func.162 .L.long_func.166: ldur w9, [x29, #-12] mov w8, #0 cmp w9, w8 b.lt .L.long_func.169 b .L.long_func.170 .L.long_func.167: ldur w9, [x29, #-16] mov w8, #0 cmp w9, w8 b.gt .L.long_func.172 b .L.long_func.173 .L.long_func.168: ldur w8, [x29, #-4] stur w8, [x29, #-28] b .L.long_func.1 .L.long_func.169: mov w8, #65535 stur w8, [x29, #-4] b .L.long_func.171 .L.long_func.170: mov w8, #0 stur w8, [x29, #-4] b .L.long_func.171 .L.long_func.171: b .L.long_func.168 .L.long_func.172: ldur w9, [x29, #-12] mov w8, #32767 cmp w9, w8 b.gt .L.long_func.175 b .L.long_func.176 .L.long_func.173: ldur w8, [x29, #-12] stur w8, [x29, #-4] b .L.long_func.174 .L.long_func.174: b .L.long_func.168 .L.long_func.175: ldur w9, [x29, #-12] ldur w8, [x29, #-16] adrp x11, SHIFT_TABLE add x11, x11, :lo12:SHIFT_TABLE sxtw x8, w8 lsl x8, x8, #2 add x8, x11, x8 ldr w8, [x8] sdiv w8, w9, w8 stur w8, [x29, #-12] ldur w9, [x29, #-12] movz w8, #0 movk w8, #1, lsl #16 add w10, w9, w8 ldur w9, [x29, #-16] mov w8, #15 sub w9, w8, w9 mov w8, #1 add w8, w9, w8 sxtw x8, w8 lsl x8, x8, #2 add x8, x11, x8 ldr w8, [x8] sub w8, w10, w8 stur w8, [x29, #-4] b .L.long_func.177 .L.long_func.176: ldur w10, [x29, #-12] ldur w8, [x29, #-16] adrp x9, SHIFT_TABLE add x9, x9, :lo12:SHIFT_TABLE sxtw x8, w8 lsl x8, x8, #2 add x8, x9, x8 ldr w8, [x8] sdiv w8, w10, w8 stur w8, [x29, #-4] b .L.long_func.177 .L.long_func.177: b .L.long_func.174 .L.long_func.178: ldur w9, [x29, #-112] mov w8, #0 cmp w9, w8 b.gt .L.long_func.179 b .L.long_func.180 .L.long_func.179: mov w8, #0 stur w8, [x29, #-4] stur w8, [x29, #-8] ldur w8, [x29, #-112] stur w8, [x29, #-12] mov w8, #1 stur w8, [x29, #-16] b .L.long_func.181 .L.long_func.180: ldur w8, [x29, #-116] stur w8, [x29, #-4] mov w0, w8 bl putint mov w8, #10 mov w0, w8 bl putch mov w8, #2 stur w8, [x29, #-20] b .L.long_func.355 .L.long_func.181: ldur w9, [x29, #-8] mov w8, #16 cmp w9, w8 b.lt .L.long_func.182 b .L.long_func.183 .L.long_func.182: ldur w10, [x29, #-12] mov w8, #2 add w8, w10, #1 cmp w10, #0 csel w8, w8, w10, lt asr w9, w8, #1 mov w8, #2 msub w9, w9, w8, w10 mov w8, #0 cmp w9, w8 b.ne .L.long_func.186 b .L.long_func.185 .L.long_func.183: ldur w9, [x29, #-4] mov w8, #0 cmp w9, w8 b.ne .L.long_func.187 b .L.long_func.188 .L.long_func.184: ldur w10, [x29, #-4] ldur w8, [x29, #-8] adrp x9, SHIFT_TABLE add x9, x9, :lo12:SHIFT_TABLE sxtw x8, w8 lsl x8, x8, #2 add x8, x9, x8 ldr w8, [x8] add w8, w10, w8 stur w8, [x29, #-4] b .L.long_func.185 .L.long_func.185: ldur w9, [x29, #-12] mov w8, #2 add w8, w9, #1 cmp w9, #0 csel w8, w8, w9, lt asr w8, w8, #1 stur w8, [x29, #-12] ldur w9, [x29, #-16] add w8, w9, #1 cmp w9, #0 csel w8, w8, w9, lt asr w8, w8, #1 stur w8, [x29, #-16] ldur w9, [x29, #-8] mov w8, #1 add w8, w9, w8 stur w8, [x29, #-8] b .L.long_func.181 .L.long_func.186: ldur w10, [x29, #-16] mov w8, #2 add w8, w10, #1 cmp w10, #0 csel w8, w8, w10, lt asr w9, w8, #1 mov w8, #2 msub w9, w9, w8, w10 mov w8, #0 cmp w9, w8 b.ne .L.long_func.184 b .L.long_func.185 .L.long_func.187: ldur w8, [x29, #-116] stur w8, [x29, #-120] ldur w8, [x29, #-108] stur w8, [x29, #-124] mov w8, #0 stur w8, [x29, #-128] b .L.long_func.189 .L.long_func.188: ldur w8, [x29, #-108] stur w8, [x29, #-156] ldur w8, [x29, #-108] stur w8, [x29, #-160] mov w8, #0 stur w8, [x29, #-164] b .L.long_func.266 .L.long_func.189: ldur w9, [x29, #-124] mov w8, #0 cmp w9, w8 b.ne .L.long_func.190 b .L.long_func.191 .L.long_func.190: mov w8, #0 stur w8, [x29, #-4] stur w8, [x29, #-8] ldur w8, [x29, #-124] stur w8, [x29, #-12] mov w8, #1 stur w8, [x29, #-16] b .L.long_func.192 .L.long_func.191: ldur w8, [x29, #-128] stur w8, [x29, #-4] stur w8, [x29, #-116] b .L.long_func.188 .L.long_func.192: ldur w9, [x29, #-8] mov w8, #16 cmp w9, w8 b.lt .L.long_func.193 b .L.long_func.194 .L.long_func.193: ldur w10, [x29, #-12] mov w8, #2 add w8, w10, #1 cmp w10, #0 csel w8, w8, w10, lt asr w9, w8, #1 mov w8, #2 msub w9, w9, w8, w10 mov w8, #0 cmp w9, w8 b.ne .L.long_func.197 b .L.long_func.196 .L.long_func.194: ldur w9, [x29, #-4] mov w8, #0 cmp w9, w8 b.ne .L.long_func.198 b .L.long_func.199 .L.long_func.195: ldur w10, [x29, #-4] ldur w8, [x29, #-8] adrp x9, SHIFT_TABLE add x9, x9, :lo12:SHIFT_TABLE sxtw x8, w8 lsl x8, x8, #2 add x8, x9, x8 ldr w8, [x8] add w8, w10, w8 stur w8, [x29, #-4] b .L.long_func.196 .L.long_func.196: ldur w9, [x29, #-12] mov w8, #2 add w8, w9, #1 cmp w9, #0 csel w8, w8, w9, lt asr w8, w8, #1 stur w8, [x29, #-12] ldur w9, [x29, #-16] add w8, w9, #1 cmp w9, #0 csel w8, w8, w9, lt asr w8, w8, #1 stur w8, [x29, #-16] ldur w9, [x29, #-8] mov w8, #1 add w8, w9, w8 stur w8, [x29, #-8] b .L.long_func.192 .L.long_func.197: ldur w10, [x29, #-16] mov w8, #2 add w8, w10, #1 cmp w10, #0 csel w8, w8, w10, lt asr w9, w8, #1 mov w8, #2 msub w9, w9, w8, w10 mov w8, #0 cmp w9, w8 b.ne .L.long_func.195 b .L.long_func.196 .L.long_func.198: ldur w8, [x29, #-128] stur w8, [x29, #-132] ldur w8, [x29, #-120] stur w8, [x29, #-136] mov w8, #0 stur w8, [x29, #-140] b .L.long_func.200 .L.long_func.199: ldur w8, [x29, #-120] stur w8, [x29, #-144] ldur w8, [x29, #-120] stur w8, [x29, #-148] mov w8, #0 stur w8, [x29, #-152] b .L.long_func.227 .L.long_func.200: ldur w8, [x29, #-136] mov w9, #0 cmp w8, w9 b.ne .L.long_func.201 b .L.long_func.202 .L.long_func.201: mov w8, #0 stur w8, [x29, #-4] stur w8, [x29, #-8] ldur w8, [x29, #-132] stur w8, [x29, #-12] ldur w8, [x29, #-136] stur w8, [x29, #-16] b .L.long_func.203 .L.long_func.202: ldur w8, [x29, #-132] stur w8, [x29, #-4] stur w8, [x29, #-128] b .L.long_func.199 .L.long_func.203: ldur w8, [x29, #-8] mov w9, #16 cmp w8, w9 b.lt .L.long_func.204 b .L.long_func.205 .L.long_func.204: ldur w8, [x29, #-12] mov w9, #2 add w9, w8, #1 cmp w8, #0 csel w9, w9, w8, lt asr w9, w9, #1 mov w10, #2 msub w8, w9, w10, w8 mov w9, #0 cmp w8, w9 b.ne .L.long_func.206 b .L.long_func.207 .L.long_func.205: ldur w8, [x29, #-4] stur w8, [x29, #-140] mov w8, #0 stur w8, [x29, #-4] stur w8, [x29, #-8] ldur w8, [x29, #-132] stur w8, [x29, #-12] ldur w8, [x29, #-136] stur w8, [x29, #-16] b .L.long_func.213 .L.long_func.206: ldur w8, [x29, #-16] mov w9, #2 add w9, w8, #1 cmp w8, #0 csel w9, w9, w8, lt asr w9, w9, #1 mov w10, #2 msub w8, w9, w10, w8 mov w9, #0 cmp w8, w9 b.eq .L.long_func.209 b .L.long_func.210 .L.long_func.207: ldur w8, [x29, #-16] mov w9, #2 add w9, w8, #1 cmp w8, #0 csel w9, w9, w8, lt asr w9, w9, #1 mov w10, #2 msub w8, w9, w10, w8 mov w9, #0 cmp w8, w9 b.ne .L.long_func.211 b .L.long_func.212 .L.long_func.208: ldur w8, [x29, #-12] mov w9, #2 add w9, w8, #1 cmp w8, #0 csel w8, w9, w8, lt asr w8, w8, #1 stur w8, [x29, #-12] ldur w8, [x29, #-16] add w9, w8, #1 cmp w8, #0 csel w8, w9, w8, lt asr w8, w8, #1 stur w8, [x29, #-16] ldur w8, [x29, #-8] mov w9, #1 add w8, w8, w9 stur w8, [x29, #-8] b .L.long_func.203 .L.long_func.209: ldur w8, [x29, #-4] ldur w9, [x29, #-8] adrp x10, SHIFT_TABLE add x10, x10, :lo12:SHIFT_TABLE sxtw x9, w9 lsl x9, x9, #2 add x9, x10, x9 ldr w9, [x9] add w8, w8, w9 stur w8, [x29, #-4] b .L.long_func.210 .L.long_func.210: b .L.long_func.208 .L.long_func.211: ldur w8, [x29, #-4] ldur w9, [x29, #-8] adrp x10, SHIFT_TABLE add x10, x10, :lo12:SHIFT_TABLE sxtw x9, w9 lsl x9, x9, #2 add x9, x10, x9 ldr w9, [x9] add w8, w8, w9 stur w8, [x29, #-4] b .L.long_func.212 .L.long_func.212: b .L.long_func.208 .L.long_func.213: ldur w8, [x29, #-8] mov w9, #16 cmp w8, w9 b.lt .L.long_func.214 b .L.long_func.215 .L.long_func.214: ldur w8, [x29, #-12] mov w9, #2 add w9, w8, #1 cmp w8, #0 csel w9, w9, w8, lt asr w9, w9, #1 mov w10, #2 msub w8, w9, w10, w8 mov w9, #0 cmp w8, w9 b.ne .L.long_func.218 b .L.long_func.217 .L.long_func.215: ldur w8, [x29, #-4] stur w8, [x29, #-136] b .L.long_func.219 .L.long_func.216: ldur w8, [x29, #-4] ldur w9, [x29, #-8] adrp x10, SHIFT_TABLE add x10, x10, :lo12:SHIFT_TABLE sxtw x9, w9 lsl x9, x9, #2 add x9, x10, x9 ldr w9, [x9] add w8, w8, w9 stur w8, [x29, #-4] b .L.long_func.217 .L.long_func.217: ldur w8, [x29, #-12] mov w9, #2 add w9, w8, #1 cmp w8, #0 csel w8, w9, w8, lt asr w8, w8, #1 stur w8, [x29, #-12] ldur w8, [x29, #-16] add w9, w8, #1 cmp w8, #0 csel w8, w9, w8, lt asr w8, w8, #1 stur w8, [x29, #-16] ldur w8, [x29, #-8] mov w9, #1 add w8, w8, w9 stur w8, [x29, #-8] b .L.long_func.213 .L.long_func.218: ldur w10, [x29, #-16] mov w8, #2 add w8, w10, #1 cmp w10, #0 csel w8, w8, w10, lt asr w9, w8, #1 mov w8, #2 msub w9, w9, w8, w10 mov w8, #0 cmp w9, w8 b.ne .L.long_func.216 b .L.long_func.217 .L.long_func.219: mov w8, #0 stur w8, [x29, #-4] stur w8, [x29, #-8] ldur w10, [x29, #-136] adrp x9, SHIFT_TABLE add x9, x9, :lo12:SHIFT_TABLE mov x8, #4 add x8, x9, x8 ldr w8, [x8] mul w8, w10, w8 stur w8, [x29, #-12] mov w8, #65535 stur w8, [x29, #-16] b .L.long_func.221 .L.long_func.220: ldur w8, [x29, #-4] stur w8, [x29, #-136] ldur w8, [x29, #-140] stur w8, [x29, #-132] b .L.long_func.200 .L.long_func.221: ldur w9, [x29, #-8] mov w8, #16 cmp w9, w8 b.lt .L.long_func.222 b .L.long_func.223 .L.long_func.222: ldur w10, [x29, #-12] mov w8, #2 add w8, w10, #1 cmp w10, #0 csel w8, w8, w10, lt asr w9, w8, #1 mov w8, #2 msub w9, w9, w8, w10 mov w8, #0 cmp w9, w8 b.ne .L.long_func.226 b .L.long_func.225 .L.long_func.223: b .L.long_func.220 .L.long_func.224: ldur w10, [x29, #-4] ldur w8, [x29, #-8] adrp x9, SHIFT_TABLE add x9, x9, :lo12:SHIFT_TABLE sxtw x8, w8 lsl x8, x8, #2 add x8, x9, x8 ldr w8, [x8] add w8, w10, w8 stur w8, [x29, #-4] b .L.long_func.225 .L.long_func.225: ldur w9, [x29, #-12] mov w8, #2 add w8, w9, #1 cmp w9, #0 csel w8, w8, w9, lt asr w8, w8, #1 stur w8, [x29, #-12] ldur w9, [x29, #-16] add w8, w9, #1 cmp w9, #0 csel w8, w8, w9, lt asr w8, w8, #1 stur w8, [x29, #-16] ldur w9, [x29, #-8] mov w8, #1 add w8, w9, w8 stur w8, [x29, #-8] b .L.long_func.221 .L.long_func.226: ldur w10, [x29, #-16] mov w8, #2 add w8, w10, #1 cmp w10, #0 csel w8, w8, w10, lt asr w9, w8, #1 mov w8, #2 msub w9, w9, w8, w10 mov w8, #0 cmp w9, w8 b.ne .L.long_func.224 b .L.long_func.225 .L.long_func.227: ldur w9, [x29, #-148] mov w8, #0 cmp w9, w8 b.ne .L.long_func.228 b .L.long_func.229 .L.long_func.228: mov w8, #0 stur w8, [x29, #-4] stur w8, [x29, #-8] ldur w8, [x29, #-144] stur w8, [x29, #-12] ldur w8, [x29, #-148] stur w8, [x29, #-16] b .L.long_func.230 .L.long_func.229: ldur w8, [x29, #-144] stur w8, [x29, #-4] stur w8, [x29, #-120] ldur w8, [x29, #-124] stur w8, [x29, #-12] mov w8, #1 stur w8, [x29, #-16] ldur w9, [x29, #-16] mov w8, #15 cmp w9, w8 b.ge .L.long_func.254 b .L.long_func.255 .L.long_func.230: ldur w9, [x29, #-8] mov w8, #16 cmp w9, w8 b.lt .L.long_func.231 b .L.long_func.232 .L.long_func.231: ldur w10, [x29, #-12] mov w8, #2 add w8, w10, #1 cmp w10, #0 csel w8, w8, w10, lt asr w9, w8, #1 mov w8, #2 msub w9, w9, w8, w10 mov w8, #0 cmp w9, w8 b.ne .L.long_func.233 b .L.long_func.234 .L.long_func.232: ldur w8, [x29, #-4] stur w8, [x29, #-152] mov w8, #0 stur w8, [x29, #-4] stur w8, [x29, #-8] ldur w8, [x29, #-144] stur w8, [x29, #-12] ldur w8, [x29, #-148] stur w8, [x29, #-16] b .L.long_func.240 .L.long_func.233: ldur w10, [x29, #-16] mov w8, #2 add w8, w10, #1 cmp w10, #0 csel w8, w8, w10, lt asr w9, w8, #1 mov w8, #2 msub w9, w9, w8, w10 mov w8, #0 cmp w9, w8 b.eq .L.long_func.236 b .L.long_func.237 .L.long_func.234: ldur w10, [x29, #-16] mov w8, #2 add w8, w10, #1 cmp w10, #0 csel w8, w8, w10, lt asr w9, w8, #1 mov w8, #2 msub w9, w9, w8, w10 mov w8, #0 cmp w9, w8 b.ne .L.long_func.238 b .L.long_func.239 .L.long_func.235: ldur w9, [x29, #-12] mov w8, #2 add w8, w9, #1 cmp w9, #0 csel w8, w8, w9, lt asr w8, w8, #1 stur w8, [x29, #-12] ldur w9, [x29, #-16] add w8, w9, #1 cmp w9, #0 csel w8, w8, w9, lt asr w8, w8, #1 stur w8, [x29, #-16] ldur w9, [x29, #-8] mov w8, #1 add w8, w9, w8 stur w8, [x29, #-8] b .L.long_func.230 .L.long_func.236: ldur w10, [x29, #-4] ldur w8, [x29, #-8] adrp x9, SHIFT_TABLE add x9, x9, :lo12:SHIFT_TABLE sxtw x8, w8 lsl x8, x8, #2 add x8, x9, x8 ldr w8, [x8] add w8, w10, w8 stur w8, [x29, #-4] b .L.long_func.237 .L.long_func.237: b .L.long_func.235 .L.long_func.238: ldur w10, [x29, #-4] ldur w8, [x29, #-8] adrp x9, SHIFT_TABLE add x9, x9, :lo12:SHIFT_TABLE sxtw x8, w8 lsl x8, x8, #2 add x8, x9, x8 ldr w8, [x8] add w8, w10, w8 stur w8, [x29, #-4] b .L.long_func.239 .L.long_func.239: b .L.long_func.235 .L.long_func.240: ldur w9, [x29, #-8] mov w8, #16 cmp w9, w8 b.lt .L.long_func.241 b .L.long_func.242 .L.long_func.241: ldur w10, [x29, #-12] mov w8, #2 add w8, w10, #1 cmp w10, #0 csel w8, w8, w10, lt asr w9, w8, #1 mov w8, #2 msub w9, w9, w8, w10 mov w8, #0 cmp w9, w8 b.ne .L.long_func.245 b .L.long_func.244 .L.long_func.242: ldur w8, [x29, #-4] stur w8, [x29, #-148] b .L.long_func.246 .L.long_func.243: ldur w10, [x29, #-4] ldur w8, [x29, #-8] adrp x9, SHIFT_TABLE add x9, x9, :lo12:SHIFT_TABLE sxtw x8, w8 lsl x8, x8, #2 add x8, x9, x8 ldr w8, [x8] add w8, w10, w8 stur w8, [x29, #-4] b .L.long_func.244 .L.long_func.244: ldur w9, [x29, #-12] mov w8, #2 add w8, w9, #1 cmp w9, #0 csel w8, w8, w9, lt asr w8, w8, #1 stur w8, [x29, #-12] ldur w9, [x29, #-16] add w8, w9, #1 cmp w9, #0 csel w8, w8, w9, lt asr w8, w8, #1 stur w8, [x29, #-16] ldur w9, [x29, #-8] mov w8, #1 add w8, w9, w8 stur w8, [x29, #-8] b .L.long_func.240 .L.long_func.245: ldur w10, [x29, #-16] mov w8, #2 add w8, w10, #1 cmp w10, #0 csel w8, w8, w10, lt asr w9, w8, #1 mov w8, #2 msub w9, w9, w8, w10 mov w8, #0 cmp w9, w8 b.ne .L.long_func.243 b .L.long_func.244 .L.long_func.246: mov w8, #0 stur w8, [x29, #-4] stur w8, [x29, #-8] ldur w10, [x29, #-148] adrp x9, SHIFT_TABLE add x9, x9, :lo12:SHIFT_TABLE mov x8, #4 add x8, x9, x8 ldr w8, [x8] mul w8, w10, w8 stur w8, [x29, #-12] mov w8, #65535 stur w8, [x29, #-16] b .L.long_func.248 .L.long_func.247: ldur w8, [x29, #-4] stur w8, [x29, #-148] ldur w8, [x29, #-152] stur w8, [x29, #-144] b .L.long_func.227 .L.long_func.248: ldur w9, [x29, #-8] mov w8, #16 cmp w9, w8 b.lt .L.long_func.249 b .L.long_func.250 .L.long_func.249: ldur w10, [x29, #-12] mov w8, #2 add w8, w10, #1 cmp w10, #0 csel w8, w8, w10, lt asr w9, w8, #1 mov w8, #2 msub w9, w9, w8, w10 mov w8, #0 cmp w9, w8 b.ne .L.long_func.253 b .L.long_func.252 .L.long_func.250: b .L.long_func.247 .L.long_func.251: ldur w10, [x29, #-4] ldur w8, [x29, #-8] adrp x9, SHIFT_TABLE add x9, x9, :lo12:SHIFT_TABLE sxtw x8, w8 lsl x8, x8, #2 add x8, x9, x8 ldr w8, [x8] add w8, w10, w8 stur w8, [x29, #-4] b .L.long_func.252 .L.long_func.252: ldur w9, [x29, #-12] mov w8, #2 add w8, w9, #1 cmp w9, #0 csel w8, w8, w9, lt asr w8, w8, #1 stur w8, [x29, #-12] ldur w9, [x29, #-16] add w8, w9, #1 cmp w9, #0 csel w8, w8, w9, lt asr w8, w8, #1 stur w8, [x29, #-16] ldur w9, [x29, #-8] mov w8, #1 add w8, w9, w8 stur w8, [x29, #-8] b .L.long_func.248 .L.long_func.253: ldur w10, [x29, #-16] mov w8, #2 add w8, w10, #1 cmp w10, #0 csel w8, w8, w10, lt asr w9, w8, #1 mov w8, #2 msub w9, w9, w8, w10 mov w8, #0 cmp w9, w8 b.ne .L.long_func.251 b .L.long_func.252 .L.long_func.254: ldur w9, [x29, #-12] mov w8, #0 cmp w9, w8 b.lt .L.long_func.257 b .L.long_func.258 .L.long_func.255: ldur w9, [x29, #-16] mov w8, #0 cmp w9, w8 b.gt .L.long_func.260 b .L.long_func.261 .L.long_func.256: ldur w8, [x29, #-4] stur w8, [x29, #-124] b .L.long_func.189 .L.long_func.257: mov w8, #65535 stur w8, [x29, #-4] b .L.long_func.259 .L.long_func.258: mov w8, #0 stur w8, [x29, #-4] b .L.long_func.259 .L.long_func.259: b .L.long_func.256 .L.long_func.260: ldur w9, [x29, #-12] mov w8, #32767 cmp w9, w8 b.gt .L.long_func.263 b .L.long_func.264 .L.long_func.261: ldur w8, [x29, #-12] stur w8, [x29, #-4] b .L.long_func.262 .L.long_func.262: b .L.long_func.256 .L.long_func.263: ldur w9, [x29, #-12] ldur w8, [x29, #-16] adrp x11, SHIFT_TABLE add x11, x11, :lo12:SHIFT_TABLE sxtw x8, w8 lsl x8, x8, #2 add x8, x11, x8 ldr w8, [x8] sdiv w8, w9, w8 stur w8, [x29, #-12] ldur w9, [x29, #-12] movz w8, #0 movk w8, #1, lsl #16 add w10, w9, w8 ldur w9, [x29, #-16] mov w8, #15 sub w9, w8, w9 mov w8, #1 add w8, w9, w8 sxtw x8, w8 lsl x8, x8, #2 add x8, x11, x8 ldr w8, [x8] sub w8, w10, w8 stur w8, [x29, #-4] b .L.long_func.265 .L.long_func.264: ldur w10, [x29, #-12] ldur w8, [x29, #-16] adrp x9, SHIFT_TABLE add x9, x9, :lo12:SHIFT_TABLE sxtw x8, w8 lsl x8, x8, #2 add x8, x9, x8 ldr w8, [x8] sdiv w8, w10, w8 stur w8, [x29, #-4] b .L.long_func.265 .L.long_func.265: b .L.long_func.262 .L.long_func.266: ldur w9, [x29, #-160] mov w8, #0 cmp w9, w8 b.ne .L.long_func.267 b .L.long_func.268 .L.long_func.267: mov w8, #0 stur w8, [x29, #-4] stur w8, [x29, #-8] ldur w8, [x29, #-160] stur w8, [x29, #-12] mov w8, #1 stur w8, [x29, #-16] b .L.long_func.269 .L.long_func.268: ldur w8, [x29, #-164] stur w8, [x29, #-4] stur w8, [x29, #-108] ldur w8, [x29, #-112] stur w8, [x29, #-12] mov w8, #1 stur w8, [x29, #-16] ldur w9, [x29, #-16] mov w8, #15 cmp w9, w8 b.ge .L.long_func.343 b .L.long_func.344 .L.long_func.269: ldur w9, [x29, #-8] mov w8, #16 cmp w9, w8 b.lt .L.long_func.270 b .L.long_func.271 .L.long_func.270: ldur w10, [x29, #-12] mov w8, #2 add w8, w10, #1 cmp w10, #0 csel w8, w8, w10, lt asr w9, w8, #1 mov w8, #2 msub w9, w9, w8, w10 mov w8, #0 cmp w9, w8 b.ne .L.long_func.274 b .L.long_func.273 .L.long_func.271: ldur w9, [x29, #-4] mov w8, #0 cmp w9, w8 b.ne .L.long_func.275 b .L.long_func.276 .L.long_func.272: ldur w10, [x29, #-4] ldur w8, [x29, #-8] adrp x9, SHIFT_TABLE add x9, x9, :lo12:SHIFT_TABLE sxtw x8, w8 lsl x8, x8, #2 add x8, x9, x8 ldr w8, [x8] add w8, w10, w8 stur w8, [x29, #-4] b .L.long_func.273 .L.long_func.273: ldur w9, [x29, #-12] mov w8, #2 add w8, w9, #1 cmp w9, #0 csel w8, w8, w9, lt asr w8, w8, #1 stur w8, [x29, #-12] ldur w9, [x29, #-16] add w8, w9, #1 cmp w9, #0 csel w8, w8, w9, lt asr w8, w8, #1 stur w8, [x29, #-16] ldur w9, [x29, #-8] mov w8, #1 add w8, w9, w8 stur w8, [x29, #-8] b .L.long_func.269 .L.long_func.274: ldur w10, [x29, #-16] mov w8, #2 add w8, w10, #1 cmp w10, #0 csel w8, w8, w10, lt asr w9, w8, #1 mov w8, #2 msub w9, w9, w8, w10 mov w8, #0 cmp w9, w8 b.ne .L.long_func.272 b .L.long_func.273 .L.long_func.275: ldur w8, [x29, #-164] stur w8, [x29, #-168] ldur w8, [x29, #-156] stur w8, [x29, #-172] mov w8, #0 stur w8, [x29, #-176] b .L.long_func.277 .L.long_func.276: ldur w8, [x29, #-156] stur w8, [x29, #-180] ldur w8, [x29, #-156] stur w8, [x29, #-184] mov w8, #0 stur w8, [x29, #-188] b .L.long_func.304 .L.long_func.277: ldur w9, [x29, #-172] mov w8, #0 cmp w9, w8 b.ne .L.long_func.278 b .L.long_func.279 .L.long_func.278: mov w8, #0 stur w8, [x29, #-4] stur w8, [x29, #-8] ldur w8, [x29, #-168] stur w8, [x29, #-12] ldur w8, [x29, #-172] stur w8, [x29, #-16] b .L.long_func.280 .L.long_func.279: ldur w8, [x29, #-168] stur w8, [x29, #-4] stur w8, [x29, #-164] b .L.long_func.276 .L.long_func.280: ldur w9, [x29, #-8] mov w8, #16 cmp w9, w8 b.lt .L.long_func.281 b .L.long_func.282 .L.long_func.281: ldur w10, [x29, #-12] mov w8, #2 add w8, w10, #1 cmp w10, #0 csel w8, w8, w10, lt asr w9, w8, #1 mov w8, #2 msub w9, w9, w8, w10 mov w8, #0 cmp w9, w8 b.ne .L.long_func.283 b .L.long_func.284 .L.long_func.282: ldur w8, [x29, #-4] stur w8, [x29, #-176] mov w8, #0 stur w8, [x29, #-4] stur w8, [x29, #-8] ldur w8, [x29, #-168] stur w8, [x29, #-12] ldur w8, [x29, #-172] stur w8, [x29, #-16] b .L.long_func.290 .L.long_func.283: ldur w10, [x29, #-16] mov w8, #2 add w8, w10, #1 cmp w10, #0 csel w8, w8, w10, lt asr w9, w8, #1 mov w8, #2 msub w9, w9, w8, w10 mov w8, #0 cmp w9, w8 b.eq .L.long_func.286 b .L.long_func.287 .L.long_func.284: ldur w10, [x29, #-16] mov w8, #2 add w8, w10, #1 cmp w10, #0 csel w8, w8, w10, lt asr w9, w8, #1 mov w8, #2 msub w9, w9, w8, w10 mov w8, #0 cmp w9, w8 b.ne .L.long_func.288 b .L.long_func.289 .L.long_func.285: ldur w9, [x29, #-12] mov w8, #2 add w8, w9, #1 cmp w9, #0 csel w8, w8, w9, lt asr w8, w8, #1 stur w8, [x29, #-12] ldur w9, [x29, #-16] add w8, w9, #1 cmp w9, #0 csel w8, w8, w9, lt asr w8, w8, #1 stur w8, [x29, #-16] ldur w9, [x29, #-8] mov w8, #1 add w8, w9, w8 stur w8, [x29, #-8] b .L.long_func.280 .L.long_func.286: ldur w10, [x29, #-4] ldur w8, [x29, #-8] adrp x9, SHIFT_TABLE add x9, x9, :lo12:SHIFT_TABLE sxtw x8, w8 lsl x8, x8, #2 add x8, x9, x8 ldr w8, [x8] add w8, w10, w8 stur w8, [x29, #-4] b .L.long_func.287 .L.long_func.287: b .L.long_func.285 .L.long_func.288: ldur w10, [x29, #-4] ldur w8, [x29, #-8] adrp x9, SHIFT_TABLE add x9, x9, :lo12:SHIFT_TABLE sxtw x8, w8 lsl x8, x8, #2 add x8, x9, x8 ldr w8, [x8] add w8, w10, w8 stur w8, [x29, #-4] b .L.long_func.289 .L.long_func.289: b .L.long_func.285 .L.long_func.290: ldur w9, [x29, #-8] mov w8, #16 cmp w9, w8 b.lt .L.long_func.291 b .L.long_func.292 .L.long_func.291: ldur w10, [x29, #-12] mov w8, #2 add w8, w10, #1 cmp w10, #0 csel w8, w8, w10, lt asr w9, w8, #1 mov w8, #2 msub w9, w9, w8, w10 mov w8, #0 cmp w9, w8 b.ne .L.long_func.295 b .L.long_func.294 .L.long_func.292: ldur w8, [x29, #-4] stur w8, [x29, #-172] b .L.long_func.296 .L.long_func.293: ldur w10, [x29, #-4] ldur w8, [x29, #-8] adrp x9, SHIFT_TABLE add x9, x9, :lo12:SHIFT_TABLE sxtw x8, w8 lsl x8, x8, #2 add x8, x9, x8 ldr w8, [x8] add w8, w10, w8 stur w8, [x29, #-4] b .L.long_func.294 .L.long_func.294: ldur w9, [x29, #-12] mov w8, #2 add w8, w9, #1 cmp w9, #0 csel w8, w8, w9, lt asr w8, w8, #1 stur w8, [x29, #-12] ldur w9, [x29, #-16] add w8, w9, #1 cmp w9, #0 csel w8, w8, w9, lt asr w8, w8, #1 stur w8, [x29, #-16] ldur w9, [x29, #-8] mov w8, #1 add w8, w9, w8 stur w8, [x29, #-8] b .L.long_func.290 .L.long_func.295: ldur w10, [x29, #-16] mov w8, #2 add w8, w10, #1 cmp w10, #0 csel w8, w8, w10, lt asr w9, w8, #1 mov w8, #2 msub w9, w9, w8, w10 mov w8, #0 cmp w9, w8 b.ne .L.long_func.293 b .L.long_func.294 .L.long_func.296: mov w8, #0 stur w8, [x29, #-4] stur w8, [x29, #-8] ldur w10, [x29, #-172] adrp x9, SHIFT_TABLE add x9, x9, :lo12:SHIFT_TABLE mov x8, #4 add x8, x9, x8 ldr w8, [x8] mul w8, w10, w8 stur w8, [x29, #-12] mov w8, #65535 stur w8, [x29, #-16] b .L.long_func.298 .L.long_func.297: ldur w8, [x29, #-4] stur w8, [x29, #-172] ldur w8, [x29, #-176] stur w8, [x29, #-168] b .L.long_func.277 .L.long_func.298: ldur w9, [x29, #-8] mov w8, #16 cmp w9, w8 b.lt .L.long_func.299 b .L.long_func.300 .L.long_func.299: ldur w10, [x29, #-12] mov w8, #2 add w8, w10, #1 cmp w10, #0 csel w8, w8, w10, lt asr w9, w8, #1 mov w8, #2 msub w9, w9, w8, w10 mov w8, #0 cmp w9, w8 b.ne .L.long_func.303 b .L.long_func.302 .L.long_func.300: b .L.long_func.297 .L.long_func.301: ldur w10, [x29, #-4] ldur w8, [x29, #-8] adrp x9, SHIFT_TABLE add x9, x9, :lo12:SHIFT_TABLE sxtw x8, w8 lsl x8, x8, #2 add x8, x9, x8 ldr w8, [x8] add w8, w10, w8 stur w8, [x29, #-4] b .L.long_func.302 .L.long_func.302: ldur w9, [x29, #-12] mov w8, #2 add w8, w9, #1 cmp w9, #0 csel w8, w8, w9, lt asr w8, w8, #1 stur w8, [x29, #-12] ldur w9, [x29, #-16] add w8, w9, #1 cmp w9, #0 csel w8, w8, w9, lt asr w8, w8, #1 stur w8, [x29, #-16] ldur w9, [x29, #-8] mov w8, #1 add w8, w9, w8 stur w8, [x29, #-8] b .L.long_func.298 .L.long_func.303: ldur w10, [x29, #-16] mov w8, #2 add w8, w10, #1 cmp w10, #0 csel w8, w8, w10, lt asr w9, w8, #1 mov w8, #2 msub w9, w9, w8, w10 mov w8, #0 cmp w9, w8 b.ne .L.long_func.301 b .L.long_func.302 .L.long_func.304: ldur w9, [x29, #-184] mov w8, #0 cmp w9, w8 b.ne .L.long_func.305 b .L.long_func.306 .L.long_func.305: mov w8, #0 stur w8, [x29, #-4] stur w8, [x29, #-8] ldur w8, [x29, #-180] stur w8, [x29, #-12] ldur w8, [x29, #-184] stur w8, [x29, #-16] b .L.long_func.307 .L.long_func.306: ldur w8, [x29, #-180] stur w8, [x29, #-4] stur w8, [x29, #-156] ldur w8, [x29, #-160] stur w8, [x29, #-12] mov w8, #1 stur w8, [x29, #-16] ldur w9, [x29, #-16] mov w8, #15 cmp w9, w8 b.ge .L.long_func.331 b .L.long_func.332 .L.long_func.307: ldur w9, [x29, #-8] mov w8, #16 cmp w9, w8 b.lt .L.long_func.308 b .L.long_func.309 .L.long_func.308: ldur w10, [x29, #-12] mov w8, #2 add w8, w10, #1 cmp w10, #0 csel w8, w8, w10, lt asr w9, w8, #1 mov w8, #2 msub w9, w9, w8, w10 mov w8, #0 cmp w9, w8 b.ne .L.long_func.310 b .L.long_func.311 .L.long_func.309: ldur w8, [x29, #-4] stur w8, [x29, #-188] mov w8, #0 stur w8, [x29, #-4] stur w8, [x29, #-8] ldur w8, [x29, #-180] stur w8, [x29, #-12] ldur w8, [x29, #-184] stur w8, [x29, #-16] b .L.long_func.317 .L.long_func.310: ldur w10, [x29, #-16] mov w8, #2 add w8, w10, #1 cmp w10, #0 csel w8, w8, w10, lt asr w9, w8, #1 mov w8, #2 msub w9, w9, w8, w10 mov w8, #0 cmp w9, w8 b.eq .L.long_func.313 b .L.long_func.314 .L.long_func.311: ldur w10, [x29, #-16] mov w8, #2 add w8, w10, #1 cmp w10, #0 csel w8, w8, w10, lt asr w9, w8, #1 mov w8, #2 msub w9, w9, w8, w10 mov w8, #0 cmp w9, w8 b.ne .L.long_func.315 b .L.long_func.316 .L.long_func.312: ldur w9, [x29, #-12] mov w8, #2 add w8, w9, #1 cmp w9, #0 csel w8, w8, w9, lt asr w8, w8, #1 stur w8, [x29, #-12] ldur w9, [x29, #-16] add w8, w9, #1 cmp w9, #0 csel w8, w8, w9, lt asr w8, w8, #1 stur w8, [x29, #-16] ldur w9, [x29, #-8] mov w8, #1 add w8, w9, w8 stur w8, [x29, #-8] b .L.long_func.307 .L.long_func.313: ldur w10, [x29, #-4] ldur w8, [x29, #-8] adrp x9, SHIFT_TABLE add x9, x9, :lo12:SHIFT_TABLE sxtw x8, w8 lsl x8, x8, #2 add x8, x9, x8 ldr w8, [x8] add w8, w10, w8 stur w8, [x29, #-4] b .L.long_func.314 .L.long_func.314: b .L.long_func.312 .L.long_func.315: ldur w10, [x29, #-4] ldur w8, [x29, #-8] adrp x9, SHIFT_TABLE add x9, x9, :lo12:SHIFT_TABLE sxtw x8, w8 lsl x8, x8, #2 add x8, x9, x8 ldr w8, [x8] add w8, w10, w8 stur w8, [x29, #-4] b .L.long_func.316 .L.long_func.316: b .L.long_func.312 .L.long_func.317: ldur w9, [x29, #-8] mov w8, #16 cmp w9, w8 b.lt .L.long_func.318 b .L.long_func.319 .L.long_func.318: ldur w10, [x29, #-12] mov w8, #2 add w8, w10, #1 cmp w10, #0 csel w8, w8, w10, lt asr w9, w8, #1 mov w8, #2 msub w9, w9, w8, w10 mov w8, #0 cmp w9, w8 b.ne .L.long_func.322 b .L.long_func.321 .L.long_func.319: ldur w8, [x29, #-4] stur w8, [x29, #-184] b .L.long_func.323 .L.long_func.320: ldur w10, [x29, #-4] ldur w8, [x29, #-8] adrp x9, SHIFT_TABLE add x9, x9, :lo12:SHIFT_TABLE sxtw x8, w8 lsl x8, x8, #2 add x8, x9, x8 ldr w8, [x8] add w8, w10, w8 stur w8, [x29, #-4] b .L.long_func.321 .L.long_func.321: ldur w9, [x29, #-12] mov w8, #2 add w8, w9, #1 cmp w9, #0 csel w8, w8, w9, lt asr w8, w8, #1 stur w8, [x29, #-12] ldur w9, [x29, #-16] add w8, w9, #1 cmp w9, #0 csel w8, w8, w9, lt asr w8, w8, #1 stur w8, [x29, #-16] ldur w9, [x29, #-8] mov w8, #1 add w8, w9, w8 stur w8, [x29, #-8] b .L.long_func.317 .L.long_func.322: ldur w10, [x29, #-16] mov w8, #2 add w8, w10, #1 cmp w10, #0 csel w8, w8, w10, lt asr w9, w8, #1 mov w8, #2 msub w9, w9, w8, w10 mov w8, #0 cmp w9, w8 b.ne .L.long_func.320 b .L.long_func.321 .L.long_func.323: mov w8, #0 stur w8, [x29, #-4] stur w8, [x29, #-8] ldur w10, [x29, #-184] adrp x9, SHIFT_TABLE add x9, x9, :lo12:SHIFT_TABLE mov x8, #4 add x8, x9, x8 ldr w8, [x8] mul w8, w10, w8 stur w8, [x29, #-12] mov w8, #65535 stur w8, [x29, #-16] b .L.long_func.325 .L.long_func.324: ldur w8, [x29, #-4] stur w8, [x29, #-184] ldur w8, [x29, #-188] stur w8, [x29, #-180] b .L.long_func.304 .L.long_func.325: ldur w9, [x29, #-8] mov w8, #16 cmp w9, w8 b.lt .L.long_func.326 b .L.long_func.327 .L.long_func.326: ldur w10, [x29, #-12] mov w8, #2 add w8, w10, #1 cmp w10, #0 csel w8, w8, w10, lt asr w9, w8, #1 mov w8, #2 msub w9, w9, w8, w10 mov w8, #0 cmp w9, w8 b.ne .L.long_func.330 b .L.long_func.329 .L.long_func.327: b .L.long_func.324 .L.long_func.328: ldur w10, [x29, #-4] ldur w8, [x29, #-8] adrp x9, SHIFT_TABLE add x9, x9, :lo12:SHIFT_TABLE sxtw x8, w8 lsl x8, x8, #2 add x8, x9, x8 ldr w8, [x8] add w8, w10, w8 stur w8, [x29, #-4] b .L.long_func.329 .L.long_func.329: ldur w9, [x29, #-12] mov w8, #2 add w8, w9, #1 cmp w9, #0 csel w8, w8, w9, lt asr w8, w8, #1 stur w8, [x29, #-12] ldur w9, [x29, #-16] add w8, w9, #1 cmp w9, #0 csel w8, w8, w9, lt asr w8, w8, #1 stur w8, [x29, #-16] ldur w9, [x29, #-8] mov w8, #1 add w8, w9, w8 stur w8, [x29, #-8] b .L.long_func.325 .L.long_func.330: ldur w10, [x29, #-16] mov w8, #2 add w8, w10, #1 cmp w10, #0 csel w8, w8, w10, lt asr w9, w8, #1 mov w8, #2 msub w9, w9, w8, w10 mov w8, #0 cmp w9, w8 b.ne .L.long_func.328 b .L.long_func.329 .L.long_func.331: ldur w9, [x29, #-12] mov w8, #0 cmp w9, w8 b.lt .L.long_func.334 b .L.long_func.335 .L.long_func.332: ldur w9, [x29, #-16] mov w8, #0 cmp w9, w8 b.gt .L.long_func.337 b .L.long_func.338 .L.long_func.333: ldur w8, [x29, #-4] stur w8, [x29, #-160] b .L.long_func.266 .L.long_func.334: mov w8, #65535 stur w8, [x29, #-4] b .L.long_func.336 .L.long_func.335: mov w8, #0 stur w8, [x29, #-4] b .L.long_func.336 .L.long_func.336: b .L.long_func.333 .L.long_func.337: ldur w9, [x29, #-12] mov w8, #32767 cmp w9, w8 b.gt .L.long_func.340 b .L.long_func.341 .L.long_func.338: ldur w8, [x29, #-12] stur w8, [x29, #-4] b .L.long_func.339 .L.long_func.339: b .L.long_func.333 .L.long_func.340: ldur w9, [x29, #-12] ldur w8, [x29, #-16] adrp x11, SHIFT_TABLE add x11, x11, :lo12:SHIFT_TABLE sxtw x8, w8 lsl x8, x8, #2 add x8, x11, x8 ldr w8, [x8] sdiv w8, w9, w8 stur w8, [x29, #-12] ldur w9, [x29, #-12] movz w8, #0 movk w8, #1, lsl #16 add w10, w9, w8 ldur w9, [x29, #-16] mov w8, #15 sub w9, w8, w9 mov w8, #1 add w8, w9, w8 sxtw x8, w8 lsl x8, x8, #2 add x8, x11, x8 ldr w8, [x8] sub w8, w10, w8 stur w8, [x29, #-4] b .L.long_func.342 .L.long_func.341: ldur w10, [x29, #-12] ldur w8, [x29, #-16] adrp x9, SHIFT_TABLE add x9, x9, :lo12:SHIFT_TABLE sxtw x8, w8 lsl x8, x8, #2 add x8, x9, x8 ldr w8, [x8] sdiv w8, w10, w8 stur w8, [x29, #-4] b .L.long_func.342 .L.long_func.342: b .L.long_func.339 .L.long_func.343: ldur w9, [x29, #-12] mov w8, #0 cmp w9, w8 b.lt .L.long_func.346 b .L.long_func.347 .L.long_func.344: ldur w9, [x29, #-16] mov w8, #0 cmp w9, w8 b.gt .L.long_func.349 b .L.long_func.350 .L.long_func.345: ldur w8, [x29, #-4] stur w8, [x29, #-112] b .L.long_func.178 .L.long_func.346: mov w8, #65535 stur w8, [x29, #-4] b .L.long_func.348 .L.long_func.347: mov w8, #0 stur w8, [x29, #-4] b .L.long_func.348 .L.long_func.348: b .L.long_func.345 .L.long_func.349: ldur w9, [x29, #-12] mov w8, #32767 cmp w9, w8 b.gt .L.long_func.352 b .L.long_func.353 .L.long_func.350: ldur w8, [x29, #-12] stur w8, [x29, #-4] b .L.long_func.351 .L.long_func.351: b .L.long_func.345 .L.long_func.352: ldur w9, [x29, #-12] ldur w8, [x29, #-16] adrp x11, SHIFT_TABLE add x11, x11, :lo12:SHIFT_TABLE sxtw x8, w8 lsl x8, x8, #2 add x8, x11, x8 ldr w8, [x8] sdiv w8, w9, w8 stur w8, [x29, #-12] ldur w9, [x29, #-12] movz w8, #0 movk w8, #1, lsl #16 add w10, w9, w8 ldur w9, [x29, #-16] mov w8, #15 sub w9, w8, w9 mov w8, #1 add w8, w9, w8 sxtw x8, w8 lsl x8, x8, #2 add x8, x11, x8 ldr w8, [x8] sub w8, w10, w8 stur w8, [x29, #-4] b .L.long_func.354 .L.long_func.353: ldur w10, [x29, #-12] ldur w8, [x29, #-16] adrp x9, SHIFT_TABLE add x9, x9, :lo12:SHIFT_TABLE sxtw x8, w8 lsl x8, x8, #2 add x8, x9, x8 ldr w8, [x8] sdiv w8, w10, w8 stur w8, [x29, #-4] b .L.long_func.354 .L.long_func.354: b .L.long_func.351 .L.long_func.355: ldur w9, [x29, #-20] mov w8, #16 cmp w9, w8 b.lt .L.long_func.356 b .L.long_func.357 .L.long_func.356: mov w8, #2 stur w8, [x29, #-192] ldur w8, [x29, #-20] stur w8, [x29, #-196] mov w8, #1 stur w8, [x29, #-200] b .L.long_func.358 .L.long_func.357: mov w8, #0 stur w8, [x29, #-20] b .L.long_func.535 .L.long_func.358: ldur w9, [x29, #-196] mov w8, #0 cmp w9, w8 b.gt .L.long_func.359 b .L.long_func.360 .L.long_func.359: mov w8, #0 stur w8, [x29, #-4] stur w8, [x29, #-8] ldur w8, [x29, #-196] stur w8, [x29, #-12] mov w8, #1 stur w8, [x29, #-16] b .L.long_func.361 .L.long_func.360: ldur w8, [x29, #-200] stur w8, [x29, #-4] mov w0, w8 bl putint mov w8, #10 mov w0, w8 bl putch ldur w9, [x29, #-20] mov w8, #1 add w8, w9, w8 stur w8, [x29, #-20] b .L.long_func.355 .L.long_func.361: ldur w9, [x29, #-8] mov w8, #16 cmp w9, w8 b.lt .L.long_func.362 b .L.long_func.363 .L.long_func.362: ldur w10, [x29, #-12] mov w8, #2 add w8, w10, #1 cmp w10, #0 csel w8, w8, w10, lt asr w9, w8, #1 mov w8, #2 msub w9, w9, w8, w10 mov w8, #0 cmp w9, w8 b.ne .L.long_func.366 b .L.long_func.365 .L.long_func.363: ldur w9, [x29, #-4] mov w8, #0 cmp w9, w8 b.ne .L.long_func.367 b .L.long_func.368 .L.long_func.364: ldur w10, [x29, #-4] ldur w8, [x29, #-8] adrp x9, SHIFT_TABLE add x9, x9, :lo12:SHIFT_TABLE sxtw x8, w8 lsl x8, x8, #2 add x8, x9, x8 ldr w8, [x8] add w8, w10, w8 stur w8, [x29, #-4] b .L.long_func.365 .L.long_func.365: ldur w9, [x29, #-12] mov w8, #2 add w8, w9, #1 cmp w9, #0 csel w8, w8, w9, lt asr w8, w8, #1 stur w8, [x29, #-12] ldur w9, [x29, #-16] add w8, w9, #1 cmp w9, #0 csel w8, w8, w9, lt asr w8, w8, #1 stur w8, [x29, #-16] ldur w9, [x29, #-8] mov w8, #1 add w8, w9, w8 stur w8, [x29, #-8] b .L.long_func.361 .L.long_func.366: ldur w10, [x29, #-16] mov w8, #2 add w8, w10, #1 cmp w10, #0 csel w8, w8, w10, lt asr w9, w8, #1 mov w8, #2 msub w9, w9, w8, w10 mov w8, #0 cmp w9, w8 b.ne .L.long_func.364 b .L.long_func.365 .L.long_func.367: ldur w8, [x29, #-200] stur w8, [x29, #-204] ldur w8, [x29, #-192] stur w8, [x29, #-208] mov w8, #0 stur w8, [x29, #-212] b .L.long_func.369 .L.long_func.368: ldur w8, [x29, #-192] stur w8, [x29, #-240] ldur w8, [x29, #-192] stur w8, [x29, #-244] mov w8, #0 stur w8, [x29, #-248] b .L.long_func.446 .L.long_func.369: ldur w9, [x29, #-208] mov w8, #0 cmp w9, w8 b.ne .L.long_func.370 b .L.long_func.371 .L.long_func.370: mov w8, #0 stur w8, [x29, #-4] stur w8, [x29, #-8] ldur w8, [x29, #-208] stur w8, [x29, #-12] mov w8, #1 stur w8, [x29, #-16] b .L.long_func.372 .L.long_func.371: ldur w8, [x29, #-212] stur w8, [x29, #-4] stur w8, [x29, #-200] b .L.long_func.368 .L.long_func.372: ldur w9, [x29, #-8] mov w8, #16 cmp w9, w8 b.lt .L.long_func.373 b .L.long_func.374 .L.long_func.373: ldur w10, [x29, #-12] mov w8, #2 add w8, w10, #1 cmp w10, #0 csel w8, w8, w10, lt asr w9, w8, #1 mov w8, #2 msub w9, w9, w8, w10 mov w8, #0 cmp w9, w8 b.ne .L.long_func.377 b .L.long_func.376 .L.long_func.374: ldur w9, [x29, #-4] mov w8, #0 cmp w9, w8 b.ne .L.long_func.378 b .L.long_func.379 .L.long_func.375: ldur w10, [x29, #-4] ldur w8, [x29, #-8] adrp x9, SHIFT_TABLE add x9, x9, :lo12:SHIFT_TABLE sxtw x8, w8 lsl x8, x8, #2 add x8, x9, x8 ldr w8, [x8] add w8, w10, w8 stur w8, [x29, #-4] b .L.long_func.376 .L.long_func.376: ldur w9, [x29, #-12] mov w8, #2 add w8, w9, #1 cmp w9, #0 csel w8, w8, w9, lt asr w8, w8, #1 stur w8, [x29, #-12] ldur w9, [x29, #-16] add w8, w9, #1 cmp w9, #0 csel w8, w8, w9, lt asr w8, w8, #1 stur w8, [x29, #-16] ldur w9, [x29, #-8] mov w8, #1 add w8, w9, w8 stur w8, [x29, #-8] b .L.long_func.372 .L.long_func.377: ldur w10, [x29, #-16] mov w8, #2 add w8, w10, #1 cmp w10, #0 csel w8, w8, w10, lt asr w9, w8, #1 mov w8, #2 msub w9, w9, w8, w10 mov w8, #0 cmp w9, w8 b.ne .L.long_func.375 b .L.long_func.376 .L.long_func.378: ldur w8, [x29, #-212] stur w8, [x29, #-216] ldur w8, [x29, #-204] stur w8, [x29, #-220] mov w8, #0 stur w8, [x29, #-224] b .L.long_func.380 .L.long_func.379: ldur w8, [x29, #-204] stur w8, [x29, #-228] ldur w8, [x29, #-204] stur w8, [x29, #-232] mov w8, #0 stur w8, [x29, #-236] b .L.long_func.407 .L.long_func.380: ldur w9, [x29, #-220] mov w8, #0 cmp w9, w8 b.ne .L.long_func.381 b .L.long_func.382 .L.long_func.381: mov w8, #0 stur w8, [x29, #-4] stur w8, [x29, #-8] ldur w8, [x29, #-216] stur w8, [x29, #-12] ldur w8, [x29, #-220] stur w8, [x29, #-16] b .L.long_func.383 .L.long_func.382: ldur w8, [x29, #-216] stur w8, [x29, #-4] stur w8, [x29, #-212] b .L.long_func.379 .L.long_func.383: ldur w9, [x29, #-8] mov w8, #16 cmp w9, w8 b.lt .L.long_func.384 b .L.long_func.385 .L.long_func.384: ldur w10, [x29, #-12] mov w8, #2 add w8, w10, #1 cmp w10, #0 csel w8, w8, w10, lt asr w9, w8, #1 mov w8, #2 msub w9, w9, w8, w10 mov w8, #0 cmp w9, w8 b.ne .L.long_func.386 b .L.long_func.387 .L.long_func.385: ldur w8, [x29, #-4] stur w8, [x29, #-224] mov w8, #0 stur w8, [x29, #-4] stur w8, [x29, #-8] ldur w8, [x29, #-216] stur w8, [x29, #-12] ldur w8, [x29, #-220] stur w8, [x29, #-16] b .L.long_func.393 .L.long_func.386: ldur w10, [x29, #-16] mov w8, #2 add w8, w10, #1 cmp w10, #0 csel w8, w8, w10, lt asr w9, w8, #1 mov w8, #2 msub w9, w9, w8, w10 mov w8, #0 cmp w9, w8 b.eq .L.long_func.389 b .L.long_func.390 .L.long_func.387: ldur w10, [x29, #-16] mov w8, #2 add w8, w10, #1 cmp w10, #0 csel w8, w8, w10, lt asr w9, w8, #1 mov w8, #2 msub w9, w9, w8, w10 mov w8, #0 cmp w9, w8 b.ne .L.long_func.391 b .L.long_func.392 .L.long_func.388: ldur w9, [x29, #-12] mov w8, #2 add w8, w9, #1 cmp w9, #0 csel w8, w8, w9, lt asr w8, w8, #1 stur w8, [x29, #-12] ldur w9, [x29, #-16] add w8, w9, #1 cmp w9, #0 csel w8, w8, w9, lt asr w8, w8, #1 stur w8, [x29, #-16] ldur w9, [x29, #-8] mov w8, #1 add w8, w9, w8 stur w8, [x29, #-8] b .L.long_func.383 .L.long_func.389: ldur w10, [x29, #-4] ldur w8, [x29, #-8] adrp x9, SHIFT_TABLE add x9, x9, :lo12:SHIFT_TABLE sxtw x8, w8 lsl x8, x8, #2 add x8, x9, x8 ldr w8, [x8] add w8, w10, w8 stur w8, [x29, #-4] b .L.long_func.390 .L.long_func.390: b .L.long_func.388 .L.long_func.391: ldur w10, [x29, #-4] ldur w8, [x29, #-8] adrp x9, SHIFT_TABLE add x9, x9, :lo12:SHIFT_TABLE sxtw x8, w8 lsl x8, x8, #2 add x8, x9, x8 ldr w8, [x8] add w8, w10, w8 stur w8, [x29, #-4] b .L.long_func.392 .L.long_func.392: b .L.long_func.388 .L.long_func.393: ldur w9, [x29, #-8] mov w8, #16 cmp w9, w8 b.lt .L.long_func.394 b .L.long_func.395 .L.long_func.394: ldur w10, [x29, #-12] mov w8, #2 add w8, w10, #1 cmp w10, #0 csel w8, w8, w10, lt asr w9, w8, #1 mov w8, #2 msub w9, w9, w8, w10 mov w8, #0 cmp w9, w8 b.ne .L.long_func.398 b .L.long_func.397 .L.long_func.395: ldur w8, [x29, #-4] stur w8, [x29, #-220] b .L.long_func.399 .L.long_func.396: ldur w10, [x29, #-4] ldur w8, [x29, #-8] adrp x9, SHIFT_TABLE add x9, x9, :lo12:SHIFT_TABLE sxtw x8, w8 lsl x8, x8, #2 add x8, x9, x8 ldr w8, [x8] add w8, w10, w8 stur w8, [x29, #-4] b .L.long_func.397 .L.long_func.397: ldur w9, [x29, #-12] mov w8, #2 add w8, w9, #1 cmp w9, #0 csel w8, w8, w9, lt asr w8, w8, #1 stur w8, [x29, #-12] ldur w9, [x29, #-16] add w8, w9, #1 cmp w9, #0 csel w8, w8, w9, lt asr w8, w8, #1 stur w8, [x29, #-16] ldur w9, [x29, #-8] mov w8, #1 add w8, w9, w8 stur w8, [x29, #-8] b .L.long_func.393 .L.long_func.398: ldur w10, [x29, #-16] mov w8, #2 add w8, w10, #1 cmp w10, #0 csel w8, w8, w10, lt asr w9, w8, #1 mov w8, #2 msub w9, w9, w8, w10 mov w8, #0 cmp w9, w8 b.ne .L.long_func.396 b .L.long_func.397 .L.long_func.399: mov w8, #0 stur w8, [x29, #-4] stur w8, [x29, #-8] ldur w10, [x29, #-220] adrp x9, SHIFT_TABLE add x9, x9, :lo12:SHIFT_TABLE mov x8, #4 add x8, x9, x8 ldr w8, [x8] mul w8, w10, w8 stur w8, [x29, #-12] mov w8, #65535 stur w8, [x29, #-16] b .L.long_func.401 .L.long_func.400: ldur w8, [x29, #-4] stur w8, [x29, #-220] ldur w8, [x29, #-224] stur w8, [x29, #-216] b .L.long_func.380 .L.long_func.401: ldur w9, [x29, #-8] mov w8, #16 cmp w9, w8 b.lt .L.long_func.402 b .L.long_func.403 .L.long_func.402: ldur w10, [x29, #-12] mov w8, #2 add w8, w10, #1 cmp w10, #0 csel w8, w8, w10, lt asr w9, w8, #1 mov w8, #2 msub w9, w9, w8, w10 mov w8, #0 cmp w9, w8 b.ne .L.long_func.406 b .L.long_func.405 .L.long_func.403: b .L.long_func.400 .L.long_func.404: ldur w10, [x29, #-4] ldur w8, [x29, #-8] adrp x9, SHIFT_TABLE add x9, x9, :lo12:SHIFT_TABLE sxtw x8, w8 lsl x8, x8, #2 add x8, x9, x8 ldr w8, [x8] add w8, w10, w8 stur w8, [x29, #-4] b .L.long_func.405 .L.long_func.405: ldur w9, [x29, #-12] mov w8, #2 add w8, w9, #1 cmp w9, #0 csel w8, w8, w9, lt asr w8, w8, #1 stur w8, [x29, #-12] ldur w9, [x29, #-16] add w8, w9, #1 cmp w9, #0 csel w8, w8, w9, lt asr w8, w8, #1 stur w8, [x29, #-16] ldur w9, [x29, #-8] mov w8, #1 add w8, w9, w8 stur w8, [x29, #-8] b .L.long_func.401 .L.long_func.406: ldur w10, [x29, #-16] mov w8, #2 add w8, w10, #1 cmp w10, #0 csel w8, w8, w10, lt asr w9, w8, #1 mov w8, #2 msub w9, w9, w8, w10 mov w8, #0 cmp w9, w8 b.ne .L.long_func.404 b .L.long_func.405 .L.long_func.407: ldur w9, [x29, #-232] mov w8, #0 cmp w9, w8 b.ne .L.long_func.408 b .L.long_func.409 .L.long_func.408: mov w8, #0 stur w8, [x29, #-4] stur w8, [x29, #-8] ldur w8, [x29, #-228] stur w8, [x29, #-12] ldur w8, [x29, #-232] stur w8, [x29, #-16] b .L.long_func.410 .L.long_func.409: ldur w8, [x29, #-228] stur w8, [x29, #-4] stur w8, [x29, #-204] ldur w8, [x29, #-208] stur w8, [x29, #-12] mov w8, #1 stur w8, [x29, #-16] ldur w9, [x29, #-16] mov w8, #15 cmp w9, w8 b.ge .L.long_func.434 b .L.long_func.435 .L.long_func.410: ldur w9, [x29, #-8] mov w8, #16 cmp w9, w8 b.lt .L.long_func.411 b .L.long_func.412 .L.long_func.411: ldur w10, [x29, #-12] mov w8, #2 add w8, w10, #1 cmp w10, #0 csel w8, w8, w10, lt asr w9, w8, #1 mov w8, #2 msub w9, w9, w8, w10 mov w8, #0 cmp w9, w8 b.ne .L.long_func.413 b .L.long_func.414 .L.long_func.412: ldur w8, [x29, #-4] stur w8, [x29, #-236] mov w8, #0 stur w8, [x29, #-4] stur w8, [x29, #-8] ldur w8, [x29, #-228] stur w8, [x29, #-12] ldur w8, [x29, #-232] stur w8, [x29, #-16] b .L.long_func.420 .L.long_func.413: ldur w10, [x29, #-16] mov w8, #2 add w8, w10, #1 cmp w10, #0 csel w8, w8, w10, lt asr w9, w8, #1 mov w8, #2 msub w9, w9, w8, w10 mov w8, #0 cmp w9, w8 b.eq .L.long_func.416 b .L.long_func.417 .L.long_func.414: ldur w10, [x29, #-16] mov w8, #2 add w8, w10, #1 cmp w10, #0 csel w8, w8, w10, lt asr w9, w8, #1 mov w8, #2 msub w9, w9, w8, w10 mov w8, #0 cmp w9, w8 b.ne .L.long_func.418 b .L.long_func.419 .L.long_func.415: ldur w9, [x29, #-12] mov w8, #2 add w8, w9, #1 cmp w9, #0 csel w8, w8, w9, lt asr w8, w8, #1 stur w8, [x29, #-12] ldur w9, [x29, #-16] add w8, w9, #1 cmp w9, #0 csel w8, w8, w9, lt asr w8, w8, #1 stur w8, [x29, #-16] ldur w9, [x29, #-8] mov w8, #1 add w8, w9, w8 stur w8, [x29, #-8] b .L.long_func.410 .L.long_func.416: ldur w10, [x29, #-4] ldur w8, [x29, #-8] adrp x9, SHIFT_TABLE add x9, x9, :lo12:SHIFT_TABLE sxtw x8, w8 lsl x8, x8, #2 add x8, x9, x8 ldr w8, [x8] add w8, w10, w8 stur w8, [x29, #-4] b .L.long_func.417 .L.long_func.417: b .L.long_func.415 .L.long_func.418: ldur w10, [x29, #-4] ldur w8, [x29, #-8] adrp x9, SHIFT_TABLE add x9, x9, :lo12:SHIFT_TABLE sxtw x8, w8 lsl x8, x8, #2 add x8, x9, x8 ldr w8, [x8] add w8, w10, w8 stur w8, [x29, #-4] b .L.long_func.419 .L.long_func.419: b .L.long_func.415 .L.long_func.420: ldur w9, [x29, #-8] mov w8, #16 cmp w9, w8 b.lt .L.long_func.421 b .L.long_func.422 .L.long_func.421: ldur w10, [x29, #-12] mov w8, #2 add w8, w10, #1 cmp w10, #0 csel w8, w8, w10, lt asr w9, w8, #1 mov w8, #2 msub w9, w9, w8, w10 mov w8, #0 cmp w9, w8 b.ne .L.long_func.425 b .L.long_func.424 .L.long_func.422: ldur w8, [x29, #-4] stur w8, [x29, #-232] b .L.long_func.426 .L.long_func.423: ldur w10, [x29, #-4] ldur w8, [x29, #-8] adrp x9, SHIFT_TABLE add x9, x9, :lo12:SHIFT_TABLE sxtw x8, w8 lsl x8, x8, #2 add x8, x9, x8 ldr w8, [x8] add w8, w10, w8 stur w8, [x29, #-4] b .L.long_func.424 .L.long_func.424: ldur w9, [x29, #-12] mov w8, #2 add w8, w9, #1 cmp w9, #0 csel w8, w8, w9, lt asr w8, w8, #1 stur w8, [x29, #-12] ldur w9, [x29, #-16] add w8, w9, #1 cmp w9, #0 csel w8, w8, w9, lt asr w8, w8, #1 stur w8, [x29, #-16] ldur w9, [x29, #-8] mov w8, #1 add w8, w9, w8 stur w8, [x29, #-8] b .L.long_func.420 .L.long_func.425: ldur w10, [x29, #-16] mov w8, #2 add w8, w10, #1 cmp w10, #0 csel w8, w8, w10, lt asr w9, w8, #1 mov w8, #2 msub w9, w9, w8, w10 mov w8, #0 cmp w9, w8 b.ne .L.long_func.423 b .L.long_func.424 .L.long_func.426: mov w8, #0 stur w8, [x29, #-4] stur w8, [x29, #-8] ldur w10, [x29, #-232] adrp x9, SHIFT_TABLE add x9, x9, :lo12:SHIFT_TABLE mov x8, #4 add x8, x9, x8 ldr w8, [x8] mul w8, w10, w8 stur w8, [x29, #-12] mov w8, #65535 stur w8, [x29, #-16] b .L.long_func.428 .L.long_func.427: ldur w8, [x29, #-4] stur w8, [x29, #-232] ldur w8, [x29, #-236] stur w8, [x29, #-228] b .L.long_func.407 .L.long_func.428: ldur w9, [x29, #-8] mov w8, #16 cmp w9, w8 b.lt .L.long_func.429 b .L.long_func.430 .L.long_func.429: ldur w10, [x29, #-12] mov w8, #2 add w8, w10, #1 cmp w10, #0 csel w8, w8, w10, lt asr w9, w8, #1 mov w8, #2 msub w9, w9, w8, w10 mov w8, #0 cmp w9, w8 b.ne .L.long_func.433 b .L.long_func.432 .L.long_func.430: b .L.long_func.427 .L.long_func.431: ldur w10, [x29, #-4] ldur w8, [x29, #-8] adrp x9, SHIFT_TABLE add x9, x9, :lo12:SHIFT_TABLE sxtw x8, w8 lsl x8, x8, #2 add x8, x9, x8 ldr w8, [x8] add w8, w10, w8 stur w8, [x29, #-4] b .L.long_func.432 .L.long_func.432: ldur w9, [x29, #-12] mov w8, #2 add w8, w9, #1 cmp w9, #0 csel w8, w8, w9, lt asr w8, w8, #1 stur w8, [x29, #-12] ldur w9, [x29, #-16] add w8, w9, #1 cmp w9, #0 csel w8, w8, w9, lt asr w8, w8, #1 stur w8, [x29, #-16] ldur w9, [x29, #-8] mov w8, #1 add w8, w9, w8 stur w8, [x29, #-8] b .L.long_func.428 .L.long_func.433: ldur w10, [x29, #-16] mov w8, #2 add w8, w10, #1 cmp w10, #0 csel w8, w8, w10, lt asr w9, w8, #1 mov w8, #2 msub w9, w9, w8, w10 mov w8, #0 cmp w9, w8 b.ne .L.long_func.431 b .L.long_func.432 .L.long_func.434: ldur w9, [x29, #-12] mov w8, #0 cmp w9, w8 b.lt .L.long_func.437 b .L.long_func.438 .L.long_func.435: ldur w9, [x29, #-16] mov w8, #0 cmp w9, w8 b.gt .L.long_func.440 b .L.long_func.441 .L.long_func.436: ldur w8, [x29, #-4] stur w8, [x29, #-208] b .L.long_func.369 .L.long_func.437: mov w8, #65535 stur w8, [x29, #-4] b .L.long_func.439 .L.long_func.438: mov w8, #0 stur w8, [x29, #-4] b .L.long_func.439 .L.long_func.439: b .L.long_func.436 .L.long_func.440: ldur w9, [x29, #-12] mov w8, #32767 cmp w9, w8 b.gt .L.long_func.443 b .L.long_func.444 .L.long_func.441: ldur w8, [x29, #-12] stur w8, [x29, #-4] b .L.long_func.442 .L.long_func.442: b .L.long_func.436 .L.long_func.443: ldur w9, [x29, #-12] ldur w8, [x29, #-16] adrp x11, SHIFT_TABLE add x11, x11, :lo12:SHIFT_TABLE sxtw x8, w8 lsl x8, x8, #2 add x8, x11, x8 ldr w8, [x8] sdiv w8, w9, w8 stur w8, [x29, #-12] ldur w9, [x29, #-12] movz w8, #0 movk w8, #1, lsl #16 add w10, w9, w8 ldur w9, [x29, #-16] mov w8, #15 sub w9, w8, w9 mov w8, #1 add w8, w9, w8 sxtw x8, w8 lsl x8, x8, #2 add x8, x11, x8 ldr w8, [x8] sub w8, w10, w8 stur w8, [x29, #-4] b .L.long_func.445 .L.long_func.444: ldur w10, [x29, #-12] ldur w8, [x29, #-16] adrp x9, SHIFT_TABLE add x9, x9, :lo12:SHIFT_TABLE sxtw x8, w8 lsl x8, x8, #2 add x8, x9, x8 ldr w8, [x8] sdiv w8, w10, w8 stur w8, [x29, #-4] b .L.long_func.445 .L.long_func.445: b .L.long_func.442 .L.long_func.446: ldur w9, [x29, #-244] mov w8, #0 cmp w9, w8 b.ne .L.long_func.447 b .L.long_func.448 .L.long_func.447: mov w8, #0 stur w8, [x29, #-4] stur w8, [x29, #-8] ldur w8, [x29, #-244] stur w8, [x29, #-12] mov w8, #1 stur w8, [x29, #-16] b .L.long_func.449 .L.long_func.448: ldur w8, [x29, #-248] stur w8, [x29, #-4] stur w8, [x29, #-192] ldur w8, [x29, #-196] stur w8, [x29, #-12] mov w8, #1 stur w8, [x29, #-16] ldur w9, [x29, #-16] mov w8, #15 cmp w9, w8 b.ge .L.long_func.523 b .L.long_func.524 .L.long_func.449: ldur w9, [x29, #-8] mov w8, #16 cmp w9, w8 b.lt .L.long_func.450 b .L.long_func.451 .L.long_func.450: ldur w10, [x29, #-12] mov w8, #2 add w8, w10, #1 cmp w10, #0 csel w8, w8, w10, lt asr w9, w8, #1 mov w8, #2 msub w9, w9, w8, w10 mov w8, #0 cmp w9, w8 b.ne .L.long_func.454 b .L.long_func.453 .L.long_func.451: ldur w9, [x29, #-4] mov w8, #0 cmp w9, w8 b.ne .L.long_func.455 b .L.long_func.456 .L.long_func.452: ldur w10, [x29, #-4] ldur w8, [x29, #-8] adrp x9, SHIFT_TABLE add x9, x9, :lo12:SHIFT_TABLE sxtw x8, w8 lsl x8, x8, #2 add x8, x9, x8 ldr w8, [x8] add w8, w10, w8 stur w8, [x29, #-4] b .L.long_func.453 .L.long_func.453: ldur w9, [x29, #-12] mov w8, #2 add w8, w9, #1 cmp w9, #0 csel w8, w8, w9, lt asr w8, w8, #1 stur w8, [x29, #-12] ldur w9, [x29, #-16] add w8, w9, #1 cmp w9, #0 csel w8, w8, w9, lt asr w8, w8, #1 stur w8, [x29, #-16] ldur w9, [x29, #-8] mov w8, #1 add w8, w9, w8 stur w8, [x29, #-8] b .L.long_func.449 .L.long_func.454: ldur w10, [x29, #-16] mov w8, #2 add w8, w10, #1 cmp w10, #0 csel w8, w8, w10, lt asr w9, w8, #1 mov w8, #2 msub w9, w9, w8, w10 mov w8, #0 cmp w9, w8 b.ne .L.long_func.452 b .L.long_func.453 .L.long_func.455: ldur w8, [x29, #-248] stur w8, [x29, #-252] ldur w8, [x29, #-240] stur w8, [x29, #-256] mov w8, #0 mov x13, x29 sub x13, x13, #260 str w8, [x13] b .L.long_func.457 .L.long_func.456: ldur w8, [x29, #-240] mov x13, x29 sub x13, x13, #264 str w8, [x13] ldur w8, [x29, #-240] mov x13, x29 sub x13, x13, #268 str w8, [x13] mov w8, #0 mov x13, x29 sub x13, x13, #272 str w8, [x13] b .L.long_func.484 .L.long_func.457: ldur w9, [x29, #-256] mov w8, #0 cmp w9, w8 b.ne .L.long_func.458 b .L.long_func.459 .L.long_func.458: mov w8, #0 stur w8, [x29, #-4] stur w8, [x29, #-8] ldur w8, [x29, #-252] stur w8, [x29, #-12] ldur w8, [x29, #-256] stur w8, [x29, #-16] b .L.long_func.460 .L.long_func.459: ldur w8, [x29, #-252] stur w8, [x29, #-4] stur w8, [x29, #-248] b .L.long_func.456 .L.long_func.460: ldur w9, [x29, #-8] mov w8, #16 cmp w9, w8 b.lt .L.long_func.461 b .L.long_func.462 .L.long_func.461: ldur w10, [x29, #-12] mov w8, #2 add w8, w10, #1 cmp w10, #0 csel w8, w8, w10, lt asr w9, w8, #1 mov w8, #2 msub w9, w9, w8, w10 mov w8, #0 cmp w9, w8 b.ne .L.long_func.463 b .L.long_func.464 .L.long_func.462: ldur w8, [x29, #-4] mov x13, x29 sub x13, x13, #260 str w8, [x13] mov w8, #0 stur w8, [x29, #-4] stur w8, [x29, #-8] ldur w8, [x29, #-252] stur w8, [x29, #-12] ldur w8, [x29, #-256] stur w8, [x29, #-16] b .L.long_func.470 .L.long_func.463: ldur w10, [x29, #-16] mov w8, #2 add w8, w10, #1 cmp w10, #0 csel w8, w8, w10, lt asr w9, w8, #1 mov w8, #2 msub w9, w9, w8, w10 mov w8, #0 cmp w9, w8 b.eq .L.long_func.466 b .L.long_func.467 .L.long_func.464: ldur w10, [x29, #-16] mov w8, #2 add w8, w10, #1 cmp w10, #0 csel w8, w8, w10, lt asr w9, w8, #1 mov w8, #2 msub w9, w9, w8, w10 mov w8, #0 cmp w9, w8 b.ne .L.long_func.468 b .L.long_func.469 .L.long_func.465: ldur w9, [x29, #-12] mov w8, #2 add w8, w9, #1 cmp w9, #0 csel w8, w8, w9, lt asr w8, w8, #1 stur w8, [x29, #-12] ldur w9, [x29, #-16] add w8, w9, #1 cmp w9, #0 csel w8, w8, w9, lt asr w8, w8, #1 stur w8, [x29, #-16] ldur w9, [x29, #-8] mov w8, #1 add w8, w9, w8 stur w8, [x29, #-8] b .L.long_func.460 .L.long_func.466: ldur w10, [x29, #-4] ldur w8, [x29, #-8] adrp x9, SHIFT_TABLE add x9, x9, :lo12:SHIFT_TABLE sxtw x8, w8 lsl x8, x8, #2 add x8, x9, x8 ldr w8, [x8] add w8, w10, w8 stur w8, [x29, #-4] b .L.long_func.467 .L.long_func.467: b .L.long_func.465 .L.long_func.468: ldur w10, [x29, #-4] ldur w8, [x29, #-8] adrp x9, SHIFT_TABLE add x9, x9, :lo12:SHIFT_TABLE sxtw x8, w8 lsl x8, x8, #2 add x8, x9, x8 ldr w8, [x8] add w8, w10, w8 stur w8, [x29, #-4] b .L.long_func.469 .L.long_func.469: b .L.long_func.465 .L.long_func.470: ldur w9, [x29, #-8] mov w8, #16 cmp w9, w8 b.lt .L.long_func.471 b .L.long_func.472 .L.long_func.471: ldur w10, [x29, #-12] mov w8, #2 add w8, w10, #1 cmp w10, #0 csel w8, w8, w10, lt asr w9, w8, #1 mov w8, #2 msub w9, w9, w8, w10 mov w8, #0 cmp w9, w8 b.ne .L.long_func.475 b .L.long_func.474 .L.long_func.472: ldur w8, [x29, #-4] stur w8, [x29, #-256] b .L.long_func.476 .L.long_func.473: ldur w10, [x29, #-4] ldur w8, [x29, #-8] adrp x9, SHIFT_TABLE add x9, x9, :lo12:SHIFT_TABLE sxtw x8, w8 lsl x8, x8, #2 add x8, x9, x8 ldr w8, [x8] add w8, w10, w8 stur w8, [x29, #-4] b .L.long_func.474 .L.long_func.474: ldur w9, [x29, #-12] mov w8, #2 add w8, w9, #1 cmp w9, #0 csel w8, w8, w9, lt asr w8, w8, #1 stur w8, [x29, #-12] ldur w9, [x29, #-16] add w8, w9, #1 cmp w9, #0 csel w8, w8, w9, lt asr w8, w8, #1 stur w8, [x29, #-16] ldur w9, [x29, #-8] mov w8, #1 add w8, w9, w8 stur w8, [x29, #-8] b .L.long_func.470 .L.long_func.475: ldur w10, [x29, #-16] mov w8, #2 add w8, w10, #1 cmp w10, #0 csel w8, w8, w10, lt asr w9, w8, #1 mov w8, #2 msub w9, w9, w8, w10 mov w8, #0 cmp w9, w8 b.ne .L.long_func.473 b .L.long_func.474 .L.long_func.476: mov w8, #0 stur w8, [x29, #-4] stur w8, [x29, #-8] ldur w10, [x29, #-256] adrp x9, SHIFT_TABLE add x9, x9, :lo12:SHIFT_TABLE mov x8, #4 add x8, x9, x8 ldr w8, [x8] mul w8, w10, w8 stur w8, [x29, #-12] mov w8, #65535 stur w8, [x29, #-16] b .L.long_func.478 .L.long_func.477: ldur w8, [x29, #-4] stur w8, [x29, #-256] mov x13, x29 sub x13, x13, #260 ldr w8, [x13] stur w8, [x29, #-252] b .L.long_func.457 .L.long_func.478: ldur w9, [x29, #-8] mov w8, #16 cmp w9, w8 b.lt .L.long_func.479 b .L.long_func.480 .L.long_func.479: ldur w10, [x29, #-12] mov w8, #2 add w8, w10, #1 cmp w10, #0 csel w8, w8, w10, lt asr w9, w8, #1 mov w8, #2 msub w9, w9, w8, w10 mov w8, #0 cmp w9, w8 b.ne .L.long_func.483 b .L.long_func.482 .L.long_func.480: b .L.long_func.477 .L.long_func.481: ldur w10, [x29, #-4] ldur w8, [x29, #-8] adrp x9, SHIFT_TABLE add x9, x9, :lo12:SHIFT_TABLE sxtw x8, w8 lsl x8, x8, #2 add x8, x9, x8 ldr w8, [x8] add w8, w10, w8 stur w8, [x29, #-4] b .L.long_func.482 .L.long_func.482: ldur w9, [x29, #-12] mov w8, #2 add w8, w9, #1 cmp w9, #0 csel w8, w8, w9, lt asr w8, w8, #1 stur w8, [x29, #-12] ldur w9, [x29, #-16] add w8, w9, #1 cmp w9, #0 csel w8, w8, w9, lt asr w8, w8, #1 stur w8, [x29, #-16] ldur w9, [x29, #-8] mov w8, #1 add w8, w9, w8 stur w8, [x29, #-8] b .L.long_func.478 .L.long_func.483: ldur w10, [x29, #-16] mov w8, #2 add w8, w10, #1 cmp w10, #0 csel w8, w8, w10, lt asr w9, w8, #1 mov w8, #2 msub w9, w9, w8, w10 mov w8, #0 cmp w9, w8 b.ne .L.long_func.481 b .L.long_func.482 .L.long_func.484: mov x13, x29 sub x13, x13, #268 ldr w9, [x13] mov w8, #0 cmp w9, w8 b.ne .L.long_func.485 b .L.long_func.486 .L.long_func.485: mov w8, #0 stur w8, [x29, #-4] stur w8, [x29, #-8] mov x13, x29 sub x13, x13, #264 ldr w8, [x13] stur w8, [x29, #-12] mov x13, x29 sub x13, x13, #268 ldr w8, [x13] stur w8, [x29, #-16] b .L.long_func.487 .L.long_func.486: mov x13, x29 sub x13, x13, #264 ldr w8, [x13] stur w8, [x29, #-4] stur w8, [x29, #-240] ldur w8, [x29, #-244] stur w8, [x29, #-12] mov w8, #1 stur w8, [x29, #-16] ldur w9, [x29, #-16] mov w8, #15 cmp w9, w8 b.ge .L.long_func.511 b .L.long_func.512 .L.long_func.487: ldur w9, [x29, #-8] mov w8, #16 cmp w9, w8 b.lt .L.long_func.488 b .L.long_func.489 .L.long_func.488: ldur w10, [x29, #-12] mov w8, #2 add w8, w10, #1 cmp w10, #0 csel w8, w8, w10, lt asr w9, w8, #1 mov w8, #2 msub w9, w9, w8, w10 mov w8, #0 cmp w9, w8 b.ne .L.long_func.490 b .L.long_func.491 .L.long_func.489: ldur w8, [x29, #-4] mov x13, x29 sub x13, x13, #272 str w8, [x13] mov w8, #0 stur w8, [x29, #-4] stur w8, [x29, #-8] mov x13, x29 sub x13, x13, #264 ldr w8, [x13] stur w8, [x29, #-12] mov x13, x29 sub x13, x13, #268 ldr w8, [x13] stur w8, [x29, #-16] b .L.long_func.497 .L.long_func.490: ldur w10, [x29, #-16] mov w8, #2 add w8, w10, #1 cmp w10, #0 csel w8, w8, w10, lt asr w9, w8, #1 mov w8, #2 msub w9, w9, w8, w10 mov w8, #0 cmp w9, w8 b.eq .L.long_func.493 b .L.long_func.494 .L.long_func.491: ldur w10, [x29, #-16] mov w8, #2 add w8, w10, #1 cmp w10, #0 csel w8, w8, w10, lt asr w8, w8, #1 mov w9, #2 msub w9, w8, w9, w10 mov w8, #0 cmp w9, w8 b.ne .L.long_func.495 b .L.long_func.496 .L.long_func.492: ldur w8, [x29, #-12] mov w9, #2 add w9, w8, #1 cmp w8, #0 csel w8, w9, w8, lt asr w8, w8, #1 stur w8, [x29, #-12] ldur w8, [x29, #-16] add w9, w8, #1 cmp w8, #0 csel w8, w9, w8, lt asr w8, w8, #1 stur w8, [x29, #-16] ldur w8, [x29, #-8] mov w9, #1 add w8, w8, w9 stur w8, [x29, #-8] b .L.long_func.487 .L.long_func.493: ldur w8, [x29, #-4] ldur w9, [x29, #-8] adrp x10, SHIFT_TABLE add x10, x10, :lo12:SHIFT_TABLE sxtw x9, w9 lsl x9, x9, #2 add x9, x10, x9 ldr w9, [x9] add w8, w8, w9 stur w8, [x29, #-4] b .L.long_func.494 .L.long_func.494: b .L.long_func.492 .L.long_func.495: ldur w8, [x29, #-4] ldur w9, [x29, #-8] adrp x10, SHIFT_TABLE add x10, x10, :lo12:SHIFT_TABLE sxtw x9, w9 lsl x9, x9, #2 add x9, x10, x9 ldr w9, [x9] add w8, w8, w9 stur w8, [x29, #-4] b .L.long_func.496 .L.long_func.496: b .L.long_func.492 .L.long_func.497: ldur w8, [x29, #-8] mov w9, #16 cmp w8, w9 b.lt .L.long_func.498 b .L.long_func.499 .L.long_func.498: ldur w8, [x29, #-12] mov w9, #2 add w9, w8, #1 cmp w8, #0 csel w9, w9, w8, lt asr w9, w9, #1 mov w10, #2 msub w8, w9, w10, w8 mov w9, #0 cmp w8, w9 b.ne .L.long_func.502 b .L.long_func.501 .L.long_func.499: ldur w8, [x29, #-4] mov x13, x29 sub x13, x13, #268 str w8, [x13] b .L.long_func.503 .L.long_func.500: ldur w8, [x29, #-4] ldur w9, [x29, #-8] adrp x10, SHIFT_TABLE add x10, x10, :lo12:SHIFT_TABLE sxtw x9, w9 lsl x9, x9, #2 add x9, x10, x9 ldr w9, [x9] add w8, w8, w9 stur w8, [x29, #-4] b .L.long_func.501 .L.long_func.501: ldur w8, [x29, #-12] mov w9, #2 add w9, w8, #1 cmp w8, #0 csel w8, w9, w8, lt asr w8, w8, #1 stur w8, [x29, #-12] ldur w8, [x29, #-16] add w9, w8, #1 cmp w8, #0 csel w8, w9, w8, lt asr w8, w8, #1 stur w8, [x29, #-16] ldur w8, [x29, #-8] mov w9, #1 add w8, w8, w9 stur w8, [x29, #-8] b .L.long_func.497 .L.long_func.502: ldur w8, [x29, #-16] mov w9, #2 add w9, w8, #1 cmp w8, #0 csel w9, w9, w8, lt asr w9, w9, #1 mov w10, #2 msub w8, w9, w10, w8 mov w9, #0 cmp w8, w9 b.ne .L.long_func.500 b .L.long_func.501 .L.long_func.503: mov w8, #0 stur w8, [x29, #-4] stur w8, [x29, #-8] mov x13, x29 sub x13, x13, #268 ldr w8, [x13] adrp x9, SHIFT_TABLE add x9, x9, :lo12:SHIFT_TABLE mov x10, #4 add x9, x9, x10 ldr w9, [x9] mul w8, w8, w9 stur w8, [x29, #-12] mov w8, #65535 stur w8, [x29, #-16] b .L.long_func.505 .L.long_func.504: ldur w8, [x29, #-4] mov x13, x29 sub x13, x13, #268 str w8, [x13] mov x13, x29 sub x13, x13, #272 ldr w8, [x13] mov x13, x29 sub x13, x13, #264 str w8, [x13] b .L.long_func.484 .L.long_func.505: ldur w8, [x29, #-8] mov w9, #16 cmp w8, w9 b.lt .L.long_func.506 b .L.long_func.507 .L.long_func.506: ldur w8, [x29, #-12] mov w9, #2 add w9, w8, #1 cmp w8, #0 csel w9, w9, w8, lt asr w9, w9, #1 mov w10, #2 msub w8, w9, w10, w8 mov w9, #0 cmp w8, w9 b.ne .L.long_func.510 b .L.long_func.509 .L.long_func.507: b .L.long_func.504 .L.long_func.508: ldur w8, [x29, #-4] ldur w9, [x29, #-8] adrp x10, SHIFT_TABLE add x10, x10, :lo12:SHIFT_TABLE sxtw x9, w9 lsl x9, x9, #2 add x9, x10, x9 ldr w9, [x9] add w8, w8, w9 stur w8, [x29, #-4] b .L.long_func.509 .L.long_func.509: ldur w8, [x29, #-12] mov w9, #2 add w9, w8, #1 cmp w8, #0 csel w8, w9, w8, lt asr w8, w8, #1 stur w8, [x29, #-12] ldur w8, [x29, #-16] add w9, w8, #1 cmp w8, #0 csel w8, w9, w8, lt asr w8, w8, #1 stur w8, [x29, #-16] ldur w8, [x29, #-8] mov w9, #1 add w8, w8, w9 stur w8, [x29, #-8] b .L.long_func.505 .L.long_func.510: ldur w8, [x29, #-16] mov w9, #2 add w9, w8, #1 cmp w8, #0 csel w9, w9, w8, lt asr w9, w9, #1 mov w10, #2 msub w8, w9, w10, w8 mov w9, #0 cmp w8, w9 b.ne .L.long_func.508 b .L.long_func.509 .L.long_func.511: ldur w8, [x29, #-12] mov w9, #0 cmp w8, w9 b.lt .L.long_func.514 b .L.long_func.515 .L.long_func.512: ldur w8, [x29, #-16] mov w9, #0 cmp w8, w9 b.gt .L.long_func.517 b .L.long_func.518 .L.long_func.513: ldur w8, [x29, #-4] stur w8, [x29, #-244] b .L.long_func.446 .L.long_func.514: mov w8, #65535 stur w8, [x29, #-4] b .L.long_func.516 .L.long_func.515: mov w8, #0 stur w8, [x29, #-4] b .L.long_func.516 .L.long_func.516: b .L.long_func.513 .L.long_func.517: ldur w8, [x29, #-12] mov w9, #32767 cmp w8, w9 b.gt .L.long_func.520 b .L.long_func.521 .L.long_func.518: ldur w8, [x29, #-12] stur w8, [x29, #-4] b .L.long_func.519 .L.long_func.519: b .L.long_func.513 .L.long_func.520: ldur w8, [x29, #-12] ldur w9, [x29, #-16] adrp x11, SHIFT_TABLE add x11, x11, :lo12:SHIFT_TABLE sxtw x9, w9 lsl x9, x9, #2 add x9, x11, x9 ldr w9, [x9] sdiv w8, w8, w9 stur w8, [x29, #-12] movz w9, #0 movk w9, #1, lsl #16 add w8, w8, w9 ldur w9, [x29, #-16] mov w10, #15 sub w9, w10, w9 mov w10, #1 add w9, w9, w10 sxtw x9, w9 lsl x9, x9, #2 add x9, x11, x9 ldr w9, [x9] sub w8, w8, w9 stur w8, [x29, #-4] b .L.long_func.522 .L.long_func.521: ldur w8, [x29, #-12] ldur w9, [x29, #-16] adrp x10, SHIFT_TABLE add x10, x10, :lo12:SHIFT_TABLE sxtw x9, w9 lsl x9, x9, #2 add x9, x10, x9 ldr w9, [x9] sdiv w8, w8, w9 stur w8, [x29, #-4] b .L.long_func.522 .L.long_func.522: b .L.long_func.519 .L.long_func.523: ldur w8, [x29, #-12] mov w9, #0 cmp w8, w9 b.lt .L.long_func.526 b .L.long_func.527 .L.long_func.524: ldur w8, [x29, #-16] mov w9, #0 cmp w8, w9 b.gt .L.long_func.529 b .L.long_func.530 .L.long_func.525: ldur w8, [x29, #-4] stur w8, [x29, #-196] b .L.long_func.358 .L.long_func.526: mov w8, #65535 stur w8, [x29, #-4] b .L.long_func.528 .L.long_func.527: mov w8, #0 stur w8, [x29, #-4] b .L.long_func.528 .L.long_func.528: b .L.long_func.525 .L.long_func.529: ldur w8, [x29, #-12] mov w9, #32767 cmp w8, w9 b.gt .L.long_func.532 b .L.long_func.533 .L.long_func.530: ldur w8, [x29, #-12] stur w8, [x29, #-4] b .L.long_func.531 .L.long_func.531: b .L.long_func.525 .L.long_func.532: ldur w8, [x29, #-12] ldur w9, [x29, #-16] adrp x11, SHIFT_TABLE add x11, x11, :lo12:SHIFT_TABLE sxtw x9, w9 lsl x9, x9, #2 add x9, x11, x9 ldr w9, [x9] sdiv w8, w8, w9 stur w8, [x29, #-12] movz w9, #0 movk w9, #1, lsl #16 add w8, w8, w9 ldur w9, [x29, #-16] mov w10, #15 sub w9, w10, w9 mov w10, #1 add w9, w9, w10 sxtw x9, w9 lsl x9, x9, #2 add x9, x11, x9 ldr w9, [x9] sub w8, w8, w9 stur w8, [x29, #-4] b .L.long_func.534 .L.long_func.533: ldur w8, [x29, #-12] ldur w9, [x29, #-16] adrp x10, SHIFT_TABLE add x10, x10, :lo12:SHIFT_TABLE sxtw x9, w9 lsl x9, x9, #2 add x9, x10, x9 ldr w9, [x9] sdiv w8, w8, w9 stur w8, [x29, #-4] b .L.long_func.534 .L.long_func.534: b .L.long_func.531 .L.long_func.535: ldur w8, [x29, #-20] mov w9, #16 cmp w8, w9 b.lt .L.long_func.536 b .L.long_func.537 .L.long_func.536: mov w8, #2 mov x13, x29 sub x13, x13, #276 str w8, [x13] ldur w8, [x29, #-20] mov x13, x29 sub x13, x13, #280 str w8, [x13] mov w8, #1 mov x13, x29 sub x13, x13, #284 str w8, [x13] b .L.long_func.538 .L.long_func.537: mov w8, #0 mov w0, w8 add sp, sp, #384 ldp x29, x30, [sp], #16 ret .L.long_func.538: mov x13, x29 sub x13, x13, #280 ldr w8, [x13] mov w9, #0 cmp w8, w9 b.gt .L.long_func.539 b .L.long_func.540 .L.long_func.539: mov w8, #0 stur w8, [x29, #-4] stur w8, [x29, #-8] mov x13, x29 sub x13, x13, #280 ldr w8, [x13] stur w8, [x29, #-12] mov w8, #1 stur w8, [x29, #-16] b .L.long_func.541 .L.long_func.540: mov x13, x29 sub x13, x13, #284 ldr w8, [x13] stur w8, [x29, #-4] ldur w8, [x29, #-20] adrp x9, SHIFT_TABLE add x9, x9, :lo12:SHIFT_TABLE sxtw x8, w8 lsl x8, x8, #2 add x8, x9, x8 ldr w8, [x8] ldur w9, [x29, #-4] cmp w8, w9 b.ne .L.long_func.715 b .L.long_func.716 .L.long_func.541: ldur w8, [x29, #-8] mov w9, #16 cmp w8, w9 b.lt .L.long_func.542 b .L.long_func.543 .L.long_func.542: ldur w8, [x29, #-12] mov w9, #2 add w9, w8, #1 cmp w8, #0 csel w9, w9, w8, lt asr w9, w9, #1 mov w10, #2 msub w8, w9, w10, w8 mov w9, #0 cmp w8, w9 b.ne .L.long_func.546 b .L.long_func.545 .L.long_func.543: ldur w8, [x29, #-4] mov w9, #0 cmp w8, w9 b.ne .L.long_func.547 b .L.long_func.548 .L.long_func.544: ldur w8, [x29, #-4] ldur w9, [x29, #-8] adrp x10, SHIFT_TABLE add x10, x10, :lo12:SHIFT_TABLE sxtw x9, w9 lsl x9, x9, #2 add x9, x10, x9 ldr w9, [x9] add w8, w8, w9 stur w8, [x29, #-4] b .L.long_func.545 .L.long_func.545: ldur w8, [x29, #-12] mov w9, #2 add w9, w8, #1 cmp w8, #0 csel w8, w9, w8, lt asr w8, w8, #1 stur w8, [x29, #-12] ldur w8, [x29, #-16] add w9, w8, #1 cmp w8, #0 csel w8, w9, w8, lt asr w8, w8, #1 stur w8, [x29, #-16] ldur w8, [x29, #-8] mov w9, #1 add w8, w8, w9 stur w8, [x29, #-8] b .L.long_func.541 .L.long_func.546: ldur w8, [x29, #-16] mov w9, #2 add w9, w8, #1 cmp w8, #0 csel w9, w9, w8, lt asr w9, w9, #1 mov w10, #2 msub w8, w9, w10, w8 mov w9, #0 cmp w8, w9 b.ne .L.long_func.544 b .L.long_func.545 .L.long_func.547: mov x13, x29 sub x13, x13, #284 ldr w8, [x13] mov x13, x29 sub x13, x13, #288 str w8, [x13] mov x13, x29 sub x13, x13, #276 ldr w8, [x13] mov x13, x29 sub x13, x13, #292 str w8, [x13] mov w8, #0 mov x13, x29 sub x13, x13, #296 str w8, [x13] b .L.long_func.549 .L.long_func.548: mov x13, x29 sub x13, x13, #276 ldr w8, [x13] mov x13, x29 sub x13, x13, #324 str w8, [x13] mov x13, x29 sub x13, x13, #276 ldr w8, [x13] mov x13, x29 sub x13, x13, #328 str w8, [x13] mov w8, #0 mov x13, x29 sub x13, x13, #332 str w8, [x13] b .L.long_func.626 .L.long_func.549: mov x13, x29 sub x13, x13, #292 ldr w8, [x13] mov w9, #0 cmp w8, w9 b.ne .L.long_func.550 b .L.long_func.551 .L.long_func.550: mov w8, #0 stur w8, [x29, #-4] stur w8, [x29, #-8] mov x13, x29 sub x13, x13, #292 ldr w8, [x13] stur w8, [x29, #-12] mov w8, #1 stur w8, [x29, #-16] b .L.long_func.552 .L.long_func.551: mov x13, x29 sub x13, x13, #296 ldr w8, [x13] stur w8, [x29, #-4] mov x13, x29 sub x13, x13, #284 str w8, [x13] b .L.long_func.548 .L.long_func.552: ldur w8, [x29, #-8] mov w9, #16 cmp w8, w9 b.lt .L.long_func.553 b .L.long_func.554 .L.long_func.553: ldur w8, [x29, #-12] mov w9, #2 add w9, w8, #1 cmp w8, #0 csel w9, w9, w8, lt asr w9, w9, #1 mov w10, #2 msub w8, w9, w10, w8 mov w9, #0 cmp w8, w9 b.ne .L.long_func.557 b .L.long_func.556 .L.long_func.554: ldur w8, [x29, #-4] mov w9, #0 cmp w8, w9 b.ne .L.long_func.558 b .L.long_func.559 .L.long_func.555: ldur w8, [x29, #-4] ldur w9, [x29, #-8] adrp x10, SHIFT_TABLE add x10, x10, :lo12:SHIFT_TABLE sxtw x9, w9 lsl x9, x9, #2 add x9, x10, x9 ldr w9, [x9] add w8, w8, w9 stur w8, [x29, #-4] b .L.long_func.556 .L.long_func.556: ldur w8, [x29, #-12] mov w9, #2 add w9, w8, #1 cmp w8, #0 csel w8, w9, w8, lt asr w8, w8, #1 stur w8, [x29, #-12] ldur w8, [x29, #-16] add w9, w8, #1 cmp w8, #0 csel w8, w9, w8, lt asr w8, w8, #1 stur w8, [x29, #-16] ldur w8, [x29, #-8] mov w9, #1 add w8, w8, w9 stur w8, [x29, #-8] b .L.long_func.552 .L.long_func.557: ldur w8, [x29, #-16] mov w9, #2 add w9, w8, #1 cmp w8, #0 csel w9, w9, w8, lt asr w9, w9, #1 mov w10, #2 msub w8, w9, w10, w8 mov w9, #0 cmp w8, w9 b.ne .L.long_func.555 b .L.long_func.556 .L.long_func.558: mov x13, x29 sub x13, x13, #296 ldr w8, [x13] mov x13, x29 sub x13, x13, #300 str w8, [x13] mov x13, x29 sub x13, x13, #288 ldr w8, [x13] mov x13, x29 sub x13, x13, #304 str w8, [x13] mov w8, #0 mov x13, x29 sub x13, x13, #308 str w8, [x13] b .L.long_func.560 .L.long_func.559: mov x13, x29 sub x13, x13, #288 ldr w8, [x13] mov x13, x29 sub x13, x13, #312 str w8, [x13] mov x13, x29 sub x13, x13, #288 ldr w8, [x13] mov x13, x29 sub x13, x13, #316 str w8, [x13] mov w8, #0 mov x13, x29 sub x13, x13, #320 str w8, [x13] b .L.long_func.587 .L.long_func.560: mov x13, x29 sub x13, x13, #304 ldr w8, [x13] mov w9, #0 cmp w8, w9 b.ne .L.long_func.561 b .L.long_func.562 .L.long_func.561: mov w8, #0 stur w8, [x29, #-4] stur w8, [x29, #-8] mov x13, x29 sub x13, x13, #300 ldr w8, [x13] stur w8, [x29, #-12] mov x13, x29 sub x13, x13, #304 ldr w8, [x13] stur w8, [x29, #-16] b .L.long_func.563 .L.long_func.562: mov x13, x29 sub x13, x13, #300 ldr w8, [x13] stur w8, [x29, #-4] mov x13, x29 sub x13, x13, #296 str w8, [x13] b .L.long_func.559 .L.long_func.563: ldur w8, [x29, #-8] mov w9, #16 cmp w8, w9 b.lt .L.long_func.564 b .L.long_func.565 .L.long_func.564: ldur w8, [x29, #-12] mov w9, #2 add w9, w8, #1 cmp w8, #0 csel w9, w9, w8, lt asr w9, w9, #1 mov w10, #2 msub w8, w9, w10, w8 mov w9, #0 cmp w8, w9 b.ne .L.long_func.566 b .L.long_func.567 .L.long_func.565: ldur w8, [x29, #-4] mov x13, x29 sub x13, x13, #308 str w8, [x13] mov w8, #0 stur w8, [x29, #-4] stur w8, [x29, #-8] mov x13, x29 sub x13, x13, #300 ldr w8, [x13] stur w8, [x29, #-12] mov x13, x29 sub x13, x13, #304 ldr w8, [x13] stur w8, [x29, #-16] b .L.long_func.573 .L.long_func.566: ldur w8, [x29, #-16] mov w9, #2 add w9, w8, #1 cmp w8, #0 csel w9, w9, w8, lt asr w9, w9, #1 mov w10, #2 msub w8, w9, w10, w8 mov w9, #0 cmp w8, w9 b.eq .L.long_func.569 b .L.long_func.570 .L.long_func.567: ldur w8, [x29, #-16] mov w9, #2 add w9, w8, #1 cmp w8, #0 csel w9, w9, w8, lt asr w9, w9, #1 mov w10, #2 msub w8, w9, w10, w8 mov w9, #0 cmp w8, w9 b.ne .L.long_func.571 b .L.long_func.572 .L.long_func.568: ldur w8, [x29, #-12] mov w9, #2 add w9, w8, #1 cmp w8, #0 csel w8, w9, w8, lt asr w8, w8, #1 stur w8, [x29, #-12] ldur w8, [x29, #-16] add w9, w8, #1 cmp w8, #0 csel w8, w9, w8, lt asr w8, w8, #1 stur w8, [x29, #-16] ldur w8, [x29, #-8] mov w9, #1 add w8, w8, w9 stur w8, [x29, #-8] b .L.long_func.563 .L.long_func.569: ldur w8, [x29, #-4] ldur w9, [x29, #-8] adrp x10, SHIFT_TABLE add x10, x10, :lo12:SHIFT_TABLE sxtw x9, w9 lsl x9, x9, #2 add x9, x10, x9 ldr w9, [x9] add w8, w8, w9 stur w8, [x29, #-4] b .L.long_func.570 .L.long_func.570: b .L.long_func.568 .L.long_func.571: ldur w8, [x29, #-4] ldur w9, [x29, #-8] adrp x10, SHIFT_TABLE add x10, x10, :lo12:SHIFT_TABLE sxtw x9, w9 lsl x9, x9, #2 add x9, x10, x9 ldr w9, [x9] add w8, w8, w9 stur w8, [x29, #-4] b .L.long_func.572 .L.long_func.572: b .L.long_func.568 .L.long_func.573: ldur w8, [x29, #-8] mov w9, #16 cmp w8, w9 b.lt .L.long_func.574 b .L.long_func.575 .L.long_func.574: ldur w8, [x29, #-12] mov w9, #2 add w9, w8, #1 cmp w8, #0 csel w9, w9, w8, lt asr w9, w9, #1 mov w10, #2 msub w8, w9, w10, w8 mov w9, #0 cmp w8, w9 b.ne .L.long_func.578 b .L.long_func.577 .L.long_func.575: ldur w8, [x29, #-4] mov x13, x29 sub x13, x13, #304 str w8, [x13] b .L.long_func.579 .L.long_func.576: ldur w8, [x29, #-4] ldur w9, [x29, #-8] adrp x10, SHIFT_TABLE add x10, x10, :lo12:SHIFT_TABLE sxtw x9, w9 lsl x9, x9, #2 add x9, x10, x9 ldr w9, [x9] add w8, w8, w9 stur w8, [x29, #-4] b .L.long_func.577 .L.long_func.577: ldur w8, [x29, #-12] mov w9, #2 add w9, w8, #1 cmp w8, #0 csel w8, w9, w8, lt asr w8, w8, #1 stur w8, [x29, #-12] ldur w8, [x29, #-16] add w9, w8, #1 cmp w8, #0 csel w8, w9, w8, lt asr w8, w8, #1 stur w8, [x29, #-16] ldur w8, [x29, #-8] mov w9, #1 add w8, w8, w9 stur w8, [x29, #-8] b .L.long_func.573 .L.long_func.578: ldur w8, [x29, #-16] mov w9, #2 add w9, w8, #1 cmp w8, #0 csel w9, w9, w8, lt asr w9, w9, #1 mov w10, #2 msub w8, w9, w10, w8 mov w9, #0 cmp w8, w9 b.ne .L.long_func.576 b .L.long_func.577 .L.long_func.579: mov w8, #0 stur w8, [x29, #-4] stur w8, [x29, #-8] mov x13, x29 sub x13, x13, #304 ldr w8, [x13] adrp x9, SHIFT_TABLE add x9, x9, :lo12:SHIFT_TABLE mov x10, #4 add x9, x9, x10 ldr w9, [x9] mul w8, w8, w9 stur w8, [x29, #-12] mov w8, #65535 stur w8, [x29, #-16] b .L.long_func.581 .L.long_func.580: ldur w8, [x29, #-4] mov x13, x29 sub x13, x13, #304 str w8, [x13] mov x13, x29 sub x13, x13, #308 ldr w8, [x13] mov x13, x29 sub x13, x13, #300 str w8, [x13] b .L.long_func.560 .L.long_func.581: ldur w8, [x29, #-8] mov w9, #16 cmp w8, w9 b.lt .L.long_func.582 b .L.long_func.583 .L.long_func.582: ldur w8, [x29, #-12] mov w9, #2 add w9, w8, #1 cmp w8, #0 csel w9, w9, w8, lt asr w9, w9, #1 mov w10, #2 msub w8, w9, w10, w8 mov w9, #0 cmp w8, w9 b.ne .L.long_func.586 b .L.long_func.585 .L.long_func.583: b .L.long_func.580 .L.long_func.584: ldur w8, [x29, #-4] ldur w9, [x29, #-8] adrp x10, SHIFT_TABLE add x10, x10, :lo12:SHIFT_TABLE sxtw x9, w9 lsl x9, x9, #2 add x9, x10, x9 ldr w9, [x9] add w8, w8, w9 stur w8, [x29, #-4] b .L.long_func.585 .L.long_func.585: ldur w8, [x29, #-12] mov w9, #2 add w9, w8, #1 cmp w8, #0 csel w8, w9, w8, lt asr w8, w8, #1 stur w8, [x29, #-12] ldur w8, [x29, #-16] add w9, w8, #1 cmp w8, #0 csel w8, w9, w8, lt asr w8, w8, #1 stur w8, [x29, #-16] ldur w8, [x29, #-8] mov w9, #1 add w8, w8, w9 stur w8, [x29, #-8] b .L.long_func.581 .L.long_func.586: ldur w8, [x29, #-16] mov w9, #2 add w9, w8, #1 cmp w8, #0 csel w9, w9, w8, lt asr w9, w9, #1 mov w10, #2 msub w8, w9, w10, w8 mov w9, #0 cmp w8, w9 b.ne .L.long_func.584 b .L.long_func.585 .L.long_func.587: mov x13, x29 sub x13, x13, #316 ldr w8, [x13] mov w9, #0 cmp w8, w9 b.ne .L.long_func.588 b .L.long_func.589 .L.long_func.588: mov w8, #0 stur w8, [x29, #-4] stur w8, [x29, #-8] mov x13, x29 sub x13, x13, #312 ldr w8, [x13] stur w8, [x29, #-12] mov x13, x29 sub x13, x13, #316 ldr w8, [x13] stur w8, [x29, #-16] b .L.long_func.590 .L.long_func.589: mov x13, x29 sub x13, x13, #312 ldr w8, [x13] stur w8, [x29, #-4] mov x13, x29 sub x13, x13, #288 str w8, [x13] mov x13, x29 sub x13, x13, #292 ldr w8, [x13] stur w8, [x29, #-12] mov w8, #1 stur w8, [x29, #-16] mov w9, #15 cmp w8, w9 b.ge .L.long_func.614 b .L.long_func.615 .L.long_func.590: ldur w8, [x29, #-8] mov w9, #16 cmp w8, w9 b.lt .L.long_func.591 b .L.long_func.592 .L.long_func.591: ldur w8, [x29, #-12] mov w9, #2 add w9, w8, #1 cmp w8, #0 csel w9, w9, w8, lt asr w9, w9, #1 mov w10, #2 msub w8, w9, w10, w8 mov w9, #0 cmp w8, w9 b.ne .L.long_func.593 b .L.long_func.594 .L.long_func.592: ldur w8, [x29, #-4] mov x13, x29 sub x13, x13, #320 str w8, [x13] mov w8, #0 stur w8, [x29, #-4] stur w8, [x29, #-8] mov x13, x29 sub x13, x13, #312 ldr w8, [x13] stur w8, [x29, #-12] mov x13, x29 sub x13, x13, #316 ldr w8, [x13] stur w8, [x29, #-16] b .L.long_func.600 .L.long_func.593: ldur w8, [x29, #-16] mov w9, #2 add w9, w8, #1 cmp w8, #0 csel w9, w9, w8, lt asr w9, w9, #1 mov w10, #2 msub w8, w9, w10, w8 mov w9, #0 cmp w8, w9 b.eq .L.long_func.596 b .L.long_func.597 .L.long_func.594: ldur w8, [x29, #-16] mov w9, #2 add w9, w8, #1 cmp w8, #0 csel w9, w9, w8, lt asr w9, w9, #1 mov w10, #2 msub w8, w9, w10, w8 mov w9, #0 cmp w8, w9 b.ne .L.long_func.598 b .L.long_func.599 .L.long_func.595: ldur w8, [x29, #-12] mov w9, #2 add w9, w8, #1 cmp w8, #0 csel w8, w9, w8, lt asr w8, w8, #1 stur w8, [x29, #-12] ldur w8, [x29, #-16] add w9, w8, #1 cmp w8, #0 csel w8, w9, w8, lt asr w8, w8, #1 stur w8, [x29, #-16] ldur w8, [x29, #-8] mov w9, #1 add w8, w8, w9 stur w8, [x29, #-8] b .L.long_func.590 .L.long_func.596: ldur w8, [x29, #-4] ldur w9, [x29, #-8] adrp x10, SHIFT_TABLE add x10, x10, :lo12:SHIFT_TABLE sxtw x9, w9 lsl x9, x9, #2 add x9, x10, x9 ldr w9, [x9] add w8, w8, w9 stur w8, [x29, #-4] b .L.long_func.597 .L.long_func.597: b .L.long_func.595 .L.long_func.598: ldur w8, [x29, #-4] ldur w9, [x29, #-8] adrp x10, SHIFT_TABLE add x10, x10, :lo12:SHIFT_TABLE sxtw x9, w9 lsl x9, x9, #2 add x9, x10, x9 ldr w9, [x9] add w8, w8, w9 stur w8, [x29, #-4] b .L.long_func.599 .L.long_func.599: b .L.long_func.595 .L.long_func.600: ldur w8, [x29, #-8] mov w9, #16 cmp w8, w9 b.lt .L.long_func.601 b .L.long_func.602 .L.long_func.601: ldur w8, [x29, #-12] mov w9, #2 add w9, w8, #1 cmp w8, #0 csel w9, w9, w8, lt asr w9, w9, #1 mov w10, #2 msub w8, w9, w10, w8 mov w9, #0 cmp w8, w9 b.ne .L.long_func.605 b .L.long_func.604 .L.long_func.602: ldur w8, [x29, #-4] mov x13, x29 sub x13, x13, #316 str w8, [x13] b .L.long_func.606 .L.long_func.603: ldur w8, [x29, #-4] ldur w9, [x29, #-8] adrp x10, SHIFT_TABLE add x10, x10, :lo12:SHIFT_TABLE sxtw x9, w9 lsl x9, x9, #2 add x9, x10, x9 ldr w9, [x9] add w8, w8, w9 stur w8, [x29, #-4] b .L.long_func.604 .L.long_func.604: ldur w8, [x29, #-12] mov w9, #2 add w9, w8, #1 cmp w8, #0 csel w8, w9, w8, lt asr w8, w8, #1 stur w8, [x29, #-12] ldur w8, [x29, #-16] add w9, w8, #1 cmp w8, #0 csel w8, w9, w8, lt asr w8, w8, #1 stur w8, [x29, #-16] ldur w8, [x29, #-8] mov w9, #1 add w8, w8, w9 stur w8, [x29, #-8] b .L.long_func.600 .L.long_func.605: ldur w8, [x29, #-16] mov w9, #2 add w9, w8, #1 cmp w8, #0 csel w9, w9, w8, lt asr w10, w9, #1 mov w9, #2 msub w9, w10, w9, w8 mov w8, #0 cmp w9, w8 b.ne .L.long_func.603 b .L.long_func.604 .L.long_func.606: mov w8, #0 stur w8, [x29, #-4] stur w8, [x29, #-8] mov x13, x29 sub x13, x13, #316 ldr w10, [x13] adrp x9, SHIFT_TABLE add x9, x9, :lo12:SHIFT_TABLE mov x8, #4 add x8, x9, x8 ldr w8, [x8] mul w8, w10, w8 stur w8, [x29, #-12] mov w8, #65535 stur w8, [x29, #-16] b .L.long_func.608 .L.long_func.607: ldur w8, [x29, #-4] mov x13, x29 sub x13, x13, #316 str w8, [x13] mov x13, x29 sub x13, x13, #320 ldr w8, [x13] mov x13, x29 sub x13, x13, #312 str w8, [x13] b .L.long_func.587 .L.long_func.608: ldur w9, [x29, #-8] mov w8, #16 cmp w9, w8 b.lt .L.long_func.609 b .L.long_func.610 .L.long_func.609: ldur w10, [x29, #-12] mov w8, #2 add w8, w10, #1 cmp w10, #0 csel w8, w8, w10, lt asr w9, w8, #1 mov w8, #2 msub w9, w9, w8, w10 mov w8, #0 cmp w9, w8 b.ne .L.long_func.613 b .L.long_func.612 .L.long_func.610: b .L.long_func.607 .L.long_func.611: ldur w10, [x29, #-4] ldur w8, [x29, #-8] adrp x9, SHIFT_TABLE add x9, x9, :lo12:SHIFT_TABLE sxtw x8, w8 lsl x8, x8, #2 add x8, x9, x8 ldr w8, [x8] add w8, w10, w8 stur w8, [x29, #-4] b .L.long_func.612 .L.long_func.612: ldur w9, [x29, #-12] mov w8, #2 add w8, w9, #1 cmp w9, #0 csel w8, w8, w9, lt asr w8, w8, #1 stur w8, [x29, #-12] ldur w9, [x29, #-16] add w8, w9, #1 cmp w9, #0 csel w8, w8, w9, lt asr w8, w8, #1 stur w8, [x29, #-16] ldur w9, [x29, #-8] mov w8, #1 add w8, w9, w8 stur w8, [x29, #-8] b .L.long_func.608 .L.long_func.613: ldur w10, [x29, #-16] mov w8, #2 add w8, w10, #1 cmp w10, #0 csel w8, w8, w10, lt asr w9, w8, #1 mov w8, #2 msub w9, w9, w8, w10 mov w8, #0 cmp w9, w8 b.ne .L.long_func.611 b .L.long_func.612 .L.long_func.614: ldur w9, [x29, #-12] mov w8, #0 cmp w9, w8 b.lt .L.long_func.617 b .L.long_func.618 .L.long_func.615: ldur w9, [x29, #-16] mov w8, #0 cmp w9, w8 b.gt .L.long_func.620 b .L.long_func.621 .L.long_func.616: ldur w8, [x29, #-4] mov x13, x29 sub x13, x13, #292 str w8, [x13] b .L.long_func.549 .L.long_func.617: mov w8, #65535 stur w8, [x29, #-4] b .L.long_func.619 .L.long_func.618: mov w8, #0 stur w8, [x29, #-4] b .L.long_func.619 .L.long_func.619: b .L.long_func.616 .L.long_func.620: ldur w9, [x29, #-12] mov w8, #32767 cmp w9, w8 b.gt .L.long_func.623 b .L.long_func.624 .L.long_func.621: ldur w8, [x29, #-12] stur w8, [x29, #-4] b .L.long_func.622 .L.long_func.622: b .L.long_func.616 .L.long_func.623: ldur w9, [x29, #-12] ldur w8, [x29, #-16] adrp x11, SHIFT_TABLE add x11, x11, :lo12:SHIFT_TABLE sxtw x8, w8 lsl x8, x8, #2 add x8, x11, x8 ldr w8, [x8] sdiv w8, w9, w8 stur w8, [x29, #-12] ldur w9, [x29, #-12] movz w8, #0 movk w8, #1, lsl #16 add w10, w9, w8 ldur w9, [x29, #-16] mov w8, #15 sub w9, w8, w9 mov w8, #1 add w8, w9, w8 sxtw x8, w8 lsl x8, x8, #2 add x8, x11, x8 ldr w8, [x8] sub w8, w10, w8 stur w8, [x29, #-4] b .L.long_func.625 .L.long_func.624: ldur w10, [x29, #-12] ldur w8, [x29, #-16] adrp x9, SHIFT_TABLE add x9, x9, :lo12:SHIFT_TABLE sxtw x8, w8 lsl x8, x8, #2 add x8, x9, x8 ldr w8, [x8] sdiv w8, w10, w8 stur w8, [x29, #-4] b .L.long_func.625 .L.long_func.625: b .L.long_func.622 .L.long_func.626: mov x13, x29 sub x13, x13, #328 ldr w9, [x13] mov w8, #0 cmp w9, w8 b.ne .L.long_func.627 b .L.long_func.628 .L.long_func.627: mov w8, #0 stur w8, [x29, #-4] stur w8, [x29, #-8] mov x13, x29 sub x13, x13, #328 ldr w8, [x13] stur w8, [x29, #-12] mov w8, #1 stur w8, [x29, #-16] b .L.long_func.629 .L.long_func.628: mov x13, x29 sub x13, x13, #332 ldr w8, [x13] stur w8, [x29, #-4] mov x13, x29 sub x13, x13, #276 str w8, [x13] mov x13, x29 sub x13, x13, #280 ldr w8, [x13] stur w8, [x29, #-12] mov w8, #1 stur w8, [x29, #-16] ldur w9, [x29, #-16] mov w8, #15 cmp w9, w8 b.ge .L.long_func.703 b .L.long_func.704 .L.long_func.629: ldur w9, [x29, #-8] mov w8, #16 cmp w9, w8 b.lt .L.long_func.630 b .L.long_func.631 .L.long_func.630: ldur w10, [x29, #-12] mov w8, #2 add w8, w10, #1 cmp w10, #0 csel w8, w8, w10, lt asr w9, w8, #1 mov w8, #2 msub w9, w9, w8, w10 mov w8, #0 cmp w9, w8 b.ne .L.long_func.634 b .L.long_func.633 .L.long_func.631: ldur w9, [x29, #-4] mov w8, #0 cmp w9, w8 b.ne .L.long_func.635 b .L.long_func.636 .L.long_func.632: ldur w10, [x29, #-4] ldur w8, [x29, #-8] adrp x9, SHIFT_TABLE add x9, x9, :lo12:SHIFT_TABLE sxtw x8, w8 lsl x8, x8, #2 add x8, x9, x8 ldr w8, [x8] add w8, w10, w8 stur w8, [x29, #-4] b .L.long_func.633 .L.long_func.633: ldur w9, [x29, #-12] mov w8, #2 add w8, w9, #1 cmp w9, #0 csel w8, w8, w9, lt asr w8, w8, #1 stur w8, [x29, #-12] ldur w9, [x29, #-16] add w8, w9, #1 cmp w9, #0 csel w8, w8, w9, lt asr w8, w8, #1 stur w8, [x29, #-16] ldur w9, [x29, #-8] mov w8, #1 add w8, w9, w8 stur w8, [x29, #-8] b .L.long_func.629 .L.long_func.634: ldur w10, [x29, #-16] mov w8, #2 add w8, w10, #1 cmp w10, #0 csel w8, w8, w10, lt asr w9, w8, #1 mov w8, #2 msub w9, w9, w8, w10 mov w8, #0 cmp w9, w8 b.ne .L.long_func.632 b .L.long_func.633 .L.long_func.635: mov x13, x29 sub x13, x13, #332 ldr w8, [x13] mov x13, x29 sub x13, x13, #336 str w8, [x13] mov x13, x29 sub x13, x13, #324 ldr w8, [x13] mov x13, x29 sub x13, x13, #340 str w8, [x13] mov w8, #0 mov x13, x29 sub x13, x13, #344 str w8, [x13] b .L.long_func.637 .L.long_func.636: mov x13, x29 sub x13, x13, #324 ldr w8, [x13] mov x13, x29 sub x13, x13, #348 str w8, [x13] mov x13, x29 sub x13, x13, #324 ldr w8, [x13] mov x13, x29 sub x13, x13, #352 str w8, [x13] mov w8, #0 mov x13, x29 sub x13, x13, #356 str w8, [x13] b .L.long_func.664 .L.long_func.637: mov x13, x29 sub x13, x13, #340 ldr w9, [x13] mov w8, #0 cmp w9, w8 b.ne .L.long_func.638 b .L.long_func.639 .L.long_func.638: mov w8, #0 stur w8, [x29, #-4] stur w8, [x29, #-8] mov x13, x29 sub x13, x13, #336 ldr w8, [x13] stur w8, [x29, #-12] mov x13, x29 sub x13, x13, #340 ldr w8, [x13] stur w8, [x29, #-16] b .L.long_func.640 .L.long_func.639: mov x13, x29 sub x13, x13, #336 ldr w8, [x13] stur w8, [x29, #-4] mov x13, x29 sub x13, x13, #332 str w8, [x13] b .L.long_func.636 .L.long_func.640: ldur w9, [x29, #-8] mov w8, #16 cmp w9, w8 b.lt .L.long_func.641 b .L.long_func.642 .L.long_func.641: ldur w10, [x29, #-12] mov w8, #2 add w8, w10, #1 cmp w10, #0 csel w8, w8, w10, lt asr w9, w8, #1 mov w8, #2 msub w9, w9, w8, w10 mov w8, #0 cmp w9, w8 b.ne .L.long_func.643 b .L.long_func.644 .L.long_func.642: ldur w8, [x29, #-4] mov x13, x29 sub x13, x13, #344 str w8, [x13] mov w8, #0 stur w8, [x29, #-4] stur w8, [x29, #-8] mov x13, x29 sub x13, x13, #336 ldr w8, [x13] stur w8, [x29, #-12] mov x13, x29 sub x13, x13, #340 ldr w8, [x13] stur w8, [x29, #-16] b .L.long_func.650 .L.long_func.643: ldur w10, [x29, #-16] mov w8, #2 add w8, w10, #1 cmp w10, #0 csel w8, w8, w10, lt asr w9, w8, #1 mov w8, #2 msub w9, w9, w8, w10 mov w8, #0 cmp w9, w8 b.eq .L.long_func.646 b .L.long_func.647 .L.long_func.644: ldur w10, [x29, #-16] mov w8, #2 add w8, w10, #1 cmp w10, #0 csel w8, w8, w10, lt asr w9, w8, #1 mov w8, #2 msub w9, w9, w8, w10 mov w8, #0 cmp w9, w8 b.ne .L.long_func.648 b .L.long_func.649 .L.long_func.645: ldur w9, [x29, #-12] mov w8, #2 add w8, w9, #1 cmp w9, #0 csel w8, w8, w9, lt asr w8, w8, #1 stur w8, [x29, #-12] ldur w9, [x29, #-16] add w8, w9, #1 cmp w9, #0 csel w8, w8, w9, lt asr w8, w8, #1 stur w8, [x29, #-16] ldur w9, [x29, #-8] mov w8, #1 add w8, w9, w8 stur w8, [x29, #-8] b .L.long_func.640 .L.long_func.646: ldur w10, [x29, #-4] ldur w8, [x29, #-8] adrp x9, SHIFT_TABLE add x9, x9, :lo12:SHIFT_TABLE sxtw x8, w8 lsl x8, x8, #2 add x8, x9, x8 ldr w8, [x8] add w8, w10, w8 stur w8, [x29, #-4] b .L.long_func.647 .L.long_func.647: b .L.long_func.645 .L.long_func.648: ldur w10, [x29, #-4] ldur w8, [x29, #-8] adrp x9, SHIFT_TABLE add x9, x9, :lo12:SHIFT_TABLE sxtw x8, w8 lsl x8, x8, #2 add x8, x9, x8 ldr w8, [x8] add w8, w10, w8 stur w8, [x29, #-4] b .L.long_func.649 .L.long_func.649: b .L.long_func.645 .L.long_func.650: ldur w9, [x29, #-8] mov w8, #16 cmp w9, w8 b.lt .L.long_func.651 b .L.long_func.652 .L.long_func.651: ldur w10, [x29, #-12] mov w8, #2 add w8, w10, #1 cmp w10, #0 csel w8, w8, w10, lt asr w9, w8, #1 mov w8, #2 msub w9, w9, w8, w10 mov w8, #0 cmp w9, w8 b.ne .L.long_func.655 b .L.long_func.654 .L.long_func.652: ldur w8, [x29, #-4] mov x13, x29 sub x13, x13, #340 str w8, [x13] b .L.long_func.656 .L.long_func.653: ldur w10, [x29, #-4] ldur w8, [x29, #-8] adrp x9, SHIFT_TABLE add x9, x9, :lo12:SHIFT_TABLE sxtw x8, w8 lsl x8, x8, #2 add x8, x9, x8 ldr w8, [x8] add w8, w10, w8 stur w8, [x29, #-4] b .L.long_func.654 .L.long_func.654: ldur w9, [x29, #-12] mov w8, #2 add w8, w9, #1 cmp w9, #0 csel w8, w8, w9, lt asr w8, w8, #1 stur w8, [x29, #-12] ldur w9, [x29, #-16] add w8, w9, #1 cmp w9, #0 csel w8, w8, w9, lt asr w8, w8, #1 stur w8, [x29, #-16] ldur w9, [x29, #-8] mov w8, #1 add w8, w9, w8 stur w8, [x29, #-8] b .L.long_func.650 .L.long_func.655: ldur w10, [x29, #-16] mov w8, #2 add w8, w10, #1 cmp w10, #0 csel w8, w8, w10, lt asr w9, w8, #1 mov w8, #2 msub w9, w9, w8, w10 mov w8, #0 cmp w9, w8 b.ne .L.long_func.653 b .L.long_func.654 .L.long_func.656: mov w8, #0 stur w8, [x29, #-4] stur w8, [x29, #-8] mov x13, x29 sub x13, x13, #340 ldr w10, [x13] adrp x9, SHIFT_TABLE add x9, x9, :lo12:SHIFT_TABLE mov x8, #4 add x8, x9, x8 ldr w8, [x8] mul w8, w10, w8 stur w8, [x29, #-12] mov w8, #65535 stur w8, [x29, #-16] b .L.long_func.658 .L.long_func.657: ldur w8, [x29, #-4] mov x13, x29 sub x13, x13, #340 str w8, [x13] mov x13, x29 sub x13, x13, #344 ldr w8, [x13] mov x13, x29 sub x13, x13, #336 str w8, [x13] b .L.long_func.637 .L.long_func.658: ldur w9, [x29, #-8] mov w8, #16 cmp w9, w8 b.lt .L.long_func.659 b .L.long_func.660 .L.long_func.659: ldur w10, [x29, #-12] mov w8, #2 add w8, w10, #1 cmp w10, #0 csel w8, w8, w10, lt asr w9, w8, #1 mov w8, #2 msub w9, w9, w8, w10 mov w8, #0 cmp w9, w8 b.ne .L.long_func.663 b .L.long_func.662 .L.long_func.660: b .L.long_func.657 .L.long_func.661: ldur w10, [x29, #-4] ldur w8, [x29, #-8] adrp x9, SHIFT_TABLE add x9, x9, :lo12:SHIFT_TABLE sxtw x8, w8 lsl x8, x8, #2 add x8, x9, x8 ldr w8, [x8] add w8, w10, w8 stur w8, [x29, #-4] b .L.long_func.662 .L.long_func.662: ldur w9, [x29, #-12] mov w8, #2 add w8, w9, #1 cmp w9, #0 csel w8, w8, w9, lt asr w8, w8, #1 stur w8, [x29, #-12] ldur w8, [x29, #-16] add w9, w8, #1 cmp w8, #0 csel w8, w9, w8, lt asr w8, w8, #1 stur w8, [x29, #-16] ldur w8, [x29, #-8] mov w9, #1 add w8, w8, w9 stur w8, [x29, #-8] b .L.long_func.658 .L.long_func.663: ldur w8, [x29, #-16] mov w9, #2 add w9, w8, #1 cmp w8, #0 csel w9, w9, w8, lt asr w9, w9, #1 mov w10, #2 msub w8, w9, w10, w8 mov w9, #0 cmp w8, w9 b.ne .L.long_func.661 b .L.long_func.662 .L.long_func.664: mov x13, x29 sub x13, x13, #352 ldr w8, [x13] mov w9, #0 cmp w8, w9 b.ne .L.long_func.665 b .L.long_func.666 .L.long_func.665: mov w8, #0 stur w8, [x29, #-4] stur w8, [x29, #-8] mov x13, x29 sub x13, x13, #348 ldr w8, [x13] stur w8, [x29, #-12] mov x13, x29 sub x13, x13, #352 ldr w8, [x13] stur w8, [x29, #-16] b .L.long_func.667 .L.long_func.666: mov x13, x29 sub x13, x13, #348 ldr w8, [x13] stur w8, [x29, #-4] mov x13, x29 sub x13, x13, #324 str w8, [x13] mov x13, x29 sub x13, x13, #328 ldr w8, [x13] stur w8, [x29, #-12] mov w8, #1 stur w8, [x29, #-16] mov w9, #15 cmp w8, w9 b.ge .L.long_func.691 b .L.long_func.692 .L.long_func.667: ldur w8, [x29, #-8] mov w9, #16 cmp w8, w9 b.lt .L.long_func.668 b .L.long_func.669 .L.long_func.668: ldur w8, [x29, #-12] mov w9, #2 add w9, w8, #1 cmp w8, #0 csel w9, w9, w8, lt asr w9, w9, #1 mov w10, #2 msub w8, w9, w10, w8 mov w9, #0 cmp w8, w9 b.ne .L.long_func.670 b .L.long_func.671 .L.long_func.669: ldur w8, [x29, #-4] mov x13, x29 sub x13, x13, #356 str w8, [x13] mov w8, #0 stur w8, [x29, #-4] stur w8, [x29, #-8] mov x13, x29 sub x13, x13, #348 ldr w8, [x13] stur w8, [x29, #-12] mov x13, x29 sub x13, x13, #352 ldr w8, [x13] stur w8, [x29, #-16] b .L.long_func.677 .L.long_func.670: ldur w8, [x29, #-16] mov w9, #2 add w9, w8, #1 cmp w8, #0 csel w9, w9, w8, lt asr w9, w9, #1 mov w10, #2 msub w8, w9, w10, w8 mov w9, #0 cmp w8, w9 b.eq .L.long_func.673 b .L.long_func.674 .L.long_func.671: ldur w8, [x29, #-16] mov w9, #2 add w9, w8, #1 cmp w8, #0 csel w9, w9, w8, lt asr w9, w9, #1 mov w10, #2 msub w8, w9, w10, w8 mov w9, #0 cmp w8, w9 b.ne .L.long_func.675 b .L.long_func.676 .L.long_func.672: ldur w8, [x29, #-12] mov w9, #2 add w9, w8, #1 cmp w8, #0 csel w8, w9, w8, lt asr w8, w8, #1 stur w8, [x29, #-12] ldur w8, [x29, #-16] add w9, w8, #1 cmp w8, #0 csel w8, w9, w8, lt asr w8, w8, #1 stur w8, [x29, #-16] ldur w8, [x29, #-8] mov w9, #1 add w8, w8, w9 stur w8, [x29, #-8] b .L.long_func.667 .L.long_func.673: ldur w8, [x29, #-4] ldur w9, [x29, #-8] adrp x10, SHIFT_TABLE add x10, x10, :lo12:SHIFT_TABLE sxtw x9, w9 lsl x9, x9, #2 add x9, x10, x9 ldr w9, [x9] add w8, w8, w9 stur w8, [x29, #-4] b .L.long_func.674 .L.long_func.674: b .L.long_func.672 .L.long_func.675: ldur w8, [x29, #-4] ldur w9, [x29, #-8] adrp x10, SHIFT_TABLE add x10, x10, :lo12:SHIFT_TABLE sxtw x9, w9 lsl x9, x9, #2 add x9, x10, x9 ldr w9, [x9] add w8, w8, w9 stur w8, [x29, #-4] b .L.long_func.676 .L.long_func.676: b .L.long_func.672 .L.long_func.677: ldur w8, [x29, #-8] mov w9, #16 cmp w8, w9 b.lt .L.long_func.678 b .L.long_func.679 .L.long_func.678: ldur w8, [x29, #-12] mov w9, #2 add w9, w8, #1 cmp w8, #0 csel w9, w9, w8, lt asr w9, w9, #1 mov w10, #2 msub w8, w9, w10, w8 mov w9, #0 cmp w8, w9 b.ne .L.long_func.682 b .L.long_func.681 .L.long_func.679: ldur w8, [x29, #-4] mov x13, x29 sub x13, x13, #352 str w8, [x13] b .L.long_func.683 .L.long_func.680: ldur w8, [x29, #-4] ldur w9, [x29, #-8] adrp x10, SHIFT_TABLE add x10, x10, :lo12:SHIFT_TABLE sxtw x9, w9 lsl x9, x9, #2 add x9, x10, x9 ldr w9, [x9] add w8, w8, w9 stur w8, [x29, #-4] b .L.long_func.681 .L.long_func.681: ldur w8, [x29, #-12] mov w9, #2 add w9, w8, #1 cmp w8, #0 csel w8, w9, w8, lt asr w8, w8, #1 stur w8, [x29, #-12] ldur w8, [x29, #-16] add w9, w8, #1 cmp w8, #0 csel w8, w9, w8, lt asr w8, w8, #1 stur w8, [x29, #-16] ldur w8, [x29, #-8] mov w9, #1 add w8, w8, w9 stur w8, [x29, #-8] b .L.long_func.677 .L.long_func.682: ldur w8, [x29, #-16] mov w9, #2 add w9, w8, #1 cmp w8, #0 csel w9, w9, w8, lt asr w9, w9, #1 mov w10, #2 msub w8, w9, w10, w8 mov w9, #0 cmp w8, w9 b.ne .L.long_func.680 b .L.long_func.681 .L.long_func.683: mov w8, #0 stur w8, [x29, #-4] stur w8, [x29, #-8] mov x13, x29 sub x13, x13, #352 ldr w8, [x13] adrp x9, SHIFT_TABLE add x9, x9, :lo12:SHIFT_TABLE mov x10, #4 add x9, x9, x10 ldr w9, [x9] mul w8, w8, w9 stur w8, [x29, #-12] mov w8, #65535 stur w8, [x29, #-16] b .L.long_func.685 .L.long_func.684: ldur w8, [x29, #-4] mov x13, x29 sub x13, x13, #352 str w8, [x13] mov x13, x29 sub x13, x13, #356 ldr w8, [x13] mov x13, x29 sub x13, x13, #348 str w8, [x13] b .L.long_func.664 .L.long_func.685: ldur w9, [x29, #-8] mov w8, #16 cmp w9, w8 b.lt .L.long_func.686 b .L.long_func.687 .L.long_func.686: ldur w10, [x29, #-12] mov w8, #2 add w8, w10, #1 cmp w10, #0 csel w8, w8, w10, lt asr w9, w8, #1 mov w8, #2 msub w9, w9, w8, w10 mov w8, #0 cmp w9, w8 b.ne .L.long_func.690 b .L.long_func.689 .L.long_func.687: b .L.long_func.684 .L.long_func.688: ldur w10, [x29, #-4] ldur w8, [x29, #-8] adrp x9, SHIFT_TABLE add x9, x9, :lo12:SHIFT_TABLE sxtw x8, w8 lsl x8, x8, #2 add x8, x9, x8 ldr w8, [x8] add w8, w10, w8 stur w8, [x29, #-4] b .L.long_func.689 .L.long_func.689: ldur w9, [x29, #-12] mov w8, #2 add w8, w9, #1 cmp w9, #0 csel w8, w8, w9, lt asr w8, w8, #1 stur w8, [x29, #-12] ldur w9, [x29, #-16] add w8, w9, #1 cmp w9, #0 csel w8, w8, w9, lt asr w8, w8, #1 stur w8, [x29, #-16] ldur w9, [x29, #-8] mov w8, #1 add w8, w9, w8 stur w8, [x29, #-8] b .L.long_func.685 .L.long_func.690: ldur w10, [x29, #-16] mov w8, #2 add w8, w10, #1 cmp w10, #0 csel w8, w8, w10, lt asr w9, w8, #1 mov w8, #2 msub w9, w9, w8, w10 mov w8, #0 cmp w9, w8 b.ne .L.long_func.688 b .L.long_func.689 .L.long_func.691: ldur w9, [x29, #-12] mov w8, #0 cmp w9, w8 b.lt .L.long_func.694 b .L.long_func.695 .L.long_func.692: ldur w9, [x29, #-16] mov w8, #0 cmp w9, w8 b.gt .L.long_func.697 b .L.long_func.698 .L.long_func.693: ldur w8, [x29, #-4] mov x13, x29 sub x13, x13, #328 str w8, [x13] b .L.long_func.626 .L.long_func.694: mov w8, #65535 stur w8, [x29, #-4] b .L.long_func.696 .L.long_func.695: mov w8, #0 stur w8, [x29, #-4] b .L.long_func.696 .L.long_func.696: b .L.long_func.693 .L.long_func.697: ldur w9, [x29, #-12] mov w8, #32767 cmp w9, w8 b.gt .L.long_func.700 b .L.long_func.701 .L.long_func.698: ldur w8, [x29, #-12] stur w8, [x29, #-4] b .L.long_func.699 .L.long_func.699: b .L.long_func.693 .L.long_func.700: ldur w9, [x29, #-12] ldur w8, [x29, #-16] adrp x11, SHIFT_TABLE add x11, x11, :lo12:SHIFT_TABLE sxtw x8, w8 lsl x8, x8, #2 add x8, x11, x8 ldr w8, [x8] sdiv w8, w9, w8 stur w8, [x29, #-12] ldur w9, [x29, #-12] movz w8, #0 movk w8, #1, lsl #16 add w10, w9, w8 ldur w9, [x29, #-16] mov w8, #15 sub w8, w8, w9 mov w9, #1 add w8, w8, w9 sxtw x8, w8 lsl x8, x8, #2 add x8, x11, x8 ldr w8, [x8] sub w8, w10, w8 stur w8, [x29, #-4] b .L.long_func.702 .L.long_func.701: ldur w8, [x29, #-12] ldur w9, [x29, #-16] adrp x10, SHIFT_TABLE add x10, x10, :lo12:SHIFT_TABLE sxtw x9, w9 lsl x9, x9, #2 add x9, x10, x9 ldr w9, [x9] sdiv w8, w8, w9 stur w8, [x29, #-4] b .L.long_func.702 .L.long_func.702: b .L.long_func.699 .L.long_func.703: ldur w8, [x29, #-12] mov w9, #0 cmp w8, w9 b.lt .L.long_func.706 b .L.long_func.707 .L.long_func.704: ldur w8, [x29, #-16] mov w9, #0 cmp w8, w9 b.gt .L.long_func.709 b .L.long_func.710 .L.long_func.705: ldur w8, [x29, #-4] mov x13, x29 sub x13, x13, #280 str w8, [x13] b .L.long_func.538 .L.long_func.706: mov w8, #65535 stur w8, [x29, #-4] b .L.long_func.708 .L.long_func.707: mov w8, #0 stur w8, [x29, #-4] b .L.long_func.708 .L.long_func.708: b .L.long_func.705 .L.long_func.709: ldur w8, [x29, #-12] mov w9, #32767 cmp w8, w9 b.gt .L.long_func.712 b .L.long_func.713 .L.long_func.710: ldur w8, [x29, #-12] stur w8, [x29, #-4] b .L.long_func.711 .L.long_func.711: b .L.long_func.705 .L.long_func.712: ldur w8, [x29, #-12] ldur w9, [x29, #-16] adrp x11, SHIFT_TABLE add x11, x11, :lo12:SHIFT_TABLE sxtw x9, w9 lsl x9, x9, #2 add x9, x11, x9 ldr w9, [x9] sdiv w8, w8, w9 stur w8, [x29, #-12] ldur w9, [x29, #-12] movz w8, #0 movk w8, #1, lsl #16 add w10, w9, w8 ldur w9, [x29, #-16] mov w8, #15 sub w9, w8, w9 mov w8, #1 add w8, w9, w8 sxtw x8, w8 lsl x8, x8, #2 add x8, x11, x8 ldr w8, [x8] sub w8, w10, w8 stur w8, [x29, #-4] b .L.long_func.714 .L.long_func.713: ldur w8, [x29, #-12] ldur w9, [x29, #-16] adrp x10, SHIFT_TABLE add x10, x10, :lo12:SHIFT_TABLE sxtw x9, w9 lsl x9, x9, #2 add x9, x10, x9 ldr w9, [x9] sdiv w8, w8, w9 stur w8, [x29, #-4] b .L.long_func.714 .L.long_func.714: b .L.long_func.711 .L.long_func.715: mov w8, #1 mov w0, w8 add sp, sp, #384 ldp x29, x30, [sp], #16 ret .L.long_func.716: ldur w8, [x29, #-20] mov w9, #1 add w8, w8, w9 stur w8, [x29, #-20] b .L.long_func.535 .text .globl main .p2align 2 main: .L.main.0: stp x29, x30, [sp, #-16]! mov x29, sp bl long_func mov w8, w0 mov w0, w8 ldp x29, x30, [sp], #16 ret