Function at 0x67141da0
Capabilities:
Get disk information

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x6727d19e
mov eax, dword fs:[0]
push eax
sub esp, 0x14
push ebx
push esi
push edi
mov eax, dword [0x674c412c]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x1c], 0
mov eax, dword [ebp + 8]
mov dword [eax], sym.Qt5Core.dll_struct_QListData::Data_const_QListData::shared_null
mov dword [ebp - 0x1c], 1
mov dword [ebp - 0x10], 0x674b4380
mov edi, dword [sym.imp.KERNEL32.dll_SetErrorMode]
push 0x8001
mov dword [ebp - 4], 1
call edi
mov esi, eax
call dword [sym.imp.KERNEL32.dll_GetLogicalDrives]
push esi
mov ebx, eax
call edi
or edi, 0xffffffff
and ebx, 0x3ffffff
je 0x67141f55
test bl, 1
je 0x67141e86
lea eax, [ebp - 0x10]
push eax
lea ecx, [ebp - 0x18]
call sym.Qt5Core.dll_public:_void___thiscall_QStorageInfo::constructor_class_QString_const__
lea eax, [ebp - 0x14]
mov byte [ebp - 4], 2
push eax
lea ecx, [ebp - 0x18]
call sym.Qt5Core.dll_public:_class_QString___thiscall_QRegExp::pattern_void_
mov eax, dword [eax]
mov esi, dword [eax + 4]
mov eax, dword [ebp - 0x14]
mov eax, dword [eax]
test eax, eax
je 0x67141e5b
cmp eax, 0xffffffff
je 0x67141e6a
mov eax, dword [ebp - 0x14]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
setne al
test al, al
jne 0x67141e6a
push 4
push 2
push dword [ebp - 0x14]
call sym.Qt5Core.dll_public:_static_void___cdecl_QArrayData::deallocate_struct_QArrayData___unsigned_int__unsigned_int_
add esp, 0xc
test esi, esi
je 0x67141e7a
mov ecx, dword [ebp + 8]
lea eax, [ebp - 0x18]
push eax
call fcn.67141380
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], 1
call sym.Qt5Core.dll_public:_void___thiscall_QStorageInfo::destructor_void_
mov eax, dword [ebp - 0x10]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x10]
cmp ecx, 1
je 0x67141e97
test ecx, ecx
jne 0x67141e9d
cmp dword [eax + 0xc], 0x10
je 0x67141eaf
mov eax, dword [eax + 4]
lea ecx, [ebp - 0x10]
push 0
inc eax
push eax
call sym.Qt5Core.dll_private:_void___thiscall_QString::reallocData_unsigned_int__bool_
mov eax, dword [ebp - 0x10]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x10]
cmp ecx, 1
je 0x67141ebd
test ecx, ecx
jne 0x67141ec3
cmp dword [eax + 0xc], 0x10
je 0x67141ed5
mov eax, dword [eax + 4]
lea ecx, [ebp - 0x10]
push 0
inc eax
push eax
call sym.Qt5Core.dll_private:_void___thiscall_QString::reallocData_unsigned_int__bool_
mov eax, dword [ebp - 0x10]
mov ecx, dword [eax + 0xc]
movzx esi, word [eax + ecx]
mov ecx, dword [eax]
cmp ecx, 1
je 0x67141ee7
test ecx, ecx
jne 0x67141eed
cmp dword [eax + 0xc], 0x10
je 0x67141eff
mov eax, dword [ebp - 0x10]
lea ecx, [ebp - 0x10]
push 0
mov eax, dword [eax + 4]
inc eax
push eax
call sym.Qt5Core.dll_private:_void___thiscall_QString::reallocData_unsigned_int__bool_
mov ecx, dword [ebp - 0x10]
inc esi
cmp dword [ecx + 4], 0
jg 0x67141f20
push ecx
mov eax, esp
mov ecx, 0x20
push 1
mov word [eax], cx
lea ecx, [ebp - 0x10]
call sym.Qt5Core.dll_public:_void___thiscall_QString::resize_int__class_QChar_
jmp 0x67141f43
mov eax, dword [ecx]
cmp eax, 1
je 0x67141f2b
test eax, eax
jne 0x67141f34
mov eax, dword [ebp - 0x10]
cmp dword [eax + 0xc], 0x10
je 0x67141f46
mov eax, dword [ecx + 4]
lea ecx, [ebp - 0x10]
push 0
inc eax
push eax
call sym.Qt5Core.dll_private:_void___thiscall_QString::reallocData_unsigned_int__bool_
mov eax, dword [ebp - 0x10]
shr ebx, 1
mov ecx, dword [eax + 0xc]
mov word [eax + ecx], si
jne 0x67141e16
mov eax, dword [ebp - 0x10]
mov eax, dword [eax]
test eax, eax
je 0x67141f72
cmp eax, 0xffffffff
je 0x67141f81
mov ecx, dword [ebp - 0x10]
lock xadd dword [ecx], edi
dec edi
setne cl
test cl, cl
jne 0x67141f81
push 4
push 2
push dword [ebp - 0x10]
call sym.Qt5Core.dll_public:_static_void___cdecl_QArrayData::deallocate_struct_QArrayData___unsigned_int__unsigned_int_
add esp, 0xc
mov eax, dword [ebp + 8]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret