Function at 0x44be80
Capabilities:
Get disk information

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x467ac2
mov eax, dword fs:[0]
push eax
sub esp, 0x6c0
mov eax, dword [0x497060]
xor eax, esp
mov dword [esp + 0x6b8], eax
push ebx
push esi
push edi
mov eax, dword [0x497060]
xor eax, esp
push eax
lea eax, [esp + 0x6d0]
mov dword fs:[0], eax
mov ebx, edx
mov dword [esp + 0x2c], ebx
mov esi, ecx
mov dword [esp + 0x28], esi
lea edx, [esp + 0x64]
call fcn.0044c370
test eax, eax
je 0x44c18e
lea eax, [esp + 0x78]
push eax
lea ecx, [esp + 0x38]
call fcn.0041d3e0
push 0x482e48
lea ecx, [esp + 0x290]
mov dword [esp + 0x6dc], 0
call fcn.0041d3e0
push 0x482c2c
lea ecx, [esp + 0x14]
mov byte [esp + 0x6dc], 1
call fcn.0041d3e0
lea eax, [esp + 0x28c]
push eax
lea eax, [esp + 0x14]
push eax
lea edx, [esp + 0x3c]
lea ecx, [esp + 0x26c]
mov byte [esp + 0x6e0], 2
call fcn.0044baf0
add esp, 8
lea ecx, [esp + 0x34]
push eax
call fcn.004446f0
lea ecx, [esp + 0x264]
call fcn.0041d420
lea ecx, [esp + 0x10]
call fcn.0041d420
lea ecx, [esp + 0x28c]
mov byte [esp + 0x6d8], 0
call fcn.0041d420
lea eax, [esp + 0x9a]
push eax
lea ecx, [esp + 0x50]
call fcn.0041d3e0
push 0x482e48
lea ecx, [esp + 0x14]
mov byte [esp + 0x6dc], 3
call fcn.0041d3e0
push 0x482c2c
lea ecx, [esp + 0x290]
mov byte [esp + 0x6dc], 4
call fcn.0041d3e0
lea eax, [esp + 0x10]
push eax
lea eax, [esp + 0x290]
push eax
lea edx, [esp + 0x54]
lea ecx, [esp + 0x26c]
mov byte [esp + 0x6e0], 5
call fcn.0044baf0
add esp, 8
lea ecx, [esp + 0x4c]
push eax
call fcn.004446f0
lea ecx, [esp + 0x264]
call fcn.0041d420
lea ecx, [esp + 0x28c]
call fcn.0041d420
lea ecx, [esp + 0x10]
mov byte [esp + 0x6d8], 3
call fcn.0041d420
lea ecx, [esp + 0x34]
call fcn.00428770
mov edx, eax
lea ecx, [esp + 0x264]
call fcn.0044bd40
push eax
lea ecx, [esp + 0x38]
call fcn.004446f0
lea ecx, [esp + 0x264]
call fcn.0041d420
lea ecx, [esp + 0x4c]
call fcn.00428770
mov edx, eax
lea ecx, [esp + 0x264]
call fcn.0044bd40
push eax
lea ecx, [esp + 0x50]
call fcn.004446f0
lea ecx, [esp + 0x264]
call fcn.0041d420
push 0
push 0
push 0xffffffffffffffff
lea ecx, [esp + 0x40]
call fcn.00428770
mov ebx, dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
push eax
push 0
push 0xfde9
call ebx
mov edi, eax
xor ecx, ecx
lea esi, [edi + 1]
mov eax, esi
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.00460c1c
add esp, 4
mov dword [esp + 0x30], eax
push esi
push 0
push eax
call sub.MSVCR110.dll_memset
add esp, 0xc
lea ecx, [esp + 0x34]
push edi
push dword [esp + 0x34]
push edi
call fcn.00428770
push eax
push 0
push 0xfde9
call ebx
push 0
push 0
push 0xffffffffffffffff
lea ecx, [esp + 0x58]
call fcn.00428770
push eax
push 0
push 0xfde9
call ebx
mov edi, eax
xor ecx, ecx
lea esi, [edi + 1]
mov eax, esi
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.00460c1c
add esp, 4
mov ebx, eax
push esi
push 0
push ebx
call sub.MSVCR110.dll_memset
add esp, 0xc
lea ecx, [esp + 0x4c]
push edi
push ebx
push edi
call fcn.00428770
push eax
push 0
push 0xfde9
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
mov esi, dword [esp + 0x2c]
lea eax, [esi + esi]
push eax
push 0
push dword [esp + 0x30]
call sub.MSVCR110.dll_memset
mov edi, dword [esp + 0x3c]
add esp, 0xc
push edi
push ebx
push 0x482e4c
push esi
push dword [esp + 0x38]
call dword [sym.imp.MSVCR110.dll_swprintf_s]
mov esi, dword [sym.imp.MSVCR110.dll_void___cdecl_operator_delete___void__]
add esp, 0x14
push ebx
call esi
add esp, 4
push edi
call esi
add esp, 4
lea ecx, [esp + 0x4c]
call fcn.0041d420
lea ecx, [esp + 0x34]
call fcn.0041d420
jmp 0x44c2a7
xor eax, eax
push 0xff
mov word [esp + 0x290], ax
mov dword [esp + 0x2b2], eax
mov word [esp + 0x2b6], ax
mov word [esp + 0x268], ax
mov dword [esp + 0x28a], eax
mov word [esp + 0x28e], ax
lea eax, [esp + 0x268]
push eax
lea eax, [esp + 0x30]
push eax
lea eax, [esp + 0x3c]
push eax
xorps xmm0, xmm0
lea eax, [esp + 0x3c]
push eax
push 0xff
lea eax, [esp + 0x2a4]
push eax
push 0
movq qword [esp + 0x2ae], xmm0
movq qword [esp + 0x2b6], xmm0
movq qword [esp + 0x2be], xmm0
movq qword [esp + 0x2c6], xmm0
movq qword [esp + 0x286], xmm0
movq qword [esp + 0x28e], xmm0
movq qword [esp + 0x296], xmm0
movq qword [esp + 0x29e], xmm0
call dword [sym.imp.KERNEL32.dll_GetVolumeInformationW]
xor eax, eax
push 0x40e
push eax
mov word [esp + 0x2bc], ax
lea eax, [esp + 0x2be]
push eax
call sub.MSVCR110.dll_memset
add esp, 0xc
lea ecx, [esp + 0x2b4]
call fcn.0044bc10
test eax, eax
jne 0x44c27c
push ecx
lea eax, [esp + 0x2b8]
push eax
push ecx
call fcn.0044bc70
add esp, 0xc
lea eax, [ebx + ebx]
push eax
push 0
push esi
call sub.MSVCR110.dll_memset
add esp, 0xc
lea eax, [esp + 0x2b4]
push dword [esp + 0x2c]
push eax
push str._s__08X
push ebx
push esi
call dword [sym.imp.MSVCR110.dll_swprintf_s]
add esp, 0x14
mov ecx, dword [esp + 0x6d0]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x6b8]
xor ecx, esp
call fcn.00460da6
mov esp, ebp
pop ebp
ret