; ; FMOD::Sound::get3DCustomRolloff from 0x1800a6fb0 to 0x1800a70ef (319 bytes) ; ; 5 xrefs: ; > FMOD_Sound_Get3DCustomRolloff @ 0x1800c6559 ; > @ 0x180187034 ; > @ 0x180187044 ; > @ 0x180194348 ; > @ 0x1801fb8f8 ; ; 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, 0x1800a6fb0 push rbp ; +0x2, 0x1800a6fb2 push rsi ; +0x3, 0x1800a6fb3 push r14 ; +0x4, 0x1800a6fb4 sub rsp, 158h ; +0x6, 0x1800a6fb6 mov rax, cs:__security_cookie ; +0xd, 0x1800a6fbd xor rax, rsp ; +0x14, 0x1800a6fc4 mov [rsp+178h+var_38], rax ; +0x17, 0x1800a6fc7 mov rbp, r8 ; +0x1f, 0x1800a6fcf mov rbx, rdx ; +0x22, 0x1800a6fd2 xor r8d, r8d ; +0x25, 0x1800a6fd5 lea rdx, [rsp+178h+var_148] ; +0x28, 0x1800a6fd8 mov r14, rcx ; +0x2d, 0x1800a6fdd call sub_1800E1460 ; +0x30, 0x1800a6fe0 mov esi, eax ; +0x35, 0x1800a6fe5 test eax, eax ; +0x37, 0x1800a6fe7 jnz short loc_1800A702E ; +0x39, 0x1800a6fe9 mov rax, [rsp+178h+var_148] ; +0x3b, 0x1800a6feb mov ecx, [rax+110h] ; +0x40, 0x1800a6ff0 nop ; +0x46, 0x1800a6ff6 test ecx, ecx ; +0x47, 0x1800a6ff7 jz loc_1800A70D2 ; +0x49, 0x1800a6ff9 mov rax, [rsp+178h+var_148] ; +0x4f, 0x1800a6fff mov ecx, [rax+110h] ; +0x54, 0x1800a7004 nop ; +0x5a, 0x1800a700a cmp ecx, 7 ; +0x5b, 0x1800a700b jz loc_1800A70D2 ; +0x5e, 0x1800a700e mov rax, [rsp+178h+var_148] ; +0x64, 0x1800a7014 mov ecx, [rax+110h] ; +0x69, 0x1800a7019 nop ; +0x6f, 0x1800a701f cmp ecx, 5 ; +0x70, 0x1800a7020 jz loc_1800A70D2 ; +0x73, 0x1800a7023 mov esi, 2Eh ; '.' ; +0x79, 0x1800a7029 mov rax, cs:off_1801AED20 ; +0x7e, 0x1800a702e test byte ptr [rax+10h], 80h ; +0x85, 0x1800a7035 jz short loc_1800A70B3 ; +0x89, 0x1800a7039 mov [rsp+178h+var_28], rdi ; +0x8b, 0x1800a703b lea rcx, [rsp+178h+var_138] ; +0x93, 0x1800a7043 mov edi, 100h ; +0x98, 0x1800a7048 mov r8, rbx ; +0x9d, 0x1800a704d mov edx, edi ; +0xa0, 0x1800a7050 call sub_1800F3230 ; +0xa2, 0x1800a7052 movsxd rbx, eax ; +0xa7, 0x1800a7057 lea rcx, [rsp+178h+var_138] ; +0xaa, 0x1800a705a mov edx, edi ; +0xaf, 0x1800a705f lea r8, asc_18014572C; ", " ; +0xb1, 0x1800a7061 sub edx, ebx ; +0xb8, 0x1800a7068 add rcx, rbx; void * ; +0xba, 0x1800a706a call sub_1800F2F70 ; +0xbd, 0x1800a706d add ebx, eax ; +0xc2, 0x1800a7072 lea rcx, [rsp+178h+var_138] ; +0xc4, 0x1800a7074 movsxd rax, ebx ; +0xc9, 0x1800a7079 sub edi, ebx ; +0xcc, 0x1800a707c add rcx, rax ; +0xce, 0x1800a707e mov edx, edi ; +0xd1, 0x1800a7081 mov r8, rbp ; +0xd3, 0x1800a7083 call sub_1800F3020 ; +0xd6, 0x1800a7086 lea rax, [rsp+178h+var_138] ; +0xdb, 0x1800a708b mov r8, r14 ; +0xe0, 0x1800a7090 lea r9, aSoundGet3dcust; "Sound::get3DCustomRolloff" ; +0xe3, 0x1800a7093 mov [rsp+178h+var_158], rax ; +0xea, 0x1800a709a mov edx, 5 ; +0xef, 0x1800a709f mov ecx, esi ; +0xf4, 0x1800a70a4 call sub_1800B20E0 ; +0xf6, 0x1800a70a6 mov rdi, [rsp+178h+var_28] ; +0xfb, 0x1800a70ab mov eax, esi ; +0x103, 0x1800a70b3 mov rcx, [rsp+178h+var_38] ; +0x105, 0x1800a70b5 xor rcx, rsp; StackCookie ; +0x10d, 0x1800a70bd call __security_check_cookie ; +0x110, 0x1800a70c0 add rsp, 158h ; +0x115, 0x1800a70c5 pop r14 ; +0x11c, 0x1800a70cc pop rsi ; +0x11e, 0x1800a70ce pop rbp ; +0x11f, 0x1800a70cf pop rbx ; +0x120, 0x1800a70d0 retn ; +0x121, 0x1800a70d1 mov rcx, [rsp+178h+var_148] ; +0x122, 0x1800a70d2 mov r8, rbp ; +0x127, 0x1800a70d7 mov rdx, rbx ; +0x12a, 0x1800a70da mov rax, [rcx] ; +0x12d, 0x1800a70dd call qword ptr [rax+70h] ; +0x130, 0x1800a70e0 mov esi, eax ; +0x133, 0x1800a70e3 test eax, eax ; +0x135, 0x1800a70e5 jnz loc_1800A702E ; +0x137, 0x1800a70e7 jmp short loc_1800A70B5 ; +0x13d, 0x1800a70ed