; ; sub_1022D4 from 0x1022d4 to 0x1024f0 (540 bytes) ; ; 1 xrefs: ; > @ 0x11a100 ; ; 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 ; CBZ W1, loc_102348 ; +0x0, 0x1022d4 AND X8, X0, #0xF ; +0x4, 0x1022d8 CBZ X8, loc_102348 ; +0x8, 0x1022dc LD1R {V0.4S}, [X4] ; +0xc, 0x1022e0 LD1R {V1.4S}, [X3] ; +0x10, 0x1022e4 ADD X8, X2, #0x10 ; +0x14, 0x1022e8 MOVI V2.4S, #0x30,LSL#24 ; '0' ; +0x18, 0x1022ec MOVI V3.4S, #0x38,LSL#24 ; '8' ; +0x1c, 0x1022f0 CBZ W1, loc_102348 ; +0x20, 0x1022f4 AND X9, X0, #0xF ; +0x24, 0x1022f8 CBZ X9, loc_102348 ; +0x28, 0x1022fc LDR W9, [X3,#4] ; +0x2c, 0x102300 USHR V4.4S, V1.4S, #1 ; +0x30, 0x102304 UCVTF V4.4S, V4.4S ; +0x34, 0x102308 FMUL V4.4S, V4.4S, V2.4S ; +0x38, 0x10230c LSL W9, W9, #3 ; +0x3c, 0x102310 LSL X9, X9, #1 ; +0x40, 0x102314 LDR Q5, [X2,X9] ; +0x44, 0x102318 LDR Q6, [X8,X9] ; +0x48, 0x10231c ADD V1.4S, V1.4S, V0.4S ; +0x4c, 0x102320 SUB W1, W1, #1 ; +0x50, 0x102324 MOV X5, X30 ; +0x54, 0x102328 BL sub_102D18 ; +0x58, 0x10232c MOV X30, X5 ; +0x5c, 0x102330 LDR X9, [X4] ; +0x60, 0x102334 LDR X10, [X3] ; +0x64, 0x102338 ADD X9, X10, X9 ; +0x68, 0x10233c STR X9, [X3] ; +0x6c, 0x102340 CBNZ W1, loc_1022F8 ; +0x70, 0x102344 ASR W8, W1, #2 ; +0x74, 0x102348 CBZ W8, loc_102488 ; +0x78, 0x10234c MOV X5, X30 ; +0x7c, 0x102350 BL sub_102CA4 ; +0x80, 0x102354 MOV X30, X5 ; +0x84, 0x102358 CBZ W8, loc_102484 ; +0x88, 0x10235c EXT V6.16B, V1.16B, V1.16B, #8 ; +0x8c, 0x102360 ZIP2 V6.2S, V1.2S, V6.2S ; +0x90, 0x102364 SHL V6.2S, V6.2S, #3 ; +0x94, 0x102368 FMOV W10, S6 ; +0x98, 0x10236c ADD X10, X2, W10,UXTW#1 ; +0x9c, 0x102370 UMOV W9, V6.S[1] ; +0xa0, 0x102374 LDP Q6, Q16, [X10] ; +0xa4, 0x102378 UZP1 V5.4S, V1.4S, V3.4S ; +0xa8, 0x10237c USHR V5.4S, V5.4S, #1 ; +0xac, 0x102380 UCVTF V5.4S, V5.4S ; +0xb0, 0x102384 SSHLL V17.4S, V6.4H, #0 ; +0xb4, 0x102388 SSHLL2 V6.4S, V6.8H, #0 ; +0xb8, 0x10238c SSHLL V18.4S, V16.4H, #0 ; +0xbc, 0x102390 SSHLL2 V16.4S, V16.8H, #0 ; +0xc0, 0x102394 SCVTF V17.4S, V17.4S ; +0xc4, 0x102398 SCVTF V6.4S, V6.4S ; +0xc8, 0x10239c SCVTF V18.4S, V18.4S ; +0xcc, 0x1023a0 SCVTF V16.4S, V16.4S ; +0xd0, 0x1023a4 FMUL V5.4S, V5.4S, V0.4S ; +0xd4, 0x1023a8 FSUB V18.4S, V18.4S, V17.4S ; +0xd8, 0x1023ac FSUB V16.4S, V16.4S, V6.4S ; +0xdc, 0x1023b0 FMLA V17.4S, V18.4S, V5.S[0] ; +0xe0, 0x1023b4 FMLA V6.4S, V16.4S, V5.S[0] ; +0xe4, 0x1023b8 FMUL V16.4S, V17.4S, V4.4S ; +0xe8, 0x1023bc FMUL V6.4S, V6.4S, V4.4S ; +0xec, 0x1023c0 ADD X9, X2, W9,UXTW#1 ; +0xf0, 0x1023c4 STP Q16, Q6, [X0] ; +0xf4, 0x1023c8 LDP Q6, Q16, [X9] ; +0xf8, 0x1023cc EXT V7.16B, V3.16B, V3.16B, #8 ; +0xfc, 0x1023d0 ZIP2 V7.2S, V3.2S, V7.2S ; +0x100, 0x1023d4 SHL V7.2S, V7.2S, #3 ; +0x104, 0x1023d8 UMOV W10, V7.S[1] ; +0x108, 0x1023dc FMOV W9, S7 ; +0x10c, 0x1023e0 SSHLL V7.4S, V6.4H, #0 ; +0x110, 0x1023e4 SSHLL2 V6.4S, V6.8H, #0 ; +0x114, 0x1023e8 SSHLL V17.4S, V16.4H, #0 ; +0x118, 0x1023ec SSHLL2 V16.4S, V16.8H, #0 ; +0x11c, 0x1023f0 SCVTF V7.4S, V7.4S ; +0x120, 0x1023f4 SCVTF V6.4S, V6.4S ; +0x124, 0x1023f8 SCVTF V17.4S, V17.4S ; +0x128, 0x1023fc SCVTF V16.4S, V16.4S ; +0x12c, 0x102400 FSUB V17.4S, V17.4S, V7.4S ; +0x130, 0x102404 FSUB V16.4S, V16.4S, V6.4S ; +0x134, 0x102408 FMLA V7.4S, V17.4S, V5.S[1] ; +0x138, 0x10240c FMLA V6.4S, V16.4S, V5.S[1] ; +0x13c, 0x102410 FMUL V7.4S, V7.4S, V4.4S ; +0x140, 0x102414 FMUL V6.4S, V6.4S, V4.4S ; +0x144, 0x102418 ADD X9, X2, W9,UXTW#1 ; +0x148, 0x10241c STP Q7, Q6, [X0,#0x20] ; +0x14c, 0x102420 LDP Q6, Q7, [X9] ; +0x150, 0x102424 ADD X9, X2, W10,UXTW#1 ; +0x154, 0x102428 SUB W8, W8, #1 ; +0x158, 0x10242c ADD V1.2D, V1.2D, V2.2D ; +0x15c, 0x102430 MOV X5, X30 ; +0x160, 0x102434 BL sub_102DE4 ; +0x164, 0x102438 MOV X30, X5 ; +0x168, 0x10243c FMLA V16.4S, V17.4S, V5.S[2] ; +0x16c, 0x102440 FMLA V6.4S, V7.4S, V5.S[2] ; +0x170, 0x102444 FMUL V7.4S, V16.4S, V4.4S ; +0x174, 0x102448 FMUL V6.4S, V6.4S, V4.4S ; +0x178, 0x10244c STP Q7, Q6, [X0,#0x40] ; +0x17c, 0x102450 LDP Q6, Q7, [X9] ; +0x180, 0x102454 ADD V3.2D, V3.2D, V2.2D ; +0x184, 0x102458 MOV X5, X30 ; +0x188, 0x10245c BL sub_102DE4 ; +0x18c, 0x102460 MOV X30, X5 ; +0x190, 0x102464 FMLA V16.4S, V17.4S, V5.S[3] ; +0x194, 0x102468 FMLA V6.4S, V7.4S, V5.S[3] ; +0x198, 0x10246c FMUL V5.4S, V16.4S, V4.4S ; +0x19c, 0x102470 FMUL V6.4S, V6.4S, V4.4S ; +0x1a0, 0x102474 STP Q5, Q6, [X0,#0x60] ; +0x1a4, 0x102478 ADD X0, X0, #0x80 ; +0x1a8, 0x10247c CBNZ W8, loc_102360 ; +0x1ac, 0x102480 STR D1, [X3] ; +0x1b0, 0x102484 ANDS W8, W1, #3 ; +0x1b4, 0x102488 B.EQ locret_1024EC ; +0x1b8, 0x10248c LD1R {V0.4S}, [X4] ; +0x1bc, 0x102490 LD1R {V1.4S}, [X3] ; +0x1c0, 0x102494 ADD X9, X2, #0x10 ; +0x1c4, 0x102498 MOVI V2.4S, #0x30,LSL#24 ; '0' ; +0x1c8, 0x10249c MOVI V3.4S, #0x38,LSL#24 ; '8' ; +0x1cc, 0x1024a0 CBZ W8, locret_1024EC ; +0x1d0, 0x1024a4 LDR W10, [X3,#4] ; +0x1d4, 0x1024a8 USHR V4.4S, V1.4S, #1 ; +0x1d8, 0x1024ac UCVTF V4.4S, V4.4S ; +0x1dc, 0x1024b0 FMUL V4.4S, V4.4S, V2.4S ; +0x1e0, 0x1024b4 LSL W10, W10, #3 ; +0x1e4, 0x1024b8 LSL X10, X10, #1 ; +0x1e8, 0x1024bc LDR Q5, [X2,X10] ; +0x1ec, 0x1024c0 LDR Q6, [X9,X10] ; +0x1f0, 0x1024c4 ADD V1.4S, V1.4S, V0.4S ; +0x1f4, 0x1024c8 SUB W8, W8, #1 ; +0x1f8, 0x1024cc MOV X1, X30 ; +0x1fc, 0x1024d0 BL sub_102D18 ; +0x200, 0x1024d4 MOV X30, X1 ; +0x204, 0x1024d8 MOV X1, X30 ; +0x208, 0x1024dc BL sub_102E10 ; +0x20c, 0x1024e0 MOV X30, X1 ; +0x210, 0x1024e4 CBNZ W8, loc_1024A8 ; +0x214, 0x1024e8 RET ; +0x218, 0x1024ec