; ; FMOD_Memory_Initialize from 0x5003c to 0x50144 (264 bytes) ; ; 4 xrefs: ; > .FMOD_Memory_Initialize @ 0x10816c ; > @ 0x58d8 ; > .FMOD_Memory_Initialize @ 0x108164 ; > @ 0x110978 ; ; 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 ; STR X19, [SP,#-0x10+var_10]! ; +0x0, 0x5003c STP X29, X30, [SP,#0x10+var_s0] ; +0x4, 0x50040 ADRP X19, #off_10F7A0@PAGE ; +0x8, 0x50044 LDR X19, [X19,#off_10F7A0@PAGEOFF]; off_114000 ; +0xc, 0x50048 MOV W8, W1 ; +0x10, 0x5004c MOV X1, X0 ; +0x14, 0x50050 MOV X10, XZR ; +0x18, 0x50054 LDR X9, [X19]; unk_11F800 ; +0x1c, 0x50058 ADD X29, SP, #0x10 ; +0x20, 0x5005c ADD X11, X9, #0x170 ; +0x24, 0x50060 CMP X10, #0x40 ; '@' ; +0x28, 0x50064 B.EQ loc_50080 ; +0x2c, 0x50068 LDR X12, [X11,X10] ; +0x30, 0x5006c ADD X10, X10, #8 ; +0x34, 0x50070 CBZ X12, loc_50064 ; +0x38, 0x50074 MOV W0, #0x1B ; +0x3c, 0x50078 B loc_5008C ; +0x40, 0x5007c TST W8, #0xFF ; +0x44, 0x50080 B.EQ loc_50094 ; +0x48, 0x50084 MOV W0, #0x1F ; +0x4c, 0x50088 LDP X29, X30, [SP,#0x10+var_s0] ; +0x50, 0x5008c B loc_519A4 ; +0x54, 0x50090 STR W5, [X9,#(dword_11F834 - 0x11F800)] ; +0x58, 0x50094 CBZ X1, loc_500E0 ; +0x5c, 0x50098 CBZ W8, loc_500E0 ; +0x60, 0x5009c CMP W8, #0x100 ; +0x64, 0x500a0 MOV W0, #0x1F ; +0x68, 0x500a4 B.LT loc_5008C ; +0x6c, 0x500a8 CBNZ X2, loc_5008C ; +0x70, 0x500ac CBNZ X3, loc_5008C ; +0x74, 0x500b0 CBNZ X4, loc_5008C ; +0x78, 0x500b4 LDR X0, [X9,#(qword_11F9B0 - 0x11F800)] ; +0x7c, 0x500b8 MOV W3, #4 ; +0x80, 0x500bc MOV W2, W8 ; +0x84, 0x500c0 BL sub_E308C ; +0x88, 0x500c4 CBNZ W0, loc_5008C ; +0x8c, 0x500c8 LDR X8, [X19]; unk_11F800 ; +0x90, 0x500cc LDR X8, [X8,#(qword_11F9B0 - 0x11F800)] ; +0x94, 0x500d0 STP XZR, XZR, [X8,#0x50] ; +0x98, 0x500d4 STR XZR, [X8,#0x60] ; +0x9c, 0x500d8 B loc_5008C ; +0xa0, 0x500dc MOV W0, #0x1F ; +0xa4, 0x500e0 CBNZ X1, loc_5008C ; +0xa8, 0x500e4 CBNZ W8, loc_5008C ; +0xac, 0x500e8 CBZ X2, loc_50108 ; +0xb0, 0x500ec CBZ X4, loc_50108 ; +0xb4, 0x500f0 LDR X8, [X9,#(qword_11F9B0 - 0x11F800)] ; +0xb8, 0x500f4 MOV W0, WZR ; +0xbc, 0x500f8 STP X2, X3, [X8,#0x50] ; +0xc0, 0x500fc STR X4, [X8,#0x60] ; +0xc4, 0x50100 B loc_5008C ; +0xc8, 0x50104 MOV W0, #0x1F ; +0xcc, 0x50108 CBNZ X2, loc_5008C ; +0xd0, 0x5010c CBNZ X3, loc_5008C ; +0xd4, 0x50110 CBNZ X4, loc_5008C ; +0xd8, 0x50114 LDR X8, [X9,#(qword_11F9B0 - 0x11F800)] ; +0xdc, 0x50118 ADRP X9, #off_10F7A8@PAGE ; +0xe0, 0x5011c ADRP X10, #off_10F7B0@PAGE ; +0xe4, 0x50120 ADRP X11, #off_10F7B8@PAGE ; +0xe8, 0x50124 LDR X9, [X9,#off_10F7A8@PAGEOFF]; sub_E2E84 ; +0xec, 0x50128 LDR X10, [X10,#off_10F7B0@PAGEOFF]; sub_E2E88 ; +0xf0, 0x5012c LDR X11, [X11,#off_10F7B8@PAGEOFF]; j_j_.free ; +0xf4, 0x50130 MOV W0, WZR ; +0xf8, 0x50134 STP X9, X10, [X8,#0x50] ; +0xfc, 0x50138 STR X11, [X8,#0x60] ; +0x100, 0x5013c B loc_5008C ; +0x104, 0x50140