; ; FMOD::ChannelControl::set3DMinMaxDistance from 0x18000cff0 to 0x18000d13b (331 bytes) ; ; 6 xrefs: ; > FMOD_ChannelGroup_Set3DMinMaxDistance @ 0x1800c5259 ; > FMOD_Channel_Set3DMinMaxDistance @ 0x1800c5869 ; > @ 0x18017e44c ; > @ 0x18017e484 ; > @ 0x180194348 ; > @ 0x1801f69f0 ; ; 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 r11, rsp ; +0x0, 0x18000cff0 push rsi ; +0x3, 0x18000cff3 sub rsp, 180h ; +0x4, 0x18000cff4 mov rax, cs:__security_cookie ; +0xb, 0x18000cffb xor rax, rsp ; +0x12, 0x18000d002 mov [rsp+188h+var_48], rax ; +0x15, 0x18000d005 mov [r11-10h], rbp ; +0x1d, 0x18000d00d lea r8, [rsp+188h+var_158] ; +0x21, 0x18000d011 movaps xmmword ptr [r11-28h], xmm6 ; +0x26, 0x18000d016 lea rdx, [rsp+188h+var_150] ; +0x2b, 0x18000d01b movaps xmmword ptr [r11-38h], xmm7 ; +0x30, 0x18000d020 movaps xmm6, xmm1 ; +0x35, 0x18000d025 movaps xmm7, xmm2 ; +0x38, 0x18000d028 mov [rsp+188h+var_158], 0 ; +0x3b, 0x18000d02b mov rbp, rcx ; +0x44, 0x18000d034 call sub_180012360 ; +0x47, 0x18000d037 mov esi, eax ; +0x4c, 0x18000d03c test eax, eax ; +0x4e, 0x18000d03e jnz short loc_18000D060 ; +0x50, 0x18000d040 mov rcx, [rsp+188h+var_150] ; +0x52, 0x18000d042 movaps xmm2, xmm7 ; +0x57, 0x18000d047 movaps xmm1, xmm6 ; +0x5a, 0x18000d04a mov rax, [rcx] ; +0x5d, 0x18000d04d call qword ptr [rax+150h] ; +0x60, 0x18000d050 mov esi, eax ; +0x66, 0x18000d056 test eax, eax ; +0x68, 0x18000d058 jz loc_18000D0F9 ; +0x6a, 0x18000d05a mov rax, cs:off_1801AED20 ; +0x70, 0x18000d060 test byte ptr [rax+10h], 80h ; +0x77, 0x18000d067 jz loc_18000D0F9 ; +0x7b, 0x18000d06b mov [rsp+188h+arg_18], rbx ; +0x81, 0x18000d071 lea rcx, [rsp+188h+var_148] ; +0x89, 0x18000d079 mov [rsp+188h+var_18], rdi ; +0x8e, 0x18000d07e movaps xmm2, xmm6 ; +0x96, 0x18000d086 mov edi, 100h ; +0x99, 0x18000d089 mov edx, edi ; +0x9e, 0x18000d08e call sub_1800F2F20 ; +0xa0, 0x18000d090 movsxd rbx, eax ; +0xa5, 0x18000d095 lea rcx, [rsp+188h+var_148] ; +0xa8, 0x18000d098 mov edx, edi ; +0xad, 0x18000d09d lea r8, asc_18014572C; ", " ; +0xaf, 0x18000d09f sub edx, ebx ; +0xb6, 0x18000d0a6 add rcx, rbx; void * ; +0xb8, 0x18000d0a8 call sub_1800F2F70 ; +0xbb, 0x18000d0ab add ebx, eax ; +0xc0, 0x18000d0b0 lea rcx, [rsp+188h+var_148] ; +0xc2, 0x18000d0b2 movsxd rax, ebx ; +0xc7, 0x18000d0b7 sub edi, ebx ; +0xca, 0x18000d0ba add rcx, rax ; +0xcc, 0x18000d0bc mov edx, edi ; +0xcf, 0x18000d0bf movaps xmm2, xmm7 ; +0xd1, 0x18000d0c1 call sub_1800F2F20 ; +0xd4, 0x18000d0c4 lea rax, [rsp+188h+var_148] ; +0xd9, 0x18000d0c9 mov r8, rbp ; +0xde, 0x18000d0ce lea r9, aChannelcontrol_39; "ChannelControl::set3DMinMaxDistance" ; +0xe1, 0x18000d0d1 mov [rsp+188h+var_168], rax ; +0xe8, 0x18000d0d8 mov edx, 4 ; +0xed, 0x18000d0dd mov ecx, esi ; +0xf2, 0x18000d0e2 call sub_1800B20E0 ; +0xf4, 0x18000d0e4 mov rdi, [rsp+188h+var_18] ; +0xf9, 0x18000d0e9 mov rbx, [rsp+188h+arg_18] ; +0x101, 0x18000d0f1 mov rcx, [rsp+188h+var_158] ; +0x109, 0x18000d0f9 movaps xmm7, [rsp+188h+var_38] ; +0x10e, 0x18000d0fe movaps xmm6, [rsp+188h+var_28] ; +0x116, 0x18000d106 mov rbp, [rsp+188h+var_10] ; +0x11e, 0x18000d10e test rcx, rcx ; +0x126, 0x18000d116 jz short loc_18000D120 ; +0x129, 0x18000d119 call sub_180102320 ; +0x12b, 0x18000d11b mov eax, esi ; +0x130, 0x18000d120 mov rcx, [rsp+188h+var_48] ; +0x132, 0x18000d122 xor rcx, rsp; StackCookie ; +0x13a, 0x18000d12a call __security_check_cookie ; +0x13d, 0x18000d12d add rsp, 180h ; +0x142, 0x18000d132 pop rsi ; +0x149, 0x18000d139 retn ; +0x14a, 0x18000d13a