; ; FMOD::Sound::getNumSubSounds from 0x1800a7fa0 to 0x1800a8082 (226 bytes) ; ; 3 xrefs: ; > FMOD_Sound_GetNumSubSounds @ 0x1800c6619 ; > @ 0x180194348 ; > @ 0x1801fbaa8 ; ; 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, 0x1800a7fa0 mov [rsp+arg_18], rsi ; +0x5, 0x1800a7fa5 push rdi ; +0xa, 0x1800a7faa sub rsp, 150h ; +0xb, 0x1800a7fab mov rax, cs:__security_cookie ; +0x12, 0x1800a7fb2 xor rax, rsp ; +0x19, 0x1800a7fb9 mov [rsp+158h+var_18], rax ; +0x1c, 0x1800a7fbc mov rdi, rdx ; +0x24, 0x1800a7fc4 xor r8d, r8d ; +0x27, 0x1800a7fc7 lea rdx, [rsp+158h+var_128] ; +0x2a, 0x1800a7fca mov rsi, rcx ; +0x2f, 0x1800a7fcf call sub_1800E1460 ; +0x32, 0x1800a7fd2 mov ebx, eax ; +0x37, 0x1800a7fd7 test eax, eax ; +0x39, 0x1800a7fd9 jnz short loc_1800A8003 ; +0x3b, 0x1800a7fdb mov rax, [rsp+158h+var_128] ; +0x3d, 0x1800a7fdd mov ecx, [rax+110h] ; +0x42, 0x1800a7fe2 nop ; +0x48, 0x1800a7fe8 test ecx, ecx ; +0x49, 0x1800a7fe9 jz short loc_1800A8069 ; +0x4b, 0x1800a7feb mov rax, [rsp+158h+var_128] ; +0x4d, 0x1800a7fed mov ecx, [rax+110h] ; +0x52, 0x1800a7ff2 nop ; +0x58, 0x1800a7ff8 cmp ecx, 7 ; +0x59, 0x1800a7ff9 jz short loc_1800A8069 ; +0x5c, 0x1800a7ffc mov ebx, 2Eh ; '.' ; +0x5e, 0x1800a7ffe mov rax, cs:off_1801AED20 ; +0x63, 0x1800a8003 test byte ptr [rax+10h], 80h ; +0x6a, 0x1800a800a jz short loc_1800A8042 ; +0x6e, 0x1800a800e mov r8, rdi ; +0x70, 0x1800a8010 lea rcx, [rsp+158h+var_118] ; +0x73, 0x1800a8013 mov edx, 100h ; +0x78, 0x1800a8018 call sub_1800F3020 ; +0x7d, 0x1800a801d lea rax, [rsp+158h+var_118] ; +0x82, 0x1800a8022 mov r8, rsi ; +0x87, 0x1800a8027 lea r9, aSoundGetnumsub; "Sound::getNumSubSounds" ; +0x8a, 0x1800a802a mov [rsp+158h+var_138], rax ; +0x91, 0x1800a8031 mov edx, 5 ; +0x96, 0x1800a8036 mov ecx, ebx ; +0x9b, 0x1800a803b call sub_1800B20E0 ; +0x9d, 0x1800a803d mov eax, ebx ; +0xa2, 0x1800a8042 mov rcx, [rsp+158h+var_18] ; +0xa4, 0x1800a8044 xor rcx, rsp; StackCookie ; +0xac, 0x1800a804c call __security_check_cookie ; +0xaf, 0x1800a804f lea r11, [rsp+158h+var_8] ; +0xb4, 0x1800a8054 mov rbx, [r11+20h] ; +0xbc, 0x1800a805c mov rsi, [r11+28h] ; +0xc0, 0x1800a8060 mov rsp, r11 ; +0xc4, 0x1800a8064 pop rdi ; +0xc7, 0x1800a8067 retn ; +0xc8, 0x1800a8068 mov rcx, [rsp+158h+var_128] ; +0xc9, 0x1800a8069 mov rdx, rdi ; +0xce, 0x1800a806e mov rax, [rcx] ; +0xd1, 0x1800a8071 call qword ptr [rax+0A8h] ; +0xd4, 0x1800a8074 mov ebx, eax ; +0xda, 0x1800a807a test eax, eax ; +0xdc, 0x1800a807c jnz short loc_1800A8003 ; +0xde, 0x1800a807e jmp short loc_1800A8044 ; +0xe0, 0x1800a8080