; ; FMOD::Sound::getName from 0x1800a7e30 to 0x1800a7f92 (354 bytes) ; ; 5 xrefs: ; > FMOD_Sound_GetName @ 0x1800c6609 ; > @ 0x180187098 ; > @ 0x1801870cc ; > @ 0x180194348 ; > @ 0x1801fba6c ; ; 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, 0x1800a7e30 push rsi ; +0x3, 0x1800a7e33 sub rsp, 170h ; +0x4, 0x1800a7e34 mov rax, cs:__security_cookie ; +0xb, 0x1800a7e3b xor rax, rsp ; +0x12, 0x1800a7e42 mov [rsp+178h+var_38], rax ; +0x15, 0x1800a7e45 mov [r11-10h], rbx ; +0x1d, 0x1800a7e4d mov rbx, rdx ; +0x21, 0x1800a7e51 mov [r11-18h], rbp ; +0x24, 0x1800a7e54 lea rdx, [rsp+178h+var_148] ; +0x28, 0x1800a7e58 mov ebp, r8d ; +0x2d, 0x1800a7e5d mov [r11-28h], r14 ; +0x30, 0x1800a7e60 lea r8, [rsp+178h+var_140] ; +0x34, 0x1800a7e64 mov [rsp+178h+var_140], 0 ; +0x39, 0x1800a7e69 mov r14, rcx ; +0x42, 0x1800a7e72 call sub_1800E1460 ; +0x45, 0x1800a7e75 mov esi, eax ; +0x4a, 0x1800a7e7a test eax, eax ; +0x4c, 0x1800a7e7c jnz short loc_1800A7EC6 ; +0x4e, 0x1800a7e7e mov rax, [rsp+178h+var_148] ; +0x50, 0x1800a7e80 mov ecx, [rax+110h] ; +0x55, 0x1800a7e85 nop ; +0x5b, 0x1800a7e8b test ecx, ecx ; +0x5c, 0x1800a7e8c jz short loc_1800A7EA8 ; +0x5e, 0x1800a7e8e mov rax, [rsp+178h+var_148] ; +0x60, 0x1800a7e90 mov ecx, [rax+110h] ; +0x65, 0x1800a7e95 nop ; +0x6b, 0x1800a7e9b cmp ecx, 7 ; +0x6c, 0x1800a7e9c jz short loc_1800A7EA8 ; +0x6f, 0x1800a7e9f mov esi, 2Eh ; '.' ; +0x71, 0x1800a7ea1 jmp short loc_1800A7EC6 ; +0x76, 0x1800a7ea6 mov rcx, [rsp+178h+var_148] ; +0x78, 0x1800a7ea8 mov r8d, ebp ; +0x7d, 0x1800a7ead mov rdx, rbx ; +0x80, 0x1800a7eb0 mov rax, [rcx] ; +0x83, 0x1800a7eb3 call qword ptr [rax+90h] ; +0x86, 0x1800a7eb6 mov esi, eax ; +0x8c, 0x1800a7ebc test eax, eax ; +0x8e, 0x1800a7ebe jz loc_1800A7F4B ; +0x90, 0x1800a7ec0 mov rax, cs:off_1801AED20 ; +0x96, 0x1800a7ec6 test byte ptr [rax+10h], 80h ; +0x9d, 0x1800a7ecd jz short loc_1800A7F4B ; +0xa1, 0x1800a7ed1 mov [rsp+178h+var_20], rdi ; +0xa3, 0x1800a7ed3 lea rcx, [rsp+178h+var_138]; void * ; +0xab, 0x1800a7edb mov edi, 100h ; +0xb0, 0x1800a7ee0 mov r8, rbx ; +0xb5, 0x1800a7ee5 mov edx, edi ; +0xb8, 0x1800a7ee8 call sub_1800F2F70 ; +0xba, 0x1800a7eea movsxd rbx, eax ; +0xbf, 0x1800a7eef lea rcx, [rsp+178h+var_138] ; +0xc2, 0x1800a7ef2 mov edx, edi ; +0xc7, 0x1800a7ef7 lea r8, asc_18014572C; ", " ; +0xc9, 0x1800a7ef9 sub edx, ebx ; +0xd0, 0x1800a7f00 add rcx, rbx; void * ; +0xd2, 0x1800a7f02 call sub_1800F2F70 ; +0xd5, 0x1800a7f05 add ebx, eax ; +0xda, 0x1800a7f0a lea rcx, [rsp+178h+var_138] ; +0xdc, 0x1800a7f0c movsxd rax, ebx ; +0xe1, 0x1800a7f11 sub edi, ebx ; +0xe4, 0x1800a7f14 add rcx, rax ; +0xe6, 0x1800a7f16 mov edx, edi ; +0xe9, 0x1800a7f19 mov r8d, ebp ; +0xeb, 0x1800a7f1b call sub_1800F2EC0 ; +0xee, 0x1800a7f1e lea rax, [rsp+178h+var_138] ; +0xf3, 0x1800a7f23 mov r8, r14 ; +0xf8, 0x1800a7f28 lea r9, aSoundGetname; "Sound::getName" ; +0xfb, 0x1800a7f2b mov [rsp+178h+var_158], rax ; +0x102, 0x1800a7f32 mov edx, 5 ; +0x107, 0x1800a7f37 mov ecx, esi ; +0x10c, 0x1800a7f3c call sub_1800B20E0 ; +0x10e, 0x1800a7f3e mov rdi, [rsp+178h+var_20] ; +0x113, 0x1800a7f43 mov rcx, [rsp+178h+var_140] ; +0x11b, 0x1800a7f4b mov r14, [rsp+178h+var_28] ; +0x120, 0x1800a7f50 mov rbp, [rsp+178h+var_18] ; +0x128, 0x1800a7f58 mov rbx, [rsp+178h+var_10] ; +0x130, 0x1800a7f60 test rcx, rcx ; +0x138, 0x1800a7f68 jz short loc_1800A7F77 ; +0x13b, 0x1800a7f6b mov edx, 0Ch ; +0x13d, 0x1800a7f6d call sub_180102300 ; +0x142, 0x1800a7f72 mov eax, esi ; +0x147, 0x1800a7f77 mov rcx, [rsp+178h+var_38] ; +0x149, 0x1800a7f79 xor rcx, rsp; StackCookie ; +0x151, 0x1800a7f81 call __security_check_cookie ; +0x154, 0x1800a7f84 add rsp, 170h ; +0x159, 0x1800a7f89 pop rsi ; +0x160, 0x1800a7f90 retn ; +0x161, 0x1800a7f91