Function at 0x100035898
Capabilities:
Get disk information

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x20], rbp
push rsi
push rdi
push r12
push r13
push r14
sub rsp, 0x70
lea rdx, [0x100022fd8]
xor r14d, r14d
mov rsi, rcx
mov ebx, r14d
call fcn.100033ebc
cmp al, r14b
je 0x100035d8d
mov rcx, qword [rsi + 0x38]
mov eax, r14d
cmp rcx, r14
je 0x1000358df
cmp word [rcx], r14w
setne al
cmp al, r14b
je 0x100035d8d
mov rdi, r14
cmp rcx, r14
je 0x100035b33
call fcn.100039be4
mov rdi, rax
cmp rax, r14
je 0x100035b33
mov edx, 0x2e
mov rcx, rax
call qword [sym.imp.msvcrt.dll_wcsrchr]
mov rdi, rax
cmp rax, r14
je 0x100035b33
add rdi, 2
je 0x100035b33
lea rdx, [0x100024730]
mov rcx, rdi
call fcn.10002fba4
cmp al, r14b
jne 0x100035955
lea rdx, [0x100024738]
mov rcx, rdi
call fcn.10002fba4
cmp al, r14b
je 0x100035b33
lea rdx, [rsi + 0x38]
lea rcx, [rsp + 0x30]
mov qword [rsp + 0x30], r14
mov dword [rsp + 0x38], r14d
mov word [rsp + 0x3c], r14w
call fcn.10002fcb4
lea rcx, [rsp + 0x60]
call fcn.10002fbf0
mov r11, qword [rsi + 0x38]
mov eax, 0x5c
mov r12w, word [r11]
cmp ax, r12w
jne 0x100035994
lea r12d, [rax - 0x1a]
lea rdx, [rsp + 0x60]
mov rcx, rsi
call fcn.100033834
cmp eax, r14d
mov ebx, eax
jl 0x100035b1f
lea rdx, [0x100023cf8]
mov rcx, rsi
call fcn.1000338ac
cmp eax, r14d
mov ebx, eax
jl 0x100035b1f
lea rcx, [rsp + 0x50]
call fcn.10002fbf0
lea r8, [rsp + 0x50]
xor edx, edx
mov rcx, rsi
call fcn.100033340
cmp eax, r14d
mov ebx, eax
jl 0x100035b15
mov r13, qword [rsp + 0x50]
mov rcx, r13
call fcn.1000357e8
cmp eax, r14d
je 0x100035a2e
mov rdx, qword [rsp + 0x30]
mov rcx, rsi
call fcn.100033f48
lea rcx, [rsp + 0x50]
call fcn.100030020
lea rcx, [rsp + 0x60]
call fcn.100030020
lea rcx, [rsp + 0x30]
call fcn.100030020
xor eax, eax
jmp 0x100035d8f
mov rbp, qword [rsp + 0x60]
or ebx, 0xffffffff
mov edi, ebx
cmp rbp, r14
je 0x100035a53
lea r8d, [rbx + 5]
lea rdx, [0x100024740]
mov rcx, rbp
call qword [sym.imp.msvcrt.dll__wcsnicmp]
jmp 0x100035a55
mov eax, ebx
cmp eax, r14d
jne 0x100035aaa
movzx ecx, word [rbp + 8]
call qword [sym.imp.msvcrt.dll_iswdigit]
cmp eax, r14d
je 0x100035aaa
lea rcx, [rsp + 0x40]
call fcn.10002fbf0
lea rdx, [rbp + 8]
lea rcx, [rsp + 0x40]
mov r8d, ebx
call fcn.10002fd60
cmp eax, r14d
jl 0x100035aa0
mov rcx, qword [rsp + 0x40]
cmp rcx, r14
je 0x100035a9d
call qword [sym.imp.msvcrt.dll__wtol]
mov edi, eax
jmp 0x100035aa0
mov edi, r14d
lea rcx, [rsp + 0x40]
call fcn.100030020
lea rcx, [rsp + 0x40]
call fcn.10002fbf0
movzx r9d, r12w
lea r8, [0x100023048]
lea rcx, [rsp + 0x40]
cmp edi, ebx
je 0x100035adf
lea rdx, [0x100024750]
mov qword [rsp + 0x28], r13
mov dword [rsp + 0x20], edi
call fcn.10003022c
jmp 0x100035af0
lea rdx, [0x100024788]
mov qword [rsp + 0x20], r13
call fcn.10003022c
cmp eax, r14d
mov ebx, eax
jl 0x100035b0b
mov r8, qword [rsp + 0x40]
mov edx, 1
mov rcx, rsi
call fcn.10003343c
mov ebx, eax
lea rcx, [rsp + 0x40]
call fcn.100030020
lea rcx, [rsp + 0x50]
call fcn.100030020
lea rcx, [rsp + 0x60]
call fcn.100030020
lea rcx, [rsp + 0x30]
jmp 0x100035d88
mov rcx, rsi
call fcn.100033554
cmp eax, 4
jne 0x100035cbd
mov rcx, qword [rsi + 0x38]
call fcn.100039d50
cmp al, r14b
je 0x100035cbd
lea rcx, [rsp + 0x60]
call fcn.10002fbf0
lea rcx, [rsp + 0x30]
call fcn.10002fbf0
mov rdx, qword [rsi + 0x38]
lea rcx, [rsp + 0x60]
mov r8d, 2
call fcn.10002fd60
cmp eax, r14d
mov ebx, eax
jl 0x100035cae
mov r13d, 0x104
lea rcx, [rsp + 0x30]
mov edx, r13d
mov dword [rsp + 0xa8], r13d
call fcn.10002fd00
cmp eax, r14d
mov ebx, eax
jl 0x100035cae
mov rdi, qword [rsp + 0x30]
mov r12, qword [rsp + 0x60]
lea r8, [rsp + 0xa8]
mov rdx, rdi
mov rcx, r12
call sub.MPR.dll_WNetGetConnectionW
cmp eax, 0xea
jne 0x100035c06
mov edx, dword [rsp + 0xa8]
lea rcx, [rsp + 0x30]
call fcn.10002fd00
cmp eax, r14d
mov ebx, eax
jl 0x100035cae
mov rdx, qword [rsp + 0x30]
lea r8, [rsp + 0xa8]
mov rcx, r12
call sub.MPR.dll_WNetGetConnectionW
jmp 0x100035c38
cmp eax, r14d
je 0x100035c7d
mov r8d, r13d
mov rdx, rdi
mov rcx, r12
mov dword [rsp + 0xa8], r13d
call qword [sym.imp.KERNEL32.dll_QueryDosDeviceW]
cmp eax, r14d
jne 0x100035c49
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, 0x57
cmp eax, r14d
cmove eax, ecx
movzx ebx, ax
or ebx, 0x80070000
cmp eax, r14d
cmovle ebx, eax
jmp 0x100035c7d
lea rdx, [0x1000247b8]
lea rcx, [rsp + 0x30]
call fcn.100030630
cmp eax, r14d
jne 0x100035c78
lea r8, [rdi + 0xe]
lea rdx, [0x1000247c8]
lea rcx, [rsp + 0x30]
call fcn.10003022c
mov ebx, eax
jmp 0x100035c7d
mov ebx, 0xc00d1327
cmp ebx, r14d
jl 0x100035cae
mov rdx, qword [rsi + 0x38]
lea rcx, [rsp + 0x30]
or r8d, 0xffffffff
add rdx, 4
call fcn.10002fe84
cmp eax, r14d
mov ebx, eax
jl 0x100035cae
mov rdx, qword [rsp + 0x30]
mov rcx, rsi
call fcn.100033f48
mov ebx, eax
lea rcx, [rsp + 0x30]
call fcn.100030020
jmp 0x100035d83
cmp rdi, r14
je 0x100035d8d
lea rdx, [0x1000247d0]
mov rcx, rdi
call fcn.10002fba4
cmp al, r14b
je 0x100035d8d
mov rbx, qword [rsi + 0x38]
lea rdx, [0x1000247e8]
mov r8d, 7
lea rcx, [rbx + 2]
call qword [sym.imp.msvcrt.dll__wcsnicmp]
cmp eax, r14d
jne 0x100035d1d
lea r9, [rsp + 0xa8]
lea r8, [rsp + 0xb0]
mov rdx, rbx
mov rcx, rsi
call fcn.100035db0
mov ebx, eax
jmp 0x100035d22
mov ebx, 0x80070057
cmp ebx, r14d
jl 0x100035d8d
lea rcx, [rsi + 0x28]
lea rdx, [0x100023018]
or r8d, 0xffffffff
call fcn.10002fd60
cmp eax, r14d
mov ebx, eax
jl 0x100035d8d
lea rcx, [rsp + 0x60]
call fcn.10002fbf0
mov r9d, dword [rsp + 0xa8]
mov r8d, dword [rsp + 0xb0]
lea rdx, [0x1000247d8]
lea rcx, [rsp + 0x60]
call fcn.10003022c
cmp eax, r14d
mov ebx, eax
jl 0x100035d83
mov rdx, qword [rsp + 0x60]
mov rcx, rsi
call fcn.100033f48
mov ebx, eax
lea rcx, [rsp + 0x60]
call fcn.100030020
mov eax, ebx
lea r11, [rsp + 0x70]
mov rbx, qword [r11 + 0x30]
mov rbp, qword [r11 + 0x48]
mov rsp, r11
pop r14
pop r13
pop r12
pop rdi
pop rsi
ret