; ; sub_5C760 from 0x5c760 to 0x5c7e4 (132 bytes) ; ; 3 xrefs: ; > sub_93B20 @ 0x942ac ; > sub_E47E0 @ 0xe4854 ; > sub_E4ED0 @ 0xe4f40 ; ; 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 X22, X21, [SP,#-0x10+var_20]! ; +0x0, 0x5c760 STP X20, X19, [SP,#0x20+var_10] ; +0x4, 0x5c764 STP X29, X30, [SP,#0x20+var_s0] ; +0x8, 0x5c768 ADD X29, SP, #0x20 ; +0xc, 0x5c76c TBNZ W3, #0x1F, loc_5C7C8 ; +0x10, 0x5c770 MOV W20, W3 ; +0x14, 0x5c774 MOV X19, X2 ; +0x18, 0x5c778 MOV X22, X1 ; +0x1c, 0x5c77c MOV X21, X0 ; +0x20, 0x5c780 CBZ W3, loc_5C7B8 ; +0x24, 0x5c784 ADRP X8, #off_10F7A0@PAGE ; +0x28, 0x5c788 LDR X8, [X8,#off_10F7A0@PAGEOFF]; off_114000 ; +0x2c, 0x5c78c ADRP X2, #aSrcFmodChannel_0@PAGE; "../../src/fmod_channelpool.cpp" ; +0x30, 0x5c790 LSL W1, W20, #3 ; +0x34, 0x5c794 ADD X2, X2, #aSrcFmodChannel_0@PAGEOFF; "../../src/fmod_channelpool.cpp" ; +0x38, 0x5c798 LDR X8, [X8]; unk_11F800 ; +0x3c, 0x5c79c MOV W3, #0x38 ; '8' ; +0x40, 0x5c7a0 MOV W4, WZR ; +0x44, 0x5c7a4 LDR X0, [X8,#(qword_11F9B0 - 0x11F800)] ; +0x48, 0x5c7a8 BL sub_E2AC4 ; +0x4c, 0x5c7ac STR X0, [X21,#0x18] ; +0x50, 0x5c7b0 CBZ X0, loc_5C7D0 ; +0x54, 0x5c7b4 MOV W0, WZR ; +0x58, 0x5c7b8 STR W20, [X21] ; +0x5c, 0x5c7bc STP X22, X19, [X21,#8] ; +0x60, 0x5c7c0 B loc_5C7D4 ; +0x64, 0x5c7c4 MOV W0, #0x1F ; +0x68, 0x5c7c8 B loc_5C7D4 ; +0x6c, 0x5c7cc MOV W0, #0x26 ; '&' ; +0x70, 0x5c7d0 LDP X29, X30, [SP,#0x20+var_s0] ; +0x74, 0x5c7d4 LDP X20, X19, [SP,#0x20+var_10] ; +0x78, 0x5c7d8 LDP X22, X21, [SP+0x20+var_20],#0x30 ; +0x7c, 0x5c7dc RET ; +0x80, 0x5c7e0