Files
MAG160C/analysis/disasm/disasm_AccumulatorPushFrame.txt
T

251 lines
19 KiB
Plaintext

000000062548: str x19, [sp, #-0x20]!
00000006254c: stp x29, x30, [sp, #0x10]
000000062550: add x29, sp, #0x10
000000062554: mov x19, x0
000000062558: ldr w8, [x19, #0x2c]
00000006255c: cbz w8, #0x626b0
000000062560: ldr w9, [x19, #0x20]
000000062564: ldr w10, [x19, #0x28]
000000062568: add w11, w9, #1
00000006256c: cmp w10, #2
000000062570: str w11, [x19, #0x20]
000000062574: b.eq #0x625c8
000000062578: cmp w10, #1
00000006257c: b.eq #0x62684
000000062580: ldr x8, [x19, #0x18]
000000062584: cbz w9, #0x626c0
000000062588: cmp w11, w10
00000006258c: b.ne #0x6271c
000000062590: ldr x11, [x19, #0x10]
000000062594: sub w10, w9, #3
000000062598: cmp w10, #0x1c
00000006259c: b.hi #0x627c0
0000000625a0: adrp x9, #0x336000
0000000625a4: add x9, x9, #0x220
0000000625a8: ldrsw x10, [x9, x10, lsl #2]
0000000625ac: add x10, x10, x9
0000000625b0: mov w9, #2
0000000625b4: br x10
0000000625b8: mov w9, #3
0000000625bc: ldr w10, [x19, #0x24]
0000000625c0: cbnz w10, #0x62870
0000000625c4: b #0x62694
0000000625c8: cbz w9, #0x62684
0000000625cc: ldr w9, [x19, #0x24]
0000000625d0: lsr w8, w9, #2
0000000625d4: cbz w8, #0x62694
0000000625d8: ldr x11, [x19, #0x10]
0000000625dc: sub w10, w8, #1
0000000625e0: add x13, x10, #1
0000000625e4: cmp x13, #8
0000000625e8: b.lo #0x62618
0000000625ec: ubfx w12, w9, #2, #3
0000000625f0: sub x13, x13, x12
0000000625f4: cbz x13, #0x62618
0000000625f8: lsl x9, x10, #3
0000000625fc: add x9, x9, #8
000000062600: add x10, x1, x9
000000062604: cmp x11, x10
000000062608: b.hs #0x627d8
00000006260c: add x9, x11, x9
000000062610: cmp x9, x1
000000062614: b.ls #0x627d8
000000062618: mov x9, x1
00000006261c: mov x10, x11
000000062620: ldrh w11, [x10]
000000062624: ldrh w12, [x9]
000000062628: sub w8, w8, #1
00000006262c: add w11, w12, w11
000000062630: lsr w11, w11, #1
000000062634: strh w11, [x10]
000000062638: ldrh w12, [x10, #2]
00000006263c: ldrh w11, [x9, #2]
000000062640: add w11, w11, w12
000000062644: lsr w11, w11, #1
000000062648: strh w11, [x10, #2]
00000006264c: ldrh w12, [x10, #4]
000000062650: ldrh w11, [x9, #4]
000000062654: add w11, w11, w12
000000062658: lsr w11, w11, #1
00000006265c: strh w11, [x10, #4]
000000062660: ldrh w12, [x10, #6]
000000062664: ldrh w11, [x9, #6]
000000062668: add x9, x9, #8
00000006266c: add w11, w11, w12
000000062670: lsr w11, w11, #1
000000062674: strh w11, [x10, #6]
000000062678: add x10, x10, #8
00000006267c: cbnz w8, #0x62620
000000062680: b #0x62694
000000062684: ldr w8, [x19, #0x24]
000000062688: ldr x0, [x19, #0x10]
00000006268c: lsl x2, x8, #1
000000062690: bl #0x5cc60
000000062694: ldr w8, [x19, #0x20]
000000062698: ldr w9, [x19, #0x28]
00000006269c: cmp w8, w9
0000000626a0: b.ne #0x626b0
0000000626a4: mov w0, #1
0000000626a8: str wzr, [x19, #0x20]
0000000626ac: b #0x626b4
0000000626b0: mov w0, wzr
0000000626b4: ldp x29, x30, [sp, #0x10]
0000000626b8: ldr x19, [sp], #0x20
0000000626bc: ret
0000000626c0: ldr w10, [x19, #0x24]
0000000626c4: lsr w9, w10, #2
0000000626c8: cbz w9, #0x62694
0000000626cc: sub w11, w9, #1
0000000626d0: add x11, x11, #1
0000000626d4: cmp x11, #4
0000000626d8: b.lo #0x6277c
0000000626dc: ubfx w12, w10, #2, #2
0000000626e0: sub x13, x11, x12
0000000626e4: cbz x13, #0x6277c
0000000626e8: sub w9, w9, w13
0000000626ec: add x10, x1, x13, lsl #3
0000000626f0: add x11, x8, x13, lsl #4
0000000626f4: ld4 {v0.4h, v1.4h, v2.4h, v3.4h}, [x1], #32
0000000626f8: sub x13, x13, #4
0000000626fc: ushll v4.4s, v0.4h, #0
000000062700: ushll v5.4s, v1.4h, #0
000000062704: ushll v6.4s, v2.4h, #0
000000062708: ushll v7.4s, v3.4h, #0
00000006270c: st4 {v4.4s, v5.4s, v6.4s, v7.4s}, [x8], #64
000000062710: cbnz x13, #0x626f4
000000062714: cbnz w12, #0x62784
000000062718: b #0x62694
00000006271c: ldr w10, [x19, #0x24]
000000062720: lsr w9, w10, #2
000000062724: cbz w9, #0x62694
000000062728: sub w11, w9, #1
00000006272c: add x11, x11, #1
000000062730: cmp x11, #4
000000062734: b.lo #0x6279c
000000062738: ubfx w12, w10, #2, #2
00000006273c: sub x13, x11, x12
000000062740: cbz x13, #0x6279c
000000062744: sub w9, w9, w13
000000062748: add x10, x1, x13, lsl #3
00000006274c: add x11, x8, x13, lsl #4
000000062750: ld4 {v0.4h, v1.4h, v2.4h, v3.4h}, [x1], #32
000000062754: ld4 {v4.4s, v5.4s, v6.4s, v7.4s}, [x8]
000000062758: sub x13, x13, #4
00000006275c: uaddw v16.4s, v4.4s, v0.4h
000000062760: uaddw v17.4s, v5.4s, v1.4h
000000062764: uaddw v18.4s, v6.4s, v2.4h
000000062768: uaddw v19.4s, v7.4s, v3.4h
00000006276c: st4 {v16.4s, v17.4s, v18.4s, v19.4s}, [x8], #64
000000062770: cbnz x13, #0x62750
000000062774: cbnz w12, #0x627a4
000000062778: b #0x62694
00000006277c: mov x10, x1
000000062780: mov x11, x8
000000062784: ldr d0, [x10], #8
000000062788: sub w9, w9, #1
00000006278c: ushll v0.4s, v0.4h, #0
000000062790: str q0, [x11], #0x10
000000062794: cbnz w9, #0x62784
000000062798: b #0x62694
00000006279c: mov x10, x1
0000000627a0: mov x11, x8
0000000627a4: ldr d0, [x10], #8
0000000627a8: ldr q1, [x11]
0000000627ac: sub w9, w9, #1
0000000627b0: uaddw v0.4s, v1.4s, v0.4h
0000000627b4: str q0, [x11], #0x10
0000000627b8: cbnz w9, #0x627a4
0000000627bc: b #0x62694
0000000627c0: cmp w9, #0x3f
0000000627c4: b.ne #0x62844
0000000627c8: mov w9, #6
0000000627cc: ldr w10, [x19, #0x24]
0000000627d0: cbnz w10, #0x62870
0000000627d4: b #0x62694
0000000627d8: lsl x10, x13, #3
0000000627dc: sub w8, w8, w13
0000000627e0: add x9, x1, x10
0000000627e4: add x10, x11, x10
0000000627e8: ld4 {v0.8h, v1.8h, v2.8h, v3.8h}, [x11]
0000000627ec: ld4 {v4.8h, v5.8h, v6.8h, v7.8h}, [x1], #64
0000000627f0: sub x13, x13, #8
0000000627f4: uaddl v17.4s, v4.4h, v0.4h
0000000627f8: uaddl2 v16.4s, v4.8h, v0.8h
0000000627fc: uaddl2 v18.4s, v5.8h, v1.8h
000000062800: uaddl v19.4s, v5.4h, v1.4h
000000062804: uaddl2 v20.4s, v6.8h, v2.8h
000000062808: uaddl v21.4s, v6.4h, v2.4h
00000006280c: uaddl2 v22.4s, v7.8h, v3.8h
000000062810: uaddl v0.4s, v7.4h, v3.4h
000000062814: shrn v1.4h, v17.4s, #1
000000062818: shrn2 v1.8h, v16.4s, #1
00000006281c: shrn v2.4h, v19.4s, #1
000000062820: shrn2 v2.8h, v18.4s, #1
000000062824: shrn v3.4h, v21.4s, #1
000000062828: shrn2 v3.8h, v20.4s, #1
00000006282c: shrn v4.4h, v0.4s, #1
000000062830: shrn2 v4.8h, v22.4s, #1
000000062834: st4 {v1.8h, v2.8h, v3.8h, v4.8h}, [x11], #64
000000062838: cbnz x13, #0x627e8
00000006283c: cbnz w12, #0x62620
000000062840: b #0x62694
000000062844: mov w9, wzr
000000062848: ldr w10, [x19, #0x24]
00000006284c: cbnz w10, #0x62870
000000062850: b #0x62694
000000062854: mov w9, #4
000000062858: ldr w10, [x19, #0x24]
00000006285c: cbnz w10, #0x62870
000000062860: b #0x62694
000000062864: mov w9, #5
000000062868: ldr w10, [x19, #0x24]
00000006286c: cbz w10, #0x62694
000000062870: sub w12, w10, #1
000000062874: add x13, x12, #1
000000062878: cmp x13, #4
00000006287c: b.lo #0x628ac
000000062880: and w15, w10, #3
000000062884: sub x16, x13, x15
000000062888: cbz x16, #0x628ac
00000006288c: lsl x12, x12, #1
000000062890: add x12, x12, #2
000000062894: add x13, x1, x12
000000062898: cmp x11, x13
00000006289c: b.hs #0x628dc
0000000628a0: add x12, x11, x12
0000000628a4: cmp x12, x1
0000000628a8: b.ls #0x628dc
0000000628ac: mov x12, x11
0000000628b0: mov x13, x1
0000000628b4: mov x14, x8
0000000628b8: ldr w8, [x14]
0000000628bc: ldrh w11, [x13], #2
0000000628c0: sub w10, w10, #1
0000000628c4: add w8, w8, w11
0000000628c8: lsr w11, w8, w9
0000000628cc: strh w11, [x12], #2
0000000628d0: str w8, [x14], #4
0000000628d4: cbnz w10, #0x628b8
0000000628d8: b #0x62694
0000000628dc: lsl x13, x16, #1
0000000628e0: dup v0.4s, w9
0000000628e4: sub w10, w10, w16
0000000628e8: add x14, x8, x16, lsl #2
0000000628ec: add x12, x11, x13
0000000628f0: add x13, x1, x13
0000000628f4: neg v0.4s, v0.4s
0000000628f8: ldr q1, [x8]
0000000628fc: ldr d2, [x1], #8
000000062900: sub x16, x16, #4
000000062904: uaddw v1.4s, v1.4s, v2.4h
000000062908: ushl v2.4s, v1.4s, v0.4s
00000006290c: xtn v2.4h, v2.4s
000000062910: str d2, [x11], #8
000000062914: str q1, [x8], #0x10
000000062918: cbnz x16, #0x628f8
00000006291c: cbnz w15, #0x628b8
000000062920: b #0x62694
000000062924: ldr w8, [x0, #0x2c]
000000062928: cbz w8, #0x62930
00000006292c: str wzr, [x0, #0x20]