Function at 0x14006c7c0
Capabilities:
Get disk information
Get disk size

Disassembly:
mov qword [rsp + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r13
lea rbp, [rsp - 0x107b0]
mov eax, 0x108b0
call fcn.1400e08d0
sub rsp, rax
mov r13, rcx
mov rcx, rdx
mov rdi, r8
mov rbx, rdx
call fcn.1400272b0
movsxd rsi, eax
cmp esi, 9
jne 0x14006c815
xor r8d, r8d
mov rdx, rdi
mov rcx, r13
call fcn.14006c100
add rsp, 0x108b0
pop r13
pop rdi
pop rsi
pop rbx
pop rbp
ret
mov qword [rsp + 0x108e8], r12
mov qword [rsp + 0x108a8], r14
cmp esi, 4
jne 0x14006cbac
lea rcx, [rbp + 0x7a0]
mov r8d, 0x7ffe
mov rdx, rdi
call fcn.1400d9e34
or rcx, 0xffffffffffffffff
xor r12d, r12d
xor eax, eax
lea rdi, [rbp + 0x7a0]
mov word [rbp + 0x1079c], r12w
repne scasw ax, word [rdi]
not rcx
dec rcx
je 0x14006c880
cmp word [rbp + rcx*2 + 0x79e], 0x5c
je 0x14006c880
mov r13d, 0x5c
mov word [rbp + rcx*2 + 0x7a0], r13w
lea rdx, [rbx + 0x12]
movzx eax, word [rdx]
cmp ax, 0x20
je 0x14006c893
cmp ax, 9
jne 0x14006c899
add rdx, 2
jmp 0x14006c884
lea rcx, [rbp + 0x7a0]
call qword [sym.imp.KERNEL32.dll_SetVolumeLabelW]
mov rbx, qword [0x14012b5a0]
lea rdx, [0x1400f1614]
movzx r9d, byte [rbx + 0x23]
test eax, eax
lea r13, [0x1400f569c]
cmovne r13, rdx
test r9b, r9b
jne 0x14006c8eb
mov rcx, qword [rbx + 0x10]
xor r9d, r9d
or r8, 0xffffffffffffffff
mov rdx, r13
mov byte [rsp + 0x20], 1
call fcn.1400bcba0
mov r12d, eax
jmp 0x14006d592
mov dl, 1
test r13, r13
jne 0x14006c900
xor dl, dl
mov r14, r12
lea r13, [0x1400f1604]
jmp 0x14006c922
cmp qword [rbx + 8], r13
jne 0x14006c90f
mov r14, qword [rbx + 0x10]
shr r14, 1
jmp 0x14006c922
or rcx, 0xffffffffffffffff
xor eax, eax
mov rdi, r13
repne scasw ax, word [rdi]
not rcx
lea r14, [rcx - 1]
lea rax, [r14 + 1]
lea rsi, [rax + rax]
cmp r9b, 2
jne 0x14006c943
mov rdx, r14
mov rcx, r13
call fcn.140006f10
mov r12d, eax
jmp 0x14006d592
mov r8, qword [0x1401255a0]
cmp rsi, r8
jbe 0x14006c977
cmp rsi, qword [rbx + 0x18]
jbe 0x14006c977
lea r8, [0x1400f1604]
lea rdx, [0x1401103d0]
lea rcx, [0x14012c540]
call fcn.14004e5d0
mov r12d, eax
jmp 0x14006d592
cmp rax, 2
jae 0x14006c9a1
test dl, dl
mov rcx, rbx
setne r12b
xor r8d, r8d
lea edx, [r12 + 3]
call fcn.1400bd250
mov r12d, 1
mov eax, r12d
jmp 0x14006d592
movzx eax, byte [rbx + 0x21]
test al, 2
je 0x14006c9be
mov rcx, qword [rbx]
and al, 0x3d
mov byte [rbx + 0x21], al
mov rax, qword [rcx]
call qword [rax + reloc.WSOCK32.dll_recv]
mov r8, qword [0x1401255a0]
mov r9, qword [rbx + 0x18]
and byte [rbx + 0x21], 0x82
cmp rsi, r9
jbe 0x14006cb34
movzx r10d, byte [rbx + 0x20]
movzx eax, r10b
cmp r10b, 1
jbe 0x14006c9f5
cmp al, 2
je 0x14006ca35
mov rdi, qword [rbp + 0x107f8]
mov rax, qword [rbp + 0x107f8]
jmp 0x14006cb28
cmp rsi, 0x80
ja 0x14006ca35
cmp rsi, 8
ja 0x14006ca0b
mov edi, 8
jmp 0x14006ca1b
mov eax, reloc.WSOCK32.dll_recv
mov edi, 0x80
cmp rsi, rax
cmovbe edi, eax
mov rcx, rdi
call fcn.1400b55f0
test rax, rax
je 0x14006cb60
mov byte [rbx + 0x20], 1
jmp 0x14006cb28
cmp rsi, 0x20
jae 0x14006ca45
mov edi, SafeArrayAllocDescriptor
jmp 0x14006caef
mov edi, 0x208
cmp rsi, rdi
jb 0x14006caef
cmp rsi, 0x50000
jae 0x14006caab
pxor xmm0, xmm0
cvtsi2sd xmm0, rsi
test rsi, rsi
jns 0x14006ca72
addsd xmm0, qword [0x140111fc8]
mulsd xmm0, qword [0x140112000]
movsd xmm1, qword [0x140111ff8]
xor ecx, ecx
comisd xmm0, xmm1
jbe 0x14006caa1
subsd xmm0, xmm1
comisd xmm0, xmm1
jae 0x14006caa1
movabs rax, 0x8000000000000000
mov rcx, rax
cvttsd2si rdi, xmm0
add rdi, rcx
jmp 0x14006caef
cmp rsi, 0x320000
jae 0x14006cabd
lea rdi, [rsi + 0x8000]
jmp 0x14006caef
cmp rsi, 0xc80000
jae 0x14006cae8
movabs rax, 0x47ae147ae147ae15
mov rdi, rsi
mul rsi
sub rdi, rdx
shr rdi, 1
add rdi, rdx
shr rdi, 6
add rdi, rsi
jmp 0x14006caef
lea rdi, [rsi + 0x20000]
cmp rdi, r8
cmova rdi, r8
cmp r10b, 2
jne 0x14006cb0f
test r9, r9
je 0x14006cb0f
mov rcx, qword [rbx + 8]
mov sil, 1
call fcn.1400d6528
jmp 0x14006cb12
xor sil, sil
test rdi, rdi
js 0x14006cb68
mov rcx, rdi
call fcn.1400d6468
test rax, rax
je 0x14006cb68
mov byte [rbx + 0x20], 2
and byte [rbx + 0x21], 0x7f
mov qword [rbx + 8], rax
mov qword [rbx + 0x18], rdi
mov rcx, qword [rbx + 8]
cmp rcx, r13
je 0x14006cb49
lea r8, [r14 + r14]
mov rdx, r13
call fcn.1400d72b0
mov rax, qword [rbx + 8]
lea rcx, [r14 + r14]
mov word [rcx + rax], r12w
mov qword [rbx + 0x10], rcx
mov r12d, 1
mov eax, r12d
jmp 0x14006d592
test sil, sil
je 0x14006cb7e
lea rax, [0x14012c438]
mov qword [rbx + 0x18], r12
mov qword [rbx + 8], rax
jmp 0x14006cb86
mov rax, qword [rbx + 8]
mov word [rax], r12w
lea r8, [0x1400f1604]
lea rdx, str.Out_of_memory.
lea rcx, [0x14012c540]
mov qword [rbx + 0x10], r12
call fcn.14004e5d0
mov r12d, eax
jmp 0x14006d592
mov rbx, qword [0x14012a8c0]
mov rcx, rbx
call fcn.1400243d0
cmp esi, 8
ja case.0x14006cbd6.4
lea r14, [0x140000000]
mov eax, dword [r14 + rsi*4 + 0x6e214]
add rax, r14
jmp rax
xor r12d, r12d
cmp word [rdi], r12w
jne 0x14006cbeb
mov esi, 0x100
jmp 0x14006cc7d
lea rdx, str.CDRom
mov rcx, rdi
call fcn.1400d5fdc
test eax, eax
jne 0x14006cc03
lea esi, [rax + 5]
jmp 0x14006cc7d
lea rdx, str.Removable
mov rcx, rdi
call fcn.1400d5fdc
test eax, eax
jne 0x14006cc1b
lea esi, [rax + 2]
jmp 0x14006cc7d
lea rdx, str.Fixed
mov rcx, rdi
call fcn.1400d5fdc
test eax, eax
jne 0x14006cc33
lea esi, [rax + 3]
jmp 0x14006cc7d
lea rdx, str.Network
mov rcx, rdi
call fcn.1400d5fdc
test eax, eax
jne 0x14006cc4b
lea esi, [rax + 4]
jmp 0x14006cc7d
lea rdx, str.Ramdisk
mov rcx, rdi
call fcn.1400d5fdc
test eax, eax
jne 0x14006cc63
lea esi, [rax + 6]
jmp 0x14006cc7d
lea rdx, str.Unknown
mov rcx, rdi
call fcn.1400d5fdc
test eax, eax
jne case.0x14006cbd6.0
mov esi, r12d
mov qword [rsp + 0x108a0], r15
mov dil, 0x41
lea r14, [rsp + 0x60]
mov r15d, r12d
movzx eax, dil
lea rcx, [rbp - 0x60]
mov dword [rbp - 0x5e], 0x5c003a
mov word [rbp - 0x60], ax
mov word [rbp - 0x5a], r12w
call qword [sym.imp.KERNEL32.dll_GetDriveTypeW]
cmp eax, esi
je 0x14006ccbf
cmp esi, 0x100
jne 0x14006cccf
cmp eax, 1
je 0x14006cccf
movzx eax, dil
inc r15d
add r14, 2
mov word [r14 - 2], ax
inc dil
cmp dil, 0x5a
jbe 0x14006cc90
movsxd rax, r15d
mov r15, qword [rsp + 0x108a0]
movzx edx, byte [rbx + 0x23]
mov word [rsp + rax*2 + 0x60], r12w
test dl, dl
jne 0x14006cd10
mov rcx, qword [rbx + 0x10]
lea rdx, [rsp + 0x60]
xor r9d, r9d
or r8, 0xffffffffffffffff
mov byte [rsp + 0x20], 1
call fcn.1400bcba0
jmp 0x14006cf65
lea rax, [rsp + 0x60]
cmp qword [rbx + 8], rax
jne 0x14006cd24
mov r13, qword [rbx + 0x10]
shr r13, 1
jmp 0x14006cd39
or rcx, 0xffffffffffffffff
lea rdi, [rsp + 0x60]
xor eax, eax
repne scasw ax, word [rdi]
not rcx
lea r13, [rcx - 1]
lea rax, [r13 + 1]
lea rsi, [rax + rax]
cmp dl, 2
jne 0x14006cd58
lea rcx, [rsp + 0x60]
mov rdx, r13
call fcn.140006f10
jmp 0x14006cf65
mov r8, qword [0x1401255a0]
cmp rsi, r8
jbe 0x14006cd89
cmp rsi, qword [rbx + 0x18]
jbe 0x14006cd89
lea r8, [0x1400f1604]
lea rdx, [0x1401103d0]
lea rcx, [0x14012c540]
call fcn.14004e5d0
jmp 0x14006cf65
cmp rax, 2
jae 0x14006cda3
xor r8d, r8d
mov rcx, rbx
lea edx, [r8 + 4]
call fcn.1400bd250
jmp 0x14006cf65
movzx eax, byte [rbx + 0x21]
test al, 2
je 0x14006cdc0
mov rcx, qword [rbx]
and al, 0x3d
mov byte [rbx + 0x21], al
mov rax, qword [rcx]
call qword [rax + reloc.WSOCK32.dll_recv]
mov r8, qword [0x1401255a0]
mov r9, qword [rbx + 0x18]
and byte [rbx + 0x21], 0x82
cmp rsi, r9
jbe 0x14006cf36
movzx r10d, byte [rbx + 0x20]
movzx eax, r10b
cmp r10b, 1
jbe 0x14006cdf7
cmp al, 2
je 0x14006ce37
mov rdi, qword [rbp + 0x107f8]
mov rax, qword [rbp + 0x107f8]
jmp 0x14006cf2a
cmp rsi, 0x80
ja 0x14006ce37
cmp rsi, 8
ja 0x14006ce0d
mov edi, 8
jmp 0x14006ce1d
mov eax, reloc.WSOCK32.dll_recv
mov edi, 0x80
cmp rsi, rax
cmovbe edi, eax
mov rcx, rdi
call fcn.1400b55f0
test rax, rax
je 0x14006cf65
mov byte [rbx + 0x20], 1
jmp 0x14006cf2a
cmp rsi, 0x20
jae 0x14006ce47
mov edi, SafeArrayAllocDescriptor
jmp 0x14006cef1
mov edi, 0x208
cmp rsi, rdi
jb 0x14006cef1
cmp rsi, 0x50000
jae 0x14006cead
pxor xmm0, xmm0
cvtsi2sd xmm0, rsi
test rsi, rsi
jns 0x14006ce74
addsd xmm0, qword [0x140111fc8]
mulsd xmm0, qword [0x140112000]
movsd xmm1, qword [0x140111ff8]
xor ecx, ecx
comisd xmm0, xmm1
jbe 0x14006cea3
subsd xmm0, xmm1
comisd xmm0, xmm1
jae 0x14006cea3
movabs rax, 0x8000000000000000
mov rcx, rax
cvttsd2si rdi, xmm0
add rdi, rcx
jmp 0x14006cef1
cmp rsi, 0x320000
jae 0x14006cebf
lea rdi, [rsi + 0x8000]
jmp 0x14006cef1
cmp rsi, 0xc80000
jae 0x14006ceea
movabs rax, 0x47ae147ae147ae15
mov rdi, rsi
mul rsi
sub rdi, rdx
shr rdi, 1
add rdi, rdx
shr rdi, 6
add rdi, rsi
jmp 0x14006cef1
lea rdi, [rsi + 0x20000]
cmp rdi, r8
cmova rdi, r8
cmp r10b, 2
jne 0x14006cf11
test r9, r9
je 0x14006cf11
mov rcx, qword [rbx + 8]
mov sil, 1
call fcn.1400d6528
jmp 0x14006cf14
xor sil, sil
test rdi, rdi
js 0x14006cf84
mov rcx, rdi
call fcn.1400d6468
test rax, rax
je 0x14006cf84
mov byte [rbx + 0x20], 2
and byte [rbx + 0x21], 0x7f
mov qword [rbx + 8], rax
mov qword [rbx + 0x18], rdi
mov rcx, qword [rbx + 8]
lea rax, [rsp + 0x60]
cmp rcx, rax
je 0x14006cf53
lea r8, [r13 + r13]
lea rdx, [rsp + 0x60]
call fcn.1400d72b0
mov rax, qword [rbx + 8]
lea rcx, [r13 + r13]
mov word [rcx + rax], r12w
mov qword [rbx + 0x10], rcx
cmp word [rsp + 0x60], r12w
jne case.0x14006cbd6.4
mov rcx, qword [rbp + 0x107e0]
mov dl, 1
call fcn.14004cf10
jmp 0x14006d592
test sil, sil
je 0x14006cf9a
lea rax, [0x14012c438]
mov qword [rbx + 0x18], r12
mov qword [rbx + 8], rax
jmp 0x14006cfa2
mov rax, qword [rbx + 8]
mov word [rax], r12w
lea r8, [0x1400f1604]
lea rdx, str.Out_of_memory.
lea rcx, [0x14012c540]
mov qword [rbx + 0x10], r12
call fcn.14004e5d0
jmp 0x14006cf65
lea rcx, [rbp + 0x7a0]
mov r8d, 0x7ffe
mov rdx, rdi
call fcn.1400d9e34
or rcx, 0xffffffffffffffff
xor r12d, r12d
xor eax, eax
lea rdi, [rbp + 0x7a0]
mov word [rbp + 0x1079c], r12w
repne scasw ax, word [rdi]
not rcx
dec rcx
je 0x14006d014
cmp word [rbp + rcx*2 + 0x79e], 0x5c
je 0x14006d014
mov r13d, 0x5c
mov word [rbp + rcx*2 + 0x7a0], r13w
mov dword [rsp + 0x38], 0xff
lea rax, [rbp + 0x2a0]
lea r9, [rbp + 0x107f8]
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0x50]
lea rdx, [rbp + 0xa0]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x48]
lea rcx, [rbp + 0x7a0]
mov r8d, 0xff
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.dll_GetVolumeInformationW]
test eax, eax
je case.0x14006cbd6.0
sub esi, 2
je 0x14006d2e3
dec esi
je 0x14006d091
cmp esi, 2
jne case.0x14006cbd6.4
mov edx, dword [rbp + 0x107f8]
mov r8b, reloc.OLEAUT32.dll_SafeArrayGetElement
mov rcx, rbx
call fcn.140001090
jmp case.0x14006cbd6.4
movzx edx, byte [rbx + 0x23]
test dl, dl
jne 0x14006d0ba
mov rcx, qword [rbx + 0x10]
lea rdx, [rbp + 0xa0]
xor r9d, r9d
or r8, 0xffffffffffffffff
mov byte [rsp + 0x20], 1
call fcn.1400bcba0
jmp case.0x14006cbd6.4
lea rax, [rbp + 0xa0]
cmp qword [rbx + 8], rax
jne 0x14006d0d0
mov r13, qword [rbx + 0x10]
shr r13, 1
jmp 0x14006d0e7
or rcx, 0xffffffffffffffff
lea rdi, [rbp + 0xa0]
xor eax, eax
repne scasw ax, word [rdi]
not rcx
lea r13, [rcx - 1]
lea rax, [r13 + 1]
lea rsi, [rax + rax]
cmp dl, 2
jne 0x14006d108
lea rcx, [rbp + 0xa0]
mov rdx, r13
call fcn.140006f10
jmp case.0x14006cbd6.4
mov r8, qword [0x1401255a0]
cmp rsi, r8
jbe 0x14006d11e
cmp rsi, qword [rbx + 0x18]
ja 0x14006d36c
cmp rax, 2
jb 0x14006d391
movzx eax, byte [rbx + 0x21]
test al, 2
je 0x14006d145
mov rcx, qword [rbx]
and al, 0x3d
mov byte [rbx + 0x21], al
mov rax, qword [rcx]
call qword [rax + reloc.WSOCK32.dll_recv]
mov r8, qword [0x1401255a0]
mov r9, qword [rbx + 0x18]
and byte [rbx + 0x21], 0x82
cmp rsi, r9
jbe 0x14006d2c3
movzx r10d, byte [rbx + 0x20]
movzx eax, r10b
cmp r10b, 1
jbe 0x14006d17c
cmp al, 2
je 0x14006d1bc
mov rdi, qword [rbp + 0x107f8]
mov rax, qword [rbp + 0x107f8]
jmp 0x14006d2b7
cmp rsi, 0x80
ja 0x14006d1bc
cmp rsi, 8
ja 0x14006d192
mov edi, 8
jmp 0x14006d1a2
mov eax, reloc.WSOCK32.dll_recv
mov edi, 0x80
cmp rsi, rax
cmovbe edi, eax
mov rcx, rdi
call fcn.1400b55f0
test rax, rax
je case.0x14006cbd6.4
mov byte [rbx + 0x20], 1
jmp 0x14006d2b7
cmp rsi, 0x20
jae 0x14006d1cc
mov edi, SafeArrayAllocDescriptor
jmp 0x14006d276
mov edi, 0x208
cmp rsi, rdi
jb 0x14006d276
cmp rsi, 0x50000
jae 0x14006d232
pxor xmm0, xmm0
cvtsi2sd xmm0, rsi
test rsi, rsi
jns 0x14006d1f9
addsd xmm0, qword [0x140111fc8]
mulsd xmm0, qword [0x140112000]
movsd xmm1, qword [0x140111ff8]
xor ecx, ecx
comisd xmm0, xmm1
jbe 0x14006d228
subsd xmm0, xmm1
comisd xmm0, xmm1
jae 0x14006d228
movabs rax, 0x8000000000000000
mov rcx, rax
cvttsd2si rdi, xmm0
add rdi, rcx
jmp 0x14006d276
cmp rsi, 0x320000
jae 0x14006d244
lea rdi, [rsi + 0x8000]
jmp 0x14006d276
cmp rsi, 0xc80000
jae 0x14006d26f
movabs rax, 0x47ae147ae147ae15
mov rdi, rsi
mul rsi
sub rdi, rdx
shr rdi, 1
add rdi, rdx
shr rdi, 6
add rdi, rsi
jmp 0x14006d276
lea rdi, [rsi + 0x20000]
cmp rdi, r8
cmova rdi, r8
cmp r10b, 2
jne 0x14006d296
test r9, r9
je 0x14006d296
mov rcx, qword [rbx + 8]
mov sil, 1
call fcn.1400d6528
jmp 0x14006d299
xor sil, sil
test rdi, rdi
js 0x14006d5b0
mov rcx, rdi
call fcn.1400d6468
test rax, rax
je 0x14006d5b0
mov byte [rbx + 0x20], 2
and byte [rbx + 0x21], 0x7f
mov qword [rbx + 8], rax
mov qword [rbx + 0x18], rdi
mov rcx, qword [rbx + 8]
lea rax, [rbp + 0xa0]
cmp rcx, rax
je 0x14006d561
lea rdx, [rbp + 0xa0]
jmp 0x14006d557
movzx edx, byte [rbx + 0x23]
test dl, dl
jne 0x14006d30c
mov rcx, qword [rbx + 0x10]
lea rdx, [rbp + 0x2a0]
xor r9d, r9d
or r8, 0xffffffffffffffff
mov byte [rsp + 0x20], 1
call fcn.1400bcba0
jmp case.0x14006cbd6.4
lea rax, [rbp + 0x2a0]
cmp qword [rbx + 8], rax
jne 0x14006d322
mov r13, qword [rbx + 0x10]
shr r13, 1
jmp 0x14006d339
or rcx, 0xffffffffffffffff
lea rdi, [rbp + 0x2a0]
xor eax, eax
repne scasw ax, word [rdi]
not rcx
lea r13, [rcx - 1]
lea rax, [r13 + 1]
lea rsi, [rax + rax]
cmp dl, 2
jne 0x14006d35a
lea rcx, [rbp + 0x2a0]
mov rdx, r13
call fcn.140006f10
jmp case.0x14006cbd6.4
mov r8, qword [0x1401255a0]
cmp rsi, r8
jbe 0x14006d38b
cmp rsi, qword [rbx + 0x18]
jbe 0x14006d38b
lea r8, [0x1400f1604]
lea rdx, [0x1401103d0]
lea rcx, [0x14012c540]
call fcn.14004e5d0
jmp case.0x14006cbd6.4
cmp rax, 2
jae 0x14006d3a5
xor r8d, r8d
mov rcx, rbx
lea edx, [r8 + 4]
call fcn.1400bd250
jmp case.0x14006cbd6.4
movzx eax, byte [rbx + 0x21]
test al, 2
je 0x14006d3c2
mov rcx, qword [rbx]
and al, 0x3d
mov byte [rbx + 0x21], al
mov rax, qword [rcx]
call qword [rax + reloc.WSOCK32.dll_recv]
mov r8, qword [0x1401255a0]
mov r9, qword [rbx + 0x18]
and byte [rbx + 0x21], 0x82
cmp rsi, r9
jbe 0x14006d540
movzx r10d, byte [rbx + 0x20]
movzx eax, r10b
cmp r10b, 1
jbe 0x14006d3f9
cmp al, 2
je 0x14006d439
mov rdi, qword [rbp + 0x107f8]
mov rax, qword [rbp + 0x107f8]
jmp 0x14006d534
cmp rsi, 0x80
ja 0x14006d439
cmp rsi, 8
ja 0x14006d40f
mov edi, 8
jmp 0x14006d41f
mov eax, reloc.WSOCK32.dll_recv
mov edi, 0x80
cmp rsi, rax
cmovbe edi, eax
mov rcx, rdi
call fcn.1400b55f0
test rax, rax
je case.0x14006cbd6.4
mov byte [rbx + 0x20], 1
jmp 0x14006d534
cmp rsi, 0x20
jae 0x14006d449
mov edi, SafeArrayAllocDescriptor
jmp 0x14006d4f3
mov edi, 0x208
cmp rsi, rdi
jb 0x14006d4f3
cmp rsi, 0x50000
jae 0x14006d4af
pxor xmm0, xmm0
cvtsi2sd xmm0, rsi
test rsi, rsi
jns 0x14006d476
addsd xmm0, qword [0x140111fc8]
mulsd xmm0, qword [0x140112000]
movsd xmm1, qword [0x140111ff8]
xor ecx, ecx
comisd xmm0, xmm1
jbe 0x14006d4a5
subsd xmm0, xmm1
comisd xmm0, xmm1
jae 0x14006d4a5
movabs rax, 0x8000000000000000
mov rcx, rax
cvttsd2si rdi, xmm0
add rdi, rcx
jmp 0x14006d4f3
cmp rsi, 0x320000
jae 0x14006d4c1
lea rdi, [rsi + 0x8000]
jmp 0x14006d4f3
cmp rsi, 0xc80000
jae 0x14006d4ec
movabs rax, 0x47ae147ae147ae15
mov rdi, rsi
mul rsi
sub rdi, rdx
shr rdi, 1
add rdi, rdx
shr rdi, 6
add rdi, rsi
jmp 0x14006d4f3
lea rdi, [rsi + 0x20000]
cmp rdi, r8
cmova rdi, r8
cmp r10b, 2
jne 0x14006d513
test r9, r9
je 0x14006d513
mov rcx, qword [rbx + 8]
mov sil, 1
call fcn.1400d6528
jmp 0x14006d516
xor sil, sil
test rdi, rdi
js 0x14006d5b0
mov rcx, rdi
call fcn.1400d6468
test rax, rax
je 0x14006d5b0
mov byte [rbx + 0x20], 2
and byte [rbx + 0x21], 0x7f
mov qword [rbx + 8], rax
mov qword [rbx + 0x18], rdi
mov rcx, qword [rbx + 8]
lea rax, [rbp + 0x2a0]
cmp rcx, rax
je 0x14006d561
lea rdx, [rbp + 0x2a0]
lea r8, [r13 + r13]
call fcn.1400d72b0
lea rcx, [r13 + r13]
mov rax, qword [rbx + 8]
mov word [rcx + rax], r12w
mov qword [rbx + 0x10], rcx
mov rcx, qword [0x14012b5a0]
lea rdx, [0x1400f1614]
xor r9d, r9d
or r8, 0xffffffffffffffff
mov byte [rsp + 0x20], 1
call fcn.1400bcba0
mov r12, qword [rsp + 0x108e8]
mov r14, qword [rsp + 0x108a8]
add rsp, 0x108b0
pop r13
pop rdi
pop rsi
pop rbx
pop rbp
ret
test sil, sil
je 0x14006d5c6
lea rax, [0x14012c438]
mov qword [rbx + 0x18], r12
mov qword [rbx + 8], rax
jmp 0x14006d5ce
mov rax, qword [rbx + 8]
mov word [rax], r12w
lea r8, [0x1400f1604]
lea rdx, str.Out_of_memory.
lea rcx, [0x14012c540]
mov qword [rbx + 0x10], r12
call fcn.14004e5d0
jmp case.0x14006cbd6.4
lea rcx, [rbp + 0x7a0]
mov r8d, 0x7ffe
mov rdx, rdi
call fcn.1400d9e34
or rcx, 0xffffffffffffffff
xor r12d, r12d
xor eax, eax
lea rdi, [rbp + 0x7a0]
mov word [rbp + 0x1079c], r12w
repne scasw ax, word [rdi]
not rcx
dec rcx
je 0x14006d640
cmp word [rbp + rcx*2 + 0x79e], 0x5c
je 0x14006d640
mov r13d, 0x5c
mov word [rbp + rcx*2 + 0x7a0], r13w
lea rcx, [rbp + 0x7a0]
call qword [sym.imp.KERNEL32.dll_GetDriveTypeW]
cmp eax, 6
ja case.0x14006cbd6.0
mov eax, eax
mov ecx, dword [r14 + rax*4 + 0x6e238]
add rcx, r14
jmp rcx
movzx eax, byte [rbx + 0x23]
test al, al
jne 0x14006d68e
mov rcx, qword [rbx + 0x10]
lea rdx, str.Unknown
xor r9d, r9d
or r8, 0xffffffffffffffff
mov byte [rsp + 0x20], 1
call fcn.1400bcba0
jmp case.0x14006cbd6.4
lea r14, str.Unknown
cmp qword [rbx + 8], r14
jne 0x14006d6a4
mov rsi, qword [rbx + 0x10]
shr rsi, 1
jmp 0x14006d6a9
mov esi, 7
lea rcx, [rsi + 1]
lea r13, [rcx + rcx]
cmp al, 2
je 0x14006dbdd
mov r8, qword [0x1401255a0]
cmp r13, r8
jbe 0x14006d6cf
cmp r13, qword [rbx + 0x18]
ja 0x14006d36c
cmp rcx, 2
jb 0x14006d391
movzx eax, byte [rbx + 0x21]
test al, 2
je 0x14006d6f6
mov rcx, qword [rbx]
and al, 0x3d
mov byte [rbx + 0x21], al
mov rax, qword [rcx]
call qword [rax + reloc.WSOCK32.dll_recv]
mov r8, qword [0x1401255a0]
mov r9, qword [rbx + 0x18]
and byte [rbx + 0x21], 0x82
cmp r13, r9
jbe 0x14006d874
movzx r10d, byte [rbx + 0x20]
movzx eax, r10b
cmp r10b, 1
jbe 0x14006d72d
cmp al, 2
je 0x14006d76d
mov rdi, qword [rbp + 0x107f8]
mov rax, qword [rbp + 0x107f8]
jmp 0x14006d868
cmp r13, 0x80
ja 0x14006d76d
cmp r13, 8
ja 0x14006d743
mov edi, 8
jmp 0x14006d753
mov eax, reloc.WSOCK32.dll_recv
mov edi, 0x80
cmp r13, rax
cmovbe edi, eax
mov rcx, rdi
call fcn.1400b55f0
test rax, rax
je case.0x14006cbd6.4
mov byte [rbx + 0x20], 1
jmp 0x14006d868
cmp r13, 0x20
jae 0x14006d77d
mov edi, SafeArrayAllocDescriptor
jmp 0x14006d827
mov edi, 0x208
cmp r13, rdi
jb 0x14006d827
cmp r13, 0x50000
jae 0x14006d7e3
pxor xmm0, xmm0
cvtsi2sd xmm0, r13
test r13, r13
jns 0x14006d7aa
addsd xmm0, qword [0x140111fc8]
mulsd xmm0, qword [0x140112000]
movsd xmm1, qword [0x140111ff8]
xor ecx, ecx
comisd xmm0, xmm1
jbe 0x14006d7d9
subsd xmm0, xmm1
comisd xmm0, xmm1
jae 0x14006d7d9
movabs rax, 0x8000000000000000
mov rcx, rax
cvttsd2si rdi, xmm0
add rdi, rcx
jmp 0x14006d827
cmp r13, 0x320000
jae 0x14006d7f5
lea rdi, [r13 + 0x8000]
jmp 0x14006d827
cmp r13, 0xc80000
jae 0x14006d820
movabs rax, 0x47ae147ae147ae15
mov rdi, r13
mul r13
sub rdi, rdx
shr rdi, 1
add rdi, rdx
shr rdi, 6
add rdi, r13
jmp 0x14006d827
lea rdi, [r13 + 0x20000]
cmp rdi, r8
cmova rdi, r8
cmp r10b, 2
jne 0x14006d847
test r9, r9
je 0x14006d847
mov rcx, qword [rbx + 8]
mov r13b, 1
call fcn.1400d6528
jmp 0x14006d84a
xor r13b, r13b
test rdi, rdi
js 0x14006dd71
mov rcx, rdi
call fcn.1400d6468
test rax, rax
je 0x14006dd71
mov byte [rbx + 0x20], 2
and byte [rbx + 0x21], 0x7f
mov qword [rbx + 8], rax
mov qword [rbx + 0x18], rdi
mov rcx, qword [rbx + 8]
cmp rcx, r14
je 0x14006d889
lea r8, [rsi + rsi]
mov rdx, r14
call fcn.1400d72b0
lea rcx, [rsi + rsi]
jmp 0x14006d566
movzx eax, byte [rbx + 0x23]
test al, al
jne 0x14006d8bb
mov rcx, qword [rbx + 0x10]
lea rdx, str.Removable
xor r9d, r9d
or r8, 0xffffffffffffffff
mov byte [rsp + 0x20], 1
call fcn.1400bcba0
jmp case.0x14006cbd6.4
lea r13, str.Removable
cmp qword [rbx + 8], r13
jne 0x14006d8d1
mov r14, qword [rbx + 0x10]
shr r14, 1
jmp 0x14006d8d7
mov r14d, 9
lea rcx, [r14 + 1]
lea rsi, [rcx + rcx]
cmp al, 2
jne 0x14006d8f3
mov rdx, r14
mov rcx, r13
call fcn.140006f10
jmp case.0x14006cbd6.4
mov r8, qword [0x1401255a0]
cmp rsi, r8
jbe 0x14006d909
cmp rsi, qword [rbx + 0x18]
ja 0x14006d36c
cmp rcx, 2
jb 0x14006d391
movzx eax, byte [rbx + 0x21]
test al, 2
je 0x14006d930
mov rcx, qword [rbx]
and al, 0x3d
mov byte [rbx + 0x21], al
mov rax, qword [rcx]
call qword [rax + reloc.WSOCK32.dll_recv]
mov r8, qword [0x1401255a0]
mov r9, qword [rbx + 0x18]
and byte [rbx + 0x21], 0x82
cmp rsi, r9
jbe 0x14006daae
movzx r10d, byte [rbx + 0x20]
movzx eax, r10b
cmp r10b, 1
jbe 0x14006d967
cmp al, 2
je 0x14006d9a7
mov rdi, qword [rbp + 0x107f8]
mov rax, qword [rbp + 0x107f8]
jmp 0x14006daa2
cmp rsi, 0x80
ja 0x14006d9a7
cmp rsi, 8
ja 0x14006d97d
mov edi, 8
jmp 0x14006d98d
mov eax, reloc.WSOCK32.dll_recv
mov edi, 0x80
cmp rsi, rax
cmovbe edi, eax
mov rcx, rdi
call fcn.1400b55f0
test rax, rax
je case.0x14006cbd6.4
mov byte [rbx + 0x20], 1
jmp 0x14006daa2
cmp rsi, 0x20
jae 0x14006d9b7
mov edi, SafeArrayAllocDescriptor
jmp 0x14006da61
mov edi, 0x208
cmp rsi, rdi
jb 0x14006da61
cmp rsi, 0x50000
jae 0x14006da1d
pxor xmm0, xmm0
cvtsi2sd xmm0, rsi
test rsi, rsi
jns 0x14006d9e4
addsd xmm0, qword [0x140111fc8]
mulsd xmm0, qword [0x140112000]
movsd xmm1, qword [0x140111ff8]
xor ecx, ecx
comisd xmm0, xmm1
jbe 0x14006da13
subsd xmm0, xmm1
comisd xmm0, xmm1
jae 0x14006da13
movabs rax, 0x8000000000000000
mov rcx, rax
cvttsd2si rdi, xmm0
add rdi, rcx
jmp 0x14006da61
cmp rsi, 0x320000
jae 0x14006da2f
lea rdi, [rsi + 0x8000]
jmp 0x14006da61
cmp rsi, 0xc80000
jae 0x14006da5a
movabs rax, 0x47ae147ae147ae15
mov rdi, rsi
mul rsi
sub rdi, rdx
shr rdi, 1
add rdi, rdx
shr rdi, 6
add rdi, rsi
jmp 0x14006da61
lea rdi, [rsi + 0x20000]
cmp rdi, r8
cmova rdi, r8
cmp r10b, 2
jne 0x14006da81
test r9, r9
je 0x14006da81
mov rcx, qword [rbx + 8]
mov sil, 1
call fcn.1400d6528
jmp 0x14006da84
xor sil, sil
test rdi, rdi
js 0x14006d5b0
mov rcx, rdi
call fcn.1400d6468
test rax, rax
je 0x14006d5b0
mov byte [rbx + 0x20], 2
and byte [rbx + 0x21], 0x7f
mov qword [rbx + 8], rax
mov qword [rbx + 0x18], rdi
mov rcx, qword [rbx + 8]
cmp rcx, r13
je 0x14006dac3
lea r8, [r14 + r14]
mov rdx, r13
call fcn.1400d72b0
lea rcx, [r14 + r14]
jmp 0x14006d566
movzx eax, byte [rbx + 0x23]
test al, al
jne 0x14006daf5
mov rcx, qword [rbx + 0x10]
lea rdx, str.Fixed
xor r9d, r9d
or r8, 0xffffffffffffffff
mov byte [rsp + 0x20], 1
call fcn.1400bcba0
jmp case.0x14006cbd6.4
lea r14, str.Fixed
cmp qword [rbx + 8], r14
jne 0x14006e14c
mov rsi, qword [rbx + 0x10]
shr rsi, 1
jmp 0x14006de45
movzx eax, byte [rbx + 0x23]
test al, al
jne 0x14006db3b
mov rcx, qword [rbx + 0x10]
lea rdx, str.Network
xor r9d, r9d
or r8, 0xffffffffffffffff
mov byte [rsp + 0x20], 1
call fcn.1400bcba0
jmp case.0x14006cbd6.4
lea r14, str.Network
jmp 0x14006de31
movzx eax, byte [rbx + 0x23]
test al, al
jne 0x14006db70
mov rcx, qword [rbx + 0x10]
lea rdx, str.CDROM
xor r9d, r9d
or r8, 0xffffffffffffffff
mov byte [rsp + 0x20], 1
call fcn.1400bcba0
jmp case.0x14006cbd6.4
lea r14, str.CDROM
cmp qword [rbx + 8], r14
jne 0x14006e14c
mov rsi, qword [rbx + 0x10]
shr rsi, 1
jmp 0x14006de45
movzx eax, byte [rbx + 0x23]
test al, al
jne 0x14006dbb6
mov rcx, qword [rbx + 0x10]
lea rdx, str.RAMDisk
xor r9d, r9d
or r8, 0xffffffffffffffff
mov byte [rsp + 0x20], 1
call fcn.1400bcba0
jmp case.0x14006cbd6.4
lea r14, str.RAMDisk
cmp qword [rbx + 8], r14
jne 0x14006dbcc
mov rsi, qword [rbx + 0x10]
shr rsi, 1
jmp 0x14006dbd1
mov esi, 7
lea rcx, [rsi + 1]
lea r13, [rcx + rcx]
cmp al, 2
jne 0x14006dbed
mov rdx, rsi
mov rcx, r14
call fcn.140006f10
jmp case.0x14006cbd6.4
mov r8, qword [0x1401255a0]
cmp r13, r8
jbe 0x14006dc03
cmp r13, qword [rbx + 0x18]
ja 0x14006d36c
cmp rcx, 2
jb 0x14006d391
movzx eax, byte [rbx + 0x21]
test al, 2
je 0x14006dc2a
mov rcx, qword [rbx]
and al, 0x3d
mov byte [rbx + 0x21], al
mov rax, qword [rcx]
call qword [rax + reloc.WSOCK32.dll_recv]
mov r8, qword [0x1401255a0]
mov r9, qword [rbx + 0x18]
and byte [rbx + 0x21], 0x82
cmp r13, r9
jbe 0x14006d874
movzx r10d, byte [rbx + 0x20]
movzx eax, r10b
cmp r10b, 1
jbe 0x14006dc61
cmp al, 2
je 0x14006dc7e
mov rdi, qword [rbp + 0x107f8]
mov rax, qword [rbp + 0x107f8]
jmp 0x14006d868
cmp r13, 0x80
ja 0x14006dc7e
cmp r13, 8
ja 0x14006d743
mov edi, 8
jmp 0x14006d753
cmp r13, 0x20
jae 0x14006dc8e
mov edi, SafeArrayAllocDescriptor
jmp 0x14006dd38
mov edi, 0x208
cmp r13, rdi
jb 0x14006dd38
cmp r13, 0x50000
jae 0x14006dcf4
pxor xmm0, xmm0
cvtsi2sd xmm0, r13
test r13, r13
jns 0x14006dcbb
addsd xmm0, qword [0x140111fc8]
mulsd xmm0, qword [0x140112000]
movsd xmm1, qword [0x140111ff8]
xor ecx, ecx
comisd xmm0, xmm1
jbe 0x14006dcea
subsd xmm0, xmm1
comisd xmm0, xmm1
jae 0x14006dcea
movabs rax, 0x8000000000000000
mov rcx, rax
cvttsd2si rdi, xmm0
add rdi, rcx
jmp 0x14006dd38
cmp r13, 0x320000
jae 0x14006dd06
lea rdi, [r13 + 0x8000]
jmp 0x14006dd38
cmp r13, 0xc80000
jae 0x14006dd31
movabs rax, 0x47ae147ae147ae15
mov rdi, r13
mul r13
sub rdi, rdx
shr rdi, 1
add rdi, rdx
shr rdi, 6
add rdi, r13
jmp 0x14006dd38
lea rdi, [r13 + 0x20000]
cmp rdi, r8
cmova rdi, r8
cmp r10b, 2
jne 0x14006dd58
test r9, r9
je 0x14006dd58
mov rcx, qword [rbx + 8]
mov r13b, 1
call fcn.1400d6528
jmp 0x14006dd5b
xor r13b, r13b
test rdi, rdi
js 0x14006dd71
mov rcx, rdi
call fcn.1400d6468
test rax, rax
jne 0x14006d864
test r13b, r13b
jmp 0x14006d5b3
lea rcx, [rbp + 0x7a0]
mov r8d, 0x7ffe
mov rdx, rdi
call fcn.1400d9e34
or rcx, 0xffffffffffffffff
xor r12d, r12d
xor eax, eax
lea rdi, [rbp + 0x7a0]
mov word [rbp + 0x1079c], r12w
repne scasw ax, word [rdi]
not rcx
dec rcx
je 0x14006ddcb
cmp word [rbp + rcx*2 + 0x79e], 0x5c
je 0x14006ddcb
mov r13d, 0x5c
mov word [rbp + rcx*2 + 0x7a0], r13w
lea rax, [rsp + 0x40]
lea r9, [rsp + 0x44]
lea r8, [rsp + 0x4c]
lea rdx, [rsp + 0x54]
lea rcx, [rbp + 0x7a0]
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.dll_GetDiskFreeSpaceW]
test eax, eax
jne 0x14006e112
call qword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
je 0x14006e112
cmp eax, 3
je 0x14006e0dd
cmp eax, 0x13
je 0x14006e081
cmp eax, 0x15
movzx eax, byte [rbx + 0x23]
je 0x14006de5a
test al, al
je 0x14006d66d
lea r14, str.Unknown
cmp qword [rbx + 8], r14
jne 0x14006de40
mov rsi, qword [rbx + 0x10]
shr rsi, 1
jmp 0x14006de45
mov esi, 7
lea rcx, [rsi + 1]
lea r13, [rcx + rcx]
cmp al, 2
je 0x14006dbdd
jmp 0x14006dbed
test al, al
jne 0x14006de7f
mov rcx, qword [rbx + 0x10]
lea rdx, str.NotReady
xor r9d, r9d
or r8, 0xffffffffffffffff
mov byte [rsp + 0x20], 1
call fcn.1400bcba0
jmp case.0x14006cbd6.4
lea r14, str.NotReady
mov edi, 8
cmp qword [rbx + 8], r14
jne 0x14006de9a
mov r13, qword [rbx + 0x10]
shr r13, 1
jmp 0x14006de9d
mov r13, rdi
lea rcx, [r13 + 1]
lea rsi, [rcx + rcx]
cmp al, 2
jne 0x14006deb9
mov rdx, r13
mov rcx, r14
call fcn.140006f10
jmp case.0x14006cbd6.4
mov r8, qword [0x1401255a0]
cmp rsi, r8
jbe 0x14006decf
cmp rsi, qword [rbx + 0x18]
ja 0x14006d36c
cmp rcx, 2
jb 0x14006d391
movzx eax, byte [rbx + 0x21]
test al, 2
je 0x14006def6
mov rcx, qword [rbx]
and al, 0x3d
mov byte [rbx + 0x21], al
mov rax, qword [rcx]
call qword [rax + reloc.WSOCK32.dll_recv]
mov r8, qword [0x1401255a0]
mov r9, qword [rbx + 0x18]
and byte [rbx + 0x21], 0x82
cmp rsi, r9
jbe 0x14006e06c
movzx r10d, byte [rbx + 0x20]
movzx eax, r10b
cmp r10b, 1
jbe 0x14006df2d
cmp al, 2
je 0x14006df65
mov rax, qword [rbp + 0x107f8]
mov rdi, qword [rbp + 0x107f8]
jmp 0x14006e060
cmp rsi, 0x80
ja 0x14006df65
cmp rsi, rdi
jbe 0x14006df4b
mov eax, reloc.WSOCK32.dll_recv
mov edi, 0x80
cmp rsi, rax
cmovbe edi, eax
mov rcx, rdi
call fcn.1400b55f0
test rax, rax
je case.0x14006cbd6.4
mov byte [rbx + 0x20], 1
jmp 0x14006e060
cmp rsi, 0x20
jae 0x14006df75
mov edi, SafeArrayAllocDescriptor
jmp 0x14006e01f
mov edi, 0x208
cmp rsi, rdi
jb 0x14006e01f
cmp rsi, 0x50000
jae 0x14006dfdb
pxor xmm0, xmm0
cvtsi2sd xmm0, rsi
test rsi, rsi
jns 0x14006dfa2
addsd xmm0, qword [0x140111fc8]
mulsd xmm0, qword [0x140112000]
movsd xmm1, qword [0x140111ff8]
xor ecx, ecx
comisd xmm0, xmm1
jbe 0x14006dfd1
subsd xmm0, xmm1
comisd xmm0, xmm1
jae 0x14006dfd1
movabs rax, 0x8000000000000000
mov rcx, rax
cvttsd2si rdi, xmm0
add rdi, rcx
jmp 0x14006e01f
cmp rsi, 0x320000
jae 0x14006dfed
lea rdi, [rsi + 0x8000]
jmp 0x14006e01f
cmp rsi, 0xc80000
jae 0x14006e018
movabs rax, 0x47ae147ae147ae15
mov rdi, rsi
mul rsi
sub rdi, rdx
shr rdi, 1
add rdi, rdx
shr rdi, 6
add rdi, rsi
jmp 0x14006e01f
lea rdi, [rsi + 0x20000]
cmp rdi, r8
cmova rdi, r8
cmp r10b, 2
jne 0x14006e03f
test r9, r9
je 0x14006e03f
mov rcx, qword [rbx + 8]
mov sil, 1
call fcn.1400d6528
jmp 0x14006e042
xor sil, sil
test rdi, rdi
js 0x14006d5b0
mov rcx, rdi
call fcn.1400d6468
test rax, rax
je 0x14006d5b0
mov byte [rbx + 0x20], 2
and byte [rbx + 0x21], 0x7f
mov qword [rbx + 0x18], rdi
mov qword [rbx + 8], rax
mov rcx, qword [rbx + 8]
cmp rcx, r14
je 0x14006d561
mov rdx, r14
jmp 0x14006d557
movzx eax, byte [rbx + 0x23]
test al, al
jne 0x14006e0aa
mov rcx, qword [rbx + 0x10]
lea rdx, str.ReadOnly
xor r9d, r9d
or r8, 0xffffffffffffffff
mov byte [rsp + 0x20], 1
call fcn.1400bcba0
jmp case.0x14006cbd6.4
lea r14, str.ReadOnly
mov edi, 8
cmp qword [rbx + 8], r14
jne 0x14006e0c5
mov r13, qword [rbx + 0x10]
shr r13, 1
jmp 0x14006e0c8
mov r13, rdi
lea rcx, [r13 + 1]
lea rsi, [rcx + rcx]
cmp al, 2
je 0x14006dea9
jmp 0x14006deb9
movzx eax, byte [rbx + 0x23]
test al, al
jne 0x14006e106
mov rcx, qword [rbx + 0x10]
lea rdx, str.Invalid
xor r9d, r9d
or r8, 0xffffffffffffffff
mov byte [rsp + 0x20], 1
call fcn.1400bcba0
jmp case.0x14006cbd6.4
lea r14, str.Invalid
jmp 0x14006de31
movzx eax, byte [rbx + 0x23]
test al, al
jne 0x14006e13b
mov rcx, qword [rbx + 0x10]
lea rdx, str.Ready
xor r9d, r9d
or r8, 0xffffffffffffffff
mov byte [rsp + 0x20], 1
call fcn.1400bcba0
jmp case.0x14006cbd6.4
lea r14, str.Ready
cmp qword [rbx + 8], r14
je 0x14006de37
mov esi, 5
jmp 0x14006de45
cmp word [rdi], 0
jne 0x14006e17d
lea rdx, [rbp + 0x4a0]
lea rcx, str.status_cdaudio_mode
xor r9d, r9d
mov r8d, 0x80
call qword [sym.imp.WINMM.dll_mciSendStringW]
test eax, eax
jmp 0x14006e1eb
lea r8, str.open__s_type_cdaudio_alias_cd_wait_shareable
lea rcx, [rbp + 0x5a0]
mov r9, rdi
mov edx, 0x100
call fcn.1400b8860
lea rcx, [rbp + 0x5a0]
xor r9d, r9d
xor r8d, r8d
xor edx, edx
call qword [sym.imp.WINMM.dll_mciSendStringW]
test eax, eax
jne case.0x14006cbd6.0
lea rdx, [rbp + 0x4a0]
lea rcx, str.status_cd_mode
xor r9d, r9d
mov r8d, 0x80
call qword [sym.imp.WINMM.dll_mciSendStringW]
lea rcx, str.close_cd_wait
xor r9d, r9d
xor r8d, r8d
xor edx, edx
mov edi, eax
call qword [sym.imp.WINMM.dll_mciSendStringW]
test edi, edi
jne case.0x14006cbd6.0
lea rdx, [rbp + 0x4a0]
xor r9d, r9d
or r8, 0xffffffffffffffff
mov rcx, rbx
mov byte [rsp + 0x20], 1
call fcn.1400bcba0
jmp case.0x14006cbd6.4