; ; sub_51FA4 from 0x51fa4 to 0x52090 (236 bytes) ; ; 1 xrefs: ; > sub_6DB70 @ 0x6df0c ; ; 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, #0x50 ; +0x0, 0x51fa4 STP X22, X21, [SP,#0x40+var_20] ; +0x4, 0x51fa8 ADRL X22, qword_11F750 ; +0x8, 0x51fac STP X24, X23, [SP,#0x40+var_30] ; +0x10, 0x51fb4 STP X20, X19, [SP,#0x40+var_10] ; +0x14, 0x51fb8 STP X29, X30, [SP,#0x40+var_s0] ; +0x18, 0x51fbc ADD X8, X22, W0,SXTW#3 ; +0x1c, 0x51fc0 LDAR X21, [X8] ; +0x20, 0x51fc4 MOV X19, X1 ; +0x24, 0x51fc8 ADD X29, SP, #0x40 ; +0x28, 0x51fcc CBNZ X21, loc_52010 ; +0x2c, 0x51fd0 ADRP X24, #off_10F7A0@PAGE ; +0x30, 0x51fd4 LDR X24, [X24,#off_10F7A0@PAGEOFF]; off_114000 ; +0x34, 0x51fd8 MOV W20, W0 ; +0x38, 0x51fdc SXTW X23, W20 ; +0x3c, 0x51fe0 LDR X8, [X24]; unk_11F800 ; +0x40, 0x51fe4 LDR X0, [X8,#(qword_11F938 - 0x11F800)] ; +0x44, 0x51fe8 STR X0, [SP,#0x40+var_40] ; +0x48, 0x51fec BL .FMOD_OS_CriticalSection_Enter ; +0x4c, 0x51ff0 MOV W8, #1 ; +0x50, 0x51ff4 STRB W8, [SP,#0x40+var_38] ; +0x54, 0x51ff8 ADD X8, X22, X23,LSL#3 ; +0x58, 0x51ffc LDAR X21, [X8] ; +0x5c, 0x52000 CBZ X21, loc_52034 ; +0x60, 0x52004 MOV X0, SP ; +0x64, 0x52008 BL sub_52090 ; +0x68, 0x5200c MOV W20, WZR ; +0x6c, 0x52010 STR X21, [X19] ; +0x70, 0x52014 MOV W0, W20 ; +0x74, 0x52018 LDP X29, X30, [SP,#0x40+var_s0] ; +0x78, 0x5201c LDP X20, X19, [SP,#0x40+var_10] ; +0x7c, 0x52020 LDP X22, X21, [SP,#0x40+var_20] ; +0x80, 0x52024 LDP X24, X23, [SP,#0x40+var_30] ; +0x84, 0x52028 ADD SP, SP, #0x50 ; 'P' ; +0x88, 0x5202c RET ; +0x8c, 0x52030 LDR X8, [X24]; unk_11F800 ; +0x90, 0x52034 ADRL X2, aSrcFmodAsyncCp; "../../src/fmod_async.cpp" ; +0x94, 0x52038 MOV W1, #0x178 ; +0x9c, 0x52040 LDR X0, [X8,#(qword_11F9B0 - 0x11F800)] ; +0xa0, 0x52044 MOV W3, #0x170 ; +0xa4, 0x52048 MOV W4, #0x200000 ; +0xa8, 0x5204c BL sub_E2AC4 ; +0xac, 0x52050 CBZ X0, loc_52080 ; +0xb0, 0x52054 MOV X21, X0 ; +0xb4, 0x52058 BL sub_51DE4 ; +0xb8, 0x5205c MOV X0, X21 ; +0xbc, 0x52060 MOV W1, W20 ; +0xc0, 0x52064 BL sub_51EF4 ; +0xc4, 0x52068 MOV W20, W0 ; +0xc8, 0x5206c CBNZ W0, loc_52084 ; +0xcc, 0x52070 ADD X8, X22, X23,LSL#3 ; +0xd0, 0x52074 STLR X21, [X8] ; +0xd4, 0x52078 B loc_52008 ; +0xd8, 0x5207c MOV W20, #0x26 ; '&' ; +0xdc, 0x52080 MOV X0, SP ; +0xe0, 0x52084 BL sub_52090 ; +0xe4, 0x52088 B loc_52018 ; +0xe8, 0x5208c