; ; FMOD::DSP::getActive from 0x1800a1650 to 0x1800a172a (218 bytes) ; ; 3 xrefs: ; > FMOD_DSP_GetActive @ 0x1800c5b4c ; > @ 0x180194348 ; > @ 0x1801fb07c ; ; 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 ; mov [rsp+arg_10], rbx ; +0x0, 0x1800a1650 mov [rsp+arg_18], rsi ; +0x5, 0x1800a1655 push rdi ; +0xa, 0x1800a165a sub rsp, 150h ; +0xb, 0x1800a165b mov rax, cs:__security_cookie ; +0x12, 0x1800a1662 xor rax, rsp ; +0x19, 0x1800a1669 mov [rsp+158h+var_18], rax ; +0x1c, 0x1800a166c mov rdi, rdx ; +0x24, 0x1800a1674 mov [rsp+158h+var_128], 0 ; +0x27, 0x1800a1677 lea rdx, [rsp+158h+var_120] ; +0x30, 0x1800a1680 mov rsi, rcx ; +0x35, 0x1800a1685 lea r8, [rsp+158h+var_128] ; +0x38, 0x1800a1688 call ?validate@DSPI@FMOD@@SA?AW4FMOD_RESULT@@PEAVDSP@2@PEAPEAV12@PEAVSystemLockScope@2@@Z; FMOD::DSPI::validate(FMOD::DSP *,FMOD::DSPI * *,FMOD::SystemLockScope *) ; +0x3d, 0x1800a168d mov ebx, eax ; +0x42, 0x1800a1692 test eax, eax ; +0x44, 0x1800a1694 jnz short loc_1800A16A0 ; +0x46, 0x1800a1696 test rdi, rdi ; +0x48, 0x1800a1698 jnz short loc_1800A1715 ; +0x4b, 0x1800a169b lea ebx, [rax+1Fh] ; +0x4d, 0x1800a169d mov rax, cs:off_1801AED20 ; +0x50, 0x1800a16a0 test byte ptr [rax+10h], 80h ; +0x57, 0x1800a16a7 jz short loc_1800A16DF ; +0x5b, 0x1800a16ab mov r8, rdi ; +0x5d, 0x1800a16ad lea rcx, [rsp+158h+var_118] ; +0x60, 0x1800a16b0 mov edx, 100h ; +0x65, 0x1800a16b5 call sub_1800F32C0 ; +0x6a, 0x1800a16ba lea rax, [rsp+158h+var_118] ; +0x6f, 0x1800a16bf mov r8, rsi ; +0x74, 0x1800a16c4 lea r9, aDspGetactive; "DSP::getActive" ; +0x77, 0x1800a16c7 mov [rsp+158h+var_138], rax ; +0x7e, 0x1800a16ce mov edx, 7 ; +0x83, 0x1800a16d3 mov ecx, ebx ; +0x88, 0x1800a16d8 call sub_1800B20E0 ; +0x8a, 0x1800a16da mov rcx, [rsp+158h+var_128] ; +0x8f, 0x1800a16df test rcx, rcx ; +0x94, 0x1800a16e4 jz short loc_1800A16EE ; +0x97, 0x1800a16e7 call sub_180102320 ; +0x99, 0x1800a16e9 mov eax, ebx ; +0x9e, 0x1800a16ee mov rcx, [rsp+158h+var_18] ; +0xa0, 0x1800a16f0 xor rcx, rsp; StackCookie ; +0xa8, 0x1800a16f8 call __security_check_cookie ; +0xab, 0x1800a16fb lea r11, [rsp+158h+var_8] ; +0xb0, 0x1800a1700 mov rbx, [r11+20h] ; +0xb8, 0x1800a1708 mov rsi, [r11+28h] ; +0xbc, 0x1800a170c mov rsp, r11 ; +0xc0, 0x1800a1710 pop rdi ; +0xc3, 0x1800a1713 retn ; +0xc4, 0x1800a1714 mov rax, [rsp+158h+var_120] ; +0xc5, 0x1800a1715 mov ecx, [rax+64h] ; +0xca, 0x1800a171a nop ; +0xcd, 0x1800a171d shr ecx, 7 ; +0xce, 0x1800a171e and cl, 1 ; +0xd1, 0x1800a1721 mov [rdi], cl ; +0xd4, 0x1800a1724 xor ebx, ebx ; +0xd6, 0x1800a1726 jmp short loc_1800A16DF ; +0xd8, 0x1800a1728