; ; sub_103050 from 0x103050 to 0x103a14 (2500 bytes) ; ; 3 xrefs: ; > sub_103A14 @ 0x103a20 ; > sub_103A28 @ 0x103a34 ; > sub_103A3C @ 0x103a48 ; ; This function is hookable on this platform! ; ; Using BromaIDA 8.0.0 @ https:;github.com/Stazzical/BromaIDA ; Using bindings at commit ba9f177b at Thu Jul 16 22:52:06 2026 from https:;github.com/geode-sdk/bindings ; SUB SP, SP, #0x120 ; +0x0, 0x103050 STP D15, D14, [SP,#0x120+var_80] ; +0x4, 0x103054 STP D13, D12, [SP,#0x120+var_70] ; +0x8, 0x103058 STP D11, D10, [SP,#0x120+var_60] ; +0xc, 0x10305c STP D9, D8, [SP,#0x120+var_50] ; +0x10, 0x103060 STP X24, X23, [SP,#0x120+var_30] ; +0x14, 0x103064 STP X22, X21, [SP,#0x120+var_20] ; +0x18, 0x103068 STP X20, X19, [SP,#0x120+var_10] ; +0x1c, 0x10306c LDR S0, [X4] ; +0x20, 0x103070 STR X28, [SP,#0x120+var_40] ; +0x24, 0x103074 FCMP S0, #0.0 ; +0x28, 0x103078 B.NE loc_1030A4 ; +0x2c, 0x10307c LDR S0, [X4,#4] ; +0x30, 0x103080 FCMP S0, #0.0 ; +0x34, 0x103084 B.NE loc_1030A4 ; +0x38, 0x103088 LDR S0, [X4,#8] ; +0x3c, 0x10308c FCMP S0, #0.0 ; +0x40, 0x103090 B.NE loc_1030A4 ; +0x44, 0x103094 LDR S0, [X4,#0xC] ; +0x48, 0x103098 FCMP S0, #0.0 ; +0x4c, 0x10309c B.EQ loc_103A04 ; +0x50, 0x1030a0 MOV W8, #1 ; +0x54, 0x1030a4 ADRP X9, #xmmword_2F570@PAGE ; +0x58, 0x1030a8 LDR Q1, [X9,#xmmword_2F570@PAGEOFF] ; +0x5c, 0x1030ac DUP V0.2D, X5 ; +0x60, 0x1030b0 ADD X9, X5, #0x60 ; '`' ; +0x64, 0x1030b4 STR X5, [SP,#0x120+var_A0] ; +0x68, 0x1030b8 ADD V0.2D, V0.2D, V1.2D ; +0x6c, 0x1030bc MOV X10, X3 ; +0x70, 0x1030c0 STR X9, [SP,#0x120+var_88] ; +0x74, 0x1030c4 STUR Q0, [SP,#0x120+var_98] ; +0x78, 0x1030c8 LD1R {V0.4S}, [X10],#4 ; +0x7c, 0x1030cc ADD X9, X3, #8 ; +0x80, 0x1030d0 LD1R {V1.4S}, [X9] ; +0x84, 0x1030d4 ADD X9, X3, #0xC ; +0x88, 0x1030d8 ADD X11, X3, #0x10 ; +0x8c, 0x1030dc LD1R {V2.4S}, [X9] ; +0x90, 0x1030e0 LD1R {V3.4S}, [X10] ; +0x94, 0x1030e4 LD1R {V4.4S}, [X11] ; +0x98, 0x1030e8 TBZ W8, #0, loc_103374 ; +0x9c, 0x1030ec ADRP X5, #0x4F000 ; +0xa0, 0x1030f0 MOV X19, X30 ; +0xa4, 0x1030f4 BL sub_103A50 ; +0xa8, 0x1030f8 MOV X30, X19 ; +0xac, 0x1030fc ADD X5, X5, #0x864 ; +0xb0, 0x103100 CMP W6, #1 ; +0xb4, 0x103104 B.LT loc_1039DC ; +0xb8, 0x103108 STP XZR, XZR, [SP,#0x120+var_B0] ; +0xbc, 0x10310c STP XZR, XZR, [SP,#0x120+var_C0] ; +0xc0, 0x103110 STP XZR, XZR, [SP,#0x120+var_D0] ; +0xc4, 0x103114 STP XZR, XZR, [SP,#0x120+var_E0] ; +0xc8, 0x103118 STP XZR, XZR, [SP,#0x120+var_F0] ; +0xcc, 0x10311c STP XZR, XZR, [SP,#0x120+var_100] ; +0xd0, 0x103120 STP XZR, XZR, [SP,#0x120+var_110] ; +0xd4, 0x103124 STP XZR, XZR, [SP,#0x120+var_120] ; +0xd8, 0x103128 LDP S5, S6, [X4] ; +0xdc, 0x10312c LDP S7, S16, [X4,#8] ; +0xe0, 0x103130 LDR S17, [X4,#0x10] ; +0xe4, 0x103134 SUBS W19, W6, #4 ; +0xe8, 0x103138 CSEL W6, W6, W9, LT ; +0xec, 0x10313c MOV X20, XZR ; +0xf0, 0x103140 SXTW X6, W6 ; +0xf4, 0x103144 CMP X20, X6 ; +0xf8, 0x103148 B.GE loc_103198 ; +0xfc, 0x10314c LDR X21, [X10,X20,LSL#3] ; +0x100, 0x103150 LDR W22, [X21] ; +0x104, 0x103154 STR W22, [X11,X20,LSL#2] ; +0x108, 0x103158 LDR W22, [X21,#4] ; +0x10c, 0x10315c STR W22, [X12,X20,LSL#2] ; +0x110, 0x103160 LDR W22, [X21,#8] ; +0x114, 0x103164 STR W22, [X13,X20,LSL#2] ; +0x118, 0x103168 LDR W22, [X21,#0xC] ; +0x11c, 0x10316c STR W22, [X14,X20,LSL#2] ; +0x120, 0x103170 LDR W22, [X21,#0x10] ; +0x124, 0x103174 STR W22, [X15,X20,LSL#2] ; +0x128, 0x103178 LDR W22, [X21,#0x14] ; +0x12c, 0x10317c STR W22, [X16,X20,LSL#2] ; +0x130, 0x103180 LDP W22, W21, [X21,#0x18] ; +0x134, 0x103184 STR W22, [X17,X20,LSL#2] ; +0x138, 0x103188 STR W21, [X3,X20,LSL#2] ; +0x13c, 0x10318c ADD X20, X20, #1 ; +0x140, 0x103190 B loc_103148 ; +0x144, 0x103194 LDP Q26, Q24, [SP,#0x120+var_C0] ; +0x148, 0x103198 LDP Q18, Q21, [SP,#0x120+var_E0] ; +0x14c, 0x10319c LDP Q25, Q19, [SP,#0x120+var_100] ; +0x150, 0x1031a0 LDP Q23, Q20, [SP,#0x120+var_120] ; +0x154, 0x1031a4 MOV X20, XZR ; +0x158, 0x1031a8 DUP V5.4S, V5.S[0] ; +0x15c, 0x1031ac DUP V6.4S, V6.S[0] ; +0x160, 0x1031b0 DUP V7.4S, V7.S[0] ; +0x164, 0x1031b4 DUP V16.4S, V16.S[0] ; +0x168, 0x1031b8 DUP V17.4S, V17.S[0] ; +0x16c, 0x1031bc MOVI V22.2D, #0 ; +0x170, 0x1031c0 MOVI V27.2D, #0 ; +0x174, 0x1031c4 MOVI V28.2D, #0 ; +0x178, 0x1031c8 MOVI V29.2D, #0 ; +0x17c, 0x1031cc MOVI V30.2D, #0 ; +0x180, 0x1031d0 MOV W21, W2 ; +0x184, 0x1031d4 CBZ W21, loc_1032F4 ; +0x188, 0x1031d8 LDR Q8, [X0,X20] ; +0x18c, 0x1031dc FADD V12.4S, V30.4S, V0.4S ; +0x190, 0x1031e0 FADD V14.4S, V22.4S, V4.4S ; +0x194, 0x1031e4 FADD V10.4S, V29.4S, V3.4S ; +0x198, 0x1031e8 FMLA V24.4S, V12.4S, V8.4S ; +0x19c, 0x1031ec FADD V31.4S, V27.4S, V2.4S ; +0x1a0, 0x1031f0 FADD V9.4S, V28.4S, V1.4S ; +0x1a4, 0x1031f4 CMP W7, #1 ; +0x1a8, 0x1031f8 FMUL V11.4S, V24.4S, V14.4S ; +0x1ac, 0x1031fc B.LT loc_103234 ; +0x1b0, 0x103200 FMLA V21.4S, V12.4S, V24.4S ; +0x1b4, 0x103204 FMUL V13.4S, V21.4S, V31.4S ; +0x1b8, 0x103208 FNEG V13.4S, V13.4S ; +0x1bc, 0x10320c FMUL V15.4S, V21.4S, V14.4S ; +0x1c0, 0x103210 FMLA V13.4S, V10.4S, V24.4S ; +0x1c4, 0x103214 FADD V13.4S, V13.4S, V18.4S ; +0x1c8, 0x103218 FNEG V18.4S, V15.4S ; +0x1cc, 0x10321c CMP W7, #1 ; +0x1d0, 0x103220 FMLA V18.4S, V9.4S, V24.4S ; +0x1d4, 0x103224 B.NE loc_10323C ; +0x1d8, 0x103228 MOV V12.16B, V21.16B ; +0x1dc, 0x10322c B loc_103278 ; +0x1e0, 0x103230 MOV V12.16B, V24.16B ; +0x1e4, 0x103234 B loc_10327C ; +0x1e8, 0x103238 FMLA V19.4S, V12.4S, V21.4S ; +0x1ec, 0x10323c FMLA V20.4S, V12.4S, V19.4S ; +0x1f0, 0x103240 FMLA V23.4S, V10.4S, V19.4S ; +0x1f4, 0x103244 FMLA V25.4S, V10.4S, V21.4S ; +0x1f8, 0x103248 FMUL V15.4S, V19.4S, V14.4S ; +0x1fc, 0x10324c FMLS V23.4S, V31.4S, V20.4S ; +0x200, 0x103250 FMUL V14.4S, V20.4S, V14.4S ; +0x204, 0x103254 FMLS V25.4S, V31.4S, V19.4S ; +0x208, 0x103258 MOV V12.16B, V20.16B ; +0x20c, 0x10325c MOV V20.16B, V23.16B ; +0x210, 0x103260 FNEG V23.4S, V14.4S ; +0x214, 0x103264 FMLA V23.4S, V9.4S, V19.4S ; +0x218, 0x103268 MOV V19.16B, V25.16B ; +0x21c, 0x10326c FNEG V25.4S, V15.4S ; +0x220, 0x103270 FMLA V25.4S, V9.4S, V21.4S ; +0x224, 0x103274 MOV V21.16B, V13.16B ; +0x228, 0x103278 SUB W22, W6, #1 ; +0x22c, 0x10327c FMLA V26.4S, V10.4S, V8.4S ; +0x230, 0x103280 CMP W22, #3 ; +0x234, 0x103284 FNEG V10.4S, V11.4S ; +0x238, 0x103288 B.HI loc_1032C4 ; +0x23c, 0x10328c ADR X23, loc_1032A0 ; +0x240, 0x103290 LDRB W24, [X5,X22] ; +0x244, 0x103294 ADD X23, X23, X24,LSL#2 ; +0x248, 0x103298 BR X23 ; +0x24c, 0x10329c STR S12, [X1,X20] ; +0x250, 0x1032a0 B loc_1032C4 ; +0x254, 0x1032a4 STR D12, [X1,X20] ; +0x258, 0x1032a8 B loc_1032C4 ; +0x25c, 0x1032ac ADD X22, X1, X20 ; +0x260, 0x1032b0 STR D12, [X22],#8 ; +0x264, 0x1032b4 ST1 {V12.S}[2], [X22] ; +0x268, 0x1032b8 B loc_1032C4 ; +0x26c, 0x1032bc STR Q12, [X1,X20] ; +0x270, 0x1032c0 FMLA V10.4S, V9.4S, V8.4S ; +0x274, 0x1032c4 FMLS V26.4S, V31.4S, V24.4S ; +0x278, 0x1032c8 FADD V30.4S, V30.4S, V5.4S ; +0x27c, 0x1032cc FADD V29.4S, V29.4S, V6.4S ; +0x280, 0x1032d0 FADD V28.4S, V28.4S, V7.4S ; +0x284, 0x1032d4 FADD V27.4S, V27.4S, V16.4S ; +0x288, 0x1032d8 FADD V22.4S, V22.4S, V17.4S ; +0x28c, 0x1032dc SUB W21, W21, #1 ; +0x290, 0x1032e0 ADD X20, X20, X8 ; +0x294, 0x1032e4 MOV V24.16B, V26.16B ; +0x298, 0x1032e8 MOV V26.16B, V10.16B ; +0x29c, 0x1032ec CBNZ W21, loc_1031DC ; +0x2a0, 0x1032f0 MOV X20, XZR ; +0x2a4, 0x1032f4 STP Q26, Q24, [SP,#0x120+var_C0] ; +0x2a8, 0x1032f8 STP Q18, Q21, [SP,#0x120+var_E0] ; +0x2ac, 0x1032fc STP Q25, Q19, [SP,#0x120+var_100] ; +0x2b0, 0x103300 STP Q23, Q20, [SP,#0x120+var_120] ; +0x2b4, 0x103304 CMP X20, X6 ; +0x2b8, 0x103308 B.GE loc_103364 ; +0x2bc, 0x10330c LDR W21, [X11,X20,LSL#2] ; +0x2c0, 0x103310 LDR X22, [X10,X20,LSL#3] ; +0x2c4, 0x103314 STR W21, [X22] ; +0x2c8, 0x103318 LDR W21, [X12,X20,LSL#2] ; +0x2cc, 0x10331c STR W21, [X22,#4] ; +0x2d0, 0x103320 LDR W21, [X13,X20,LSL#2] ; +0x2d4, 0x103324 STR W21, [X22,#8] ; +0x2d8, 0x103328 LDR W21, [X14,X20,LSL#2] ; +0x2dc, 0x10332c STR W21, [X22,#0xC] ; +0x2e0, 0x103330 LDR W21, [X15,X20,LSL#2] ; +0x2e4, 0x103334 STR W21, [X22,#0x10] ; +0x2e8, 0x103338 LDR W21, [X16,X20,LSL#2] ; +0x2ec, 0x10333c STR W21, [X22,#0x14] ; +0x2f0, 0x103340 LDR W21, [X17,X20,LSL#2] ; +0x2f4, 0x103344 STR W21, [X22,#0x18] ; +0x2f8, 0x103348 LDR W21, [X3,X20,LSL#2] ; +0x2fc, 0x10334c STR W21, [X22,#0x1C] ; +0x300, 0x103350 ADD X21, X22, #0x80 ; +0x304, 0x103354 STR X21, [X10,X20,LSL#3] ; +0x308, 0x103358 ADD X20, X20, #1 ; +0x30c, 0x10335c B loc_103308 ; +0x310, 0x103360 ADD X1, X1, #0x10 ; +0x314, 0x103364 ADD X0, X0, #0x10 ; +0x318, 0x103368 MOV W6, W19 ; +0x31c, 0x10336c B loc_103104 ; +0x320, 0x103370 ADRP X4, #0x4F000 ; +0x324, 0x103374 ADRP X5, #0x4F000 ; +0x328, 0x103378 ADRP X19, #jpt_10351C@PAGE ; +0x32c, 0x10337c MOV X20, X30 ; +0x330, 0x103380 BL sub_103A50 ; +0x334, 0x103384 MOV X30, X20 ; +0x338, 0x103388 ADD X4, X4, #0x858 ; +0x33c, 0x10338c ADD X5, X5, #0x85C ; +0x340, 0x103390 ADD X19, X19, #jpt_10351C@PAGEOFF ; +0x344, 0x103394 CMP W6, #1 ; +0x348, 0x103398 B.LT loc_1039DC ; +0x34c, 0x10339c SUBS W20, W6, #4 ; +0x350, 0x1033a0 CSEL W6, W6, W9, LT ; +0x354, 0x1033a4 MOV X21, XZR ; +0x358, 0x1033a8 SXTW X6, W6 ; +0x35c, 0x1033ac STP XZR, XZR, [SP,#0x120+var_B0] ; +0x360, 0x1033b0 STP XZR, XZR, [SP,#0x120+var_C0] ; +0x364, 0x1033b4 STP XZR, XZR, [SP,#0x120+var_D0] ; +0x368, 0x1033b8 STP XZR, XZR, [SP,#0x120+var_E0] ; +0x36c, 0x1033bc STP XZR, XZR, [SP,#0x120+var_F0] ; +0x370, 0x1033c0 STP XZR, XZR, [SP,#0x120+var_100] ; +0x374, 0x1033c4 STP XZR, XZR, [SP,#0x120+var_110] ; +0x378, 0x1033c8 STP XZR, XZR, [SP,#0x120+var_120] ; +0x37c, 0x1033cc CMP X21, X6 ; +0x380, 0x1033d0 B.GE loc_103420 ; +0x384, 0x1033d4 LDR X22, [X10,X21,LSL#3] ; +0x388, 0x1033d8 LDR W23, [X22] ; +0x38c, 0x1033dc STR W23, [X11,X21,LSL#2] ; +0x390, 0x1033e0 LDR W23, [X22,#4] ; +0x394, 0x1033e4 STR W23, [X12,X21,LSL#2] ; +0x398, 0x1033e8 LDR W23, [X22,#8] ; +0x39c, 0x1033ec STR W23, [X13,X21,LSL#2] ; +0x3a0, 0x1033f0 LDR W23, [X22,#0xC] ; +0x3a4, 0x1033f4 STR W23, [X14,X21,LSL#2] ; +0x3a8, 0x1033f8 LDR W23, [X22,#0x10] ; +0x3ac, 0x1033fc STR W23, [X15,X21,LSL#2] ; +0x3b0, 0x103400 LDR W23, [X22,#0x14] ; +0x3b4, 0x103404 STR W23, [X16,X21,LSL#2] ; +0x3b8, 0x103408 LDP W23, W22, [X22,#0x18] ; +0x3bc, 0x10340c STR W23, [X17,X21,LSL#2] ; +0x3c0, 0x103410 STR W22, [X3,X21,LSL#2] ; +0x3c4, 0x103414 ADD X21, X21, #1 ; +0x3c8, 0x103418 B loc_1033D0 ; +0x3cc, 0x10341c LDP Q20, Q16, [SP,#0x120+var_C0] ; +0x3d0, 0x103420 LDP Q19, Q7, [SP,#0x120+var_E0] ; +0x3d4, 0x103424 LDP Q18, Q5, [SP,#0x120+var_100] ; +0x3d8, 0x103428 LDP Q17, Q6, [SP,#0x120+var_120] ; +0x3dc, 0x10342c SUB W21, W6, #1; switch 4 cases ; +0x3e0, 0x103430 CMP W7, #1 ; +0x3e4, 0x103434 B.EQ loc_103498 ; +0x3e8, 0x103438 CMP W21, #3 ; +0x3ec, 0x10343c CBNZ W7, loc_10350C ; +0x3f0, 0x103440 B.HI def_10351C; jumptable 000000000010351C default case ; +0x3f4, 0x103444 ADR X22, loc_103458 ; +0x3f8, 0x103448 LDRB W23, [X5,X21] ; +0x3fc, 0x10344c ADD X22, X22, X23,LSL#2 ; +0x400, 0x103450 BR X22 ; +0x404, 0x103454 MOV X21, XZR ; +0x408, 0x103458 MOV W22, W2 ; +0x40c, 0x10345c CBZ W22, def_10351C; jumptable 000000000010351C default case ; +0x410, 0x103460 LDR Q21, [X0,X21] ; +0x414, 0x103464 SUB W22, W22, #1 ; +0x418, 0x103468 FMLA V20.4S, V3.4S, V21.4S ; +0x41c, 0x10346c FMLA V16.4S, V0.4S, V21.4S ; +0x420, 0x103470 FMUL V22.4S, V16.4S, V4.4S ; +0x424, 0x103474 FMLS V20.4S, V2.4S, V16.4S ; +0x428, 0x103478 STR S16, [X1,X21] ; +0x42c, 0x10347c MOV V16.16B, V20.16B ; +0x430, 0x103480 FNEG V20.4S, V22.4S ; +0x434, 0x103484 FMLA V20.4S, V1.4S, V21.4S ; +0x438, 0x103488 ADD X21, X21, X8 ; +0x43c, 0x10348c CBNZ W22, loc_103464 ; +0x440, 0x103490 B def_10351C; jumptable 000000000010351C default case ; +0x444, 0x103494 CMP W21, #3 ; +0x448, 0x103498 B.HI def_10351C; jumptable 000000000010351C default case ; +0x44c, 0x10349c ADR X22, loc_1034B0 ; +0x450, 0x1034a0 LDRB W23, [X4,X21] ; +0x454, 0x1034a4 ADD X22, X22, X23,LSL#2 ; +0x458, 0x1034a8 BR X22 ; +0x45c, 0x1034ac MOV X21, XZR ; +0x460, 0x1034b0 MOV W22, W2 ; +0x464, 0x1034b4 CBZ W22, def_10351C; jumptable 000000000010351C default case ; +0x468, 0x1034b8 LDR Q21, [X0,X21] ; +0x46c, 0x1034bc SUB W22, W22, #1 ; +0x470, 0x1034c0 FMLA V16.4S, V0.4S, V21.4S ; +0x474, 0x1034c4 FMLA V7.4S, V0.4S, V16.4S ; +0x478, 0x1034c8 FMLA V19.4S, V3.4S, V16.4S ; +0x47c, 0x1034cc FMLA V20.4S, V3.4S, V21.4S ; +0x480, 0x1034d0 FMLS V19.4S, V2.4S, V7.4S ; +0x484, 0x1034d4 FMUL V23.4S, V7.4S, V4.4S ; +0x488, 0x1034d8 FMUL V22.4S, V16.4S, V4.4S ; +0x48c, 0x1034dc FMLS V20.4S, V2.4S, V16.4S ; +0x490, 0x1034e0 STR S7, [X1,X21] ; +0x494, 0x1034e4 MOV V7.16B, V19.16B ; +0x498, 0x1034e8 FNEG V19.4S, V23.4S ; +0x49c, 0x1034ec FMLA V19.4S, V1.4S, V16.4S ; +0x4a0, 0x1034f0 MOV V16.16B, V20.16B ; +0x4a4, 0x1034f4 FNEG V20.4S, V22.4S ; +0x4a8, 0x1034f8 FMLA V20.4S, V1.4S, V21.4S ; +0x4ac, 0x1034fc ADD X21, X21, X8 ; +0x4b0, 0x103500 CBNZ W22, loc_1034BC ; +0x4b4, 0x103504 B def_10351C; jumptable 000000000010351C default case ; +0x4b8, 0x103508 B.HI def_10351C; jumptable 000000000010351C default case ; +0x4bc, 0x10350c ADR X22, loc_103520; jumptable 000000000010351C case 1 ; +0x4c0, 0x103510 LDRB W23, [X19,X21] ; +0x4c4, 0x103514 ADD X22, X22, X23,LSL#2 ; +0x4c8, 0x103518 BR X22; switch jump ; +0x4cc, 0x10351c MOV X21, XZR; jumptable 000000000010351C case 1 ; +0x4d0, 0x103520 MOV W22, W2 ; +0x4d4, 0x103524 CBZ W22, def_10351C; jumptable 000000000010351C default case ; +0x4d8, 0x103528 LDR Q21, [X0,X21] ; +0x4dc, 0x10352c SUB W22, W22, #1 ; +0x4e0, 0x103530 FMLA V16.4S, V0.4S, V21.4S ; +0x4e4, 0x103534 FMLA V7.4S, V0.4S, V16.4S ; +0x4e8, 0x103538 FMLA V5.4S, V0.4S, V7.4S ; +0x4ec, 0x10353c FMLA V6.4S, V0.4S, V5.4S ; +0x4f0, 0x103540 FMLA V17.4S, V3.4S, V5.4S ; +0x4f4, 0x103544 FMLA V18.4S, V3.4S, V7.4S ; +0x4f8, 0x103548 FMLS V17.4S, V2.4S, V6.4S ; +0x4fc, 0x10354c FMUL V23.4S, V6.4S, V4.4S ; +0x500, 0x103550 FMLA V19.4S, V3.4S, V16.4S ; +0x504, 0x103554 FMLS V18.4S, V2.4S, V5.4S ; +0x508, 0x103558 STR S6, [X1,X21] ; +0x50c, 0x10355c MOV V6.16B, V17.16B ; +0x510, 0x103560 FNEG V17.4S, V23.4S ; +0x514, 0x103564 FMUL V23.4S, V5.4S, V4.4S ; +0x518, 0x103568 FMLA V20.4S, V3.4S, V21.4S ; +0x51c, 0x10356c FMLS V19.4S, V2.4S, V7.4S ; +0x520, 0x103570 FMLA V17.4S, V1.4S, V5.4S ; +0x524, 0x103574 MOV V5.16B, V18.16B ; +0x528, 0x103578 FNEG V18.4S, V23.4S ; +0x52c, 0x10357c FMUL V23.4S, V7.4S, V4.4S ; +0x530, 0x103580 FMUL V22.4S, V16.4S, V4.4S ; +0x534, 0x103584 FMLS V20.4S, V2.4S, V16.4S ; +0x538, 0x103588 FMLA V18.4S, V1.4S, V7.4S ; +0x53c, 0x10358c MOV V7.16B, V19.16B ; +0x540, 0x103590 FNEG V19.4S, V23.4S ; +0x544, 0x103594 FMLA V19.4S, V1.4S, V16.4S ; +0x548, 0x103598 MOV V16.16B, V20.16B ; +0x54c, 0x10359c FNEG V20.4S, V22.4S ; +0x550, 0x1035a0 FMLA V20.4S, V1.4S, V21.4S ; +0x554, 0x1035a4 ADD X21, X21, X8 ; +0x558, 0x1035a8 CBNZ W22, loc_10352C ; +0x55c, 0x1035ac B def_10351C; jumptable 000000000010351C default case ; +0x560, 0x1035b0 MOV X21, XZR ; +0x564, 0x1035b4 MOV W22, W2 ; +0x568, 0x1035b8 CBZ W22, def_10351C; jumptable 000000000010351C default case ; +0x56c, 0x1035bc LDR Q21, [X0,X21] ; +0x570, 0x1035c0 SUB W22, W22, #1 ; +0x574, 0x1035c4 FMLA V20.4S, V3.4S, V21.4S ; +0x578, 0x1035c8 FMLA V16.4S, V0.4S, V21.4S ; +0x57c, 0x1035cc FMUL V22.4S, V16.4S, V4.4S ; +0x580, 0x1035d0 FMLS V20.4S, V2.4S, V16.4S ; +0x584, 0x1035d4 STR D16, [X1,X21] ; +0x588, 0x1035d8 MOV V16.16B, V20.16B ; +0x58c, 0x1035dc FNEG V20.4S, V22.4S ; +0x590, 0x1035e0 FMLA V20.4S, V1.4S, V21.4S ; +0x594, 0x1035e4 ADD X21, X21, X8 ; +0x598, 0x1035e8 CBNZ W22, loc_1035C0 ; +0x59c, 0x1035ec B def_10351C; jumptable 000000000010351C default case ; +0x5a0, 0x1035f0 MOV X21, XZR ; +0x5a4, 0x1035f4 MOV W22, W2 ; +0x5a8, 0x1035f8 CBZ W22, def_10351C; jumptable 000000000010351C default case ; +0x5ac, 0x1035fc LDR Q21, [X0,X21] ; +0x5b0, 0x103600 ADD X23, X1, X21 ; +0x5b4, 0x103604 ADD X24, X23, #8 ; +0x5b8, 0x103608 SUB W22, W22, #1 ; +0x5bc, 0x10360c FMLA V20.4S, V3.4S, V21.4S ; +0x5c0, 0x103610 FMLA V16.4S, V0.4S, V21.4S ; +0x5c4, 0x103614 FMUL V22.4S, V16.4S, V4.4S ; +0x5c8, 0x103618 FMLS V20.4S, V2.4S, V16.4S ; +0x5cc, 0x10361c STR D16, [X23] ; +0x5d0, 0x103620 ST1 {V16.S}[2], [X24] ; +0x5d4, 0x103624 MOV V16.16B, V20.16B ; +0x5d8, 0x103628 FNEG V20.4S, V22.4S ; +0x5dc, 0x10362c FMLA V20.4S, V1.4S, V21.4S ; +0x5e0, 0x103630 ADD X21, X21, X8 ; +0x5e4, 0x103634 CBNZ W22, loc_103600 ; +0x5e8, 0x103638 B def_10351C; jumptable 000000000010351C default case ; +0x5ec, 0x10363c MOV X21, XZR ; +0x5f0, 0x103640 MOV W22, W2 ; +0x5f4, 0x103644 CBZ W22, def_10351C; jumptable 000000000010351C default case ; +0x5f8, 0x103648 LDR Q21, [X0,X21] ; +0x5fc, 0x10364c SUB W22, W22, #1 ; +0x600, 0x103650 FMLA V20.4S, V3.4S, V21.4S ; +0x604, 0x103654 FMLA V16.4S, V0.4S, V21.4S ; +0x608, 0x103658 FMUL V22.4S, V16.4S, V4.4S ; +0x60c, 0x10365c FMLS V20.4S, V2.4S, V16.4S ; +0x610, 0x103660 STR Q16, [X1,X21] ; +0x614, 0x103664 MOV V16.16B, V20.16B ; +0x618, 0x103668 FNEG V20.4S, V22.4S ; +0x61c, 0x10366c FMLA V20.4S, V1.4S, V21.4S ; +0x620, 0x103670 ADD X21, X21, X8 ; +0x624, 0x103674 CBNZ W22, loc_10364C ; +0x628, 0x103678 B def_10351C; jumptable 000000000010351C default case ; +0x62c, 0x10367c MOV X21, XZR ; +0x630, 0x103680 MOV W22, W2 ; +0x634, 0x103684 CBZ W22, def_10351C; jumptable 000000000010351C default case ; +0x638, 0x103688 LDR Q21, [X0,X21] ; +0x63c, 0x10368c SUB W22, W22, #1 ; +0x640, 0x103690 FMLA V16.4S, V0.4S, V21.4S ; +0x644, 0x103694 FMLA V7.4S, V0.4S, V16.4S ; +0x648, 0x103698 FMLA V19.4S, V3.4S, V16.4S ; +0x64c, 0x10369c FMLA V20.4S, V3.4S, V21.4S ; +0x650, 0x1036a0 FMLS V19.4S, V2.4S, V7.4S ; +0x654, 0x1036a4 FMUL V23.4S, V7.4S, V4.4S ; +0x658, 0x1036a8 FMUL V22.4S, V16.4S, V4.4S ; +0x65c, 0x1036ac FMLS V20.4S, V2.4S, V16.4S ; +0x660, 0x1036b0 STR D7, [X1,X21] ; +0x664, 0x1036b4 MOV V7.16B, V19.16B ; +0x668, 0x1036b8 FNEG V19.4S, V23.4S ; +0x66c, 0x1036bc FMLA V19.4S, V1.4S, V16.4S ; +0x670, 0x1036c0 MOV V16.16B, V20.16B ; +0x674, 0x1036c4 FNEG V20.4S, V22.4S ; +0x678, 0x1036c8 FMLA V20.4S, V1.4S, V21.4S ; +0x67c, 0x1036cc ADD X21, X21, X8 ; +0x680, 0x1036d0 CBNZ W22, loc_10368C ; +0x684, 0x1036d4 B def_10351C; jumptable 000000000010351C default case ; +0x688, 0x1036d8 MOV X21, XZR ; +0x68c, 0x1036dc MOV W22, W2 ; +0x690, 0x1036e0 CBZ W22, def_10351C; jumptable 000000000010351C default case ; +0x694, 0x1036e4 LDR Q21, [X0,X21] ; +0x698, 0x1036e8 ADD X23, X1, X21 ; +0x69c, 0x1036ec SUB W22, W22, #1 ; +0x6a0, 0x1036f0 ADD X21, X21, X8 ; +0x6a4, 0x1036f4 FMLA V16.4S, V0.4S, V21.4S ; +0x6a8, 0x1036f8 FMLA V7.4S, V0.4S, V16.4S ; +0x6ac, 0x1036fc FMLA V19.4S, V3.4S, V16.4S ; +0x6b0, 0x103700 FMLA V20.4S, V3.4S, V21.4S ; +0x6b4, 0x103704 STR D7, [X23],#8 ; +0x6b8, 0x103708 FMLS V19.4S, V2.4S, V7.4S ; +0x6bc, 0x10370c FMUL V23.4S, V7.4S, V4.4S ; +0x6c0, 0x103710 FMUL V22.4S, V16.4S, V4.4S ; +0x6c4, 0x103714 FMLS V20.4S, V2.4S, V16.4S ; +0x6c8, 0x103718 ST1 {V7.S}[2], [X23] ; +0x6cc, 0x10371c MOV V7.16B, V19.16B ; +0x6d0, 0x103720 FNEG V19.4S, V23.4S ; +0x6d4, 0x103724 FMLA V19.4S, V1.4S, V16.4S ; +0x6d8, 0x103728 MOV V16.16B, V20.16B ; +0x6dc, 0x10372c FNEG V20.4S, V22.4S ; +0x6e0, 0x103730 FMLA V20.4S, V1.4S, V21.4S ; +0x6e4, 0x103734 CBNZ W22, loc_1036E8 ; +0x6e8, 0x103738 B def_10351C; jumptable 000000000010351C default case ; +0x6ec, 0x10373c MOV X21, XZR ; +0x6f0, 0x103740 MOV W22, W2 ; +0x6f4, 0x103744 CBZ W22, def_10351C; jumptable 000000000010351C default case ; +0x6f8, 0x103748 LDR Q21, [X0,X21] ; +0x6fc, 0x10374c SUB W22, W22, #1 ; +0x700, 0x103750 FMLA V16.4S, V0.4S, V21.4S ; +0x704, 0x103754 FMLA V7.4S, V0.4S, V16.4S ; +0x708, 0x103758 FMLA V19.4S, V3.4S, V16.4S ; +0x70c, 0x10375c FMLA V20.4S, V3.4S, V21.4S ; +0x710, 0x103760 FMLS V19.4S, V2.4S, V7.4S ; +0x714, 0x103764 FMUL V23.4S, V7.4S, V4.4S ; +0x718, 0x103768 FMUL V22.4S, V16.4S, V4.4S ; +0x71c, 0x10376c FMLS V20.4S, V2.4S, V16.4S ; +0x720, 0x103770 STR Q7, [X1,X21] ; +0x724, 0x103774 MOV V7.16B, V19.16B ; +0x728, 0x103778 FNEG V19.4S, V23.4S ; +0x72c, 0x10377c FMLA V19.4S, V1.4S, V16.4S ; +0x730, 0x103780 MOV V16.16B, V20.16B ; +0x734, 0x103784 FNEG V20.4S, V22.4S ; +0x738, 0x103788 FMLA V20.4S, V1.4S, V21.4S ; +0x73c, 0x10378c ADD X21, X21, X8 ; +0x740, 0x103790 CBNZ W22, loc_10374C ; +0x744, 0x103794 B def_10351C; jumptable 000000000010351C default case ; +0x748, 0x103798 MOV X21, XZR; jumptable 000000000010351C case 2 ; +0x74c, 0x10379c MOV W22, W2 ; +0x750, 0x1037a0 CBZ W22, def_10351C; jumptable 000000000010351C default case ; +0x754, 0x1037a4 LDR Q21, [X0,X21] ; +0x758, 0x1037a8 SUB W22, W22, #1 ; +0x75c, 0x1037ac FMLA V16.4S, V0.4S, V21.4S ; +0x760, 0x1037b0 FMLA V7.4S, V0.4S, V16.4S ; +0x764, 0x1037b4 FMLA V5.4S, V0.4S, V7.4S ; +0x768, 0x1037b8 FMLA V6.4S, V0.4S, V5.4S ; +0x76c, 0x1037bc FMLA V17.4S, V3.4S, V5.4S ; +0x770, 0x1037c0 FMLA V18.4S, V3.4S, V7.4S ; +0x774, 0x1037c4 FMLS V17.4S, V2.4S, V6.4S ; +0x778, 0x1037c8 FMUL V23.4S, V6.4S, V4.4S ; +0x77c, 0x1037cc FMLA V19.4S, V3.4S, V16.4S ; +0x780, 0x1037d0 FMLS V18.4S, V2.4S, V5.4S ; +0x784, 0x1037d4 STR D6, [X1,X21] ; +0x788, 0x1037d8 MOV V6.16B, V17.16B ; +0x78c, 0x1037dc FNEG V17.4S, V23.4S ; +0x790, 0x1037e0 FMUL V23.4S, V5.4S, V4.4S ; +0x794, 0x1037e4 FMLA V20.4S, V3.4S, V21.4S ; +0x798, 0x1037e8 FMLS V19.4S, V2.4S, V7.4S ; +0x79c, 0x1037ec FMLA V17.4S, V1.4S, V5.4S ; +0x7a0, 0x1037f0 MOV V5.16B, V18.16B ; +0x7a4, 0x1037f4 FNEG V18.4S, V23.4S ; +0x7a8, 0x1037f8 FMUL V23.4S, V7.4S, V4.4S ; +0x7ac, 0x1037fc FMUL V22.4S, V16.4S, V4.4S ; +0x7b0, 0x103800 FMLS V20.4S, V2.4S, V16.4S ; +0x7b4, 0x103804 FMLA V18.4S, V1.4S, V7.4S ; +0x7b8, 0x103808 MOV V7.16B, V19.16B ; +0x7bc, 0x10380c FNEG V19.4S, V23.4S ; +0x7c0, 0x103810 FMLA V19.4S, V1.4S, V16.4S ; +0x7c4, 0x103814 MOV V16.16B, V20.16B ; +0x7c8, 0x103818 FNEG V20.4S, V22.4S ; +0x7cc, 0x10381c FMLA V20.4S, V1.4S, V21.4S ; +0x7d0, 0x103820 ADD X21, X21, X8 ; +0x7d4, 0x103824 CBNZ W22, loc_1037A8 ; +0x7d8, 0x103828 B def_10351C; jumptable 000000000010351C default case ; +0x7dc, 0x10382c MOV X21, XZR; jumptable 000000000010351C case 3 ; +0x7e0, 0x103830 MOV W22, W2 ; +0x7e4, 0x103834 CBZ W22, def_10351C; jumptable 000000000010351C default case ; +0x7e8, 0x103838 LDR Q21, [X0,X21] ; +0x7ec, 0x10383c ADD X23, X1, X21 ; +0x7f0, 0x103840 SUB W22, W22, #1 ; +0x7f4, 0x103844 ADD X21, X21, X8 ; +0x7f8, 0x103848 FMLA V16.4S, V0.4S, V21.4S ; +0x7fc, 0x10384c FMLA V7.4S, V0.4S, V16.4S ; +0x800, 0x103850 FMLA V5.4S, V0.4S, V7.4S ; +0x804, 0x103854 FMLA V6.4S, V0.4S, V5.4S ; +0x808, 0x103858 FMLA V17.4S, V3.4S, V5.4S ; +0x80c, 0x10385c STR D6, [X23],#8 ; +0x810, 0x103860 FMLA V18.4S, V3.4S, V7.4S ; +0x814, 0x103864 FMLS V17.4S, V2.4S, V6.4S ; +0x818, 0x103868 FMUL V23.4S, V6.4S, V4.4S ; +0x81c, 0x10386c FMLA V19.4S, V3.4S, V16.4S ; +0x820, 0x103870 FMLS V18.4S, V2.4S, V5.4S ; +0x824, 0x103874 ST1 {V6.S}[2], [X23] ; +0x828, 0x103878 MOV V6.16B, V17.16B ; +0x82c, 0x10387c FNEG V17.4S, V23.4S ; +0x830, 0x103880 FMUL V23.4S, V5.4S, V4.4S ; +0x834, 0x103884 FMLA V20.4S, V3.4S, V21.4S ; +0x838, 0x103888 FMLS V19.4S, V2.4S, V7.4S ; +0x83c, 0x10388c FMLA V17.4S, V1.4S, V5.4S ; +0x840, 0x103890 MOV V5.16B, V18.16B ; +0x844, 0x103894 FNEG V18.4S, V23.4S ; +0x848, 0x103898 FMUL V23.4S, V7.4S, V4.4S ; +0x84c, 0x10389c FMUL V22.4S, V16.4S, V4.4S ; +0x850, 0x1038a0 FMLS V20.4S, V2.4S, V16.4S ; +0x854, 0x1038a4 FMLA V18.4S, V1.4S, V7.4S ; +0x858, 0x1038a8 MOV V7.16B, V19.16B ; +0x85c, 0x1038ac FNEG V19.4S, V23.4S ; +0x860, 0x1038b0 FMLA V19.4S, V1.4S, V16.4S ; +0x864, 0x1038b4 MOV V16.16B, V20.16B ; +0x868, 0x1038b8 FNEG V20.4S, V22.4S ; +0x86c, 0x1038bc FMLA V20.4S, V1.4S, V21.4S ; +0x870, 0x1038c0 CBNZ W22, loc_10383C ; +0x874, 0x1038c4 B def_10351C; jumptable 000000000010351C default case ; +0x878, 0x1038c8 MOV X21, XZR; jumptable 000000000010351C case 4 ; +0x87c, 0x1038cc MOV W22, W2 ; +0x880, 0x1038d0 CBZ W22, def_10351C; jumptable 000000000010351C default case ; +0x884, 0x1038d4 LDR Q21, [X0,X21] ; +0x888, 0x1038d8 SUB W22, W22, #1 ; +0x88c, 0x1038dc FMLA V16.4S, V0.4S, V21.4S ; +0x890, 0x1038e0 FMLA V7.4S, V0.4S, V16.4S ; +0x894, 0x1038e4 FMLA V5.4S, V0.4S, V7.4S ; +0x898, 0x1038e8 FMLA V6.4S, V0.4S, V5.4S ; +0x89c, 0x1038ec FMLA V17.4S, V3.4S, V5.4S ; +0x8a0, 0x1038f0 FMLA V18.4S, V3.4S, V7.4S ; +0x8a4, 0x1038f4 FMLS V17.4S, V2.4S, V6.4S ; +0x8a8, 0x1038f8 FMUL V23.4S, V6.4S, V4.4S ; +0x8ac, 0x1038fc FMLA V19.4S, V3.4S, V16.4S ; +0x8b0, 0x103900 FMLS V18.4S, V2.4S, V5.4S ; +0x8b4, 0x103904 STR Q6, [X1,X21] ; +0x8b8, 0x103908 MOV V6.16B, V17.16B ; +0x8bc, 0x10390c FNEG V17.4S, V23.4S ; +0x8c0, 0x103910 FMUL V23.4S, V5.4S, V4.4S ; +0x8c4, 0x103914 FMLA V20.4S, V3.4S, V21.4S ; +0x8c8, 0x103918 FMLS V19.4S, V2.4S, V7.4S ; +0x8cc, 0x10391c FMLA V17.4S, V1.4S, V5.4S ; +0x8d0, 0x103920 MOV V5.16B, V18.16B ; +0x8d4, 0x103924 FNEG V18.4S, V23.4S ; +0x8d8, 0x103928 FMUL V23.4S, V7.4S, V4.4S ; +0x8dc, 0x10392c FMUL V22.4S, V16.4S, V4.4S ; +0x8e0, 0x103930 FMLS V20.4S, V2.4S, V16.4S ; +0x8e4, 0x103934 FMLA V18.4S, V1.4S, V7.4S ; +0x8e8, 0x103938 MOV V7.16B, V19.16B ; +0x8ec, 0x10393c FNEG V19.4S, V23.4S ; +0x8f0, 0x103940 FMLA V19.4S, V1.4S, V16.4S ; +0x8f4, 0x103944 MOV V16.16B, V20.16B ; +0x8f8, 0x103948 FNEG V20.4S, V22.4S ; +0x8fc, 0x10394c FMLA V20.4S, V1.4S, V21.4S ; +0x900, 0x103950 ADD X21, X21, X8 ; +0x904, 0x103954 CBNZ W22, loc_1038D8 ; +0x908, 0x103958 MOV X21, XZR; jumptable 000000000010351C default case ; +0x90c, 0x10395c STP Q20, Q16, [SP,#0x120+var_C0] ; +0x910, 0x103960 STP Q19, Q7, [SP,#0x120+var_E0] ; +0x914, 0x103964 STP Q18, Q5, [SP,#0x120+var_100] ; +0x918, 0x103968 STP Q17, Q6, [SP,#0x120+var_120] ; +0x91c, 0x10396c CMP X21, X6 ; +0x920, 0x103970 B.GE loc_1039CC ; +0x924, 0x103974 LDR W22, [X11,X21,LSL#2] ; +0x928, 0x103978 LDR X23, [X10,X21,LSL#3] ; +0x92c, 0x10397c STR W22, [X23] ; +0x930, 0x103980 LDR W22, [X12,X21,LSL#2] ; +0x934, 0x103984 STR W22, [X23,#4] ; +0x938, 0x103988 LDR W22, [X13,X21,LSL#2] ; +0x93c, 0x10398c STR W22, [X23,#8] ; +0x940, 0x103990 LDR W22, [X14,X21,LSL#2] ; +0x944, 0x103994 STR W22, [X23,#0xC] ; +0x948, 0x103998 LDR W22, [X15,X21,LSL#2] ; +0x94c, 0x10399c STR W22, [X23,#0x10] ; +0x950, 0x1039a0 LDR W22, [X16,X21,LSL#2] ; +0x954, 0x1039a4 STR W22, [X23,#0x14] ; +0x958, 0x1039a8 LDR W22, [X17,X21,LSL#2] ; +0x95c, 0x1039ac STR W22, [X23,#0x18] ; +0x960, 0x1039b0 LDR W22, [X3,X21,LSL#2] ; +0x964, 0x1039b4 STR W22, [X23,#0x1C] ; +0x968, 0x1039b8 ADD X22, X23, #0x80 ; +0x96c, 0x1039bc STR X22, [X10,X21,LSL#3] ; +0x970, 0x1039c0 ADD X21, X21, #1 ; +0x974, 0x1039c4 B loc_103970 ; +0x978, 0x1039c8 ADD X1, X1, #0x10 ; +0x97c, 0x1039cc ADD X0, X0, #0x10 ; +0x980, 0x1039d0 MOV W6, W20 ; +0x984, 0x1039d4 B loc_103398 ; +0x988, 0x1039d8 LDP X20, X19, [SP,#0x120+var_10] ; +0x98c, 0x1039dc LDP X22, X21, [SP,#0x120+var_20] ; +0x990, 0x1039e0 LDP X24, X23, [SP,#0x120+var_30] ; +0x994, 0x1039e4 LDR X28, [SP,#0x120+var_40] ; +0x998, 0x1039e8 LDP D9, D8, [SP,#0x120+var_50] ; +0x99c, 0x1039ec LDP D11, D10, [SP,#0x120+var_60] ; +0x9a0, 0x1039f0 LDP D13, D12, [SP,#0x120+var_70] ; +0x9a4, 0x1039f4 LDP D15, D14, [SP,#0x120+var_80] ; +0x9a8, 0x1039f8 ADD SP, SP, #0x120 ; +0x9ac, 0x1039fc RET ; +0x9b0, 0x103a00 LDR S0, [X4,#0x10] ; +0x9b4, 0x103a04 FCMP S0, #0.0 ; +0x9b8, 0x103a08 CSET W8, NE ; +0x9bc, 0x103a0c B loc_1030A8 ; +0x9c0, 0x103a10