; ; FMOD::Sound::getFormat from 0x1800a7360 to 0x1800a7518 (440 bytes) ; ; 5 xrefs: ; > FMOD_Sound_GetFormat @ 0x1800c658b ; > @ 0x180187160 ; > @ 0x180187170 ; > @ 0x180194348 ; > @ 0x1801fb964 ; ; 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, 0x1800a7360 push rbp ; +0x2, 0x1800a7362 push rsi ; +0x3, 0x1800a7363 push r12 ; +0x4, 0x1800a7364 push r14 ; +0x6, 0x1800a7366 push r15 ; +0x8, 0x1800a7368 sub rsp, 158h ; +0xa, 0x1800a736a mov rax, cs:__security_cookie ; +0x11, 0x1800a7371 xor rax, rsp ; +0x18, 0x1800a7378 mov [rsp+188h+var_48], rax ; +0x1b, 0x1800a737b mov r15, [rsp+188h+arg_20] ; +0x23, 0x1800a7383 mov rbp, r8 ; +0x2b, 0x1800a738b mov rbx, rdx ; +0x2e, 0x1800a738e xor r8d, r8d ; +0x31, 0x1800a7391 lea rdx, [rsp+188h+var_158] ; +0x34, 0x1800a7394 mov r14, r9 ; +0x39, 0x1800a7399 mov r12, rcx ; +0x3c, 0x1800a739c call sub_1800E1460 ; +0x3f, 0x1800a739f mov esi, eax ; +0x44, 0x1800a73a4 test eax, eax ; +0x46, 0x1800a73a6 jnz short loc_1800A73D8 ; +0x48, 0x1800a73a8 mov rax, [rsp+188h+var_158] ; +0x4a, 0x1800a73aa mov ecx, [rax+110h] ; +0x4f, 0x1800a73af nop ; +0x55, 0x1800a73b5 test ecx, ecx ; +0x56, 0x1800a73b6 jz loc_1800A74F0 ; +0x58, 0x1800a73b8 mov rax, [rsp+188h+var_158] ; +0x5e, 0x1800a73be mov ecx, [rax+110h] ; +0x63, 0x1800a73c3 nop ; +0x69, 0x1800a73c9 cmp ecx, 7 ; +0x6a, 0x1800a73ca jz loc_1800A74F0 ; +0x6d, 0x1800a73cd mov esi, 2Eh ; '.' ; +0x73, 0x1800a73d3 mov rax, cs:off_1801AED20 ; +0x78, 0x1800a73d8 test byte ptr [rax+10h], 80h ; +0x7f, 0x1800a73df jz loc_1800A74CD ; +0x83, 0x1800a73e3 mov [rsp+188h+var_38], rdi ; +0x89, 0x1800a73e9 lea rcx, [rsp+188h+var_148] ; +0x91, 0x1800a73f1 mov edi, 100h ; +0x96, 0x1800a73f6 mov r8, rbx ; +0x9b, 0x1800a73fb mov edx, edi ; +0x9e, 0x1800a73fe call sub_1800F3230 ; +0xa0, 0x1800a7400 movsxd rbx, eax ; +0xa5, 0x1800a7405 lea rcx, [rsp+188h+var_148] ; +0xa8, 0x1800a7408 mov edx, edi ; +0xad, 0x1800a740d lea r8, asc_18014572C; ", " ; +0xaf, 0x1800a740f sub edx, ebx ; +0xb6, 0x1800a7416 add rcx, rbx; void * ; +0xb8, 0x1800a7418 call sub_1800F2F70 ; +0xbb, 0x1800a741b add ebx, eax ; +0xc0, 0x1800a7420 mov edx, edi ; +0xc2, 0x1800a7422 lea rax, [rsp+188h+var_148] ; +0xc4, 0x1800a7424 movsxd rcx, ebx ; +0xc9, 0x1800a7429 add rcx, rax ; +0xcc, 0x1800a742c sub edx, ebx ; +0xcf, 0x1800a742f mov r8, rbp ; +0xd1, 0x1800a7431 call sub_1800F3230 ; +0xd4, 0x1800a7434 add ebx, eax ; +0xd9, 0x1800a7439 lea rcx, [rsp+188h+var_148] ; +0xdb, 0x1800a743b movsxd rax, ebx ; +0xe0, 0x1800a7440 lea r8, asc_18014572C; ", " ; +0xe3, 0x1800a7443 mov edx, edi ; +0xea, 0x1800a744a add rcx, rax; void * ; +0xec, 0x1800a744c sub edx, ebx ; +0xef, 0x1800a744f call sub_1800F2F70 ; +0xf1, 0x1800a7451 add ebx, eax ; +0xf6, 0x1800a7456 lea rcx, [rsp+188h+var_148] ; +0xf8, 0x1800a7458 movsxd rax, ebx ; +0xfd, 0x1800a745d mov edx, edi ; +0x100, 0x1800a7460 add rcx, rax ; +0x102, 0x1800a7462 sub edx, ebx ; +0x105, 0x1800a7465 mov r8, r14 ; +0x107, 0x1800a7467 call sub_1800F3020 ; +0x10a, 0x1800a746a add ebx, eax ; +0x10f, 0x1800a746f lea rcx, [rsp+188h+var_148] ; +0x111, 0x1800a7471 movsxd rax, ebx ; +0x116, 0x1800a7476 lea r8, asc_18014572C; ", " ; +0x119, 0x1800a7479 mov edx, edi ; +0x120, 0x1800a7480 add rcx, rax; void * ; +0x122, 0x1800a7482 sub edx, ebx ; +0x125, 0x1800a7485 call sub_1800F2F70 ; +0x127, 0x1800a7487 add ebx, eax ; +0x12c, 0x1800a748c lea rcx, [rsp+188h+var_148] ; +0x12e, 0x1800a748e movsxd rax, ebx ; +0x133, 0x1800a7493 sub edi, ebx ; +0x136, 0x1800a7496 add rcx, rax ; +0x138, 0x1800a7498 mov edx, edi ; +0x13b, 0x1800a749b mov r8, r15 ; +0x13d, 0x1800a749d call sub_1800F3020 ; +0x140, 0x1800a74a0 lea rax, [rsp+188h+var_148] ; +0x145, 0x1800a74a5 mov r8, r12 ; +0x14a, 0x1800a74aa lea r9, aSoundGetformat; "Sound::getFormat" ; +0x14d, 0x1800a74ad mov [rsp+188h+var_168], rax ; +0x154, 0x1800a74b4 mov edx, 5 ; +0x159, 0x1800a74b9 mov ecx, esi ; +0x15e, 0x1800a74be call sub_1800B20E0 ; +0x160, 0x1800a74c0 mov rdi, [rsp+188h+var_38] ; +0x165, 0x1800a74c5 mov eax, esi ; +0x16d, 0x1800a74cd mov rcx, [rsp+188h+var_48] ; +0x16f, 0x1800a74cf xor rcx, rsp; StackCookie ; +0x177, 0x1800a74d7 call __security_check_cookie ; +0x17a, 0x1800a74da add rsp, 158h ; +0x17f, 0x1800a74df pop r15 ; +0x186, 0x1800a74e6 pop r14 ; +0x188, 0x1800a74e8 pop r12 ; +0x18a, 0x1800a74ea pop rsi ; +0x18c, 0x1800a74ec pop rbp ; +0x18d, 0x1800a74ed pop rbx ; +0x18e, 0x1800a74ee retn ; +0x18f, 0x1800a74ef mov rcx, [rsp+188h+var_158] ; +0x190, 0x1800a74f0 mov r9, r14 ; +0x195, 0x1800a74f5 mov r8, rbp ; +0x198, 0x1800a74f8 mov [rsp+188h+var_168], r15 ; +0x19b, 0x1800a74fb mov rdx, rbx ; +0x1a0, 0x1800a7500 mov rax, [rcx] ; +0x1a3, 0x1800a7503 call qword ptr [rax+0A0h] ; +0x1a6, 0x1800a7506 mov esi, eax ; +0x1ac, 0x1800a750c test eax, eax ; +0x1ae, 0x1800a750e jnz loc_1800A73D8 ; +0x1b0, 0x1800a7510 jmp short loc_1800A74CF ; +0x1b6, 0x1800a7516