Function at 0x1080bd9
Capabilities:
Get disk information

Disassembly:
push 0x4d0
mov eax, 0x10d1063
call fcn.0109887a
mov eax, dword [ebp + 8]
push 0
sub esp, 0x58
mov dword [ebp - 0x434], esp
mov dword [ebp - 0x444], ecx
mov ecx, esp
push 0xff
push 1
push 0x40e
mov ebx, 0x1020b30
push ebx
mov edi, 0x101d6ec
push edi
mov esi, 0x101d680
push esi
mov dword [ebp - 0x44c], eax
call fcn.01099386
lea ecx, [ebp - 0x48c]
call fcn.0109a83a
and dword [ebp - 4], 0
push 0x1777
sub esp, 0x58
mov ecx, esp
mov dword [ebp - 0x434], esp
push 0xff
push 1
push 0x410
push ebx
push edi
push esi
call fcn.01099386
lea eax, [ebp - 0x48c]
push eax
call fcn.0109d65c
xor eax, eax
push 0x208
push eax
mov word [ebp - 0x220], ax
lea eax, [ebp - 0x21e]
push eax
call sub.msvcrt.dll_memset
add esp, 0x6c
xor eax, eax
push 0x208
push eax
mov word [ebp - 0x42c], ax
lea eax, [ebp - 0x42a]
push eax
call sub.msvcrt.dll_memset
add esp, 0xc
test byte [ebp + 0xc], 2
je 0x1080cee
push 0x1020ad0
sub esp, 0x58
mov ecx, esp
mov dword [ebp - 0x44c], esp
push 0xff
push 1
push 0x419
push ebx
push edi
push esi
call fcn.01099386
lea eax, [ebp - 0x48c]
push eax
call fcn.0109a510
add esp, 0x60
lea ecx, [ebp - 0x48c]
call fcn.0109a8f3
call fcn.010988e5
ret 0xc
cmp dword [ebp + 0x10], 0
jne 0x1080d12
push 0x1020a00
sub esp, 0x58
mov ecx, esp
mov dword [ebp - 0x44c], esp
push 0xff
push 1
push 0x420
jmp 0x1080cc4
and dword [ebp - 0x440], 0
mov eax, dword [ebp - 0x44c]
mov ecx, dword [ebp - 0x440]
cmp ecx, dword [eax]
jae 0x1080cdb
mov eax, dword [eax + 4]
mov edx, ecx
imul edx, edx, 0x28
mov eax, dword [eax + edx + 0x1c]
mov byte [ebp - 0x42d], 0
mov dword [ebp - 0x434], eax
test eax, eax
jne 0x1080d7f
push ecx
push 0x10209a8
sub esp, 0x58
mov ecx, esp
mov dword [ebp - 0x434], esp
push 0xff
push 1
push 0x432
push ebx
push edi
push esi
call fcn.01099386
lea eax, [ebp - 0x48c]
push eax
call fcn.0109a510
add esp, 0x64
jmp 0x10811b8
and dword [ebp - 0x438], 0
mov dword [ebp - 0x43c], 0x1005a68
push eax
lea ecx, [ebp - 0x43c]
mov byte [ebp - 4], 1
call fcn.0104b259
mov eax, dword [ebp - 0x438]
lea ecx, [eax + 2]
mov dx, word [eax]
inc eax
inc eax
test dx, dx
jne 0x1080da9
sub eax, ecx
mov ecx, dword [ebp - 0x438]
sar eax, 1
cmp word [ecx + eax*2 - 2], 0x5c
je 0x1080dd5
push 0x100163c
lea ecx, [ebp - 0x43c]
call fcn.0104c0d3
mov eax, 0x105
push eax
lea ecx, [ebp - 0x220]
push ecx
xor ecx, ecx
push ecx
push ecx
push ecx
push eax
lea eax, [ebp - 0x42c]
push eax
push dword [ebp - 0x438]
call dword [sym.imp.KERNEL32.dll_GetVolumeInformationW]
test eax, eax
je 0x1081170
mov ecx, 0x1020998
lea eax, [ebp - 0x220]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x1080e34
test dx, dx
je 0x1080e30
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x1080e34
add eax, 4
add ecx, 4
test dx, dx
jne 0x1080e0e
xor eax, eax
jmp 0x1080e39
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x1080e64
push dword [ebp - 0x440]
push 0x1020938
sub esp, 0x58
mov ecx, esp
mov dword [ebp - 0x434], esp
push 0xff
push 1
push 0x44a
jmp 0x1081192
push dword [ebp - 0x434]
push dword [ebp - 0x440]
push 0x10208e0
sub esp, 0x58
mov ecx, esp
mov dword [ebp - 0x448], esp
push 0xff
push 1
push 0x458
push ebx
push edi
push esi
call fcn.01099386
lea eax, [ebp - 0x48c]
push eax
call fcn.0109a510
add esp, 0x68
lea eax, [ebp - 0x42d]
push eax
push dword [ebp - 0x438]
push dword [ebp - 0x444]
call fcn.01080774
mov dword [ebp - 0x484], eax
test eax, eax
jge 0x1080efb
push eax
push 0x1020840
push 0x800423fb
sub esp, 0x58
mov ecx, esp
mov dword [ebp - 0x448], esp
push 0xff
push 1
push 0x45e
push ebx
push edi
push esi
call fcn.01099386
lea eax, [ebp - 0x48c]
push eax
call fcn.0109b1b1
cmp byte [ebp - 0x42d], 0
mov eax, 0x10207e8
jne 0x1080f0e
mov eax, 0x1020798
push dword [ebp - 0x438]
push eax
sub esp, 0x58
mov ecx, esp
mov dword [ebp - 0x448], esp
push 0xff
push 1
push 0x464
push ebx
push edi
push esi
call fcn.01099386
lea eax, [ebp - 0x48c]
push eax
call fcn.0109a510
add esp, 0x64
cmp byte [ebp - 0x42d], 0
je 0x10811a9
mov ecx, dword [ebp - 0x444]
push 1
push dword [ebp - 0x434]
call fcn.01074a39
mov ecx, dword [ebp - 0x444]
xor eax, eax
push eax
push eax
push eax
push eax
push 1
push eax
push dword [ebp - 0x434]
call fcn.01085aee
push 0
lea ecx, [ebp - 0x4dc]
call fcn.0104c249
push 0x80
push 3
push 0xc0000000
xor eax, eax
push eax
push eax
push eax
push dword [ebp - 0x438]
lea eax, [ebp - 0x48c]
push eax
lea eax, [ebp - 0x4dc]
push eax
mov byte [ebp - 4], 3
call fcn.0104a45d
lea ecx, [ebp - 0x4dc]
mov dword [ebp - 0x484], eax
call fcn.0104b2b9
mov dword [ebp - 4], 1
jmp 0x10810be
mov ecx, dword [ebp - 0x444]
and dword [ebp - 0x484], 0
push 0
push dword [ebp - 0x434]
call fcn.01074a39
mov ecx, dword [ebp - 0x444]
xor eax, eax
push eax
push eax
push eax
push 1
push eax
push eax
push dword [ebp - 0x434]
call fcn.01085aee
lea eax, [ebp - 0x42d]
push eax
push dword [ebp - 0x438]
push dword [ebp - 0x444]
call fcn.01080774
mov dword [ebp - 0x484], eax
test eax, eax
jge 0x108113b
push eax
push 0x10206f8
push 0x800423fb
sub esp, 0x58
mov ecx, esp
mov dword [ebp - 0x448], esp
push 0xff
push 1
push 0x494
jmp 0x1080ee7
cmp byte [ebp - 0x42d], 0
je 0x10811a9
push dword [ebp - 0x438]
push 0x1020670
push 0x800423fb
sub esp, 0x58
mov ecx, esp
mov dword [ebp - 0x448], esp
push 0xff
push 1
push 0x49e
jmp 0x1080ee7
push dword [ebp - 0x440]
push 0x1020610
sub esp, 0x58
mov ecx, esp
mov dword [ebp - 0x448], esp
push 0xff
push 1
push 0x450
push ebx
push edi
push esi
call fcn.01099386
lea eax, [ebp - 0x48c]
push eax
call fcn.0109a510
add esp, 0x64
lea ecx, [ebp - 0x43c]
mov byte [ebp - 4], 0
call fcn.0104a17d
inc dword [ebp - 0x440]
jmp 0x1080d19