; ; sub_102E24 from 0x102e24 to 0x103050 (556 bytes) ; ; 1 xrefs: ; > sub_87AB0 @ 0x87ae8 ; ; 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 ; STR X19, [SP,#-0x10+var_10]! ; +0x0, 0x102e24 ADRP X8, #xmmword_2F660@PAGE ; +0x4, 0x102e28 LDR Q0, [X8,#xmmword_2F660@PAGEOFF] ; +0x8, 0x102e2c MOV X19, X0 ; +0xc, 0x102e30 MOV W8, WZR ; +0x10, 0x102e34 STP X29, X30, [SP,#0x10+var_s0] ; +0x14, 0x102e38 ADD X29, SP, #0x10 ; +0x18, 0x102e3c LDR W9, [X19,#0x14] ; +0x1c, 0x102e40 CMP W8, W9 ; +0x20, 0x102e44 B.GE loc_102F34 ; +0x24, 0x102e48 LDR W9, [X19,#0x54] ; +0x28, 0x102e4c LDR W10, [X19,#0x18] ; +0x2c, 0x102e50 LDR W11, [X19,#0x20] ; +0x30, 0x102e54 LDR W14, [X19,#0x10] ; +0x34, 0x102e58 ADD W9, W9, W8 ; +0x38, 0x102e5c ADD W9, W9, W10 ; +0x3c, 0x102e60 SDIV W10, W9, W11 ; +0x40, 0x102e64 LDR X13, [X19,#0x60] ; +0x44, 0x102e68 MSUB W9, W10, W11, W9 ; +0x48, 0x102e6c LDP X12, X11, [X19,#0x70] ; +0x4c, 0x102e70 ADD W10, W14, #1 ; +0x50, 0x102e74 MUL W9, W10, W9 ; +0x54, 0x102e78 MUL W10, W10, W8 ; +0x58, 0x102e7c ADD X12, X12, W10,SXTW#3 ; +0x5c, 0x102e80 ADD X13, X13, W9,SXTW#3 ; +0x60, 0x102e84 ASR W14, W14, #2 ; +0x64, 0x102e88 CBZ W14, loc_102EE0 ; +0x68, 0x102e8c LDP Q1, Q2, [X13],#0x20 ; +0x6c, 0x102e90 LDP Q3, Q4, [X12],#0x20 ; +0x70, 0x102e94 LDP Q5, Q6, [X11] ; +0x74, 0x102e98 SUB W14, W14, #1 ; +0x78, 0x102e9c TRN1 V7.4S, V1.4S, V1.4S ; +0x7c, 0x102ea0 TRN2 V1.4S, V1.4S, V1.4S ; +0x80, 0x102ea4 FMUL V7.4S, V3.4S, V7.4S ; +0x84, 0x102ea8 REV64 V3.4S, V3.4S ; +0x88, 0x102eac FMUL V1.4S, V1.4S, V0.4S ; +0x8c, 0x102eb0 FMLA V7.4S, V3.4S, V1.4S ; +0x90, 0x102eb4 TRN1 V1.4S, V2.4S, V2.4S ; +0x94, 0x102eb8 TRN2 V2.4S, V2.4S, V2.4S ; +0x98, 0x102ebc REV64 V3.4S, V4.4S ; +0x9c, 0x102ec0 FMUL V1.4S, V4.4S, V1.4S ; +0xa0, 0x102ec4 FMUL V2.4S, V2.4S, V0.4S ; +0xa4, 0x102ec8 FMLA V1.4S, V3.4S, V2.4S ; +0xa8, 0x102ecc FADD V2.4S, V7.4S, V5.4S ; +0xac, 0x102ed0 FADD V1.4S, V1.4S, V6.4S ; +0xb0, 0x102ed4 STP Q2, Q1, [X11],#0x20 ; +0xb4, 0x102ed8 CBNZ W14, loc_102E90 ; +0xb8, 0x102edc LDRSW X11, [X19,#0x10] ; +0xbc, 0x102ee0 LDR X12, [X19,#0x70] ; +0xc0, 0x102ee4 LDR X13, [X19,#0x60] ; +0xc4, 0x102ee8 ADD W8, W8, #1 ; +0xc8, 0x102eec ADD W10, W11, W10 ; +0xcc, 0x102ef0 ADD X10, X12, W10,SXTW#3 ; +0xd0, 0x102ef4 LD1R {V1.2S}, [X10],#4 ; +0xd4, 0x102ef8 ADD W9, W11, W9 ; +0xd8, 0x102efc LDR D2, [X13,W9,SXTW#3] ; +0xdc, 0x102f00 LDR X9, [X19,#0x78] ; +0xe0, 0x102f04 LDR S3, [X10] ; +0xe4, 0x102f08 FMUL V1.2S, V2.2S, V1.2S ; +0xe8, 0x102f0c REV64 V2.2S, V2.2S ; +0xec, 0x102f10 LDR D4, [X9,X11,LSL#3] ; +0xf0, 0x102f14 FMUL V2.2S, V2.2S, V3.S[0] ; +0xf4, 0x102f18 FSUB V3.2S, V1.2S, V2.2S ; +0xf8, 0x102f1c FADD V1.2S, V1.2S, V2.2S ; +0xfc, 0x102f20 INS V3.S[1], V1.S[1] ; +0x100, 0x102f24 FADD V1.2S, V3.2S, V4.2S ; +0x104, 0x102f28 STR D1, [X9,X11,LSL#3] ; +0x108, 0x102f2c B loc_102E40 ; +0x10c, 0x102f30 LDR X1, [X19,#0x78] ; +0x110, 0x102f34 LDRSW X8, [X19,#0x24] ; +0x114, 0x102f38 LDR W9, [X19,#0x10] ; +0x118, 0x102f3c LDR S0, [X1,#0x14] ; +0x11c, 0x102f40 ADD X10, X1, X8,LSL#3 ; +0x120, 0x102f44 LSL X8, X8, #3 ; +0x124, 0x102f48 ASR W9, W9, #2 ; +0x128, 0x102f4c FNEG S0, S0 ; +0x12c, 0x102f50 STUR S0, [X10,#-0xC] ; +0x130, 0x102f54 LDR S0, [X1,#0x1C] ; +0x134, 0x102f58 SUB X8, X8, #0x1C ; +0x138, 0x102f5c SUB W9, W9, #1 ; +0x13c, 0x102f60 FNEG S0, S0 ; +0x140, 0x102f64 STUR S0, [X10,#-0x14] ; +0x144, 0x102f68 MOV W10, #0x24 ; '$' ; +0x148, 0x102f6c ADD X12, X1, X10 ; +0x14c, 0x102f70 LDR S0, [X12] ; +0x150, 0x102f74 ADD X11, X1, X8 ; +0x154, 0x102f78 FNEG S0, S0 ; +0x158, 0x102f7c STR S0, [X11] ; +0x15c, 0x102f80 CBZ W9, loc_102FBC ; +0x160, 0x102f84 LDR S0, [X12,#8] ; +0x164, 0x102f88 SUB X8, X8, #0x20 ; ' ' ; +0x168, 0x102f8c ADD X10, X10, #0x20 ; ' ' ; +0x16c, 0x102f90 SUB W9, W9, #1 ; +0x170, 0x102f94 FNEG S0, S0 ; +0x174, 0x102f98 STUR S0, [X11,#-8] ; +0x178, 0x102f9c LDR S0, [X12,#0x10] ; +0x17c, 0x102fa0 FNEG S0, S0 ; +0x180, 0x102fa4 STUR S0, [X11,#-0x10] ; +0x184, 0x102fa8 LDR S0, [X12,#0x18] ; +0x188, 0x102fac FNEG S0, S0 ; +0x18c, 0x102fb0 STUR S0, [X11,#-0x18] ; +0x190, 0x102fb4 B loc_102F70 ; +0x194, 0x102fb8 LDR X0, [X19,#0x48] ; +0x198, 0x102fbc LDR X2, [X19,#0x80] ; +0x19c, 0x102fc0 MOV W4, #1 ; +0x1a0, 0x102fc4 MOV X3, XZR ; +0x1a4, 0x102fc8 BL sub_7259C ; +0x1a8, 0x102fcc CBNZ W0, loc_103044 ; +0x1ac, 0x102fd0 LDR S0, [X19,#0x24] ; +0x1b0, 0x102fd4 LDRSW X10, [X19,#0x5C] ; +0x1b4, 0x102fd8 LDP X11, X12, [X19,#0x38] ; +0x1b8, 0x102fdc LDRSW X13, [X19,#0x10] ; +0x1bc, 0x102fe0 LDR X9, [X19,#0x80] ; +0x1c0, 0x102fe4 FMOV S1, #1.0 ; +0x1c4, 0x102fe8 SCVTF S0, S0 ; +0x1c8, 0x102fec FDIV S0, S1, S0 ; +0x1cc, 0x102ff0 MOV W8, WZR ; +0x1d0, 0x102ff4 ADD X10, X11, X10,LSL#2 ; +0x1d4, 0x102ff8 DUP V0.4S, V0.S[0] ; +0x1d8, 0x102ffc LSL X11, X13, #2 ; +0x1dc, 0x103000 CMP W8, W13 ; +0x1e0, 0x103004 B.GE loc_103040 ; +0x1e4, 0x103008 MOV X14, X12 ; +0x1e8, 0x10300c LDR Q1, [X9] ; +0x1ec, 0x103010 LDR Q2, [X14],#0x10 ; +0x1f0, 0x103014 LDR Q3, [X9,X11] ; +0x1f4, 0x103018 ADD X9, X9, #0x10 ; +0x1f8, 0x10301c ADD W8, W8, #4 ; +0x1fc, 0x103020 FADD V1.4S, V2.4S, V1.4S ; +0x200, 0x103024 FMUL V1.4S, V1.4S, V0.4S ; +0x204, 0x103028 STR Q3, [X12] ; +0x208, 0x10302c STR Q1, [X10],#0x10 ; +0x20c, 0x103030 LDR W13, [X19,#0x10] ; +0x210, 0x103034 MOV X12, X14 ; +0x214, 0x103038 B loc_103004 ; +0x218, 0x10303c MOV W0, WZR ; +0x21c, 0x103040 LDP X29, X30, [SP,#0x10+var_s0] ; +0x220, 0x103044 LDR X19, [SP+0x10+var_10],#0x20 ; +0x224, 0x103048 RET ; +0x228, 0x10304c