; ; sub_590BC from 0x590bc to 0x59168 (172 bytes) ; ; 1 xrefs: ; > @ 0x10c590 ; ; 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 ; STP X20, X19, [SP,#-0x10+var_10]! ; +0x0, 0x590bc FMOV S2, #1.0 ; +0x4, 0x590c0 FMOV S3, WZR ; +0x8, 0x590c4 FMINNM S0, S0, S2 ; +0xc, 0x590c8 FMINNM S4, S1, S2 ; +0x10, 0x590cc FMAXNM S1, S0, S3 ; +0x14, 0x590d0 FMAXNM S0, S4, S3 ; +0x18, 0x590d4 STP X29, X30, [SP,#0x10+var_s0] ; +0x1c, 0x590d8 ADD X29, SP, #0x10 ; +0x20, 0x590dc STP S1, S0, [X0,#0xC0] ; +0x24, 0x590e0 TBZ W1, #0, loc_590EC ; +0x28, 0x590e4 STP S1, S0, [X0,#0xC8] ; +0x2c, 0x590e8 LDR X8, [X0,#0x20] ; +0x30, 0x590ec CBZ X8, loc_5910C ; +0x34, 0x590f0 LDR S3, [X8,#0x1F0] ; +0x38, 0x590f4 LDR S4, [X0,#0xD0] ; +0x3c, 0x590f8 LDR S2, [X8,#0x1F4] ; +0x40, 0x590fc FMSUB S1, S1, S3, S3 ; +0x44, 0x59100 FMSUB S1, S4, S1, S1 ; +0x48, 0x59104 B loc_59118 ; +0x4c, 0x59108 LDR S3, [X0,#0xD0] ; +0x50, 0x5910c FSUB S1, S2, S1 ; +0x54, 0x59110 FMSUB S1, S3, S1, S1 ; +0x58, 0x59114 LDR S3, [X0,#0xD4] ; +0x5c, 0x59118 FMSUB S0, S0, S2, S2 ; +0x60, 0x5911c ADD X19, X0, #0x190 ; +0x64, 0x59120 MOV X20, X19 ; +0x68, 0x59124 FMSUB S0, S3, S0, S0 ; +0x6c, 0x59128 STR S1, [X0,#0x1F0] ; +0x70, 0x5912c STR S0, [X0,#0x1F4] ; +0x74, 0x59130 LDR X20, [X20] ; +0x78, 0x59134 CMP X20, X19 ; +0x7c, 0x59138 B.EQ loc_5915C ; +0x80, 0x5913c LDR X0, [X20,#0x10] ; +0x84, 0x59140 MOV W1, WZR ; +0x88, 0x59144 LDR X8, [X0] ; +0x8c, 0x59148 LDP S0, S1, [X0,#0xC0] ; +0x90, 0x5914c LDR X8, [X8,#0x198] ; +0x94, 0x59150 BLR X8 ; +0x98, 0x59154 B loc_59134 ; +0x9c, 0x59158 LDP X29, X30, [SP,#0x10+var_s0] ; +0xa0, 0x5915c MOV W0, WZR ; +0xa4, 0x59160 B loc_5940C ; +0xa8, 0x59164