Function at 0x43e580
Capabilities:
Get disk information

Disassembly:
push 0xffffffffffffffff
push 0x48d50b
mov eax, dword fs:[0]
push eax
sub esp, 0x164
mov eax, dword [0x4b77c0]
xor eax, esp
mov dword [esp + 0x160], eax
push ebx
push ebp
push esi
mov eax, dword [0x4b77c0]
xor eax, esp
push eax
lea eax, [esp + 0x174]
mov dword fs:[0], eax
mov esi, dword [esp + 0x184]
xor ebx, ebx
mov dword [esp + 0x14], ebx
push 4
push ebx
push 0x495574
lea ecx, [esp + 0x194]
mov dword [esp + 0x188], ebx
call fcn.0041ef70
lea ebp, [ebx + 0x10]
test eax, eax
jne 0x43e630
push 0xffffffffffffffff
push 4
lea eax, [esp + 0x20]
push eax
lea ecx, [esp + 0x194]
call fcn.00420c90
push 0xffffffffffffffff
push ebx
push eax
lea ecx, [esp + 0x194]
mov byte [esp + 0x188], 1
call fcn.0040c370
mov byte [esp + 0x17c], bl
cmp dword [esp + 0x30], ebp
jb 0x43e630
mov ecx, dword [esp + 0x1c]
push ecx
call fcn.0046b849
add esp, 4
push 7
push ebx
push str.Volume
lea ecx, [esp + 0x194]
call fcn.0041ef70
test eax, eax
jne 0x43e7cb
push 2
push 0xffffffffffffffff
push 0x49506c
lea ecx, [esp + 0x194]
call fcn.0041f030
mov ecx, dword [esp + 0x19c]
lea edx, [ecx - 2]
cmp eax, edx
jne 0x43e7cb
dec ecx
push ecx
push ebx
lea eax, [esp + 0x20]
push eax
lea ecx, [esp + 0x194]
call fcn.00420c90
cmp dword [eax + 0x18], ebp
jb 0x43e691
mov eax, dword [eax + 4]
jmp 0x43e694
add eax, 4
push 0x104
lea ecx, [esp + 0x70]
push ecx
push eax
call dword [sym.imp.KERNEL32.dll_QueryDosDeviceA]
test eax, eax
sete byte [esp + 0x13]
cmp dword [esp + 0x30], ebp
jb 0x43e6bf
mov edx, dword [esp + 0x1c]
push edx
call fcn.0046b849
add esp, 4
cmp byte [esp + 0x13], bl
je 0x43e6ec
mov dword [esi + 0x18], 0xf
mov dword [esi + 0x14], ebx
mov byte [esi + 4], bl
cmp dword [esp + 0x1a0], ebp
jb 0x43e7f1
mov eax, dword [esp + 0x18c]
push eax
jmp 0x43e7e9
lea ecx, [esp + 0x6c]
push ecx
lea ecx, [esp + 0x1c]
call fcn.0040ca30
lea edx, [esp + 0x18]
push edx
lea eax, [esp + 0x54]
push eax
mov byte [esp + 0x184], 2
call fcn.0043cbc0
add esp, 8
mov byte [esp + 0x17c], 4
cmp dword [esp + 0x30], ebp
jb 0x43e72f
mov ecx, dword [esp + 0x1c]
push ecx
call fcn.0046b849
add esp, 4
mov dword [esp + 0x30], 0xf
mov dword [esp + 0x2c], ebx
mov byte [esp + 0x1c], bl
cmp dword [esp + 0x64], ebx
jne 0x43e765
lea edx, [esp + 0x6c]
push edx
lea ecx, [esp + 0x38]
call fcn.0040ca30
mov byte [esp + 0x17c], 5
mov dword [esp + 0x14], 2
jmp 0x43e769
lea eax, [esp + 0x50]
push 0xffffffffffffffff
push ebx
mov dword [esi + 0x18], 0xf
mov dword [esi + 0x14], ebx
push eax
mov ecx, esi
mov byte [esi + 4], bl
call fcn.0040c370
mov eax, dword [esp + 0x14]
or eax, 1
test al, 2
je 0x43e795
lea ecx, [esp + 0x34]
call fcn.0042e890
cmp dword [esp + 0x68], ebp
jb 0x43e7a8
mov eax, dword [esp + 0x54]
push eax
call fcn.0046b849
add esp, 4
mov dword [esp + 0x68], 0xf
mov dword [esp + 0x64], ebx
mov byte [esp + 0x54], bl
cmp dword [esp + 0x1a0], ebp
jb 0x43e7f1
mov ecx, dword [esp + 0x18c]
push ecx
jmp 0x43e7e9
mov dword [esi + 0x18], 0xf
mov dword [esi + 0x14], ebx
mov byte [esi + 4], bl
cmp dword [esp + 0x1a0], ebp
jb 0x43e7f1
mov edx, dword [esp + 0x18c]
push edx
call fcn.0046b849
add esp, 4
mov eax, esi
mov ecx, dword [esp + 0x174]
mov dword fs:[0], ecx
pop ecx
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x160]
xor ecx, esp
call fcn.0046be7b
add esp, 0x170
ret