Function at 0x140014df0
Capabilities:
Get disk information

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x118
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x90], 0xfffffffffffffffe
mov rsi, rcx
mov ecx, 0x200
mov edx, 2
call fcn.14001d100
test rax, rax
je 0x14001509e
mov qword [rbp + 0x58], 0
mov qword [rbp + 0x60], 8
mov qword [rbp + 0x68], 0
mov ecx, 0x100
mov qword [rbp + 0x88], rax
mov rdx, rax
call qword [sym.imp.kernel32.dll_GetLogicalDriveStringsW]
test eax, eax
je 0x140014ff8
cmp eax, 0x100
mov r8d, 0x100
cmovb r8d, eax
lea rcx, [rbp + 0x18]
mov rdx, qword [rbp + 0x88]
call fcn.14002c2d0
lea rcx, [rbp + 0x18]
call fcn.14003f060
mov r8, rdx
mov rcx, rbp
mov rdx, rax
call fcn.14003f2a0
mov rcx, qword [rbp + 8]
mov rax, qword [rbp + 0x10]
mov qword [rbp - 0x60], 0
mov qword [rbp - 0x58], rax
mov qword [rbp + 0x50], rcx
mov qword [rbp - 0x50], rcx
mov qword [rbp - 0x48], rax
mov qword [rbp - 0x40], 0
mov qword [rbp - 0x38], rax
mov qword [rbp - 0x30], 0
mov byte [rbp - 0x28], 1
mov word [rbp - 0x20], 1
lea rcx, [rbp - 0x18]
lea rdx, [rbp - 0x60]
call fcn.140018890
mov rax, qword [rbp - 0x18]
mov qword [rbp + 0x80], rax
mov rax, qword [rbp - 0x10]
mov qword [rbp + 0x78], rax
mov r15, qword [rbp - 8]
test r15, r15
je 0x140014fb6
shl r15, 4
mov r12, qword [rbp + 0x78]
add r15, r12
lea rdi, [rbp + 0x58]
mov r14d, 1
jmp 0x140014f4e
mov rax, qword [rbp + 0x60]
lea rcx, [rbx + rbx*2]
mov r8, qword [rbp + 0x70]
mov qword [rax + rcx*8], r8
mov rdx, qword [rbp + 0x48]
mov qword [rax + rcx*8 + 8], rdx
mov qword [rax + rcx*8 + 0x10], r8
inc rbx
mov qword [rbp + 0x68], rbx
add r12, 0x10
cmp r12, r15
je 0x140014fb6
mov rbx, qword [r12]
mov r13, qword [r12 + 8]
test r13, r13
je 0x140014f80
js 0x14001508c
movzx eax, byte [0x140072141]
mov edx, 1
mov rcx, r13
call fcn.14001d0d0
test rax, rax
jne 0x140014f85
jmp 0x140015091
mov eax, 1
mov qword [rbp + 0x48], rax
mov rcx, rax
mov rdx, rbx
mov qword [rbp + 0x70], r13
mov r8, r13
call sub.VCRUNTIME140.dll_memcpy
mov rbx, qword [rbp + 0x68]
cmp rbx, qword [rbp + 0x58]
jne 0x140014f20
mov rcx, rdi
call fcn.140014660
jmp 0x140014f20
mov rdx, qword [rbp + 0x80]
test rdx, rdx
je 0x140014fd5
shl rdx, 4
mov r8d, 8
mov rcx, qword [rbp + 0x78]
call fcn.14001d0e0
mov rdx, qword [rbp]
lea rax, [rdx*2]
test rax, rax
mov rdi, qword [rbp + 0x88]
jne 0x14001502c
mov rdx, qword [rbp + 0x18]
test rdx, rdx
jne 0x140015044
jmp 0x140015053
lea rax, str._____n
mov qword [rbp + 0x18], rax
mov qword [rbp + 0x20], 1
mov qword [rbp + 0x28], 8
xorps xmm0, xmm0
movups xmmword [rbp + 0x30], xmm0
lea rcx, [rbp + 0x18]
call fcn.14002ae90
mov rdi, qword [rbp + 0x88]
jmp 0x140015053
mov r8d, 1
mov rcx, qword [rbp + 0x50]
call fcn.14001d0e0
mov rdx, qword [rbp + 0x18]
test rdx, rdx
je 0x140015053
mov rcx, qword [rbp + 0x20]
mov r8d, 1
call fcn.14001d0e0
mov rax, qword [rbp + 0x68]
mov qword [rsi + 0x10], rax
movups xmm0, xmmword [rbp + 0x58]
movups xmmword [rsi], xmm0
mov edx, 0x200
mov r8d, 2
mov rcx, rdi
call fcn.14001d0e0
mov rax, rsi
add rsp, 0x118
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
xor r14d, r14d
jmp 0x140015094
mov rdx, r13
mov rcx, r14
call fcn.140052e50
ud2
mov ecx, 2
mov edx, 0x200
call fcn.140052e50
int3