; ; sub_54644 from 0x54644 to 0x546cc (136 bytes) ; ; 1 xrefs: ; > @ 0x10c358 ; ; 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, #0x40 ; +0x0, 0x54644 STP X20, X19, [SP,#0x30+var_10] ; +0x4, 0x54648 STP X29, X30, [SP,#0x30+var_s0] ; +0x8, 0x5464c LDR X8, [X0,#8] ; +0xc, 0x54650 MOV X20, X0 ; +0x10, 0x54654 MOV W9, #8 ; +0x14, 0x54658 MOV X0, SP ; +0x18, 0x5465c STR X21, [SP,#0x30+var_20] ; +0x1c, 0x54660 ADD X29, SP, #0x30 ; +0x20, 0x54664 MOV W19, W1 ; +0x24, 0x54668 BL sub_54CC4 ; +0x28, 0x5466c AND W1, W19, #1 ; +0x2c, 0x54670 MOV X0, X20 ; +0x30, 0x54674 BL loc_52588 ; +0x34, 0x54678 MOV W21, W0 ; +0x38, 0x5467c CBNZ W0, loc_546AC ; +0x3c, 0x54680 LDRB W8, [X20,#0x3D] ; +0x40, 0x54684 TBNZ W8, #6, loc_546A8 ; +0x44, 0x54688 LDR X0, [X20,#0xC0] ; +0x48, 0x5468c AND W1, W19, #1 ; +0x4c, 0x54690 LDR X8, [X0] ; +0x50, 0x54694 LDR X8, [X8,#0x58] ; +0x54, 0x54698 BLR X8 ; +0x58, 0x5469c MOV W21, W0 ; +0x5c, 0x546a0 B loc_546AC ; +0x60, 0x546a4 MOV W21, WZR ; +0x64, 0x546a8 MOV X0, SP ; +0x68, 0x546ac BL sub_51F94 ; +0x6c, 0x546b0 MOV W0, W21 ; +0x70, 0x546b4 LDP X29, X30, [SP,#0x30+var_s0] ; +0x74, 0x546b8 LDP X20, X19, [SP,#0x30+var_10] ; +0x78, 0x546bc LDR X21, [SP,#0x30+var_20] ; +0x7c, 0x546c0 ADD SP, SP, #0x40 ; '@' ; +0x80, 0x546c4 RET ; +0x84, 0x546c8