Function at 0x43a200
Capabilities:
Get disk information

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x30
mov dword [esp + 8], 0x9b06990e
mov dword [esp + 0xc], 0x87128528
mov dword [esp + 0x10], 0x83548114
mov dword [esp + 0x14], 0x8f1a8d20
mov dword [esp + 0x18], 0x8b8a891c
mov dword [esp + 0x1c], 0
mov dword [esp + 0x20], 0
mov byte [esp + 0x24], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0x1c
ja 0x43a29a
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp]
mov ecx, dword [esp]
movzx ecx, byte [esp + ecx + 8]
lea edx, [eax + 0xec]
and edx, ecx
add eax, ecx
add edx, edx
sub eax, edx
add eax, 0xe9b1e1ec
mov dword [esp + 4], eax
mov eax, dword [esp + 4]
add al, 0x8c
mov ecx, dword [esp]
mov byte [esp + ecx + 8], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0x1d
jb 0x43a260
lea esi, [esp + 8]
push esi
call fcn.0043b890
add esp, 4
mov ecx, eax
mov dword [0x451ca0], eax
xor edx, edx
test eax, eax
sete dl
xor eax, eax
jmp dword [edx*4 + 0x447934]
push 0x47a22cca
push ecx
call fcn.0043bf80
add esp, 8
mov dword [0x451ca8], eax
push 0x3a61ef1f
push dword [0x451ca0]
call fcn.0043bf80
add esp, 8
mov dword [0x451cac], eax
push 0xc832a727
push dword [0x451ca0]
call fcn.0043bf80
add esp, 8
mov dword [0x451cb0], eax
push 0x6a191246
push dword [0x451ca0]
call fcn.0043bf80
add esp, 8
mov dword [0x449c84], eax
mov dword [esp + 8], 0x63a761ab
mov dword [esp + 0xc], 0x67a865d6
mov dword [esp + 0x10], 0x6ba669ad
mov dword [esp + 0x14], 0x6fbc6dbf
mov dword [esp + 0x18], 0x539651be
mov dword [esp + 0x1c], 0x579a5598
mov word [esp + 0x20], 0x5958
mov dword [esp + 0x26], 0
mov dword [esp + 0x22], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0x21
ja 0x43a3a7
nop
mov eax, dword [esp]
mov ecx, dword [esp]
movzx ecx, byte [esp + ecx + 8]
lea edx, [eax + 0x10]
and edx, ecx
add eax, ecx
add edx, edx
sub eax, edx
add eax, 0xbf51f910
mov dword [esp + 4], eax
mov eax, dword [esp + 4]
add al, 0x90
mov ecx, dword [esp]
mov byte [esp + ecx + 8], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0x22
jb 0x43a370
push esi
call fcn.0043b890
add esp, 4
mov ecx, eax
mov dword [0x449c7c], eax
xor edx, edx
test eax, eax
sete dl
xor eax, eax
jmp dword [edx*4 + 0x44793c]
push 0x84f29178
push ecx
call fcn.0043bf80
add esp, 8
mov dword [0x448970], eax
push 0x9372af38
push dword [0x449c7c]
call fcn.0043bf80
add esp, 8
mov dword [0x448a74], eax
push 0x22b3895b
push dword [0x449c7c]
call fcn.0043bf80
add esp, 8
mov dword [0x449c9c], eax
call fcn.0043a6e0
movzx ecx, al
xor eax, eax
jmp dword [ecx*4 + 0x447944]
call dword [sym.imp.KERNEL32.dll_GetLogicalDrives]
call fcn.004348b0
movzx eax, al
jmp dword [eax*4 + 0x44794c]
mov eax, dword [0x448970]
mov dword [esp + 8], 0x33a03193
mov dword [esp + 0xc], 0x37a635bd
mov dword [esp + 0x10], 0x2b7929bc
mov dword [esp + 0x14], 0x2f702d7e
mov dword [esp + 0x18], 0x23be2184
mov dword [esp + 0x1c], 0x272625b8
mov word [esp + 0x20], 0
mov byte [esp + 0x22], 0
mov dword [esp], 0
mov ecx, dword [esp]
cmp ecx, 0x1a
ja 0x43a4bc
mov ecx, dword [esp]
mov edx, dword [esp]
movzx edx, byte [esp + edx + 8]
lea edi, [ecx + 0x6fa7e988]
and edi, edx
add ecx, edx
add ecx, 0x6fa7e988
add edi, edi
sub ecx, edi
mov dword [esp + 4], ecx
mov ecx, dword [esp + 4]
add cl, 0x48
mov edx, dword [esp]
mov byte [esp + edx + 8], cl
inc dword [esp]
mov ecx, dword [esp]
cmp ecx, 0x1b
jb 0x43a480
push 0x800
push 0
push esi
call eax
test eax, eax
je 0x43a4cf
mov dword [0x449c94], eax
xor ecx, ecx
test eax, eax
setne cl
mov al, 1
jmp dword [ecx*4 + 0x447964]
mov eax, dword [case.0x43a3c0.15]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp eax
xor eax, eax
jmp dword [0x447984]
mov ecx, dword [case.0x43a3c0.9]
xor eax, eax
jmp ecx
mov ecx, dword [case.0x43a3c0.23]
nop
nop
nop
nop
nop
nop
nop
nop
jmp ecx
jmp dword [0x4479a8]
mov ecx, dword [case.0x43a3c0.30]
nop
nop
nop
nop
jmp ecx
lea esp, [ebp - 8]
pop esi
pop edi
pop ebp
ret