; ; FMOD::System::getNumNestedPlugins from 0x1800ae040 to 0x1800ae16f (303 bytes) ; ; 6 xrefs: ; > FMOD_System_GetNumNestedPlugins @ 0x1800c6b99 ; > @ 0x180187e84 ; > @ 0x180187eb8 ; > @ 0x180194348 ; > @ 0x1801fc4ec ; > @ 0x1801fc4f8 ; ; 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, 0x1800ae040 push rsi ; +0x3, 0x1800ae043 sub rsp, 170h ; +0x4, 0x1800ae044 mov rax, cs:__security_cookie ; +0xb, 0x1800ae04b xor rax, rsp ; +0x12, 0x1800ae052 mov [rsp+178h+var_38], rax ; +0x15, 0x1800ae055 mov [r11-10h], rbx ; +0x1d, 0x1800ae05d mov ebx, edx ; +0x21, 0x1800ae061 mov [r11-18h], rbp ; +0x23, 0x1800ae063 lea rdx, [rsp+178h+var_140] ; +0x27, 0x1800ae067 mov rbp, r8 ; +0x2c, 0x1800ae06c mov [r11-28h], r14 ; +0x2f, 0x1800ae06f lea r8, [rsp+178h+var_148] ; +0x33, 0x1800ae073 mov [rsp+178h+var_148], 0 ; +0x38, 0x1800ae078 mov r14, rcx ; +0x41, 0x1800ae081 call ?validate@SystemI@FMOD@@SA?AW4FMOD_RESULT@@PEAVSystem@2@PEAPEAV12@PEAVSystemLockScope@2@@Z; FMOD::SystemI::validate(FMOD::System *,FMOD::SystemI * *,FMOD::SystemLockScope *) ; +0x44, 0x1800ae084 mov esi, eax ; +0x49, 0x1800ae089 test eax, eax ; +0x4b, 0x1800ae08b jnz short loc_1800AE0A8 ; +0x4d, 0x1800ae08d mov rcx, [rsp+178h+var_140] ; +0x4f, 0x1800ae08f mov r8, rbp ; +0x54, 0x1800ae094 mov edx, ebx ; +0x57, 0x1800ae097 call sub_1800E45A0 ; +0x59, 0x1800ae099 mov esi, eax ; +0x5e, 0x1800ae09e test eax, eax ; +0x60, 0x1800ae0a0 jz loc_1800AE12D ; +0x62, 0x1800ae0a2 mov rax, cs:off_1801AED20 ; +0x68, 0x1800ae0a8 test byte ptr [rax+10h], 80h ; +0x6f, 0x1800ae0af jz short loc_1800AE12D ; +0x73, 0x1800ae0b3 mov [rsp+178h+var_20], rdi ; +0x75, 0x1800ae0b5 lea rcx, [rsp+178h+var_138] ; +0x7d, 0x1800ae0bd mov edi, 100h ; +0x82, 0x1800ae0c2 mov r8d, ebx ; +0x87, 0x1800ae0c7 mov edx, edi ; +0x8a, 0x1800ae0ca call sub_1800F2EF0 ; +0x8c, 0x1800ae0cc movsxd rbx, eax ; +0x91, 0x1800ae0d1 lea rcx, [rsp+178h+var_138] ; +0x94, 0x1800ae0d4 mov edx, edi ; +0x99, 0x1800ae0d9 lea r8, asc_18014572C; ", " ; +0x9b, 0x1800ae0db sub edx, ebx ; +0xa2, 0x1800ae0e2 add rcx, rbx; void * ; +0xa4, 0x1800ae0e4 call sub_1800F2F70 ; +0xa7, 0x1800ae0e7 add ebx, eax ; +0xac, 0x1800ae0ec lea rcx, [rsp+178h+var_138] ; +0xae, 0x1800ae0ee movsxd rax, ebx ; +0xb3, 0x1800ae0f3 sub edi, ebx ; +0xb6, 0x1800ae0f6 add rcx, rax ; +0xb8, 0x1800ae0f8 mov edx, edi ; +0xbb, 0x1800ae0fb mov r8, rbp ; +0xbd, 0x1800ae0fd call sub_1800F3020 ; +0xc0, 0x1800ae100 lea rax, [rsp+178h+var_138] ; +0xc5, 0x1800ae105 mov r8, r14 ; +0xca, 0x1800ae10a lea r9, aSystemGetnumne; "System::getNumNestedPlugins" ; +0xcd, 0x1800ae10d mov [rsp+178h+var_158], rax ; +0xd4, 0x1800ae114 mov edx, 1 ; +0xd9, 0x1800ae119 mov ecx, esi ; +0xde, 0x1800ae11e call sub_1800B20E0 ; +0xe0, 0x1800ae120 mov rdi, [rsp+178h+var_20] ; +0xe5, 0x1800ae125 mov rcx, [rsp+178h+var_148] ; +0xed, 0x1800ae12d mov r14, [rsp+178h+var_28] ; +0xf2, 0x1800ae132 mov rbp, [rsp+178h+var_18] ; +0xfa, 0x1800ae13a mov rbx, [rsp+178h+var_10] ; +0x102, 0x1800ae142 test rcx, rcx ; +0x10a, 0x1800ae14a jz short loc_1800AE154 ; +0x10d, 0x1800ae14d call sub_180102320 ; +0x10f, 0x1800ae14f mov eax, esi ; +0x114, 0x1800ae154 mov rcx, [rsp+178h+var_38] ; +0x116, 0x1800ae156 xor rcx, rsp; StackCookie ; +0x11e, 0x1800ae15e call __security_check_cookie ; +0x121, 0x1800ae161 add rsp, 170h ; +0x126, 0x1800ae166 pop rsi ; +0x12d, 0x1800ae16d retn ; +0x12e, 0x1800ae16e