Function at 0x60fe14
Capabilities:
Get disk information

Disassembly:
push ebp
mov ebp, esp
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push ebx
push esi
mov byte [ebp - 0xa], cl
mov byte [ebp - 9], dl
mov ebx, eax
xor eax, eax
push ebp
push 0x610113
push dword fs:[eax]
mov dword fs:[eax], esp
mov byte [ebp - 0xb], 0
lea edx, [ebp - 4]
mov eax, ebx
call fcn.004f0d70
lea eax, [ebp - 4]
call fcn.00608ee4
mov edx, dword [ebp - 4]
mov eax, ebx
call fcn.004f0dc4
mov eax, dword [ebp - 4]
test eax, eax
je 0x60fe6b
sub eax, 4
mov eax, dword [eax]
cmp eax, 0xf0
jle 0x60fe91
push 0
push 1
push 1
mov eax, dword [0x6624b4]
mov eax, dword [eax + 0xc8]
mov cl, 2
xor edx, edx
call fcn.00647fb8
jmp 0x6100eb
mov eax, dword [ebp - 4]
test eax, eax
je 0x60fe9d
sub eax, 4
mov eax, dword [eax]
cmp eax, 2
jl 0x60feae
mov eax, dword [ebp - 4]
cmp word [eax], 0x5c
sete al
jmp 0x60feb0
xor eax, eax
test al, al
je 0x60fec1
mov eax, dword [ebp - 4]
cmp word [eax + 2], 0x5c
sete al
jmp 0x60fec3
xor eax, eax
mov ebx, eax
test bl, bl
je 0x60feeb
cmp byte [ebp - 9], 0
jne 0x60feeb
push 0
push 1
push 1
mov eax, dword [0x6624b4]
mov eax, dword [eax + 0x7c]
mov cl, 2
xor edx, edx
call fcn.00647fb8
jmp 0x6100eb
test bl, bl
jne 0x60ff91
cmp byte [ebp - 0xa], 0
jne 0x60ff00
mov edx, 4
jmp 0x60ff05
mov edx, 3
mov eax, dword [ebp - 4]
test eax, eax
je 0x60ff11
sub eax, 4
mov eax, dword [eax]
cmp edx, eax
jle 0x60ff19
mov al, 1
jmp 0x60ff48
mov eax, dword [ebp - 4]
movzx edx, word [eax]
mov eax, edx
mov ecx, edx
add ecx, 0xffffff9f
sub cx, 0x1a
jae 0x60ff32
mov eax, edx
and ax, 0xffdf
mov esi, 0x610128
cmp ax, 0xff
ja 0x60ff43
movzx eax, ax
bt dword [esi], eax
setb al
xor al, 1
test al, al
je 0x60ff50
mov al, 1
jmp 0x60ff5b
mov eax, dword [ebp - 4]
cmp word [eax + 2], 0x3a
setne al
test al, al
je 0x60ff63
mov al, 1
jmp 0x60ff6e
mov eax, dword [ebp - 4]
cmp word [eax + 4], 0x5c
setne al
test al, al
je 0x60ffc5
push 0
push 1
push 1
mov eax, dword [0x6624b4]
mov eax, dword [eax + 0x1bc]
mov cl, 2
xor edx, edx
call fcn.00647fb8
jmp 0x6100eb
mov eax, dword [ebp - 4]
lea esi, [eax + 4]
mov dx, 0x5c
mov eax, esi
call fcn.0059a4b0
cmp esi, eax
jb 0x60ffc5
push 0
push 1
push 1
mov eax, dword [0x6624b4]
mov eax, dword [eax + 0x1bc]
mov cl, 2
xor edx, edx
call fcn.00647fb8
jmp 0x6100eb
mov eax, dword [ebp - 4]
call fcn.0060902c
test al, al
jne 0x60ffe9
mov eax, dword [ebp - 4]
call fcn.00609054
test al, al
jne 0x60ffe9
mov eax, dword [ebp - 4]
call fcn.00609098
test al, al
je 0x610008
push 0
push 1
push 1
mov eax, dword [0x6624b4]
mov eax, dword [eax + 0x1ac]
mov cl, 2
xor edx, edx
call fcn.00647fb8
jmp 0x6100eb
lea eax, [ebp - 0x10]
push eax
mov ecx, 0x7fffffff
mov edx, 3
mov eax, dword [ebp - 4]
call fcn.00409140
mov edx, dword [ebp - 0x10]
mov eax, 0x610154
call fcn.0059a318
test eax, eax
je 0x610060
push 0
push 1
push 1
lea edx, [ebp - 0x18]
mov eax, 0x610154
call fcn.0060911c
mov edx, dword [ebp - 0x18]
lea ecx, [ebp - 0x14]
mov al, 0xb
call fcn.005a1474
mov eax, dword [ebp - 0x14]
mov cl, 2
xor edx, edx
call fcn.00647fb8
jmp 0x6100eb
lea edx, [ebp - 0x20]
mov eax, dword [ebp - 4]
call fcn.0059a230
mov eax, dword [ebp - 0x20]
lea edx, [ebp - 0x1c]
call fcn.00599cf0
mov eax, dword [ebp - 0x1c]
lea edx, [ebp - 8]
call fcn.0059a548
mov eax, dword [ebp - 8]
call fcn.0060fda8
mov eax, dword [ebp - 8]
call fcn.0059a678
test al, al
jne 0x6100b1
push 0
push 1
push 1
mov eax, dword [0x6624b4]
mov eax, dword [eax + 0x1b0]
mov cl, 2
xor edx, edx
call fcn.00647fb8
jmp 0x6100eb
test bl, bl
jne 0x6100e7
cmp byte [ebp + 8], 0
jne 0x6100e7
mov eax, dword [ebp - 8]
call fcn.00408d1c
push eax
call sub.kernel32.dll_GetDriveTypeW
cmp eax, 4
jne 0x6100e7
push 0
push 1
push 1
mov eax, dword [0x6624b4]
mov eax, dword [eax + 0x78]
mov cl, 2
xor edx, edx
call fcn.00647fb8
jmp 0x6100eb
mov byte [ebp - 0xb], 1
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x61011a
lea eax, [ebp - 0x20]
mov edx, 5
call fcn.00407cb8
lea eax, [ebp - 8]
mov edx, 2
call fcn.00407cb8
ret