; ; FMOD::System::getChannelsPlaying from 0x1800acf00 to 0x1800acff9 (249 bytes) ; ; 5 xrefs: ; > FMOD_System_GetChannelsPlaying @ 0x1800c6a99 ; > @ 0x180188770 ; > @ 0x180188780 ; > @ 0x180194348 ; > @ 0x1801fc2e8 ; ; 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 ; push rbx ; +0x0, 0x1800acf00 push rbp ; +0x2, 0x1800acf02 push rsi ; +0x3, 0x1800acf03 push r14 ; +0x4, 0x1800acf04 sub rsp, 158h ; +0x6, 0x1800acf06 mov rax, cs:__security_cookie ; +0xd, 0x1800acf0d xor rax, rsp ; +0x14, 0x1800acf14 mov [rsp+178h+var_38], rax ; +0x17, 0x1800acf17 mov rbp, r8 ; +0x1f, 0x1800acf1f mov rbx, rdx ; +0x22, 0x1800acf22 xor r8d, r8d ; +0x25, 0x1800acf25 lea rdx, [rsp+178h+var_148] ; +0x28, 0x1800acf28 mov r14, rcx ; +0x2d, 0x1800acf2d call ?validate@SystemI@FMOD@@SA?AW4FMOD_RESULT@@PEAVSystem@2@PEAPEAV12@PEAVSystemLockScope@2@@Z; FMOD::SystemI::validate(FMOD::System *,FMOD::SystemI * *,FMOD::SystemLockScope *) ; +0x30, 0x1800acf30 mov esi, eax ; +0x35, 0x1800acf35 test eax, eax ; +0x37, 0x1800acf37 jnz short loc_1800ACF55 ; +0x39, 0x1800acf39 mov rcx, [rsp+178h+var_148] ; +0x3b, 0x1800acf3b mov r8, rbp ; +0x40, 0x1800acf40 mov rdx, rbx ; +0x43, 0x1800acf43 call sub_1800E3FE0 ; +0x46, 0x1800acf46 mov esi, eax ; +0x4b, 0x1800acf4b test eax, eax ; +0x4d, 0x1800acf4d jz loc_1800ACFDC ; +0x4f, 0x1800acf4f mov rax, cs:off_1801AED20 ; +0x55, 0x1800acf55 test byte ptr [rax+10h], 80h ; +0x5c, 0x1800acf5c jz short loc_1800ACFDA ; +0x60, 0x1800acf60 mov [rsp+178h+var_28], rdi ; +0x62, 0x1800acf62 lea rcx, [rsp+178h+var_138] ; +0x6a, 0x1800acf6a mov edi, 100h ; +0x6f, 0x1800acf6f mov r8, rbx ; +0x74, 0x1800acf74 mov edx, edi ; +0x77, 0x1800acf77 call sub_1800F3020 ; +0x79, 0x1800acf79 movsxd rbx, eax ; +0x7e, 0x1800acf7e lea rcx, [rsp+178h+var_138] ; +0x81, 0x1800acf81 mov edx, edi ; +0x86, 0x1800acf86 lea r8, asc_18014572C; ", " ; +0x88, 0x1800acf88 sub edx, ebx ; +0x8f, 0x1800acf8f add rcx, rbx; void * ; +0x91, 0x1800acf91 call sub_1800F2F70 ; +0x94, 0x1800acf94 add ebx, eax ; +0x99, 0x1800acf99 lea rcx, [rsp+178h+var_138] ; +0x9b, 0x1800acf9b movsxd rax, ebx ; +0xa0, 0x1800acfa0 sub edi, ebx ; +0xa3, 0x1800acfa3 add rcx, rax ; +0xa5, 0x1800acfa5 mov edx, edi ; +0xa8, 0x1800acfa8 mov r8, rbp ; +0xaa, 0x1800acfaa call sub_1800F3020 ; +0xad, 0x1800acfad lea rax, [rsp+178h+var_138] ; +0xb2, 0x1800acfb2 mov r8, r14 ; +0xb7, 0x1800acfb7 lea r9, aSystemGetchann_0; "System::getChannelsPlaying" ; +0xba, 0x1800acfba mov [rsp+178h+var_158], rax ; +0xc1, 0x1800acfc1 mov edx, 1 ; +0xc6, 0x1800acfc6 mov ecx, esi ; +0xcb, 0x1800acfcb call sub_1800B20E0 ; +0xcd, 0x1800acfcd mov rdi, [rsp+178h+var_28] ; +0xd2, 0x1800acfd2 mov eax, esi ; +0xda, 0x1800acfda mov rcx, [rsp+178h+var_38] ; +0xdc, 0x1800acfdc xor rcx, rsp; StackCookie ; +0xe4, 0x1800acfe4 call __security_check_cookie ; +0xe7, 0x1800acfe7 add rsp, 158h ; +0xec, 0x1800acfec pop r14 ; +0xf3, 0x1800acff3 pop rsi ; +0xf5, 0x1800acff5 pop rbp ; +0xf6, 0x1800acff6 pop rbx ; +0xf7, 0x1800acff7 retn ; +0xf8, 0x1800acff8