; ; FMOD::System::getChannel from 0x1800acdd0 to 0x1800aceff (303 bytes) ; ; 5 xrefs: ; > FMOD_System_GetChannel @ 0x1800c6a89 ; > @ 0x180188ac8 ; > @ 0x180188afc ; > @ 0x180194348 ; > @ 0x1801fc2ac ; ; 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, 0x1800acdd0 push rsi ; +0x3, 0x1800acdd3 sub rsp, 170h ; +0x4, 0x1800acdd4 mov rax, cs:__security_cookie ; +0xb, 0x1800acddb xor rax, rsp ; +0x12, 0x1800acde2 mov [rsp+178h+var_38], rax ; +0x15, 0x1800acde5 mov [r11-10h], rbx ; +0x1d, 0x1800acded mov ebx, edx ; +0x21, 0x1800acdf1 mov [r11-18h], rbp ; +0x23, 0x1800acdf3 lea rdx, [rsp+178h+var_140] ; +0x27, 0x1800acdf7 mov rbp, r8 ; +0x2c, 0x1800acdfc mov [r11-28h], r14 ; +0x2f, 0x1800acdff lea r8, [rsp+178h+var_148] ; +0x33, 0x1800ace03 mov [rsp+178h+var_148], 0 ; +0x38, 0x1800ace08 mov r14, rcx ; +0x41, 0x1800ace11 call ?validate@SystemI@FMOD@@SA?AW4FMOD_RESULT@@PEAVSystem@2@PEAPEAV12@PEAVSystemLockScope@2@@Z; FMOD::SystemI::validate(FMOD::System *,FMOD::SystemI * *,FMOD::SystemLockScope *) ; +0x44, 0x1800ace14 mov esi, eax ; +0x49, 0x1800ace19 test eax, eax ; +0x4b, 0x1800ace1b jnz short loc_1800ACE38 ; +0x4d, 0x1800ace1d mov rcx, [rsp+178h+var_140] ; +0x4f, 0x1800ace1f mov r8, rbp ; +0x54, 0x1800ace24 mov edx, ebx ; +0x57, 0x1800ace27 call sub_1800E3FA0 ; +0x59, 0x1800ace29 mov esi, eax ; +0x5e, 0x1800ace2e test eax, eax ; +0x60, 0x1800ace30 jz loc_1800ACEBD ; +0x62, 0x1800ace32 mov rax, cs:off_1801AED20 ; +0x68, 0x1800ace38 test byte ptr [rax+10h], 80h ; +0x6f, 0x1800ace3f jz short loc_1800ACEBD ; +0x73, 0x1800ace43 mov [rsp+178h+var_20], rdi ; +0x75, 0x1800ace45 lea rcx, [rsp+178h+var_138] ; +0x7d, 0x1800ace4d mov edi, 100h ; +0x82, 0x1800ace52 mov r8d, ebx ; +0x87, 0x1800ace57 mov edx, edi ; +0x8a, 0x1800ace5a call sub_1800F2EC0 ; +0x8c, 0x1800ace5c movsxd rbx, eax ; +0x91, 0x1800ace61 lea rcx, [rsp+178h+var_138] ; +0x94, 0x1800ace64 mov edx, edi ; +0x99, 0x1800ace69 lea r8, asc_18014572C; ", " ; +0x9b, 0x1800ace6b sub edx, ebx ; +0xa2, 0x1800ace72 add rcx, rbx; void * ; +0xa4, 0x1800ace74 call sub_1800F2F70 ; +0xa7, 0x1800ace77 add ebx, eax ; +0xac, 0x1800ace7c lea rcx, [rsp+178h+var_138] ; +0xae, 0x1800ace7e movsxd rax, ebx ; +0xb3, 0x1800ace83 sub edi, ebx ; +0xb6, 0x1800ace86 add rcx, rax ; +0xb8, 0x1800ace88 mov edx, edi ; +0xbb, 0x1800ace8b mov r8, rbp ; +0xbd, 0x1800ace8d call sub_1800F3230 ; +0xc0, 0x1800ace90 lea rax, [rsp+178h+var_138] ; +0xc5, 0x1800ace95 mov r8, r14 ; +0xca, 0x1800ace9a lea r9, aSystemGetchann; "System::getChannel" ; +0xcd, 0x1800ace9d mov [rsp+178h+var_158], rax ; +0xd4, 0x1800acea4 mov edx, 1 ; +0xd9, 0x1800acea9 mov ecx, esi ; +0xde, 0x1800aceae call sub_1800B20E0 ; +0xe0, 0x1800aceb0 mov rdi, [rsp+178h+var_20] ; +0xe5, 0x1800aceb5 mov rcx, [rsp+178h+var_148] ; +0xed, 0x1800acebd mov r14, [rsp+178h+var_28] ; +0xf2, 0x1800acec2 mov rbp, [rsp+178h+var_18] ; +0xfa, 0x1800aceca mov rbx, [rsp+178h+var_10] ; +0x102, 0x1800aced2 test rcx, rcx ; +0x10a, 0x1800aceda jz short loc_1800ACEE4 ; +0x10d, 0x1800acedd call sub_180102320 ; +0x10f, 0x1800acedf mov eax, esi ; +0x114, 0x1800acee4 mov rcx, [rsp+178h+var_38] ; +0x116, 0x1800acee6 xor rcx, rsp; StackCookie ; +0x11e, 0x1800aceee call __security_check_cookie ; +0x121, 0x1800acef1 add rsp, 170h ; +0x126, 0x1800acef6 pop rsi ; +0x12d, 0x1800acefd retn ; +0x12e, 0x1800acefe