{"type": "func", "start": 329000, "end": 329056, "name": "FMOD_System_GetSpeakerPosition", "pseudocode": "// \n// FMOD_System_GetSpeakerPosition from 0x50528 to 0x50560 (56 bytes)\n// \n// 4 xrefs:\n// > .FMOD_System_GetSpeakerPosition @ 0x10841c\n// > <???> @ 0x1090\n// > .FMOD_System_GetSpeakerPosition @ 0x108414\n// > <???> @ 0x110ad0\n// \n// This function is hookable on this platform!\n// \n// Using BromaIDA 8.0.0 @ https://github.com/Stazzical/BromaIDA\n// Using bindings at commit ba9f177b at Thu Jul 16 22:52:06 2026 from https://github.com/geode-sdk/bindings\n// \n\n__int64 __fastcall FMOD_System_GetSpeakerPosition(__int64 a1, __int64 a2, __int64 a3, __int64 a4, __int64 a5)\n{\n  __int64 result; // x0\n  _BYTE v7[4]; // [xsp+Ch] [xbp-4h] BYREF\n\n  if ( !a1 )\n    return 31;\n  result = FMOD::System::getSpeakerPosition(a1, a2, a3, a4, v7);\n  if ( a5 )\n  {\n    if ( !(_DWORD)result )\n      return sub_519AC();\n  }\n  return result;\n}", "assembly": "; \n; FMOD_System_GetSpeakerPosition from 0x50528 to 0x50560 (56 bytes)\n; \n; 4 xrefs:\n; > .FMOD_System_GetSpeakerPosition @ 0x10841c\n; > <???> @ 0x1090\n; > .FMOD_System_GetSpeakerPosition @ 0x108414\n; > <???> @ 0x110ad0\n; \n; This function is hookable on this platform!\n; \n; Using BromaIDA 8.0.0 @ https:;github.com/Stazzical/BromaIDA\n; Using bindings at commit ba9f177b at Thu Jul 16 22:52:06 2026 from https:;github.com/geode-sdk/bindings\n; \n\nSTR             X19, [SP,#-0x10+var_10]!                               ; +0x0, 0x50528\nSTP             X29, X30, [SP,#0x10+var_s0]                            ; +0x4, 0x5052c\nADD             X29, SP, #0x10                                         ; +0x8, 0x50530\nCBZ             X0, loc_50554                                          ; +0xc, 0x50534\nMOV             X19, X4                                                ; +0x10, 0x50538\nSUB             X4, X29, #-var_4                                       ; +0x14, 0x5053c\nBL              ._ZN4FMOD6System18getSpeakerPositionE12FMOD_SPEAKERPfS2_Pb; FMOD::System::getSpeakerPosition(FMOD_SPEAKER,float *,float *,bool *) ; +0x18, 0x50540\nCBZ             X19, loc_50558                                         ; +0x1c, 0x50544\nCBNZ            W0, loc_50558                                          ; +0x20, 0x50548\nBL              sub_519AC                                              ; +0x24, 0x5054c\nB               loc_50558                                              ; +0x28, 0x50550\nMOV             W0, #0x1F                                              ; +0x2c, 0x50554\nLDP             X29, X30, [SP,#0x10+var_s0]                            ; +0x30, 0x50558\nB               loc_519A4                                              ; +0x34, 0x5055c", "xrefs": [".FMOD_System_GetSpeakerPosition @ 0x10841c", "<???> @ 0x1090", ".FMOD_System_GetSpeakerPosition @ 0x108414", "<???> @ 0x110ad0"], "is_objc": false, "is_arm32": false, "is_arm64": false, "bida_info": "8.0.0 @ https://github.com/Stazzical/BromaIDA", "bindings_info": "commit ba9f177b at Thu Jul 16 22:52:06 2026 from https://github.com/geode-sdk/bindings"}