Function at 0x1400011d0
Capabilities:
Get disk information

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x420]
sub rsp, 0x520
mov rax, qword [0x140007008]
xor rax, rsp
mov qword [rbp + 0x410], rax
mov r12, rcx
mov qword [rsp + 0x70], rcx
mov qword [rsp + 0x60], rcx
xor r14d, r14d
mov dword [rsp + 0x68], r14d
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetLogicalDriveStringsW]
mov edi, eax
xorps xmm0, xmm0
mov ebx, eax
movdqu xmmword [rbp - 0x20], xmm0
mov esi, r14d
mov qword [rbp - 0x10], r14
test eax, eax
je 0x1400012b6
add rbx, rbx
cmp rbx, 0x1000
jb 0x140001278
lea rcx, [rbx + 0x27]
cmp rcx, rbx
jbe 0x140001c38
call fcn.140003640
test rax, rax
je 0x140001be7
lea r15, [rax + 0x27]
and r15, 0xffffffffffffffe0
mov qword [rsp + 0x60], r15
mov qword [r15 - 8], rax
jmp 0x140001297
test rbx, rbx
je 0x14000128f
mov rcx, rbx
call fcn.140003640
mov r15, rax
mov qword [rsp + 0x60], rax
jmp 0x140001297
mov r15, r14
mov qword [rsp + 0x60], r14
mov qword [rbp - 0x20], r15
lea rsi, [rbx + r15]
mov qword [rbp - 0x10], rsi
mov r8, rbx
xor edx, edx
mov rcx, r15
call sub.VCRUNTIME140.dll_memset
mov qword [rbp - 0x18], rsi
jmp 0x1400012bf
mov r15, qword [rbp - 0x20]
mov qword [rsp + 0x60], r15
mov rdx, r15
mov ecx, edi
call qword [sym.imp.KERNEL32.dll_GetLogicalDriveStringsW]
xorps xmm0, xmm0
test eax, eax
jne 0x140001408
movups xmmword [r12], xmm0
mov qword [r12 + 0x10], r14
mov qword [r12 + 0x18], 0xf
mov rdx, qword [r12 + 0x18]
mov rcx, rdx
shr rcx, 1
movabs r13, 0x7fffffffffffffff
mov rax, r13
sub rax, rcx
cmp rdx, rax
jbe 0x140001335
movabs rax, 0x8000000000000000
add rax, 0x27
mov rcx, rax
call fcn.140003640
test rax, rax
je 0x140001b98
lea r14, [rax + 0x27]
and r14, 0xffffffffffffffe0
mov qword [r14 - 8], rax
jmp 0x14000136f
lea rax, [rcx + rdx]
mov r13d, 0x2f
cmp rax, r13
cmova r13, rax
lea rcx, [r13 + 1]
cmp rcx, 0x1000
jb 0x140001362
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x140001c2c
jmp 0x140001316
test rcx, rcx
je 0x14000136f
call fcn.140003640
mov r14, rax
mov qword [r12], r14
mov qword [r12 + 0x10], 0x2b
mov qword [r12 + 0x18], r13
movups xmm0, xmmword [str.Failed_to_retrieve_disk_drives_information.]
movups xmmword [r14], xmm0
movups xmm1, xmmword [0x140005410]
movups xmmword [r14 + 0x10], xmm1
movsd xmm0, qword [0x140005420]
movsd qword [r14 + 0x20], xmm0
movzx eax, word [0x140005428]
mov word [r14 + 0x28], ax
movzx eax, byte [0x14000542a]
mov byte [r14 + 0x2a], al
mov byte [r14 + 0x2b], 0
test r15, r15
je 0x140001400
sub rsi, r15
sar rsi, 1
add rsi, rsi
mov rcx, r15
cmp rsi, 0x1000
jb 0x1400013f5
add rsi, 0x27
mov r15, qword [r15 - 8]
sub rcx, r15
add rcx, 0xfffffffffffffff8
cmp rcx, 0x1f
ja 0x140001be7
mov rdx, rsi
mov rcx, r15
call fcn.14000367c
mov rax, r12
jmp 0x140001bf6
movups xmmword [rbp - 0x40], xmm0
mov qword [rbp - 0x30], r14
mov qword [rbp - 0x28], 0xf
mov byte [rbp - 0x40], 0
mov r12, r15
mov esi, 0x16
cmp word [r15], 0
je 0x140001a64
movabs rdi, 0x7ffffffffffffffe
movabs r13, 0x7fffffffffffffff
lea r15d, [rsi - 0xc]
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_GetDriveTypeW]
cmp eax, 3
jne 0x14000192b
mov dword [rbp - 0x68], r14d
xor edx, edx
mov r8d, 0x200
lea rcx, [rbp + 0x210]
call sub.VCRUNTIME140.dll_memset
xor edx, edx
mov r8d, 0x200
lea rcx, [rbp + 0x10]
call sub.VCRUNTIME140.dll_memset
mov dword [rsp + 0x38], 0x100
lea rax, [rbp + 0x10]
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x28], r14
mov qword [rsp + 0x20], r14
lea r9, [rbp - 0x68]
mov r8d, 0x100
lea rdx, [rbp + 0x210]
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_GetVolumeInformationW]
test eax, eax
je 0x14000192b
xorps xmm0, xmm0
movups xmmword [rbp - 0x60], xmm0
mov qword [rbp - 0x50], r14
mov qword [rbp - 0x48], r14
mov rbx, 0xffffffffffffffff
inc rbx
cmp word [r12 + rbx*2], 0
jne 0x1400014d5
cmp rbx, rdi
ja 0x140001c26
mov qword [rbp - 0x48], 7
cmp rbx, 8
jae 0x140001518
mov qword [rbp - 0x50], rbx
add rbx, rbx
mov r8, rbx
mov rdx, r12
lea rcx, [rbp - 0x60]
call sub.VCRUNTIME140.dll_memcpy
mov word [rbp + rbx - 0x60], r14w
jmp 0x1400015b2
mov rsi, rbx
or rsi, 7
cmp rsi, rdi
jbe 0x140001531
mov rsi, rdi
lea rcx, [r13*2]
jmp 0x140001552
cmp rsi, 0xa
cmovb rsi, r15
lea rcx, [rsi + 1]
cmp rcx, r13
ja 0x140001c5c
add rcx, rcx
cmp rcx, 0x1000
jb 0x14000157e
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x140001c5c
mov rcx, rax
call fcn.140003640
test rax, rax
je 0x1400019b7
lea rdi, [rax + 0x27]
and rdi, 0xffffffffffffffe0
mov qword [rdi - 8], rax
jmp 0x140001590
test rcx, rcx
je 0x14000158d
call fcn.140003640
mov rdi, rax
jmp 0x140001590
mov rdi, r14
mov qword [rbp - 0x60], rdi
mov qword [rbp - 0x50], rbx
mov qword [rbp - 0x48], rsi
add rbx, rbx
mov r8, rbx
mov rdx, r12
mov rcx, rdi
call sub.VCRUNTIME140.dll_memcpy
mov word [rdi + rbx], r14w
lea rdx, [rbp - 0x60]
cmp qword [rbp - 0x48], 8
setae r8b
cmovae rdx, qword [rbp - 0x60]
mov rax, qword [rbp - 0x50]
lea r15, [rdx + rax*2]
lea rdi, [rbp - 0x60]
test r8b, r8b
cmovne rdi, qword [rbp - 0x60]
xorps xmm0, xmm0
movups xmmword [rsp + 0x78], xmm0
cmp rdi, r15
jne 0x1400015fe
mov rbx, r14
mov qword [rbp - 0x78], rbx
mov edi, 0xf
mov qword [rbp - 0x70], rdi
mov byte [rsp + 0x78], bl
jmp 0x1400016fb
mov rax, r15
sub rax, rdi
sar rax, 1
mov rsi, r14
mov qword [rbp - 0x78], r14
mov ebx, 0xf
mov qword [rbp - 0x70], rbx
cmp rax, r13
ja 0x140001c56
cmp rax, 0x10
jb 0x1400016b0
mov rbx, rax
or rbx, 0xf
cmp rbx, r13
jbe 0x14000163b
mov rbx, r13
jmp 0x140001648
cmp rbx, 0x16
mov eax, 0x16
cmovb rbx, rax
mov rcx, rbx
add rcx, 1
mov rax, 0xffffffffffffffff
cmovb rcx, rax
cmp rcx, 0x1000
jb 0x140001692
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x140001c44
mov rcx, rax
call fcn.140003640
mov rcx, rax
test rax, rax
je 0x1400019b0
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x1400016a1
test rcx, rcx
je 0x14000169e
call fcn.140003640
jmp 0x1400016a1
mov rax, r14
mov qword [rsp + 0x78], rax
mov qword [rbp - 0x70], rbx
nop word [rax + rax]
lea rcx, [rsp + 0x78]
cmp rbx, 0x10
cmovae rcx, qword [rsp + 0x78]
movzx eax, byte [rdi]
mov byte [rcx + rsi], al
mov rsi, qword [rbp - 0x78]
inc rsi
mov qword [rbp - 0x78], rsi
add rdi, 2
cmp rdi, r15
je 0x1400016df
mov rbx, qword [rbp - 0x70]
jmp 0x1400016b0
lea rax, [rsp + 0x78]
cmp qword [rbp - 0x70], 0x10
cmovae rax, qword [rsp + 0x78]
mov byte [rax + rsi], 0
mov rdi, qword [rbp - 0x70]
mov rbx, qword [rbp - 0x78]
mov r8d, dword [rbp - 0x68]
lea rdx, [0x14000542c]
lea rcx, [rbp - 8]
call fcn.140002e80
lea rdx, [rsp + 0x78]
cmp rdi, 0x10
cmovae rdx, qword [rsp + 0x78]
mov r8, rbx
lea rcx, [rbp - 0x40]
call fcn.140002c50
xorps xmm0, xmm0
movups xmmword [rsp + 0x40], xmm0
mov qword [rsp + 0x50], r14
mov qword [rsp + 0x58], r14
lea rax, [rbp - 8]
mov rbx, 0xffffffffffffffff
inc rbx
cmp byte [rax + rbx], 0
jne 0x140001747
cmp rbx, r13
ja 0x140001c50
mov qword [rsp + 0x58], 0xf
cmp rbx, 0x10
jae 0x140001797
mov qword [rsp + 0x50], rbx
mov r8, rbx
lea rdx, [rbp - 8]
lea rcx, [rsp + 0x40]
call sub.VCRUNTIME140.dll_memcpy
mov byte [rsp + rbx + 0x40], 0
mov rdi, qword [rsp + 0x58]
mov rbx, qword [rsp + 0x50]
mov rsi, qword [rsp + 0x40]
jmp 0x140001830
mov rdi, rbx
or rdi, 0xf
cmp rdi, r13
jbe 0x1400017b6
mov rdi, r13
movabs rax, 0x8000000000000000
add rax, 0x27
jmp 0x1400017dd
cmp rdi, 0x16
mov eax, 0x16
cmovb rdi, rax
lea rcx, [rdi + 1]
cmp rcx, 0x1000
jb 0x1400017fc
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x140001c4a
mov rcx, rax
call fcn.140003640
test rax, rax
je 0x1400019a9
lea rsi, [rax + 0x27]
and rsi, 0xffffffffffffffe0
mov qword [rsi - 8], rax
jmp 0x14000180e
test rcx, rcx
je 0x14000180b
call fcn.140003640
mov rsi, rax
jmp 0x14000180e
mov rsi, r14
mov qword [rsp + 0x40], rsi
mov qword [rsp + 0x50], rbx
mov qword [rsp + 0x58], rdi
mov r8, rbx
lea rdx, [rbp - 8]
mov rcx, rsi
call sub.VCRUNTIME140.dll_memcpy
mov byte [rsi + rbx], 0
lea rdx, [rsp + 0x40]
cmp rdi, 0x10
cmovae rdx, rsi
mov r8, rbx
lea rcx, [rbp - 0x40]
call fcn.140002c50
nop
mov rdx, qword [rsp + 0x58]
cmp rdx, 0x10
jb 0x140001887
inc rdx
mov rcx, qword [rsp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140001882
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400019a9
call fcn.14000367c
mov r8d, 1
lea rdx, [0x140005430]
lea rcx, [rbp - 0x40]
call fcn.140002c50
nop
mov rdx, qword [rbp - 0x70]
cmp rdx, 0x10
jb 0x1400018db
inc rdx
mov rcx, qword [rsp + 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400018d5
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400019b0
call fcn.14000367c
nop
mov rdx, qword [rbp - 0x48]
cmp rdx, 8
jb 0x14000191b
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140001916
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400019b7
call fcn.14000367c
mov r15d, 0xa
movabs rdi, 0x7ffffffffffffffe
mov rax, 0xffffffffffffffff
lea rax, [rax + 1]
cmp word [r12 + rax*2], 0
jne 0x140001932
lea r12, [r12 + rax*2]
add r12, 2
cmp word [r12], 0
jne 0x140001447
mov rbx, qword [rbp - 0x30]
test rbx, rbx
je 0x140001a5f
xorps xmm0, xmm0
movups xmmword [rsp + 0x40], xmm0
lea rdi, [rbp - 0x40]
cmp qword [rbp - 0x28], 0x10
cmovae rdi, qword [rbp - 0x40]
cmp rbx, r13
ja 0x140001c3e
cmp rbx, 0x10
jae 0x1400019be
mov qword [rsp + 0x50], rbx
mov qword [rsp + 0x58], 0xf
movups xmm0, xmmword [rdi]
movups xmmword [rsp + 0x40], xmm0
lea rax, [rsp + 0x40]
mov ebx, 4
jmp 0x140001ab3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov rax, rbx
or rax, 0xf
cmp rax, r13
jbe 0x1400019fa
movabs rax, 0x8000000000000000
add rax, 0x27
mov rcx, rax
call fcn.140003640
mov rcx, rax
test rax, rax
je 0x140001b59
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x140001a35
mov r13, rax
cmp rax, 0x16
mov eax, 0x16
cmovb r13, rax
lea rcx, [r13 + 1]
cmp rcx, 0x1000
jb 0x140001a26
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x140001c32
jmp 0x1400019d8
test rcx, rcx
je 0x140001a32
call fcn.140003640
jmp 0x140001a35
mov rax, r14
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x50], rbx
mov qword [rsp + 0x58], r13
lea r8, [rbx + 1]
mov rdx, rdi
mov rcx, rax
call sub.VCRUNTIME140.dll_memcpy
lea rax, [rsp + 0x40]
mov ebx, 4
jmp 0x140001ab3
mov esi, 0x16
xorps xmm0, xmm0
movups xmmword [rsp + 0x78], xmm0
mov ecx, 0x20
call fcn.140003640
mov qword [rsp + 0x78], rax
mov qword [rbp - 0x78], rsi
mov qword [rbp - 0x70], 0x1f
movups xmm0, xmmword [str.No_fixed_drives_found.]
movups xmmword [rax], xmm0
mov ecx, dword [0x140005448]
mov dword [rax + 0x10], ecx
movzx ecx, word [0x14000544c]
mov word [rax + 0x14], cx
mov byte [rax + 0x16], 0
lea rax, [rsp + 0x78]
mov ebx, 2
mov rdi, qword [rsp + 0x70]
movups xmm0, xmmword [rax]
movups xmmword [rdi], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rdi + 0x10], xmm1
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
or ebx, 1
test bl, 4
je 0x140001b21
and ebx, 0xfffffffb
mov rdx, qword [rsp + 0x58]
cmp rdx, 0x10
jb 0x140001b21
inc rdx
mov rcx, qword [rsp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140001b1b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140001b1b
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14000367c
nop
test bl, 2
je 0x140001b66
mov rdx, qword [rbp - 0x70]
cmp rdx, 0x10
jb 0x140001b66
inc rdx
mov rcx, qword [rsp + 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140001b60
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140001b60
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14000367c
nop
mov rdx, qword [rbp - 0x28]
cmp rdx, 0x10
jb 0x140001ba4
inc rdx
mov rcx, qword [rbp - 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140001b9f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140001b9f
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14000367c
mov qword [rbp - 0x30], r14
mov qword [rbp - 0x28], 0xf
mov byte [rbp - 0x40], 0
mov rdx, qword [rbp - 0x10]
mov rcx, qword [rsp + 0x60]
sub rdx, rcx
sar rdx, 1
add rdx, rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x140001bee
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140001bee
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14000367c
mov rax, rdi
mov rcx, qword [rbp + 0x410]
xor rcx, rsp
call fcn.140003620
lea r11, [rsp + 0x520]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call fcn.1400011b0
nop
call fcn.140001110
nop
call fcn.140001110
nop
call fcn.140001110
nop
call fcn.1400011b0
nop
call fcn.140001110
nop
call fcn.140001110
int3
call fcn.1400011b0
nop
call fcn.1400011b0
nop
call fcn.140001110
int3