; ; sub_57E88 from 0x57e88 to 0x57f28 (160 bytes) ; ; 1 xrefs: ; > @ 0x10c608 ; ; 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 X29, X30, [SP,#-0x10+var_s0]! ; +0x0, 0x57e88 LDR W8, [X0,#0x48] ; +0x4, 0x57e8c LDR W9, [X0,#0x200] ; +0x8, 0x57e90 MOV X29, SP ; +0xc, 0x57e94 AND W10, W8, #0x40 ; '@' ; +0x10, 0x57e98 AND W11, W9, #0x10 ; +0x14, 0x57e9c ORR W10, W10, W11 ; +0x18, 0x57ea0 CBNZ W10, loc_57EC4 ; +0x1c, 0x57ea4 LDR X11, [X0,#0x110] ; +0x20, 0x57ea8 ADD X10, X0, #0x110 ; +0x24, 0x57eac CMP X11, X10 ; +0x28, 0x57eb0 B.NE loc_57EC4 ; +0x2c, 0x57eb4 LDR X11, [X0,#0x118] ; +0x30, 0x57eb8 CMP X11, X10 ; +0x34, 0x57ebc B.EQ loc_57EE0 ; +0x38, 0x57ec0 MOV W10, #1 ; +0x3c, 0x57ec4 CBZ W10, loc_57EF4 ; +0x40, 0x57ec8 TBNZ W9, #0x18, loc_57EF4 ; +0x44, 0x57ecc LDR X8, [X0] ; +0x48, 0x57ed0 LDR X8, [X8,#0x208] ; +0x4c, 0x57ed4 BLR X8 ; +0x50, 0x57ed8 B loc_57F1C ; +0x54, 0x57edc LDR X10, [X0,#0x70] ; +0x58, 0x57ee0 LDR W10, [X10,#0x2AC] ; +0x5c, 0x57ee4 CMP W10, #0 ; +0x60, 0x57ee8 CSET W10, EQ ; +0x64, 0x57eec CBNZ W10, loc_57ECC ; +0x68, 0x57ef0 TBNZ W8, #7, loc_57F14 ; +0x6c, 0x57ef4 LDP X8, X9, [X0,#0x1C0] ; +0x70, 0x57ef8 ADD X10, X0, #0x1C0 ; +0x74, 0x57efc STR X8, [X9] ; +0x78, 0x57f00 LDR X8, [X0,#0x1C0] ; +0x7c, 0x57f04 STR X9, [X8,#8] ; +0x80, 0x57f08 STP X10, X10, [X0,#0x1C0] ; +0x84, 0x57f0c B loc_57F1C ; +0x88, 0x57f10 AND W8, W8, #0xFFFFFF7F ; +0x8c, 0x57f14 STR W8, [X0,#0x48] ; +0x90, 0x57f18 MOV W0, WZR ; +0x94, 0x57f1c LDP X29, X30, [SP+var_s0],#0x10 ; +0x98, 0x57f20 RET ; +0x9c, 0x57f24