; ; _validdrive from 0x18013c034 to 0x18013c0b4 (128 bytes) ; ; 2 xrefs: ; > common_getdcwd @ 0x18013bf25 ; > @ 0x180203998 ; ; 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 ; push rbx ; +0x0, 0x18013c034 sub rsp, 30h ; +0x2, 0x18013c036 mov rax, cs:__security_cookie ; +0x6, 0x18013c03a xor rax, rsp ; +0xd, 0x18013c041 mov [rsp+38h+var_10], rax ; +0x10, 0x18013c044 cmp ecx, 1Ah ; +0x15, 0x18013c049 jbe short loc_18013C06D ; +0x18, 0x18013c04c call __doserrno ; +0x1a, 0x18013c04e mov dword ptr [rax], 0Fh ; +0x1f, 0x18013c053 call _errno ; +0x25, 0x18013c059 mov dword ptr [rax], 0Dh ; +0x2a, 0x18013c05e call _invalid_parameter_noinfo ; +0x30, 0x18013c064 xor eax, eax ; +0x35, 0x18013c069 jmp short loc_18013C0A1 ; +0x37, 0x18013c06b xor ebx, ebx ; +0x39, 0x18013c06d test ecx, ecx ; +0x3b, 0x18013c06f jnz short loc_18013C078 ; +0x3d, 0x18013c071 lea eax, [rbx+1] ; +0x3f, 0x18013c073 jmp short loc_18013C0A1 ; +0x42, 0x18013c076 add cx, 40h ; '@' ; +0x44, 0x18013c078 mov [rsp+38h+var_16], 5C003Ah ; +0x48, 0x18013c07c mov [rsp+38h+RootPathName], cx ; +0x50, 0x18013c084 lea rcx, [rsp+38h+RootPathName]; lpRootPathName ; +0x55, 0x18013c089 mov [rsp+38h+var_12], bx ; +0x5a, 0x18013c08e call cs:GetDriveTypeW ; +0x5f, 0x18013c093 cmp eax, 2 ; +0x65, 0x18013c099 setnb bl ; +0x68, 0x18013c09c mov eax, ebx ; +0x6b, 0x18013c09f mov rcx, [rsp+38h+var_10] ; +0x6d, 0x18013c0a1 xor rcx, rsp; StackCookie ; +0x72, 0x18013c0a6 call __security_check_cookie ; +0x75, 0x18013c0a9 add rsp, 30h ; +0x7a, 0x18013c0ae pop rbx ; +0x7e, 0x18013c0b2 retn ; +0x7f, 0x18013c0b3