; ; FMOD::System::getNumDrivers from 0x1800adf70 to 0x1800ae040 (208 bytes) ; ; 4 xrefs: ; > FMOD_System_GetNumDrivers @ 0x1800c6b89 ; > @ 0x180194348 ; > @ 0x1801fc4e0 ; > @ 0x1801fc4ec ; ; 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, 0x1800adf70 mov [rsp+arg_18], rsi ; +0x5, 0x1800adf75 push rdi ; +0xa, 0x1800adf7a sub rsp, 150h ; +0xb, 0x1800adf7b mov rax, cs:__security_cookie ; +0x12, 0x1800adf82 xor rax, rsp ; +0x19, 0x1800adf89 mov [rsp+158h+var_18], rax ; +0x1c, 0x1800adf8c mov rdi, rdx ; +0x24, 0x1800adf94 mov [rsp+158h+var_128], 0 ; +0x27, 0x1800adf97 lea rdx, [rsp+158h+var_120] ; +0x30, 0x1800adfa0 mov rsi, rcx ; +0x35, 0x1800adfa5 lea r8, [rsp+158h+var_128] ; +0x38, 0x1800adfa8 call ?validate@SystemI@FMOD@@SA?AW4FMOD_RESULT@@PEAVSystem@2@PEAPEAV12@PEAVSystemLockScope@2@@Z; FMOD::SystemI::validate(FMOD::System *,FMOD::SystemI * *,FMOD::SystemLockScope *) ; +0x3d, 0x1800adfad mov ebx, eax ; +0x42, 0x1800adfb2 test eax, eax ; +0x44, 0x1800adfb4 jnz short loc_1800ADFCB ; +0x46, 0x1800adfb6 mov rcx, [rsp+158h+var_120] ; +0x48, 0x1800adfb8 mov rdx, rdi ; +0x4d, 0x1800adfbd call sub_1800E4500 ; +0x50, 0x1800adfc0 mov ebx, eax ; +0x55, 0x1800adfc5 test eax, eax ; +0x57, 0x1800adfc7 jz short loc_1800AE00A ; +0x59, 0x1800adfc9 mov rax, cs:off_1801AED20 ; +0x5b, 0x1800adfcb test byte ptr [rax+10h], 80h ; +0x62, 0x1800adfd2 jz short loc_1800AE00A ; +0x66, 0x1800adfd6 mov r8, rdi ; +0x68, 0x1800adfd8 lea rcx, [rsp+158h+var_118] ; +0x6b, 0x1800adfdb mov edx, 100h ; +0x70, 0x1800adfe0 call sub_1800F3020 ; +0x75, 0x1800adfe5 lea rax, [rsp+158h+var_118] ; +0x7a, 0x1800adfea mov r8, rsi ; +0x7f, 0x1800adfef lea r9, aSystemGetnumdr; "System::getNumDrivers" ; +0x82, 0x1800adff2 mov [rsp+158h+var_138], rax ; +0x89, 0x1800adff9 mov edx, 1 ; +0x8e, 0x1800adffe mov ecx, ebx ; +0x93, 0x1800ae003 call sub_1800B20E0 ; +0x95, 0x1800ae005 mov rcx, [rsp+158h+var_128] ; +0x9a, 0x1800ae00a test rcx, rcx ; +0x9f, 0x1800ae00f jz short loc_1800AE019 ; +0xa2, 0x1800ae012 call sub_180102320 ; +0xa4, 0x1800ae014 mov eax, ebx ; +0xa9, 0x1800ae019 mov rcx, [rsp+158h+var_18] ; +0xab, 0x1800ae01b xor rcx, rsp; StackCookie ; +0xb3, 0x1800ae023 call __security_check_cookie ; +0xb6, 0x1800ae026 lea r11, [rsp+158h+var_8] ; +0xbb, 0x1800ae02b mov rbx, [r11+20h] ; +0xc3, 0x1800ae033 mov rsi, [r11+28h] ; +0xc7, 0x1800ae037 mov rsp, r11 ; +0xcb, 0x1800ae03b pop rdi ; +0xce, 0x1800ae03e retn ; +0xcf, 0x1800ae03f