Function at 0x107ddb2
Capabilities:
Get disk information

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x3c
mov eax, dword [0x10cf230]
push ebx
push esi
mov esi, dword [ebp + 8]
push edi
mov ebx, ecx
mov edi, 0x101c278
push edi
mov dword [ebp - 4], eax
mov dword [ebp - 0x18], ebx
call fcn.0107ce25
test al, al
jne 0x107ddf3
push 0x101c2dc
mov ecx, ebx
call fcn.0107ce25
test al, al
mov dword [ebp - 0x14], 0x800
je 0x107ddfa
mov dword [ebp - 0x14], 0x104
push esi
call dword [sym.imp.msvcrt.dll_wcslen]
cmp eax, dword [ebp - 0x14]
pop ecx
jae 0x107e0ab
push dword [ebx + 0x1c]
call fcn.010b1ec9
and word [ebp - 8], 0
push edi
mov ecx, ebx
mov word [ebp - 0x10], ax
mov word [ebp - 0xe], 0x2e
mov dword [ebp - 0x14], eax
mov word [ebp - 0xc], 0x2e
mov word [ebp - 0xa], ax
call fcn.0107ce25
test al, al
mov ebx, dword [sym.imp.msvcrt.dll_wcsncmp]
je 0x107deb2
push 0x101c3e0
push esi
call dword [sym.imp.msvcrt.dll_wcscmp]
test eax, eax
pop ecx
pop ecx
je 0x107dea8
push 3
lea eax, [ebp - 0xe]
push eax
push esi
call ebx
add esp, 0xc
test eax, eax
je 0x107dea8
lea eax, [ebp - 0x10]
push eax
push esi
call dword [sym.imp.msvcrt.dll_wcsstr]
test eax, eax
pop ecx
pop ecx
jne 0x107dea8
push esi
call dword [sym.imp.msvcrt.dll_wcslen]
cmp eax, 3
pop ecx
jb 0x107dea1
push 3
lea eax, [ebp - 0x10]
push eax
push esi
call dword [sym.imp.msvcrt.dll_wcslen]
pop ecx
lea eax, [esi + eax*2 - 6]
push eax
call ebx
add esp, 0xc
neg eax
sbb eax, eax
neg eax
jmp 0x107dea4
xor eax, eax
inc eax
test eax, eax
jne 0x107deb2
mov ebx, 0xc00d132b
jmp 0x107e0b0
push edi
mov edi, dword [ebp - 0x18]
mov ecx, edi
call fcn.0107ce25
test al, al
je 0x107dee4
push esi
call fcn.010b2546
test al, al
je 0x107df19
push 4
push 0x101c3d4
push esi
call ebx
add esp, 0xc
test eax, eax
je 0x107df19
add esi, 4
jmp 0x107e08a
push 0x101c2a4
mov ecx, edi
call fcn.0107ce25
test al, al
je 0x107df4a
mov edi, dword [sym.imp.msvcrt.dll_iswdigit]
jmp 0x107defe
inc esi
inc esi
xor eax, eax
mov ax, word [esi]
push eax
call edi
test eax, eax
pop ecx
jne 0x107defc
mov ax, word [esi]
cmp ax, word [ebp - 0x14]
je 0x107df23
test ax, ax
je 0x107df37
mov ebx, 0xc00d1327
jmp 0x107e0b0
test ax, ax
je 0x107df37
inc esi
xor eax, eax
inc esi
mov ax, word [esi]
push eax
call edi
test eax, eax
pop ecx
jne 0x107df28
mov bx, word [esi]
neg bx
sbb ebx, ebx
and ebx, 0xc00d1327
jmp 0x107e093
push 0x101c29c
mov ecx, edi
call fcn.0107ce25
test al, al
jne 0x107e08a
push 0x101c2cc
mov ecx, edi
call fcn.0107ce25
test al, al
je 0x107dfe5
mov ax, word [esi]
cmp ax, 0x41
mov ebx, 0xc00d1327
jb 0x107df82
cmp ax, 0x5a
jbe 0x107df96
cmp ax, 0x61
jb 0x107e0b0
cmp ax, 0x7a
ja 0x107e0b0
mov ax, word [esi + 2]
cmp ax, word [ebp - 0x14]
jne 0x107dfe0
mov edi, dword [sym.imp.msvcrt.dll_iswdigit]
add esi, 4
jmp 0x107dfad
inc esi
inc esi
xor eax, eax
mov ax, word [esi]
push eax
call edi
test eax, eax
pop ecx
jne 0x107dfab
mov ax, word [esi]
cmp ax, word [ebp - 0x14]
jne 0x107dfe0
inc esi
xor eax, eax
inc esi
mov ax, word [esi]
push eax
call edi
test eax, eax
pop ecx
jne 0x107dfc3
cmp word [esi], ax
jne 0x107e0b0
jmp 0x107e08a
test ax, ax
jmp 0x107dfd5
push 0x101c2dc
mov ecx, edi
call fcn.0107ce25
test al, al
je 0x107e081
lea ecx, [ebp - 0x30]
mov ebx, 0xc00d1327
call fcn.010424ee
push 3
push esi
lea ecx, [ebp - 0x30]
call fcn.01042ec9
test eax, eax
jl 0x107e077
push dword [ebp - 0x30]
call dword [sym.imp.KERNEL32.dll_GetDriveTypeW]
cmp eax, 5
jne 0x107e077
push 0x101dad8
lea ecx, [ebp - 0x3c]
call fcn.01043594
push esi
lea ecx, [ebp - 0x24]
call fcn.01043594
lea ecx, [ebp - 0x3c]
call fcn.010425a8
mov edi, eax
inc edi
lea ecx, [ebp - 0x24]
inc edi
call fcn.010425a8
cmp eax, edi
jne 0x107e067
push 2
push 0x101dad8
lea ecx, [ebp - 0x24]
call fcn.01042839
cmp eax, 2
jne 0x107e067
xor ebx, ebx
lea ecx, [ebp - 0x24]
call fcn.01042e75
lea ecx, [ebp - 0x3c]
call fcn.01042e75
lea ecx, [ebp - 0x30]
call fcn.01042e75
jmp 0x107e093
mov ax, word [ebp - 0x14]
cmp word [esi], ax
jne 0x107e08e
xor ebx, ebx
jmp 0x107e097
mov ebx, 0xc00d1327
test ebx, ebx
jl 0x107e0b0
mov ecx, dword [ebp - 0x18]
push esi
call fcn.0107d25e
test eax, eax
je 0x107e0b0
mov ebx, 0xc00d1325
jmp 0x107e0b0
mov ebx, 0xc00d1355
mov ecx, dword [ebp - 4]
pop edi
pop esi
mov eax, ebx
pop ebx
call fcn.01041c5f
leave
ret 4