Function at 0x1400e49b0
Capabilities:
Get disk information

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rbp
push rsi
push rdi
push r12
push r13
push r15
mov eax, 0x1140
call fcn.1401ad640
sub rsp, rax
mov rax, qword [0x140209b48]
xor rax, rsp
mov qword [rsp + 0x1130], rax
xor esi, esi
mov r15d, ecx
mov dword [rsp + 0x30], ecx
mov dword [rsp + 0x4c], ecx
xor ecx, ecx
mov qword [rsp + 0x1178], r14
mov qword [rsp + 0x38], rsi
mov qword [rsp + 0x40], rsi
mov dword [rsp + 0x48], esi
call qword [sym.imp.KERNEL32.dll_SetErrorMode]
mov ecx, eax
mov dword [rsp + 0x54], eax
or ecx, 1
call qword [sym.imp.KERNEL32.dll_SetErrorMode]
lea rcx, [rsp + 0x60]
call fcn.1400012c0
lea rcx, [rsp + 0x4d0]
call fcn.1400012c0
lea rcx, [rsp + 0x180]
call fcn.1400012c0
mov r14, qword [0x14020af90]
test r14, r14
je 0x1400e4bcb
nop
mov rdx, qword [r14 + 0x10]
lea rcx, [rsp + 0x4d0]
call fcn.140177300
mov rdx, qword [r14 + 8]
cmp byte [rdx], 0
je 0x1400e4a89
lea rcx, [rsp + 0x180]
call fcn.140177300
mov rbx, qword [rsp + 0x188]
mov qword [rsp + 0x4c0], rbx
jmp 0x1400e4b00
lea rcx, [rsp + 0x2a0]
call fcn.1400012c0
mov rdx, qword [r14 + 0x10]
lea rcx, [rsp + 0x2a0]
call fcn.14017bfd0
mov rcx, qword [rsp + 0x2a8]
lea rdx, [rsp + 0xd10]
mov r8d, 0x104
call qword [0x1402009b0]
test eax, eax
je 0x1400e4ae8
lea rdx, [rsp + 0xd10]
lea rcx, [rsp + 0x60]
call fcn.1401760b0
mov rbx, qword [rsp + 0x68]
mov qword [rsp + 0x4c0], rbx
jmp 0x1400e4af3
mov rbx, rsi
mov qword [rsp + 0x4c0], rbx
lea rcx, [rsp + 0x2a0]
call fcn.140175010
test rbx, rbx
je 0x1400e4bba
movsx r13d, byte [r14 + 0x29]
movsx r12d, byte [r14 + 0x2a]
mov rbp, qword [r14 + 0x20]
movsx esi, byte [r14 + 0x28]
mov rdi, qword [r14 + 0x18]
mov rbx, qword [rsp + 0x4d8]
mov ecx, 0x40
call fcn.1400ce030
mov rcx, qword [rsp + 0x4c0]
mov r15, rax
call fcn.140174560
mov rcx, rbx
mov qword [r15 + 8], rax
call fcn.140174560
mov rcx, rdi
mov qword [r15 + 0x10], rax
call fcn.14016bb20
mov rcx, qword [rsp + 0x4c0]
mov qword [r15 + 0x18], rax
call fcn.1400db390
mov rcx, rbp
test eax, eax
mov byte [r15 + 0x38], sil
setne al
mov byte [r15 + 0x20], al
call fcn.14016bb20
xor esi, esi
cmp qword [rsp + 0x38], rsi
mov byte [r15 + 0x30], r12b
mov dword [r15 + 0x34], r13d
mov qword [r15 + 0x28], rax
mov dword [r15 + 0x3c], esi
mov byte [r15 + 0x39], 1
je 0x1400e4ba8
mov rax, qword [rsp + 0x40]
mov qword [rax], r15
jmp 0x1400e4bad
mov qword [rsp + 0x38], r15
add dword [rsp + 0x48], 1
mov qword [r15], rsi
mov qword [rsp + 0x40], r15
mov r14, qword [r14]
test r14, r14
jne 0x1400e4a50
mov r15d, dword [rsp + 0x30]
lea rcx, [rsp + 0x180]
call fcn.140175010
lea rcx, [rsp + 0x4d0]
call fcn.140175010
lea rcx, [rsp + 0x60]
call fcn.140175010
lea rcx, [rsp + 0xb00]
mov edx, 0x104
call qword [0x140200998]
mov r14, qword [rsp + 0x1178]
cmp rax, 0xffffffffffffffff
mov r13, rax
je 0x1400e4f6e
lea rcx, [rsp + 0x60]
call fcn.1400012c0
lea rcx, [rsp + 0x4d0]
call fcn.1400012c0
lea rbp, [0x1401aef92]
mov r12d, 0x41
jmp 0x1400e4c42
xor esi, esi
lea rdx, [rsp + 0xb00]
lea rcx, [rsp + 0x60]
call fcn.1401760b0
mov rcx, qword [rsp + 0x68]
call fcn.1400d6d50
cmp eax, 3
mov edi, eax
je 0x1400e4c73
cmp eax, 2
je 0x1400e4c73
cmp eax, 6
jne 0x1400e4f2a
lea r9, [rsp + 0x30]
lea rcx, [rsp + 0xb00]
xor r8d, r8d
xor edx, edx
call fcn.1400d63f0
test eax, eax
jne 0x1400e4f2a
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xea
jne 0x1400e4d41
mov eax, dword [rsp + 0x30]
lea ecx, [rax + rax]
call fcn.1400ce030
mov r8d, dword [rsp + 0x30]
lea r9, [rsp + 0x50]
lea rcx, [rsp + 0xb00]
mov rdx, rax
mov rsi, rax
call fcn.1400d63f0
test eax, eax
je 0x1400e4d34
cmp word [rsi], 0
mov rbx, rsi
je 0x1400e4d34
nop
nop
lea rcx, [rsp + 0x4d0]
mov rdx, rbx
call fcn.1401760b0
mov r9, qword [rsp + 0x4d8]
mov r8, qword [rsp + 0x68]
lea rcx, [rsp + 0x38]
mov edx, edi
mov dword [rsp + 0x28], 0
mov qword [rsp + 0x20], rbp
call fcn.1400e4640
cmp word [rbx], 0
je 0x1400e4d2a
nop
add rbx, 2
cmp word [rbx], 0
jne 0x1400e4d20
add rbx, 2
cmp word [rbx], 0
jne 0x1400e4ce0
mov rcx, rsi
call fcn.1400ce0b0
jmp 0x1400e4f2a
lea rcx, [rsp + 0x180]
call fcn.1400012c0
mov ebx, r12d
nop
nop
nop
nop
lea rdx, [rsp + 0x8f0]
lea rcx, [rsp + 0x4c0]
mov r8d, 0x104
mov word [rsp + 0x4c0], bx
mov word [rsp + 0x4c2], 0x3a
mov word [rsp + 0x4c4], 0x5c
mov word [rsp + 0x4c6], 0
call qword [0x1402009b0]
test eax, eax
je 0x1400e4dd1
lea rdx, [rsp + 0x8f0]
lea rcx, [rsp + 0x180]
call fcn.1401760b0
mov rdx, qword [rsp + 0x188]
mov rcx, qword [rsp + 0x68]
call fcn.14016cd50
test eax, eax
je 0x1400e4dde
add ebx, 1
cmp ebx, 0x5a
jle 0x1400e4d60
jmp 0x1400e4f1d
lea rdx, [rsp + 0x4c0]
lea rcx, [rsp + 0x4d0]
call fcn.1401760b0
mov r9, qword [rsp + 0x4d8]
mov r8, qword [rsp + 0x188]
lea rcx, [rsp + 0x38]
mov edx, edi
mov dword [rsp + 0x28], esi
mov qword [rsp + 0x20], rbp
call fcn.1400e4640
cmp edi, 2
mov word [rsp + 0x8f0], bx
mov word [rsp + 0x8f2], 0x3a
mov word [rsp + 0x8f4], 0x5c
jne 0x1400e4e46
cmp byte [0x14020ac86], 0
je 0x1400e4f1d
lea rdx, [rsp + 0x8f6]
lea rcx, [rsp + 0xb00]
mov r8d, 0x101
call qword [0x1402009b8]
cmp rax, 0xffffffffffffffff
mov rbx, rax
je 0x1400e4f1d
nop
lea rdx, [rsp + 0x8f0]
lea rcx, [rsp + 0x4d0]
call fcn.1401760b0
lea rdx, [rsp + 0xb00]
lea rcx, [rsp + 0x8f0]
mov r8d, 0x104
call qword [0x1402009b0]
test eax, eax
je 0x1400e4ef5
lea rdx, [rsp + 0xb00]
lea rcx, [rsp + 0x60]
call fcn.1401760b0
mov rcx, qword [rsp + 0x4d8]
call fcn.1400d6d50
cmp eax, 3
je 0x1400e4ed3
cmp eax, 2
je 0x1400e4ed3
cmp eax, 6
jne 0x1400e4ef5
mov r9, qword [rsp + 0x4d8]
mov r8, qword [rsp + 0x68]
lea rcx, [rsp + 0x38]
mov edx, eax
mov dword [rsp + 0x28], esi
mov qword [rsp + 0x20], rbp
call fcn.1400e4640
lea rdx, [rsp + 0x8f6]
mov r8d, 0x101
mov rcx, rbx
call qword [0x1402009c0]
test eax, eax
jne 0x1400e4e70
mov rcx, rbx
call qword [0x1402009c8]
lea rcx, [rsp + 0x180]
call fcn.140175010
lea rdx, [rsp + 0xb00]
mov r8d, 0x104
mov rcx, r13
call qword [0x1402009a0]
test eax, eax
jne 0x1400e4c40
lea rcx, [rsp + 0x4d0]
call fcn.140175010
lea rcx, [rsp + 0x60]
call fcn.140175010
mov rcx, r13
call qword [0x1402009a8]
jmp 0x1400e5008
mov r12d, 0x41
lea rbp, [0x1401aef92]
mov ebx, r12d
nop
lea rcx, [rsp + 0x60]
mov byte [rsp + 0x4d0], bl
mov byte [rsp + 0x4d1], 0x3a
mov byte [rsp + 0x4d2], 0x5c
mov byte [rsp + 0x4d3], 0
mov byte [rsp + 0x60], 0x5c
mov byte [rsp + 0x61], 0x5c
mov byte [rsp + 0x62], 0x2e
mov byte [rsp + 0x63], 0x5c
mov byte [rsp + 0x64], bl
mov byte [rsp + 0x65], 0x3a
mov byte [rsp + 0x66], 0
call fcn.1400d6d50
cmp eax, 3
je 0x1400e4fda
cmp eax, 2
je 0x1400e4fda
cmp eax, 6
jne 0x1400e4ffc
lea r9, [rsp + 0x4d0]
lea r8, [rsp + 0x60]
lea rcx, [rsp + 0x38]
mov edx, eax
mov dword [rsp + 0x28], esi
mov qword [rsp + 0x20], rbp
call fcn.1400e4640
add ebx, 1
cmp ebx, 0x5a
jle 0x1400e4f80
lea rcx, [rsp + 0x180]
call fcn.1400012c0
lea rcx, [rsp + 0x2a0]
call fcn.1400012c0
lea rcx, [rsp + 0x8f0]
call fcn.1400012c0
lea rcx, [rsp + 0xb00]
call fcn.1400012c0
mov byte [rsp + 0x31], 0x3a
mov byte [rsp + 0x32], 0
lea rdi, [0x140000000]
nop
lea rcx, [rsp + 0x30]
mov byte [rsp + 0x30], r12b
call fcn.1400d6d50
cmp eax, 3
mov ebx, eax
je 0x1400e5074
cmp eax, 2
je 0x1400e5074
cmp eax, 6
jne 0x1400e536a
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x2a0]
call fcn.14017c0f0
mov rcx, qword [rsp + 0x2a8]
lea rdx, [rsp + 0xf20]
mov r8d, 0x104
call qword [sym.imp.KERNEL32.dll_QueryDosDeviceW]
test eax, eax
je 0x1400e536a
mov eax, eax
lea rdx, [rsp + 0xf20]
lea rcx, [rsp + 0x8f0]
mov word [rsp + rax*2 + 0xf20], 0
call fcn.140176160
mov r11, qword [rsp + 0x8f8]
mov r8, r11
mov rax, r11
mov cl, 0x5c
neg r8
lea rdx, [r8 + rdi + 0x1cd8bc]
cmp byte [rax], cl
jne 0x1400e5215
movzx ecx, byte [rdx + rax + 1]
add rax, 1
test cl, cl
jne 0x1400e50e6
mov rax, qword [rsp + 0x2a8]
lea r9, [rsp + 0xd10]
lea rdx, [rsp + 0xf20]
movzx ecx, word [rax]
mov r8d, 0x104
mov dword [rsp + 0x20], 0x104
call fcn.1400dabe0
test eax, eax
je 0x1400e518a
lea rdx, [rsp + 0xf20]
lea rcx, [rsp + 0x180]
call fcn.1401760b0
lea rdx, [rsp + 0xd10]
lea rcx, [rsp + 0xb00]
call fcn.140175db0
mov rax, qword [rsp + 0xb08]
mov r8, qword [rsp + 0x188]
lea r9, [rsp + 0x30]
lea rcx, [rsp + 0x38]
mov edx, ebx
mov dword [rsp + 0x28], 0
mov qword [rsp + 0x20], rax
call fcn.1400e4640
jmp 0x1400e536a
lea rdx, [rsp + 0x4d0]
lea rcx, [rsp + 0x6e0]
mov r8d, 0x104
mov word [rsp + 0x6e0], r12w
mov word [rsp + 0x6e2], 0x3a
mov word [rsp + 0x6e4], 0x5c
mov word [rsp + 0x6e6], 0
call qword [0x1402009b0]
test eax, eax
je 0x1400e536a
lea rdx, [rsp + 0x4d0]
lea rcx, [rsp + 0x180]
call fcn.1401760b0
mov r8, qword [rsp + 0x188]
lea r9, [rsp + 0x30]
lea rcx, [rsp + 0x38]
mov edx, ebx
mov dword [rsp + 0x28], 1
mov qword [rsp + 0x20], rbp
call fcn.1400e4640
jmp 0x1400e536a
mov al, 0x5c
lea rcx, [r8 + rdi + 0x1cd8c8]
nop
cmp byte [r11], al
jne 0x1400e5238
movzx eax, byte [r11 + rcx + 1]
add r11, 1
test al, al
jne 0x1400e5220
jmp 0x1400e536a
lea rdx, [rsp + 0xd10]
lea rcx, [rsp + 0x6e0]
mov r8d, 0x104
mov word [rsp + 0x6e0], r12w
mov word [rsp + 0x6e2], 0x3a
mov word [rsp + 0x6e4], 0x5c
mov word [rsp + 0x6e6], 0
call qword [0x1402009b0]
test eax, eax
je 0x1400e52ec
lea r8, [rsp + 0xd10]
lea rdx, [rsp + 0x6e0]
lea rcx, str._S_GetVolumeNameForVolumeMountPoint__S_n
call fcn.1400b35e0
lea rdx, [rsp + 0xd10]
lea rcx, [rsp + 0x180]
call fcn.1401760b0
lea rdx, [rsp + 0x6e0]
lea rcx, str._S_is_refs_n
call fcn.1400b35e0
mov r8, qword [rsp + 0x188]
lea r9, [rsp + 0x30]
lea rcx, [rsp + 0x38]
mov edx, ebx
mov dword [rsp + 0x28], 1
mov qword [rsp + 0x20], rbp
call fcn.1400e4640
jmp 0x1400e536a
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rdx, [rsp + 0x6e0]
lea rcx, str._S_GetVolumeNameForVolumeMountPoint_FAILED__d_n
mov r8d, eax
call fcn.1400b35e0
lea r9, [rsp + 0x4d0]
lea r8, [rsp + 0x60]
lea rcx, [rsp + 0x38]
mov edx, ebx
mov dword [rsp + 0x28], 1
mov byte [rsp + 0x4d0], r12b
mov byte [rsp + 0x4d1], 0x3a
mov byte [rsp + 0x4d2], 0
mov byte [rsp + 0x60], 0x5c
mov byte [rsp + 0x61], 0x5c
mov byte [rsp + 0x62], 0x2e
mov byte [rsp + 0x63], 0x5c
mov byte [rsp + 0x64], r12b
mov byte [rsp + 0x65], 0x3a
mov byte [rsp + 0x66], 0
mov qword [rsp + 0x20], rbp
call fcn.1400e4640
add r12d, 1
cmp r12d, 0x5a
jle 0x1400e5050
lea rcx, [rsp + 0xb00]
call fcn.140175010
lea rcx, [rsp + 0x8f0]
call fcn.140175010
lea rcx, [rsp + 0x2a0]
call fcn.140175010
lea rcx, [rsp + 0x180]
call fcn.140175010
movsxd r11, dword [rsp + 0x48]
test r11d, r11d
je 0x1400e557e
mov rcx, r11
shl rcx, 3
call fcn.1400ce030
cmp byte [reloc.WS2_32.dll_accept], 0
mov rbx, qword [rsp + 0x38]
mov r13, rax
je 0x1400e5497
test rbx, rbx
mov r9, rbx
je 0x1400e5497
nop
nop
nop
cmp byte [r9 + 0x20], 0
jne 0x1400e5485
mov rcx, qword [r9 + 0x10]
cmp byte [rcx], 0
je 0x1400e5485
cmp byte [rcx + 1], 0x3a
jne 0x1400e5485
cmp byte [rcx + 2], 0
jne 0x1400e5485
mov r8, rbx
cmp r8, r9
je 0x1400e547d
cmp byte [r8 + 0x20], 0
je 0x1400e547d
mov rcx, qword [r9 + 8]
mov rax, qword [r8 + 8]
movzx edx, byte [rcx]
cmp dl, byte [rax]
jne 0x1400e5445
test dl, dl
je 0x1400e544f
mov dl, byte [rcx + 1]
add rcx, 1
add rax, 1
cmp dl, byte [rax]
je 0x1400e5432
movzx eax, byte [rax]
movzx ecx, byte [rcx]
cmp ecx, eax
jne 0x1400e547d
mov rcx, qword [r9 + 0x18]
mov rax, qword [r8 + 0x18]
movzx edx, byte [rcx]
cmp dl, byte [rax]
jne 0x1400e5473
nop
test dl, dl
je 0x1400e54b5
mov dl, byte [rcx + 1]
add rcx, 1
add rax, 1
cmp dl, byte [rax]
je 0x1400e5460
movzx eax, byte [rax]
movzx ecx, byte [rcx]
sub ecx, eax
je 0x1400e54b5
mov r8, qword [r8]
test r8, r8
jne 0x1400e5417
xor eax, eax
mov byte [r9 + 0x21], al
mov r9, qword [r9]
test r9, r9
jne 0x1400e53f0
xor ebp, ebp
test rbx, rbx
je 0x1400e5531
mov rdi, r13
test r15d, r15d
mov rsi, qword [rbx]
je 0x1400e54bc
cmp byte [rbx + 0x38], 0
je 0x1400e54ed
jmp 0x1400e54c2
mov eax, 1
jmp 0x1400e5487
cmp byte [rbx + 0x38], 0
je 0x1400e551b
cmp byte [reloc.WS2_32.dll_accept], 0
je 0x1400e54d1
cmp byte [rbx + 0x21], 0
jne 0x1400e54ed
cmp byte [reloc.WS2_32.dll_accept], 0
je 0x1400e551b
cmp byte [rbx + 0x20], 0
jne 0x1400e551b
mov rcx, qword [rbx + 8]
call fcn.1400db390
test eax, eax
jne 0x1400e551b
mov rcx, qword [rbx + 0x28]
call fcn.1400ce0b0
mov rcx, qword [rbx + 0x18]
call fcn.1400ce0b0
mov rcx, qword [rbx + 0x10]
call fcn.1400ce0b0
mov rcx, qword [rbx + 8]
call fcn.1400ce0b0
mov rcx, rbx
call fcn.1400ce0b0
jmp 0x1400e5525
mov qword [rdi], rbx
add ebp, 1
add rdi, 8
test rsi, rsi
mov rbx, rsi
jne 0x1400e54a5
lea r8, [0x1400e48c0]
mov edx, ebp
mov rcx, r13
call fcn.1400e1740
xor ebx, ebx
xor edx, edx
test ebp, ebp
jle 0x1400e5574
mov rcx, r13
mov r8d, ebp
test rbx, rbx
je 0x1400e555d
mov rax, qword [rcx]
mov qword [rdx], rax
jmp 0x1400e5560
mov rbx, qword [rcx]
mov rdx, qword [rcx]
add rcx, 8
sub r8, 1
mov qword [rdx], 0
jne 0x1400e5550
mov rcx, r13
call fcn.1400ce0b0
jmp 0x1400e5583
mov rbx, qword [rsp + 0x38]
mov ecx, dword [rsp + 0x54]
call qword [sym.imp.KERNEL32.dll_SetErrorMode]
mov rax, rbx
mov rcx, qword [rsp + 0x1130]
xor rcx, rsp
call fcn.1401a6ae0
lea r11, [rsp + 0x1140]
mov rbx, qword [r11 + 0x40]
mov rbp, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r13
pop r12
pop rdi
pop rsi
ret