Function at 0x1100e24
Capabilities:
Get disk information

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x274
mov eax, dword [0x111027c]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
mov esi, dword [ebp + 8]
push edi
mov edi, dword [ebp + 0xc]
xor ebx, ebx
mov dword [ebp - 0x260], ecx
mov dword [ebp - 0x25c], edi
cmp esi, ebx
jne 0x1100e68
push 0x100ee50
push 0x2a8
push 0x1014198
call fcn.0107b644
cmp edi, ebx
jne 0x1100e80
push 0x100ee40
push 0x2a9
push 0x1014198
call fcn.0107b644
lea ecx, [ebp - 0x250]
mov dword [ebp - 0x254], ebx
call fcn.010be75e
mov eax, esi
mov dword [ebp - 0x258], ebx
lea ecx, [eax + 2]
mov dx, word [eax]
inc eax
inc eax
cmp dx, bx
jne 0x1100e9c
sub eax, ecx
lea ecx, [ebp - 0x258]
push ecx
sar eax, 1
push eax
push esi
call fcn.010c6fde
push 0x208
lea eax, [ebp - 0x20c]
push ebx
push eax
call sub.msvcrt.dll_memset
add esp, 0xc
push 0x104
lea eax, [ebp - 0x20c]
push eax
push dword [ebp - 0x258]
call dword [sym.imp.KERNEL32.dll_GetVolumeNameForVolumeMountPointW]
test eax, eax
jne 0x1100f63
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, ebx
jle 0x1100efd
and eax, 0xffff
or eax, 0x80070000
mov dword [ebp - 0x254], eax
mov eax, dword [0x1110ff8]
mov dword [ebp - 0x274], eax
mov eax, dword [ebp - 0x254]
mov dword [ebp - 0x270], eax
mov eax, dword [ebp - 0x260]
push 0x1014580
push 0x100cc54
mov dword [ebp - 0x264], eax
lea eax, [ebp - 0x274]
push 0x100cc1c
push eax
mov dword [ebp - 0x26c], 0x10141d8
mov dword [ebp - 0x268], 0x2ba
call sym.wbengine.exe_public:_void___cdecl_CTraceFailureHelper::TraceMessage_unsigned_short_int_const__
mov edi, dword [ebp - 0x25c]
add esp, 0x10
jmp 0x11010bc
push dword [ebp - 0x258]
call dword [sym.imp.msvcrt.dll_free]
pop ecx
lea eax, [ebp - 0x20c]
push eax
lea ecx, [ebp - 0x250]
mov dword [ebp - 0x258], ebx
call fcn.010be795
mov eax, dword [ebp - 0x244]
dec eax
push eax
lea ecx, [ebp - 0x250]
call fcn.010bf3b8
cmp word [eax], 0x5c
je 0x1100fb5
push 0x100ee0c
push 0x2c0
push 0x1014198
call fcn.0107b644
push 1
push ebx
push 0x5c
lea ecx, [ebp - 0x250]
call fcn.010bf030
mov eax, dword [0x111024c]
mov esi, 0x111024c
cmp eax, esi
je 0x1100ff7
test byte [eax + 0x1c], 8
je 0x1100ff7
cmp byte [eax + 0x19], 4
jb 0x1100ff7
push dword [ebp - 0x248]
push 0x1013f98
push 0x32
push dword [eax + 0x14]
push dword [eax + 0x10]
call fcn.01019633
push ebx
push 0x2000000
push 3
push ebx
push 3
push 0x80000000
push dword [ebp - 0x248]
call dword [sym.imp.KERNEL32.dll_CreateFileW]
mov edi, eax
cmp edi, 0xffffffff
jne 0x1101086
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, ebx
jle 0x110102e
and eax, 0xffff
or eax, 0x80070000
cmp eax, ebx
mov dword [ebp - 0x254], eax
jge 0x1101086
push dword [ebp - 0x248]
mov ecx, dword [0x1110ff8]
mov dword [ebp - 0x270], eax
mov eax, dword [ebp - 0x260]
mov dword [ebp - 0x264], eax
lea eax, [ebp - 0x274]
push 0x100edd8
push eax
mov dword [ebp - 0x274], ecx
mov dword [ebp - 0x26c], 0x10141d8
mov dword [ebp - 0x268], 0x2d2
call sym.wbengine.exe_public:_void___cdecl_CTraceFailureHelper::TraceMessage_unsigned_short_int_const__
add esp, 0xc
jmp 0x11010bc
mov eax, dword [ebp - 0x25c]
mov dword [eax], edi
mov eax, dword [0x111024c]
cmp eax, esi
je 0x11010bc
test byte [eax + 0x1c], 8
je 0x11010bc
cmp byte [eax + 0x19], 4
jb 0x11010bc
push edi
push dword [ebp - 0x248]
push 0x1013f98
push 0x33
push dword [eax + 0x14]
push dword [eax + 0x10]
call fcn.01048c37
cmp dword [ebp - 0x254], ebx
jge 0x11010dd
cmp edi, 0xffffffff
je 0x11010dd
push 0x100edb4
push 0x2db
push 0x1014198
call fcn.0107b644
lea ecx, [ebp - 0x250]
call fcn.010be581
mov ecx, dword [ebp - 4]
mov eax, dword [ebp - 0x254]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.0106f798
leave
ret 8