Function at 0x14005ee40
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.1400d10e0
sub rsp, rax
mov r13, rcx
mov rcx, rdx
mov rdi, r8
mov rbx, rdx
call fcn.140042af0
movsxd rsi, eax
cmp esi, 9
jne 0x14005ee95
xor r8d, r8d
mov rdx, rdi
mov rcx, r13
call fcn.14005e780
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 0x14005f22c
lea rcx, [rbp + 0x7a0]
mov r8d, 0x7ffe
mov rdx, rdi
call fcn.1400cbfa4
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 0x14005ef00
cmp word [rbp + rcx*2 + 0x79e], 0x5c
je 0x14005ef00
mov r13d, 0x5c
mov word [rbp + rcx*2 + 0x7a0], r13w
lea rdx, [rbx + 0x12]
movzx eax, word [rdx]
cmp ax, 0x20
je 0x14005ef13
cmp ax, 9
jne 0x14005ef19
add rdx, 2
jmp 0x14005ef04
lea rcx, [rbp + 0x7a0]
call qword [sym.imp.KERNEL32.dll_SetVolumeLabelW]
mov rbx, qword [0x140117318]
lea rdx, [0x1400e150c]
movzx r9d, byte [rbx + 0x23]
test eax, eax
lea r13, [0x1400e41bc]
cmovne r13, rdx
test r9b, r9b
jne 0x14005ef6b
mov rcx, qword [rbx + 0x10]
xor r9d, r9d
or r8, 0xffffffffffffffff
mov rdx, r13
mov byte [rsp + 0x20], 1
call fcn.1400afa10
mov r12d, eax
jmp 0x14005fc12
mov dl, 1
test r13, r13
jne 0x14005ef80
xor dl, dl
mov r14, r12
lea r13, [0x1400e146c]
jmp 0x14005efa2
cmp qword [rbx + 8], r13
jne 0x14005ef8f
mov r14, qword [rbx + 0x10]
shr r14, 1
jmp 0x14005efa2
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 0x14005efc3
mov rdx, r14
mov rcx, r13
call fcn.140006020
mov r12d, eax
jmp 0x14005fc12
mov r8, qword [0x140111460]
cmp rsi, r8
jbe 0x14005eff7
cmp rsi, qword [rbx + 0x18]
jbe 0x14005eff7
lea r8, [0x1400e146c]
lea rdx, str.Memory_limit_reached__see_MaxMem_in_the_help_file_.
lea rcx, [0x1401181e0]
call fcn.14003ffa0
mov r12d, eax
jmp 0x14005fc12
cmp rax, 2
jae 0x14005f021
test dl, dl
mov rcx, rbx
setne r12b
xor r8d, r8d
lea edx, [r12 + 3]
call fcn.1400b00c0
mov r12d, 1
mov eax, r12d
jmp 0x14005fc12
movzx eax, byte [rbx + 0x21]
test al, 2
je 0x14005f03e
mov rcx, qword [rbx]
and al, 0x3d
mov byte [rbx + 0x21], al
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetDim]
mov r8, qword [0x140111460]
mov r9, qword [rbx + 0x18]
and byte [rbx + 0x21], 0x82
cmp rsi, r9
jbe 0x14005f1b4
movzx r10d, byte [rbx + 0x20]
movzx eax, r10b
cmp r10b, 1
jbe 0x14005f075
cmp al, 2
je 0x14005f0b5
mov rdi, qword [rbp + 0x107f8]
mov rax, qword [rbp + 0x107f8]
jmp 0x14005f1a8
cmp rsi, 0x80
ja 0x14005f0b5
cmp rsi, 8
ja 0x14005f08b
mov edi, 8
jmp 0x14005f09b
mov eax, reloc.OLEAUT32.dll_SafeArrayGetDim
mov edi, 0x80
cmp rsi, rax
cmovbe edi, eax
mov rcx, rdi
call fcn.1400a8cb0
test rax, rax
je 0x14005f1e0
mov byte [rbx + 0x20], 1
jmp 0x14005f1a8
cmp rsi, 0x20
jae 0x14005f0c5
mov edi, SafeArrayAllocDescriptor
jmp 0x14005f16f
mov edi, 0x208
cmp rsi, rdi
jb 0x14005f16f
cmp rsi, 0x50000
jae 0x14005f12b
pxor xmm0, xmm0
cvtsi2sd xmm0, rsi
test rsi, rsi
jns 0x14005f0f2
addsd xmm0, qword [0x1400ffd58]
mulsd xmm0, qword [0x1400ffd90]
movsd xmm1, qword [0x1400ffd88]
xor ecx, ecx
comisd xmm0, xmm1
jbe 0x14005f121
subsd xmm0, xmm1
comisd xmm0, xmm1
jae 0x14005f121
movabs rax, 0x8000000000000000
mov rcx, rax
cvttsd2si rdi, xmm0
add rdi, rcx
jmp 0x14005f16f
cmp rsi, 0x320000
jae 0x14005f13d
lea rdi, [rsi + 0x8000]
jmp 0x14005f16f
cmp rsi, 0xc80000
jae 0x14005f168
movabs rax, 0x47ae147ae147ae15
mov rdi, rsi
mul rsi
sub rdi, rdx
shr rdi, 1
add rdi, rdx
shr rdi, 6
add rdi, rsi
jmp 0x14005f16f
lea rdi, [rsi + 0x20000]
cmp rdi, r8
cmova rdi, r8
cmp r10b, 2
jne 0x14005f18f
test r9, r9
je 0x14005f18f
mov rcx, qword [rbx + 8]
mov sil, 1
call fcn.1400c98d0
jmp 0x14005f192
xor sil, sil
test rdi, rdi
js 0x14005f1e8
mov rcx, rdi
call fcn.1400c8e34
test rax, rax
je 0x14005f1e8
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 0x14005f1c9
lea r8, [r14 + r14]
mov rdx, r13
call fcn.1400c9a90
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 0x14005fc12
test sil, sil
je 0x14005f1fe
lea rax, [0x140118198]
mov qword [rbx + 0x18], r12
mov qword [rbx + 8], rax
jmp 0x14005f206
mov rax, qword [rbx + 8]
mov word [rax], r12w
lea r8, [0x1400e146c]
lea rdx, str.Out_of_memory.
lea rcx, [0x1401181e0]
mov qword [rbx + 0x10], r12
call fcn.14003ffa0
mov r12d, eax
jmp 0x14005fc12
mov rbx, qword [0x140116640]
mov rcx, rbx
call fcn.14001b960
cmp esi, 8
ja case.0x14005f256.4
lea r14, [0x140000000]
mov eax, dword [r14 + rsi*4 + 0x60894]
add rax, r14
jmp rax
xor r12d, r12d
cmp word [rdi], r12w
jne 0x14005f26b
mov esi, 0x100
jmp 0x14005f2fd
lea rdx, str.CDRom
mov rcx, rdi
call fcn.1400c8dac
test eax, eax
jne 0x14005f283
lea esi, [rax + 5]
jmp 0x14005f2fd
lea rdx, str.Removable
mov rcx, rdi
call fcn.1400c8dac
test eax, eax
jne 0x14005f29b
lea esi, [rax + 2]
jmp 0x14005f2fd
lea rdx, str.Fixed
mov rcx, rdi
call fcn.1400c8dac
test eax, eax
jne 0x14005f2b3
lea esi, [rax + 3]
jmp 0x14005f2fd
lea rdx, str.Network
mov rcx, rdi
call fcn.1400c8dac
test eax, eax
jne 0x14005f2cb
lea esi, [rax + 4]
jmp 0x14005f2fd
lea rdx, str.Ramdisk
mov rcx, rdi
call fcn.1400c8dac
test eax, eax
jne 0x14005f2e3
lea esi, [rax + 6]
jmp 0x14005f2fd
lea rdx, str.Unknown
mov rcx, rdi
call fcn.1400c8dac
test eax, eax
jne case.0x14005f256.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 0x14005f33f
cmp esi, 0x100
jne 0x14005f34f
cmp eax, 1
je 0x14005f34f
movzx eax, dil
inc r15d
add r14, 2
mov word [r14 - 2], ax
inc dil
cmp dil, 0x5a
jbe 0x14005f310
movsxd rax, r15d
mov r15, qword [rsp + 0x108a0]
movzx edx, byte [rbx + 0x23]
mov word [rsp + rax*2 + 0x60], r12w
test dl, dl
jne 0x14005f390
mov rcx, qword [rbx + 0x10]
lea rdx, [rsp + 0x60]
xor r9d, r9d
or r8, 0xffffffffffffffff
mov byte [rsp + 0x20], 1
call fcn.1400afa10
jmp 0x14005f5e5
lea rax, [rsp + 0x60]
cmp qword [rbx + 8], rax
jne 0x14005f3a4
mov r13, qword [rbx + 0x10]
shr r13, 1
jmp 0x14005f3b9
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 0x14005f3d8
lea rcx, [rsp + 0x60]
mov rdx, r13
call fcn.140006020
jmp 0x14005f5e5
mov r8, qword [0x140111460]
cmp rsi, r8
jbe 0x14005f409
cmp rsi, qword [rbx + 0x18]
jbe 0x14005f409
lea r8, [0x1400e146c]
lea rdx, str.Memory_limit_reached__see_MaxMem_in_the_help_file_.
lea rcx, [0x1401181e0]
call fcn.14003ffa0
jmp 0x14005f5e5
cmp rax, 2
jae 0x14005f423
xor r8d, r8d
mov rcx, rbx
lea edx, [r8 + 4]
call fcn.1400b00c0
jmp 0x14005f5e5
movzx eax, byte [rbx + 0x21]
test al, 2
je 0x14005f440
mov rcx, qword [rbx]
and al, 0x3d
mov byte [rbx + 0x21], al
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetDim]
mov r8, qword [0x140111460]
mov r9, qword [rbx + 0x18]
and byte [rbx + 0x21], 0x82
cmp rsi, r9
jbe 0x14005f5b6
movzx r10d, byte [rbx + 0x20]
movzx eax, r10b
cmp r10b, 1
jbe 0x14005f477
cmp al, 2
je 0x14005f4b7
mov rdi, qword [rbp + 0x107f8]
mov rax, qword [rbp + 0x107f8]
jmp 0x14005f5aa
cmp rsi, 0x80
ja 0x14005f4b7
cmp rsi, 8
ja 0x14005f48d
mov edi, 8
jmp 0x14005f49d
mov eax, reloc.OLEAUT32.dll_SafeArrayGetDim
mov edi, 0x80
cmp rsi, rax
cmovbe edi, eax
mov rcx, rdi
call fcn.1400a8cb0
test rax, rax
je 0x14005f5e5
mov byte [rbx + 0x20], 1
jmp 0x14005f5aa
cmp rsi, 0x20
jae 0x14005f4c7
mov edi, SafeArrayAllocDescriptor
jmp 0x14005f571
mov edi, 0x208
cmp rsi, rdi
jb 0x14005f571
cmp rsi, 0x50000
jae 0x14005f52d
pxor xmm0, xmm0
cvtsi2sd xmm0, rsi
test rsi, rsi
jns 0x14005f4f4
addsd xmm0, qword [0x1400ffd58]
mulsd xmm0, qword [0x1400ffd90]
movsd xmm1, qword [0x1400ffd88]
xor ecx, ecx
comisd xmm0, xmm1
jbe 0x14005f523
subsd xmm0, xmm1
comisd xmm0, xmm1
jae 0x14005f523
movabs rax, 0x8000000000000000
mov rcx, rax
cvttsd2si rdi, xmm0
add rdi, rcx
jmp 0x14005f571
cmp rsi, 0x320000
jae 0x14005f53f
lea rdi, [rsi + 0x8000]
jmp 0x14005f571
cmp rsi, 0xc80000
jae 0x14005f56a
movabs rax, 0x47ae147ae147ae15
mov rdi, rsi
mul rsi
sub rdi, rdx
shr rdi, 1
add rdi, rdx
shr rdi, 6
add rdi, rsi
jmp 0x14005f571
lea rdi, [rsi + 0x20000]
cmp rdi, r8
cmova rdi, r8
cmp r10b, 2
jne 0x14005f591
test r9, r9
je 0x14005f591
mov rcx, qword [rbx + 8]
mov sil, 1
call fcn.1400c98d0
jmp 0x14005f594
xor sil, sil
test rdi, rdi
js 0x14005f604
mov rcx, rdi
call fcn.1400c8e34
test rax, rax
je 0x14005f604
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 0x14005f5d3
lea r8, [r13 + r13]
lea rdx, [rsp + 0x60]
call fcn.1400c9a90
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.0x14005f256.4
mov rcx, qword [rbp + 0x107e0]
mov dl, 1
call fcn.14003ea00
jmp 0x14005fc12
test sil, sil
je 0x14005f61a
lea rax, [0x140118198]
mov qword [rbx + 0x18], r12
mov qword [rbx + 8], rax
jmp 0x14005f622
mov rax, qword [rbx + 8]
mov word [rax], r12w
lea r8, [0x1400e146c]
lea rdx, str.Out_of_memory.
lea rcx, [0x1401181e0]
mov qword [rbx + 0x10], r12
call fcn.14003ffa0
jmp 0x14005f5e5
lea rcx, [rbp + 0x7a0]
mov r8d, 0x7ffe
mov rdx, rdi
call fcn.1400cbfa4
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 0x14005f694
cmp word [rbp + rcx*2 + 0x79e], 0x5c
je 0x14005f694
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.0x14005f256.0
sub esi, 2
je 0x14005f963
dec esi
je 0x14005f711
cmp esi, 2
jne case.0x14005f256.4
mov edx, dword [rbp + 0x107f8]
mov r8b, reloc.OLEAUT32.dll_SafeArrayGetElement
mov rcx, rbx
call fcn.140001090
jmp case.0x14005f256.4
movzx edx, byte [rbx + 0x23]
test dl, dl
jne 0x14005f73a
mov rcx, qword [rbx + 0x10]
lea rdx, [rbp + 0xa0]
xor r9d, r9d
or r8, 0xffffffffffffffff
mov byte [rsp + 0x20], 1
call fcn.1400afa10
jmp case.0x14005f256.4
lea rax, [rbp + 0xa0]
cmp qword [rbx + 8], rax
jne 0x14005f750
mov r13, qword [rbx + 0x10]
shr r13, 1
jmp 0x14005f767
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 0x14005f788
lea rcx, [rbp + 0xa0]
mov rdx, r13
call fcn.140006020
jmp case.0x14005f256.4
mov r8, qword [0x140111460]
cmp rsi, r8
jbe 0x14005f79e
cmp rsi, qword [rbx + 0x18]
ja 0x14005f9ec
cmp rax, 2
jb 0x14005fa11
movzx eax, byte [rbx + 0x21]
test al, 2
je 0x14005f7c5
mov rcx, qword [rbx]
and al, 0x3d
mov byte [rbx + 0x21], al
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetDim]
mov r8, qword [0x140111460]
mov r9, qword [rbx + 0x18]
and byte [rbx + 0x21], 0x82
cmp rsi, r9
jbe 0x14005f943
movzx r10d, byte [rbx + 0x20]
movzx eax, r10b
cmp r10b, 1
jbe 0x14005f7fc
cmp al, 2
je 0x14005f83c
mov rdi, qword [rbp + 0x107f8]
mov rax, qword [rbp + 0x107f8]
jmp 0x14005f937
cmp rsi, 0x80
ja 0x14005f83c
cmp rsi, 8
ja 0x14005f812
mov edi, 8
jmp 0x14005f822
mov eax, reloc.OLEAUT32.dll_SafeArrayGetDim
mov edi, 0x80
cmp rsi, rax
cmovbe edi, eax
mov rcx, rdi
call fcn.1400a8cb0
test rax, rax
je case.0x14005f256.4
mov byte [rbx + 0x20], 1
jmp 0x14005f937
cmp rsi, 0x20
jae 0x14005f84c
mov edi, SafeArrayAllocDescriptor
jmp 0x14005f8f6
mov edi, 0x208
cmp rsi, rdi
jb 0x14005f8f6
cmp rsi, 0x50000
jae 0x14005f8b2
pxor xmm0, xmm0
cvtsi2sd xmm0, rsi
test rsi, rsi
jns 0x14005f879
addsd xmm0, qword [0x1400ffd58]
mulsd xmm0, qword [0x1400ffd90]
movsd xmm1, qword [0x1400ffd88]
xor ecx, ecx
comisd xmm0, xmm1
jbe 0x14005f8a8
subsd xmm0, xmm1
comisd xmm0, xmm1
jae 0x14005f8a8
movabs rax, 0x8000000000000000
mov rcx, rax
cvttsd2si rdi, xmm0
add rdi, rcx
jmp 0x14005f8f6
cmp rsi, 0x320000
jae 0x14005f8c4
lea rdi, [rsi + 0x8000]
jmp 0x14005f8f6
cmp rsi, 0xc80000
jae 0x14005f8ef
movabs rax, 0x47ae147ae147ae15
mov rdi, rsi
mul rsi
sub rdi, rdx
shr rdi, 1
add rdi, rdx
shr rdi, 6
add rdi, rsi
jmp 0x14005f8f6
lea rdi, [rsi + 0x20000]
cmp rdi, r8
cmova rdi, r8
cmp r10b, 2
jne 0x14005f916
test r9, r9
je 0x14005f916
mov rcx, qword [rbx + 8]
mov sil, 1
call fcn.1400c98d0
jmp 0x14005f919
xor sil, sil
test rdi, rdi
js 0x14005fc30
mov rcx, rdi
call fcn.1400c8e34
test rax, rax
je 0x14005fc30
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 0x14005fbe1
lea rdx, [rbp + 0xa0]
jmp 0x14005fbd7
movzx edx, byte [rbx + 0x23]
test dl, dl
jne 0x14005f98c
mov rcx, qword [rbx + 0x10]
lea rdx, [rbp + 0x2a0]
xor r9d, r9d
or r8, 0xffffffffffffffff
mov byte [rsp + 0x20], 1
call fcn.1400afa10
jmp case.0x14005f256.4
lea rax, [rbp + 0x2a0]
cmp qword [rbx + 8], rax
jne 0x14005f9a2
mov r13, qword [rbx + 0x10]
shr r13, 1
jmp 0x14005f9b9
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 0x14005f9da
lea rcx, [rbp + 0x2a0]
mov rdx, r13
call fcn.140006020
jmp case.0x14005f256.4
mov r8, qword [0x140111460]
cmp rsi, r8
jbe 0x14005fa0b
cmp rsi, qword [rbx + 0x18]
jbe 0x14005fa0b
lea r8, [0x1400e146c]
lea rdx, str.Memory_limit_reached__see_MaxMem_in_the_help_file_.
lea rcx, [0x1401181e0]
call fcn.14003ffa0
jmp case.0x14005f256.4
cmp rax, 2
jae 0x14005fa25
xor r8d, r8d
mov rcx, rbx
lea edx, [r8 + 4]
call fcn.1400b00c0
jmp case.0x14005f256.4
movzx eax, byte [rbx + 0x21]
test al, 2
je 0x14005fa42
mov rcx, qword [rbx]
and al, 0x3d
mov byte [rbx + 0x21], al
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetDim]
mov r8, qword [0x140111460]
mov r9, qword [rbx + 0x18]
and byte [rbx + 0x21], 0x82
cmp rsi, r9
jbe 0x14005fbc0
movzx r10d, byte [rbx + 0x20]
movzx eax, r10b
cmp r10b, 1
jbe 0x14005fa79
cmp al, 2
je 0x14005fab9
mov rdi, qword [rbp + 0x107f8]
mov rax, qword [rbp + 0x107f8]
jmp 0x14005fbb4
cmp rsi, 0x80
ja 0x14005fab9
cmp rsi, 8
ja 0x14005fa8f
mov edi, 8
jmp 0x14005fa9f
mov eax, reloc.OLEAUT32.dll_SafeArrayGetDim
mov edi, 0x80
cmp rsi, rax
cmovbe edi, eax
mov rcx, rdi
call fcn.1400a8cb0
test rax, rax
je case.0x14005f256.4
mov byte [rbx + 0x20], 1
jmp 0x14005fbb4
cmp rsi, 0x20
jae 0x14005fac9
mov edi, SafeArrayAllocDescriptor
jmp 0x14005fb73
mov edi, 0x208
cmp rsi, rdi
jb 0x14005fb73
cmp rsi, 0x50000
jae 0x14005fb2f
pxor xmm0, xmm0
cvtsi2sd xmm0, rsi
test rsi, rsi
jns 0x14005faf6
addsd xmm0, qword [0x1400ffd58]
mulsd xmm0, qword [0x1400ffd90]
movsd xmm1, qword [0x1400ffd88]
xor ecx, ecx
comisd xmm0, xmm1
jbe 0x14005fb25
subsd xmm0, xmm1
comisd xmm0, xmm1
jae 0x14005fb25
movabs rax, 0x8000000000000000
mov rcx, rax
cvttsd2si rdi, xmm0
add rdi, rcx
jmp 0x14005fb73
cmp rsi, 0x320000
jae 0x14005fb41
lea rdi, [rsi + 0x8000]
jmp 0x14005fb73
cmp rsi, 0xc80000
jae 0x14005fb6c
movabs rax, 0x47ae147ae147ae15
mov rdi, rsi
mul rsi
sub rdi, rdx
shr rdi, 1
add rdi, rdx
shr rdi, 6
add rdi, rsi
jmp 0x14005fb73
lea rdi, [rsi + 0x20000]
cmp rdi, r8
cmova rdi, r8
cmp r10b, 2
jne 0x14005fb93
test r9, r9
je 0x14005fb93
mov rcx, qword [rbx + 8]
mov sil, 1
call fcn.1400c98d0
jmp 0x14005fb96
xor sil, sil
test rdi, rdi
js 0x14005fc30
mov rcx, rdi
call fcn.1400c8e34
test rax, rax
je 0x14005fc30
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 0x14005fbe1
lea rdx, [rbp + 0x2a0]
lea r8, [r13 + r13]
call fcn.1400c9a90
lea rcx, [r13 + r13]
mov rax, qword [rbx + 8]
mov word [rcx + rax], r12w
mov qword [rbx + 0x10], rcx
mov rcx, qword [0x140117318]
lea rdx, [0x1400e150c]
xor r9d, r9d
or r8, 0xffffffffffffffff
mov byte [rsp + 0x20], 1
call fcn.1400afa10
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 0x14005fc46
lea rax, [0x140118198]
mov qword [rbx + 0x18], r12
mov qword [rbx + 8], rax
jmp 0x14005fc4e
mov rax, qword [rbx + 8]
mov word [rax], r12w
lea r8, [0x1400e146c]
lea rdx, str.Out_of_memory.
lea rcx, [0x1401181e0]
mov qword [rbx + 0x10], r12
call fcn.14003ffa0
jmp case.0x14005f256.4
lea rcx, [rbp + 0x7a0]
mov r8d, 0x7ffe
mov rdx, rdi
call fcn.1400cbfa4
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 0x14005fcc0
cmp word [rbp + rcx*2 + 0x79e], 0x5c
je 0x14005fcc0
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.0x14005f256.0
mov eax, eax
mov ecx, dword [r14 + rax*4 + 0x608b8]
add rcx, r14
jmp rcx
movzx eax, byte [rbx + 0x23]
test al, al
jne 0x14005fd0e
mov rcx, qword [rbx + 0x10]
lea rdx, str.Unknown
xor r9d, r9d
or r8, 0xffffffffffffffff
mov byte [rsp + 0x20], 1
call fcn.1400afa10
jmp case.0x14005f256.4
lea r14, str.Unknown
cmp qword [rbx + 8], r14
jne 0x14005fd24
mov rsi, qword [rbx + 0x10]
shr rsi, 1
jmp 0x14005fd29
mov esi, 7
lea rcx, [rsi + 1]
lea r13, [rcx + rcx]
cmp al, 2
je 0x14006025d
mov r8, qword [0x140111460]
cmp r13, r8
jbe 0x14005fd4f
cmp r13, qword [rbx + 0x18]
ja 0x14005f9ec
cmp rcx, 2
jb 0x14005fa11
movzx eax, byte [rbx + 0x21]
test al, 2
je 0x14005fd76
mov rcx, qword [rbx]
and al, 0x3d
mov byte [rbx + 0x21], al
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetDim]
mov r8, qword [0x140111460]
mov r9, qword [rbx + 0x18]
and byte [rbx + 0x21], 0x82
cmp r13, r9
jbe 0x14005fef4
movzx r10d, byte [rbx + 0x20]
movzx eax, r10b
cmp r10b, 1
jbe 0x14005fdad
cmp al, 2
je 0x14005fded
mov rdi, qword [rbp + 0x107f8]
mov rax, qword [rbp + 0x107f8]
jmp 0x14005fee8
cmp r13, 0x80
ja 0x14005fded
cmp r13, 8
ja 0x14005fdc3
mov edi, 8
jmp 0x14005fdd3
mov eax, reloc.OLEAUT32.dll_SafeArrayGetDim
mov edi, 0x80
cmp r13, rax
cmovbe edi, eax
mov rcx, rdi
call fcn.1400a8cb0
test rax, rax
je case.0x14005f256.4
mov byte [rbx + 0x20], 1
jmp 0x14005fee8
cmp r13, 0x20
jae 0x14005fdfd
mov edi, SafeArrayAllocDescriptor
jmp 0x14005fea7
mov edi, 0x208
cmp r13, rdi
jb 0x14005fea7
cmp r13, 0x50000
jae 0x14005fe63
pxor xmm0, xmm0
cvtsi2sd xmm0, r13
test r13, r13
jns 0x14005fe2a
addsd xmm0, qword [0x1400ffd58]
mulsd xmm0, qword [0x1400ffd90]
movsd xmm1, qword [0x1400ffd88]
xor ecx, ecx
comisd xmm0, xmm1
jbe 0x14005fe59
subsd xmm0, xmm1
comisd xmm0, xmm1
jae 0x14005fe59
movabs rax, 0x8000000000000000
mov rcx, rax
cvttsd2si rdi, xmm0
add rdi, rcx
jmp 0x14005fea7
cmp r13, 0x320000
jae 0x14005fe75
lea rdi, [r13 + 0x8000]
jmp 0x14005fea7
cmp r13, 0xc80000
jae 0x14005fea0
movabs rax, 0x47ae147ae147ae15
mov rdi, r13
mul r13
sub rdi, rdx
shr rdi, 1
add rdi, rdx
shr rdi, 6
add rdi, r13
jmp 0x14005fea7
lea rdi, [r13 + 0x20000]
cmp rdi, r8
cmova rdi, r8
cmp r10b, 2
jne 0x14005fec7
test r9, r9
je 0x14005fec7
mov rcx, qword [rbx + 8]
mov r13b, 1
call fcn.1400c98d0
jmp 0x14005feca
xor r13b, r13b
test rdi, rdi
js 0x1400603f1
mov rcx, rdi
call fcn.1400c8e34
test rax, rax
je 0x1400603f1
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 0x14005ff09
lea r8, [rsi + rsi]
mov rdx, r14
call fcn.1400c9a90
lea rcx, [rsi + rsi]
jmp 0x14005fbe6
movzx eax, byte [rbx + 0x23]
test al, al
jne 0x14005ff3b
mov rcx, qword [rbx + 0x10]
lea rdx, str.Removable
xor r9d, r9d
or r8, 0xffffffffffffffff
mov byte [rsp + 0x20], 1
call fcn.1400afa10
jmp case.0x14005f256.4
lea r13, str.Removable
cmp qword [rbx + 8], r13
jne 0x14005ff51
mov r14, qword [rbx + 0x10]
shr r14, 1
jmp 0x14005ff57
mov r14d, 9
lea rcx, [r14 + 1]
lea rsi, [rcx + rcx]
cmp al, 2
jne 0x14005ff73
mov rdx, r14
mov rcx, r13
call fcn.140006020
jmp case.0x14005f256.4
mov r8, qword [0x140111460]
cmp rsi, r8
jbe 0x14005ff89
cmp rsi, qword [rbx + 0x18]
ja 0x14005f9ec
cmp rcx, 2
jb 0x14005fa11
movzx eax, byte [rbx + 0x21]
test al, 2
je 0x14005ffb0
mov rcx, qword [rbx]
and al, 0x3d
mov byte [rbx + 0x21], al
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetDim]
mov r8, qword [0x140111460]
mov r9, qword [rbx + 0x18]
and byte [rbx + 0x21], 0x82
cmp rsi, r9
jbe 0x14006012e
movzx r10d, byte [rbx + 0x20]
movzx eax, r10b
cmp r10b, 1
jbe 0x14005ffe7
cmp al, 2
je 0x140060027
mov rdi, qword [rbp + 0x107f8]
mov rax, qword [rbp + 0x107f8]
jmp 0x140060122
cmp rsi, 0x80
ja 0x140060027
cmp rsi, 8
ja 0x14005fffd
mov edi, 8
jmp 0x14006000d
mov eax, reloc.OLEAUT32.dll_SafeArrayGetDim
mov edi, 0x80
cmp rsi, rax
cmovbe edi, eax
mov rcx, rdi
call fcn.1400a8cb0
test rax, rax
je case.0x14005f256.4
mov byte [rbx + 0x20], 1
jmp 0x140060122
cmp rsi, 0x20
jae 0x140060037
mov edi, SafeArrayAllocDescriptor
jmp 0x1400600e1
mov edi, 0x208
cmp rsi, rdi
jb 0x1400600e1
cmp rsi, 0x50000
jae 0x14006009d
pxor xmm0, xmm0
cvtsi2sd xmm0, rsi
test rsi, rsi
jns 0x140060064
addsd xmm0, qword [0x1400ffd58]
mulsd xmm0, qword [0x1400ffd90]
movsd xmm1, qword [0x1400ffd88]
xor ecx, ecx
comisd xmm0, xmm1
jbe 0x140060093
subsd xmm0, xmm1
comisd xmm0, xmm1
jae 0x140060093
movabs rax, 0x8000000000000000
mov rcx, rax
cvttsd2si rdi, xmm0
add rdi, rcx
jmp 0x1400600e1
cmp rsi, 0x320000
jae 0x1400600af
lea rdi, [rsi + 0x8000]
jmp 0x1400600e1
cmp rsi, 0xc80000
jae 0x1400600da
movabs rax, 0x47ae147ae147ae15
mov rdi, rsi
mul rsi
sub rdi, rdx
shr rdi, 1
add rdi, rdx
shr rdi, 6
add rdi, rsi
jmp 0x1400600e1
lea rdi, [rsi + 0x20000]
cmp rdi, r8
cmova rdi, r8
cmp r10b, 2
jne 0x140060101
test r9, r9
je 0x140060101
mov rcx, qword [rbx + 8]
mov sil, 1
call fcn.1400c98d0
jmp 0x140060104
xor sil, sil
test rdi, rdi
js 0x14005fc30
mov rcx, rdi
call fcn.1400c8e34
test rax, rax
je 0x14005fc30
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 0x140060143
lea r8, [r14 + r14]
mov rdx, r13
call fcn.1400c9a90
lea rcx, [r14 + r14]
jmp 0x14005fbe6
movzx eax, byte [rbx + 0x23]
test al, al
jne 0x140060175
mov rcx, qword [rbx + 0x10]
lea rdx, str.Fixed
xor r9d, r9d
or r8, 0xffffffffffffffff
mov byte [rsp + 0x20], 1
call fcn.1400afa10
jmp case.0x14005f256.4
lea r14, str.Fixed
cmp qword [rbx + 8], r14
jne 0x1400607cc
mov rsi, qword [rbx + 0x10]
shr rsi, 1
jmp 0x1400604c5
movzx eax, byte [rbx + 0x23]
test al, al
jne 0x1400601bb
mov rcx, qword [rbx + 0x10]
lea rdx, str.Network
xor r9d, r9d
or r8, 0xffffffffffffffff
mov byte [rsp + 0x20], 1
call fcn.1400afa10
jmp case.0x14005f256.4
lea r14, str.Network
jmp 0x1400604b1
movzx eax, byte [rbx + 0x23]
test al, al
jne 0x1400601f0
mov rcx, qword [rbx + 0x10]
lea rdx, str.CDROM
xor r9d, r9d
or r8, 0xffffffffffffffff
mov byte [rsp + 0x20], 1
call fcn.1400afa10
jmp case.0x14005f256.4
lea r14, str.CDROM
cmp qword [rbx + 8], r14
jne 0x1400607cc
mov rsi, qword [rbx + 0x10]
shr rsi, 1
jmp 0x1400604c5
movzx eax, byte [rbx + 0x23]
test al, al
jne 0x140060236
mov rcx, qword [rbx + 0x10]
lea rdx, str.RAMDisk
xor r9d, r9d
or r8, 0xffffffffffffffff
mov byte [rsp + 0x20], 1
call fcn.1400afa10
jmp case.0x14005f256.4
lea r14, str.RAMDisk
cmp qword [rbx + 8], r14
jne 0x14006024c
mov rsi, qword [rbx + 0x10]
shr rsi, 1
jmp 0x140060251
mov esi, 7
lea rcx, [rsi + 1]
lea r13, [rcx + rcx]
cmp al, 2
jne 0x14006026d
mov rdx, rsi
mov rcx, r14
call fcn.140006020
jmp case.0x14005f256.4
mov r8, qword [0x140111460]
cmp r13, r8
jbe 0x140060283
cmp r13, qword [rbx + 0x18]
ja 0x14005f9ec
cmp rcx, 2
jb 0x14005fa11
movzx eax, byte [rbx + 0x21]
test al, 2
je 0x1400602aa
mov rcx, qword [rbx]
and al, 0x3d
mov byte [rbx + 0x21], al
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetDim]
mov r8, qword [0x140111460]
mov r9, qword [rbx + 0x18]
and byte [rbx + 0x21], 0x82
cmp r13, r9
jbe 0x14005fef4
movzx r10d, byte [rbx + 0x20]
movzx eax, r10b
cmp r10b, 1
jbe 0x1400602e1
cmp al, 2
je 0x1400602fe
mov rdi, qword [rbp + 0x107f8]
mov rax, qword [rbp + 0x107f8]
jmp 0x14005fee8
cmp r13, 0x80
ja 0x1400602fe
cmp r13, 8
ja 0x14005fdc3
mov edi, 8
jmp 0x14005fdd3
cmp r13, 0x20
jae 0x14006030e
mov edi, SafeArrayAllocDescriptor
jmp 0x1400603b8
mov edi, 0x208
cmp r13, rdi
jb 0x1400603b8
cmp r13, 0x50000
jae 0x140060374
pxor xmm0, xmm0
cvtsi2sd xmm0, r13
test r13, r13
jns 0x14006033b
addsd xmm0, qword [0x1400ffd58]
mulsd xmm0, qword [0x1400ffd90]
movsd xmm1, qword [0x1400ffd88]
xor ecx, ecx
comisd xmm0, xmm1
jbe 0x14006036a
subsd xmm0, xmm1
comisd xmm0, xmm1
jae 0x14006036a
movabs rax, 0x8000000000000000
mov rcx, rax
cvttsd2si rdi, xmm0
add rdi, rcx
jmp 0x1400603b8
cmp r13, 0x320000
jae 0x140060386
lea rdi, [r13 + 0x8000]
jmp 0x1400603b8
cmp r13, 0xc80000
jae 0x1400603b1
movabs rax, 0x47ae147ae147ae15
mov rdi, r13
mul r13
sub rdi, rdx
shr rdi, 1
add rdi, rdx
shr rdi, 6
add rdi, r13
jmp 0x1400603b8
lea rdi, [r13 + 0x20000]
cmp rdi, r8
cmova rdi, r8
cmp r10b, 2
jne 0x1400603d8
test r9, r9
je 0x1400603d8
mov rcx, qword [rbx + 8]
mov r13b, 1
call fcn.1400c98d0
jmp 0x1400603db
xor r13b, r13b
test rdi, rdi
js 0x1400603f1
mov rcx, rdi
call fcn.1400c8e34
test rax, rax
jne 0x14005fee4
test r13b, r13b
jmp 0x14005fc33
lea rcx, [rbp + 0x7a0]
mov r8d, 0x7ffe
mov rdx, rdi
call fcn.1400cbfa4
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 0x14006044b
cmp word [rbp + rcx*2 + 0x79e], 0x5c
je 0x14006044b
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 0x140060792
call qword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
je 0x140060792
cmp eax, 3
je 0x14006075d
cmp eax, 0x13
je 0x140060701
cmp eax, 0x15
movzx eax, byte [rbx + 0x23]
je 0x1400604da
test al, al
je 0x14005fced
lea r14, str.Unknown
cmp qword [rbx + 8], r14
jne 0x1400604c0
mov rsi, qword [rbx + 0x10]
shr rsi, 1
jmp 0x1400604c5
mov esi, 7
lea rcx, [rsi + 1]
lea r13, [rcx + rcx]
cmp al, 2
je 0x14006025d
jmp 0x14006026d
test al, al
jne 0x1400604ff
mov rcx, qword [rbx + 0x10]
lea rdx, str.NotReady
xor r9d, r9d
or r8, 0xffffffffffffffff
mov byte [rsp + 0x20], 1
call fcn.1400afa10
jmp case.0x14005f256.4
lea r14, str.NotReady
mov edi, 8
cmp qword [rbx + 8], r14
jne 0x14006051a
mov r13, qword [rbx + 0x10]
shr r13, 1
jmp 0x14006051d
mov r13, rdi
lea rcx, [r13 + 1]
lea rsi, [rcx + rcx]
cmp al, 2
jne 0x140060539
mov rdx, r13
mov rcx, r14
call fcn.140006020
jmp case.0x14005f256.4
mov r8, qword [0x140111460]
cmp rsi, r8
jbe 0x14006054f
cmp rsi, qword [rbx + 0x18]
ja 0x14005f9ec
cmp rcx, 2
jb 0x14005fa11
movzx eax, byte [rbx + 0x21]
test al, 2
je 0x140060576
mov rcx, qword [rbx]
and al, 0x3d
mov byte [rbx + 0x21], al
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetDim]
mov r8, qword [0x140111460]
mov r9, qword [rbx + 0x18]
and byte [rbx + 0x21], 0x82
cmp rsi, r9
jbe 0x1400606ec
movzx r10d, byte [rbx + 0x20]
movzx eax, r10b
cmp r10b, 1
jbe 0x1400605ad
cmp al, 2
je 0x1400605e5
mov rax, qword [rbp + 0x107f8]
mov rdi, qword [rbp + 0x107f8]
jmp 0x1400606e0
cmp rsi, 0x80
ja 0x1400605e5
cmp rsi, rdi
jbe 0x1400605cb
mov eax, reloc.OLEAUT32.dll_SafeArrayGetDim
mov edi, 0x80
cmp rsi, rax
cmovbe edi, eax
mov rcx, rdi
call fcn.1400a8cb0
test rax, rax
je case.0x14005f256.4
mov byte [rbx + 0x20], 1
jmp 0x1400606e0
cmp rsi, 0x20
jae 0x1400605f5
mov edi, SafeArrayAllocDescriptor
jmp 0x14006069f
mov edi, 0x208
cmp rsi, rdi
jb 0x14006069f
cmp rsi, 0x50000
jae 0x14006065b
pxor xmm0, xmm0
cvtsi2sd xmm0, rsi
test rsi, rsi
jns 0x140060622
addsd xmm0, qword [0x1400ffd58]
mulsd xmm0, qword [0x1400ffd90]
movsd xmm1, qword [0x1400ffd88]
xor ecx, ecx
comisd xmm0, xmm1
jbe 0x140060651
subsd xmm0, xmm1
comisd xmm0, xmm1
jae 0x140060651
movabs rax, 0x8000000000000000
mov rcx, rax
cvttsd2si rdi, xmm0
add rdi, rcx
jmp 0x14006069f
cmp rsi, 0x320000
jae 0x14006066d
lea rdi, [rsi + 0x8000]
jmp 0x14006069f
cmp rsi, 0xc80000
jae 0x140060698
movabs rax, 0x47ae147ae147ae15
mov rdi, rsi
mul rsi
sub rdi, rdx
shr rdi, 1
add rdi, rdx
shr rdi, 6
add rdi, rsi
jmp 0x14006069f
lea rdi, [rsi + 0x20000]
cmp rdi, r8
cmova rdi, r8
cmp r10b, 2
jne 0x1400606bf
test r9, r9
je 0x1400606bf
mov rcx, qword [rbx + 8]
mov sil, 1
call fcn.1400c98d0
jmp 0x1400606c2
xor sil, sil
test rdi, rdi
js 0x14005fc30
mov rcx, rdi
call fcn.1400c8e34
test rax, rax
je 0x14005fc30
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 0x14005fbe1
mov rdx, r14
jmp 0x14005fbd7
movzx eax, byte [rbx + 0x23]
test al, al
jne 0x14006072a
mov rcx, qword [rbx + 0x10]
lea rdx, str.ReadOnly
xor r9d, r9d
or r8, 0xffffffffffffffff
mov byte [rsp + 0x20], 1
call fcn.1400afa10
jmp case.0x14005f256.4
lea r14, str.ReadOnly
mov edi, 8
cmp qword [rbx + 8], r14
jne 0x140060745
mov r13, qword [rbx + 0x10]
shr r13, 1
jmp 0x140060748
mov r13, rdi
lea rcx, [r13 + 1]
lea rsi, [rcx + rcx]
cmp al, 2
je 0x140060529
jmp 0x140060539
movzx eax, byte [rbx + 0x23]
test al, al
jne 0x140060786
mov rcx, qword [rbx + 0x10]
lea rdx, str.Invalid
xor r9d, r9d
or r8, 0xffffffffffffffff
mov byte [rsp + 0x20], 1
call fcn.1400afa10
jmp case.0x14005f256.4
lea r14, str.Invalid
jmp 0x1400604b1
movzx eax, byte [rbx + 0x23]
test al, al
jne 0x1400607bb
mov rcx, qword [rbx + 0x10]
lea rdx, str.Ready
xor r9d, r9d
or r8, 0xffffffffffffffff
mov byte [rsp + 0x20], 1
call fcn.1400afa10
jmp case.0x14005f256.4
lea r14, str.Ready
cmp qword [rbx + 8], r14
je 0x1400604b7
mov esi, 5
jmp 0x1400604c5
cmp word [rdi], 0
jne 0x1400607fd
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 0x14006086b
lea r8, str.open__s_type_cdaudio_alias_cd_wait_shareable
lea rcx, [rbp + 0x5a0]
mov r9, rdi
mov edx, 0x100
call fcn.1400abab0
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.0x14005f256.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.0x14005f256.0
lea rdx, [rbp + 0x4a0]
xor r9d, r9d
or r8, 0xffffffffffffffff
mov rcx, rbx
mov byte [rsp + 0x20], 1
call fcn.1400afa10
jmp case.0x14005f256.4