Function at 0x1080aed
Capabilities:
Get disk information

Disassembly:
push 0x4d0
mov eax, 0x10d1294
call fcn.01098a6e
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, 0x1020c60
push ebx
mov edi, 0x101d81c
push edi
mov esi, 0x101d7b0
push esi
mov dword [ebp - 0x44c], eax
call fcn.0109958e
lea ecx, [ebp - 0x48c]
call fcn.0109aa5f
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.0109958e
lea eax, [ebp - 0x48c]
push eax
call fcn.0109d881
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 0x1080c02
push 0x1020c00
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.0109958e
lea eax, [ebp - 0x48c]
push eax
call fcn.0109a735
add esp, 0x60
lea ecx, [ebp - 0x48c]
call fcn.0109ab18
call fcn.01098ad9
ret 0xc
cmp dword [ebp + 0x10], 0
jne 0x1080c26
push 0x1020b30
sub esp, 0x58
mov ecx, esp
mov dword [ebp - 0x44c], esp
push 0xff
push 1
push 0x420
jmp 0x1080bd8
and dword [ebp - 0x440], 0
mov eax, dword [ebp - 0x44c]
mov ecx, dword [ebp - 0x440]
cmp ecx, dword [eax]
jae 0x1080bef
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 0x1080c93
push ecx
push 0x1020ad8
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.0109958e
lea eax, [ebp - 0x48c]
push eax
call fcn.0109a735
add esp, 0x64
jmp 0x10810cc
and dword [ebp - 0x438], 0
mov dword [ebp - 0x43c], 0x100599c
push eax
lea ecx, [ebp - 0x43c]
mov byte [ebp - 4], 1
call fcn.0104b27e
mov eax, dword [ebp - 0x438]
lea ecx, [eax + 2]
mov dx, word [eax]
inc eax
inc eax
test dx, dx
jne 0x1080cbd
sub eax, ecx
mov ecx, dword [ebp - 0x438]
sar eax, 1
cmp word [ecx + eax*2 - 2], 0x5c
je 0x1080ce9
push 0x100163c
lea ecx, [ebp - 0x43c]
call fcn.0104c0f8
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 0x1081084
mov ecx, 0x1020ac8
lea eax, [ebp - 0x220]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x1080d48
test dx, dx
je 0x1080d44
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x1080d48
add eax, 4
add ecx, 4
test dx, dx
jne 0x1080d22
xor eax, eax
jmp 0x1080d4d
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x1080d78
push dword [ebp - 0x440]
push 0x1020a68
sub esp, 0x58
mov ecx, esp
mov dword [ebp - 0x434], esp
push 0xff
push 1
push 0x44a
jmp 0x10810a6
push dword [ebp - 0x434]
push dword [ebp - 0x440]
push 0x1020a10
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.0109958e
lea eax, [ebp - 0x48c]
push eax
call fcn.0109a735
add esp, 0x68
lea eax, [ebp - 0x42d]
push eax
push dword [ebp - 0x438]
push dword [ebp - 0x444]
call fcn.01080688
mov dword [ebp - 0x484], eax
test eax, eax
jge 0x1080e0f
push eax
push 0x1020970
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.0109958e
lea eax, [ebp - 0x48c]
push eax
call fcn.0109b3d6
cmp byte [ebp - 0x42d], 0
mov eax, 0x1020918
jne 0x1080e22
mov eax, 0x10208c8
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.0109958e
lea eax, [ebp - 0x48c]
push eax
call fcn.0109a735
add esp, 0x64
cmp byte [ebp - 0x42d], 0
je 0x10810bd
mov ecx, dword [ebp - 0x444]
push 1
push dword [ebp - 0x434]
call fcn.01074cbd
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.01085a5c
push 0
lea ecx, [ebp - 0x4dc]
call fcn.0104c26e
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.0104a466
lea ecx, [ebp - 0x4dc]
mov dword [ebp - 0x484], eax
call fcn.0104b2de
mov dword [ebp - 4], 1
jmp 0x1080fd2
mov ecx, dword [ebp - 0x444]
and dword [ebp - 0x484], 0
push 0
push dword [ebp - 0x434]
call fcn.01074cbd
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.01085a5c
lea eax, [ebp - 0x42d]
push eax
push dword [ebp - 0x438]
push dword [ebp - 0x444]
call fcn.01080688
mov dword [ebp - 0x484], eax
test eax, eax
jge 0x108104f
push eax
push 0x1020828
push 0x800423fb
sub esp, 0x58
mov ecx, esp
mov dword [ebp - 0x448], esp
push 0xff
push 1
push 0x494
jmp 0x1080dfb
cmp byte [ebp - 0x42d], 0
je 0x10810bd
push dword [ebp - 0x438]
push 0x10207a0
push 0x800423fb
sub esp, 0x58
mov ecx, esp
mov dword [ebp - 0x448], esp
push 0xff
push 1
push 0x49e
jmp 0x1080dfb
push dword [ebp - 0x440]
push 0x1020740
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.0109958e
lea eax, [ebp - 0x48c]
push eax
call fcn.0109a735
add esp, 0x64
lea ecx, [ebp - 0x43c]
mov byte [ebp - 4], 0
call fcn.0104a1a3
inc dword [ebp - 0x440]
jmp 0x1080c2d