; ; FMOD::Channel::setLoopPoints from 0x1800a06c0 to 0x1800a088a (458 bytes) ; ; 5 xrefs: ; > FMOD_Channel_SetLoopPoints @ 0x1800c591b ; > @ 0x180185bcc ; > @ 0x180185c00 ; > @ 0x180194348 ; > @ 0x1801fae84 ; ; 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, 0x1800a06c0 push rsi ; +0x3, 0x1800a06c3 sub rsp, 180h ; +0x4, 0x1800a06c4 mov rax, cs:__security_cookie ; +0xb, 0x1800a06cb xor rax, rsp ; +0x12, 0x1800a06d2 mov [rsp+188h+var_48], rax ; +0x15, 0x1800a06d5 mov [r11-10h], rbx ; +0x1d, 0x1800a06dd mov ebx, edx ; +0x21, 0x1800a06e1 mov [r11-18h], rbp ; +0x23, 0x1800a06e3 lea rdx, [rsp+188h+var_150] ; +0x27, 0x1800a06e7 mov [r11-28h], r12 ; +0x2c, 0x1800a06ec mov ebp, r8d ; +0x30, 0x1800a06f0 mov [r11-30h], r14 ; +0x33, 0x1800a06f3 lea r8, [rsp+188h+var_158] ; +0x37, 0x1800a06f7 mov [r11-38h], r15 ; +0x3c, 0x1800a06fc mov r14d, r9d ; +0x40, 0x1800a0700 mov r12, rcx ; +0x43, 0x1800a0703 mov [rsp+188h+var_158], 0 ; +0x46, 0x1800a0706 call ?validate@ChannelI@FMOD@@SA?AW4FMOD_RESULT@@PEAVChannel@2@PEAPEAV12@PEAVSystemLockScope@2@@Z; FMOD::ChannelI::validate(FMOD::Channel *,FMOD::ChannelI * *,FMOD::SystemLockScope *) ; +0x4f, 0x1800a070f mov r15d, [rsp+188h+arg_20] ; +0x54, 0x1800a0714 mov esi, eax ; +0x5c, 0x1800a071c test eax, eax ; +0x5e, 0x1800a071e jnz short loc_1800A0743 ; +0x60, 0x1800a0720 mov rcx, [rsp+188h+var_150] ; +0x62, 0x1800a0722 mov r9d, r14d ; +0x67, 0x1800a0727 mov r8d, ebp ; +0x6a, 0x1800a072a mov dword ptr [rsp+188h+var_168], r15d ; +0x6d, 0x1800a072d mov edx, ebx ; +0x72, 0x1800a0732 call sub_1800CEF10 ; +0x74, 0x1800a0734 mov esi, eax ; +0x79, 0x1800a0739 test eax, eax ; +0x7b, 0x1800a073b jz loc_1800A0838 ; +0x7d, 0x1800a073d mov rax, cs:off_1801AED20 ; +0x83, 0x1800a0743 test byte ptr [rax+10h], 80h ; +0x8a, 0x1800a074a jz loc_1800A0838 ; +0x8e, 0x1800a074e mov [rsp+188h+var_20], rdi ; +0x94, 0x1800a0754 lea rcx, [rsp+188h+var_148] ; +0x9c, 0x1800a075c mov edi, 100h ; +0xa1, 0x1800a0761 mov r8d, ebx ; +0xa6, 0x1800a0766 mov edx, edi ; +0xa9, 0x1800a0769 call sub_1800F2EF0 ; +0xab, 0x1800a076b movsxd rbx, eax ; +0xb0, 0x1800a0770 lea rcx, [rsp+188h+var_148] ; +0xb3, 0x1800a0773 mov edx, edi ; +0xb8, 0x1800a0778 lea r8, asc_18014572C; ", " ; +0xba, 0x1800a077a sub edx, ebx ; +0xc1, 0x1800a0781 add rcx, rbx; void * ; +0xc3, 0x1800a0783 call sub_1800F2F70 ; +0xc6, 0x1800a0786 add ebx, eax ; +0xcb, 0x1800a078b mov edx, edi ; +0xcd, 0x1800a078d lea rax, [rsp+188h+var_148] ; +0xcf, 0x1800a078f movsxd rcx, ebx ; +0xd4, 0x1800a0794 add rcx, rax ; +0xd7, 0x1800a0797 sub edx, ebx ; +0xda, 0x1800a079a mov r8d, ebp ; +0xdc, 0x1800a079c call sub_1800F2EF0 ; +0xdf, 0x1800a079f add ebx, eax ; +0xe4, 0x1800a07a4 lea rcx, [rsp+188h+var_148] ; +0xe6, 0x1800a07a6 movsxd rax, ebx ; +0xeb, 0x1800a07ab lea r8, asc_18014572C; ", " ; +0xee, 0x1800a07ae mov edx, edi ; +0xf5, 0x1800a07b5 add rcx, rax; void * ; +0xf7, 0x1800a07b7 sub edx, ebx ; +0xfa, 0x1800a07ba call sub_1800F2F70 ; +0xfc, 0x1800a07bc add ebx, eax ; +0x101, 0x1800a07c1 lea rcx, [rsp+188h+var_148] ; +0x103, 0x1800a07c3 movsxd rax, ebx ; +0x108, 0x1800a07c8 mov edx, edi ; +0x10b, 0x1800a07cb add rcx, rax ; +0x10d, 0x1800a07cd sub edx, ebx ; +0x110, 0x1800a07d0 mov r8d, r14d ; +0x112, 0x1800a07d2 call sub_1800F2EF0 ; +0x115, 0x1800a07d5 add ebx, eax ; +0x11a, 0x1800a07da lea rcx, [rsp+188h+var_148] ; +0x11c, 0x1800a07dc movsxd rax, ebx ; +0x121, 0x1800a07e1 lea r8, asc_18014572C; ", " ; +0x124, 0x1800a07e4 mov edx, edi ; +0x12b, 0x1800a07eb add rcx, rax; void * ; +0x12d, 0x1800a07ed sub edx, ebx ; +0x130, 0x1800a07f0 call sub_1800F2F70 ; +0x132, 0x1800a07f2 add ebx, eax ; +0x137, 0x1800a07f7 lea rcx, [rsp+188h+var_148] ; +0x139, 0x1800a07f9 movsxd rax, ebx ; +0x13e, 0x1800a07fe sub edi, ebx ; +0x141, 0x1800a0801 add rcx, rax ; +0x143, 0x1800a0803 mov edx, edi ; +0x146, 0x1800a0806 mov r8d, r15d ; +0x148, 0x1800a0808 call sub_1800F2EF0 ; +0x14b, 0x1800a080b lea rax, [rsp+188h+var_148] ; +0x150, 0x1800a0810 mov r8, r12 ; +0x155, 0x1800a0815 lea r9, aChannelSetloop_0; "Channel::setLoopPoints" ; +0x158, 0x1800a0818 mov [rsp+188h+var_168], rax ; +0x15f, 0x1800a081f mov edx, 2 ; +0x164, 0x1800a0824 mov ecx, esi ; +0x169, 0x1800a0829 call sub_1800B20E0 ; +0x16b, 0x1800a082b mov rdi, [rsp+188h+var_20] ; +0x170, 0x1800a0830 mov rcx, [rsp+188h+var_158] ; +0x178, 0x1800a0838 mov r15, [rsp+188h+var_38] ; +0x17d, 0x1800a083d mov r14, [rsp+188h+var_30] ; +0x185, 0x1800a0845 mov r12, [rsp+188h+var_28] ; +0x18d, 0x1800a084d mov rbp, [rsp+188h+var_18] ; +0x195, 0x1800a0855 mov rbx, [rsp+188h+var_10] ; +0x19d, 0x1800a085d test rcx, rcx ; +0x1a5, 0x1800a0865 jz short loc_1800A086F ; +0x1a8, 0x1800a0868 call sub_180102320 ; +0x1aa, 0x1800a086a mov eax, esi ; +0x1af, 0x1800a086f mov rcx, [rsp+188h+var_48] ; +0x1b1, 0x1800a0871 xor rcx, rsp; StackCookie ; +0x1b9, 0x1800a0879 call __security_check_cookie ; +0x1bc, 0x1800a087c add rsp, 180h ; +0x1c1, 0x1800a0881 pop rsi ; +0x1c8, 0x1800a0888 retn ; +0x1c9, 0x1800a0889