Function at 0x18018fcb0
Capabilities:
Get disk information

Disassembly:
mov qword [rsp + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r14
push r15
mov rbp, rsp
sub rsp, 0x40
mov qword [rbp - 8], 0xfffffffffffffffe
mov rsi, rcx
mov dword [rbp - 0x20], 0
lea rax, sym.Qt5Core.dll_struct_QListData::Data_const_QListData::shared_null
mov qword [rcx], rax
mov dword [rbp - 0x20], 1
mov byte [rbp + 0x48], 0
lea rdx, [rbp + 0x58]
lea rcx, [rbp + 0x48]
call fcn.18018f0e0
nop
mov ecx, 0x8001
call qword [sym.imp.KERNEL32.dll_SetErrorMode]
mov ebx, eax
call qword [sym.imp.KERNEL32.dll_GetLogicalDrives]
mov edi, eax
mov ecx, ebx
call qword [sym.imp.KERNEL32.dll_SetErrorMode]
mov r15d, 0xffffffff
and edi, 0x3ffffff
je 0x18018fe88
lea r12d, [r15 + 0x21]
nop
mov r14d, edi
test dil, 1
je 0x18018fda5
lea rdx, [rbp + 0x58]
lea rcx, [rbp - 0x10]
call sym.Qt5Core.dll_public:_void___cdecl_QStorageInfo::constructor_class_QString_const____ptr64____ptr64
nop
lea rdx, [rbp - 0x18]
lea rcx, [rbp - 0x10]
call sym.Qt5Core.dll_public:_class_QString___cdecl_QMimeType::name_void____ptr64
mov rcx, qword [rax]
mov ebx, dword [rcx + 4]
mov rax, qword [rbp - 0x18]
mov ecx, dword [rax]
test ecx, ecx
je 0x18018fd79
cmp ecx, 0xffffffff
je 0x18018fd8b
mov ecx, r15d
mov rax, qword [rbp - 0x18]
lock xadd dword [rax], ecx
cmp ecx, 1
jne 0x18018fd8b
mov edx, 2
lea r8d, [rdx + 6]
mov rcx, qword [rbp - 0x18]
call sym.Qt5Core.dll_public:_static_void___cdecl_QArrayData::deallocate_struct_QArrayData____ptr64__unsigned_long_long_unsigned___int64___unsigned_long_long_unsigned___int64__
test ebx, ebx
je 0x18018fd9c
lea rdx, [rbp - 0x10]
mov rcx, rsi
call fcn.18018f190
nop
lea rcx, [rbp - 0x10]
call sym.Qt5Core.dll_public:_void___cdecl_QStorageInfo::destructor_void____ptr64
mov rax, qword [rbp + 0x58]
mov ecx, dword [rax]
mov rax, qword [rbp + 0x58]
cmp ecx, 1
ja 0x18018fdbb
cmp qword [rax + 0x10], 0x18
je 0x18018fdd0
mov edx, dword [rax + 4]
inc edx
xor r8d, r8d
lea rcx, [rbp + 0x58]
call sym.Qt5Core.dll_private:_void___cdecl_QString::reallocData_unsigned_int__bool____ptr64
mov rax, qword [rbp + 0x58]
mov ecx, dword [rax]
mov rax, qword [rbp + 0x58]
cmp ecx, 1
ja 0x18018fde2
cmp qword [rax + 0x10], 0x18
je 0x18018fdf7
mov edx, dword [rax + 4]
inc edx
xor r8d, r8d
lea rcx, [rbp + 0x58]
call sym.Qt5Core.dll_private:_void___cdecl_QString::reallocData_unsigned_int__bool____ptr64
mov rax, qword [rbp + 0x58]
mov rcx, qword [rax + 0x10]
movzx ebx, word [rax + rcx]
mov ecx, dword [rax]
cmp ecx, 1
ja 0x18018fe0d
cmp qword [rax + 0x10], 0x18
je 0x18018fe22
mov rax, qword [rbp + 0x58]
mov edx, dword [rax + 4]
inc edx
xor r8d, r8d
lea rcx, [rbp + 0x58]
call sym.Qt5Core.dll_private:_void___cdecl_QString::reallocData_unsigned_int__bool____ptr64
inc bx
mov word [rbp + 0x50], bx
mov rcx, qword [rbp + 0x58]
cmp dword [rcx + 4], 0
jg 0x18018fe47
movzx r8d, r12w
mov edx, 1
lea rcx, [rbp + 0x58]
call sym.Qt5Core.dll_public:_void___cdecl_QString::resize_int__class_QChar____ptr64
jmp 0x18018fe6a
mov eax, dword [rcx]
cmp eax, 1
ja 0x18018fe59
mov rax, qword [rbp + 0x58]
cmp qword [rax + 0x10], 0x18
je 0x18018fe6e
mov edx, dword [rcx + 4]
inc edx
xor r8d, r8d
lea rcx, [rbp + 0x58]
call sym.Qt5Core.dll_private:_void___cdecl_QString::reallocData_unsigned_int__bool____ptr64
mov rax, qword [rbp + 0x58]
mov rdx, qword [rax + 0x10]
add rdx, rax
movzx eax, word [rbp + 0x50]
mov word [rdx], ax
shr edi, 1
cmp r14d, 2
jae 0x18018fd30
mov rax, qword [rbp + 0x58]
mov ecx, dword [rax]
test ecx, ecx
je 0x18018fea6
cmp ecx, 0xffffffff
je 0x18018feb8
mov rax, qword [rbp + 0x58]
lock xadd dword [rax], r15d
cmp r15d, 1
jne 0x18018feb8
mov edx, 2
lea r8d, [rdx + 6]
mov rcx, qword [rbp + 0x58]
call sym.Qt5Core.dll_public:_static_void___cdecl_QArrayData::deallocate_struct_QArrayData____ptr64__unsigned_long_long_unsigned___int64___unsigned_long_long_unsigned___int64__
mov rax, rsi
add rsp, 0x40
pop r15
pop r14
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret