Function at 0x14005f270
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.1400d1910
sub rsp, rax
mov r13, rcx
mov rcx, rdx
mov rdi, r8
mov rbx, rdx
call fcn.140042f90
movsxd rsi, eax
cmp esi, 9
jne 0x14005f2c5
xor r8d, r8d
mov rdx, rdi
mov rcx, r13
call fcn.14005ebb0
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 0x14005f65c
lea rcx, [rbp + 0x7a0]
mov r8d, 0x7ffe
mov rdx, rdi
call fcn.1400cc7d4
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 0x14005f330
cmp word [rbp + rcx*2 + 0x79e], 0x5c
je 0x14005f330
mov r13d, 0x5c
mov word [rbp + rcx*2 + 0x7a0], r13w
lea rdx, [rbx + 0x12]
movzx eax, word [rdx]
cmp ax, 0x20
je 0x14005f343
cmp ax, 9
jne 0x14005f349
add rdx, 2
jmp 0x14005f334
lea rcx, [rbp + 0x7a0]
call qword [sym.imp.KERNEL32.dll_SetVolumeLabelW]
mov rbx, qword [0x140118280]
lea rdx, [0x1400e24fc]
movzx r9d, byte [rbx + 0x23]
test eax, eax
lea r13, [0x1400e51ac]
cmovne r13, rdx
test r9b, r9b
jne 0x14005f39b
mov rcx, qword [rbx + 0x10]
xor r9d, r9d
or r8, 0xffffffffffffffff
mov rdx, r13
mov byte [rsp + 0x20], 1
call fcn.1400b0240
mov r12d, eax
jmp 0x140060042
mov dl, 1
test r13, r13
jne 0x14005f3b0
xor dl, dl
mov r14, r12
lea r13, [0x1400e245c]
jmp 0x14005f3d2
cmp qword [rbx + 8], r13
jne 0x14005f3bf
mov r14, qword [rbx + 0x10]
shr r14, 1
jmp 0x14005f3d2
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 0x14005f3f3
mov rdx, r14
mov rcx, r13
call fcn.140006110
mov r12d, eax
jmp 0x140060042
mov r8, qword [0x140112460]
cmp rsi, r8
jbe 0x14005f427
cmp rsi, qword [rbx + 0x18]
jbe 0x14005f427
lea r8, [0x1400e245c]
lea rdx, str.Memory_limit_reached__see_MaxMem_in_the_help_file_.
lea rcx, [0x140119150]
call fcn.140040420
mov r12d, eax
jmp 0x140060042
cmp rax, 2
jae 0x14005f451
test dl, dl
mov rcx, rbx
setne r12b
xor r8d, r8d
lea edx, [r12 + 3]
call fcn.1400b08f0
mov r12d, 1
mov eax, r12d
jmp 0x140060042
movzx eax, byte [rbx + 0x21]
test al, 2
je 0x14005f46e
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 [0x140112460]
mov r9, qword [rbx + 0x18]
and byte [rbx + 0x21], 0x82
cmp rsi, r9
jbe 0x14005f5e4
movzx r10d, byte [rbx + 0x20]
movzx eax, r10b
cmp r10b, 1
jbe 0x14005f4a5
cmp al, 2
je 0x14005f4e5
mov rdi, qword [rbp + 0x107f8]
mov rax, qword [rbp + 0x107f8]
jmp 0x14005f5d8
cmp rsi, 0x80
ja 0x14005f4e5
cmp rsi, 8
ja 0x14005f4bb
mov edi, 8
jmp 0x14005f4cb
mov eax, reloc.OLEAUT32.dll_SafeArrayGetDim
mov edi, 0x80
cmp rsi, rax
cmovbe edi, eax
mov rcx, rdi
call fcn.1400a93c0
test rax, rax
je 0x14005f610
mov byte [rbx + 0x20], 1
jmp 0x14005f5d8
cmp rsi, 0x20
jae 0x14005f4f5
mov edi, SafeArrayAllocDescriptor
jmp 0x14005f59f
mov edi, 0x208
cmp rsi, rdi
jb 0x14005f59f
cmp rsi, 0x50000
jae 0x14005f55b
pxor xmm0, xmm0
cvtsi2sd xmm0, rsi
test rsi, rsi
jns 0x14005f522
addsd xmm0, qword [0x140100db8]
mulsd xmm0, qword [0x140100df0]
movsd xmm1, qword [0x140100de8]
xor ecx, ecx
comisd xmm0, xmm1
jbe 0x14005f551
subsd xmm0, xmm1
comisd xmm0, xmm1
jae 0x14005f551
movabs rax, 0x8000000000000000
mov rcx, rax
cvttsd2si rdi, xmm0
add rdi, rcx
jmp 0x14005f59f
cmp rsi, 0x320000
jae 0x14005f56d
lea rdi, [rsi + 0x8000]
jmp 0x14005f59f
cmp rsi, 0xc80000
jae 0x14005f598
movabs rax, 0x47ae147ae147ae15
mov rdi, rsi
mul rsi
sub rdi, rdx
shr rdi, 1
add rdi, rdx
shr rdi, 6
add rdi, rsi
jmp 0x14005f59f
lea rdi, [rsi + 0x20000]
cmp rdi, r8
cmova rdi, r8
cmp r10b, 2
jne 0x14005f5bf
test r9, r9
je 0x14005f5bf
mov rcx, qword [rbx + 8]
mov sil, 1
call fcn.1400ca100
jmp 0x14005f5c2
xor sil, sil
test rdi, rdi
js 0x14005f618
mov rcx, rdi
call fcn.1400c9664
test rax, rax
je 0x14005f618
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 0x14005f5f9
lea r8, [r14 + r14]
mov rdx, r13
call fcn.1400ca2c0
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 0x140060042
test sil, sil
je 0x14005f62e
lea rax, [0x140119108]
mov qword [rbx + 0x18], r12
mov qword [rbx + 8], rax
jmp 0x14005f636
mov rax, qword [rbx + 8]
mov word [rax], r12w
lea r8, [0x1400e245c]
lea rdx, str.Out_of_memory.
lea rcx, [0x140119150]
mov qword [rbx + 0x10], r12
call fcn.140040420
mov r12d, eax
jmp 0x140060042
mov rbx, qword [0x1401175a0]
mov rcx, rbx
call fcn.14001bf30
cmp esi, 8
ja case.0x14005f686.4
lea r14, [0x140000000]
mov eax, dword [r14 + rsi*4 + 0x60cc4]
add rax, r14
jmp rax
xor r12d, r12d
cmp word [rdi], r12w
jne 0x14005f69b
mov esi, 0x100
jmp 0x14005f72d
lea rdx, str.CDRom
mov rcx, rdi
call fcn.1400c95dc
test eax, eax
jne 0x14005f6b3
lea esi, [rax + 5]
jmp 0x14005f72d
lea rdx, str.Removable
mov rcx, rdi
call fcn.1400c95dc
test eax, eax
jne 0x14005f6cb
lea esi, [rax + 2]
jmp 0x14005f72d
lea rdx, str.Fixed
mov rcx, rdi
call fcn.1400c95dc
test eax, eax
jne 0x14005f6e3
lea esi, [rax + 3]
jmp 0x14005f72d
lea rdx, str.Network
mov rcx, rdi
call fcn.1400c95dc
test eax, eax
jne 0x14005f6fb
lea esi, [rax + 4]
jmp 0x14005f72d
lea rdx, str.Ramdisk
mov rcx, rdi
call fcn.1400c95dc
test eax, eax
jne 0x14005f713
lea esi, [rax + 6]
jmp 0x14005f72d
lea rdx, str.Unknown
mov rcx, rdi
call fcn.1400c95dc
test eax, eax
jne case.0x14005f686.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 0x14005f76f
cmp esi, 0x100
jne 0x14005f77f
cmp eax, 1
je 0x14005f77f
movzx eax, dil
inc r15d
add r14, 2
mov word [r14 - 2], ax
inc dil
cmp dil, 0x5a
jbe 0x14005f740
movsxd rax, r15d
mov r15, qword [rsp + 0x108a0]
movzx edx, byte [rbx + 0x23]
mov word [rsp + rax*2 + 0x60], r12w
test dl, dl
jne 0x14005f7c0
mov rcx, qword [rbx + 0x10]
lea rdx, [rsp + 0x60]
xor r9d, r9d
or r8, 0xffffffffffffffff
mov byte [rsp + 0x20], 1
call fcn.1400b0240
jmp 0x14005fa15
lea rax, [rsp + 0x60]
cmp qword [rbx + 8], rax
jne 0x14005f7d4
mov r13, qword [rbx + 0x10]
shr r13, 1
jmp 0x14005f7e9
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 0x14005f808
lea rcx, [rsp + 0x60]
mov rdx, r13
call fcn.140006110
jmp 0x14005fa15
mov r8, qword [0x140112460]
cmp rsi, r8
jbe 0x14005f839
cmp rsi, qword [rbx + 0x18]
jbe 0x14005f839
lea r8, [0x1400e245c]
lea rdx, str.Memory_limit_reached__see_MaxMem_in_the_help_file_.
lea rcx, [0x140119150]
call fcn.140040420
jmp 0x14005fa15
cmp rax, 2
jae 0x14005f853
xor r8d, r8d
mov rcx, rbx
lea edx, [r8 + 4]
call fcn.1400b08f0
jmp 0x14005fa15
movzx eax, byte [rbx + 0x21]
test al, 2
je 0x14005f870
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 [0x140112460]
mov r9, qword [rbx + 0x18]
and byte [rbx + 0x21], 0x82
cmp rsi, r9
jbe 0x14005f9e6
movzx r10d, byte [rbx + 0x20]
movzx eax, r10b
cmp r10b, 1
jbe 0x14005f8a7
cmp al, 2
je 0x14005f8e7
mov rdi, qword [rbp + 0x107f8]
mov rax, qword [rbp + 0x107f8]
jmp 0x14005f9da
cmp rsi, 0x80
ja 0x14005f8e7
cmp rsi, 8
ja 0x14005f8bd
mov edi, 8
jmp 0x14005f8cd
mov eax, reloc.OLEAUT32.dll_SafeArrayGetDim
mov edi, 0x80
cmp rsi, rax
cmovbe edi, eax
mov rcx, rdi
call fcn.1400a93c0
test rax, rax
je 0x14005fa15
mov byte [rbx + 0x20], 1
jmp 0x14005f9da
cmp rsi, 0x20
jae 0x14005f8f7
mov edi, SafeArrayAllocDescriptor
jmp 0x14005f9a1
mov edi, 0x208
cmp rsi, rdi
jb 0x14005f9a1
cmp rsi, 0x50000
jae 0x14005f95d
pxor xmm0, xmm0
cvtsi2sd xmm0, rsi
test rsi, rsi
jns 0x14005f924
addsd xmm0, qword [0x140100db8]
mulsd xmm0, qword [0x140100df0]
movsd xmm1, qword [0x140100de8]
xor ecx, ecx
comisd xmm0, xmm1
jbe 0x14005f953
subsd xmm0, xmm1
comisd xmm0, xmm1
jae 0x14005f953
movabs rax, 0x8000000000000000
mov rcx, rax
cvttsd2si rdi, xmm0
add rdi, rcx
jmp 0x14005f9a1
cmp rsi, 0x320000
jae 0x14005f96f
lea rdi, [rsi + 0x8000]
jmp 0x14005f9a1
cmp rsi, 0xc80000
jae 0x14005f99a
movabs rax, 0x47ae147ae147ae15
mov rdi, rsi
mul rsi
sub rdi, rdx
shr rdi, 1
add rdi, rdx
shr rdi, 6
add rdi, rsi
jmp 0x14005f9a1
lea rdi, [rsi + 0x20000]
cmp rdi, r8
cmova rdi, r8
cmp r10b, 2
jne 0x14005f9c1
test r9, r9
je 0x14005f9c1
mov rcx, qword [rbx + 8]
mov sil, 1
call fcn.1400ca100
jmp 0x14005f9c4
xor sil, sil
test rdi, rdi
js 0x14005fa34
mov rcx, rdi
call fcn.1400c9664
test rax, rax
je 0x14005fa34
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 0x14005fa03
lea r8, [r13 + r13]
lea rdx, [rsp + 0x60]
call fcn.1400ca2c0
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.0x14005f686.4
mov rcx, qword [rbp + 0x107e0]
mov dl, 1
call fcn.14003ee80
jmp 0x140060042
test sil, sil
je 0x14005fa4a
lea rax, [0x140119108]
mov qword [rbx + 0x18], r12
mov qword [rbx + 8], rax
jmp 0x14005fa52
mov rax, qword [rbx + 8]
mov word [rax], r12w
lea r8, [0x1400e245c]
lea rdx, str.Out_of_memory.
lea rcx, [0x140119150]
mov qword [rbx + 0x10], r12
call fcn.140040420
jmp 0x14005fa15
lea rcx, [rbp + 0x7a0]
mov r8d, 0x7ffe
mov rdx, rdi
call fcn.1400cc7d4
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 0x14005fac4
cmp word [rbp + rcx*2 + 0x79e], 0x5c
je 0x14005fac4
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.0x14005f686.0
sub esi, 2
je 0x14005fd93
dec esi
je 0x14005fb41
cmp esi, 2
jne case.0x14005f686.4
mov edx, dword [rbp + 0x107f8]
mov r8b, reloc.OLEAUT32.dll_SafeArrayGetElement
mov rcx, rbx
call fcn.140001090
jmp case.0x14005f686.4
movzx edx, byte [rbx + 0x23]
test dl, dl
jne 0x14005fb6a
mov rcx, qword [rbx + 0x10]
lea rdx, [rbp + 0xa0]
xor r9d, r9d
or r8, 0xffffffffffffffff
mov byte [rsp + 0x20], 1
call fcn.1400b0240
jmp case.0x14005f686.4
lea rax, [rbp + 0xa0]
cmp qword [rbx + 8], rax
jne 0x14005fb80
mov r13, qword [rbx + 0x10]
shr r13, 1
jmp 0x14005fb97
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 0x14005fbb8
lea rcx, [rbp + 0xa0]
mov rdx, r13
call fcn.140006110
jmp case.0x14005f686.4
mov r8, qword [0x140112460]
cmp rsi, r8
jbe 0x14005fbce
cmp rsi, qword [rbx + 0x18]
ja 0x14005fe1c
cmp rax, 2
jb 0x14005fe41
movzx eax, byte [rbx + 0x21]
test al, 2
je 0x14005fbf5
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 [0x140112460]
mov r9, qword [rbx + 0x18]
and byte [rbx + 0x21], 0x82
cmp rsi, r9
jbe 0x14005fd73
movzx r10d, byte [rbx + 0x20]
movzx eax, r10b
cmp r10b, 1
jbe 0x14005fc2c
cmp al, 2
je 0x14005fc6c
mov rdi, qword [rbp + 0x107f8]
mov rax, qword [rbp + 0x107f8]
jmp 0x14005fd67
cmp rsi, 0x80
ja 0x14005fc6c
cmp rsi, 8
ja 0x14005fc42
mov edi, 8
jmp 0x14005fc52
mov eax, reloc.OLEAUT32.dll_SafeArrayGetDim
mov edi, 0x80
cmp rsi, rax
cmovbe edi, eax
mov rcx, rdi
call fcn.1400a93c0
test rax, rax
je case.0x14005f686.4
mov byte [rbx + 0x20], 1
jmp 0x14005fd67
cmp rsi, 0x20
jae 0x14005fc7c
mov edi, SafeArrayAllocDescriptor
jmp 0x14005fd26
mov edi, 0x208
cmp rsi, rdi
jb 0x14005fd26
cmp rsi, 0x50000
jae 0x14005fce2
pxor xmm0, xmm0
cvtsi2sd xmm0, rsi
test rsi, rsi
jns 0x14005fca9
addsd xmm0, qword [0x140100db8]
mulsd xmm0, qword [0x140100df0]
movsd xmm1, qword [0x140100de8]
xor ecx, ecx
comisd xmm0, xmm1
jbe 0x14005fcd8
subsd xmm0, xmm1
comisd xmm0, xmm1
jae 0x14005fcd8
movabs rax, 0x8000000000000000
mov rcx, rax
cvttsd2si rdi, xmm0
add rdi, rcx
jmp 0x14005fd26
cmp rsi, 0x320000
jae 0x14005fcf4
lea rdi, [rsi + 0x8000]
jmp 0x14005fd26
cmp rsi, 0xc80000
jae 0x14005fd1f
movabs rax, 0x47ae147ae147ae15
mov rdi, rsi
mul rsi
sub rdi, rdx
shr rdi, 1
add rdi, rdx
shr rdi, 6
add rdi, rsi
jmp 0x14005fd26
lea rdi, [rsi + 0x20000]
cmp rdi, r8
cmova rdi, r8
cmp r10b, 2
jne 0x14005fd46
test r9, r9
je 0x14005fd46
mov rcx, qword [rbx + 8]
mov sil, 1
call fcn.1400ca100
jmp 0x14005fd49
xor sil, sil
test rdi, rdi
js 0x140060060
mov rcx, rdi
call fcn.1400c9664
test rax, rax
je 0x140060060
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 0x140060011
lea rdx, [rbp + 0xa0]
jmp 0x140060007
movzx edx, byte [rbx + 0x23]
test dl, dl
jne 0x14005fdbc
mov rcx, qword [rbx + 0x10]
lea rdx, [rbp + 0x2a0]
xor r9d, r9d
or r8, 0xffffffffffffffff
mov byte [rsp + 0x20], 1
call fcn.1400b0240
jmp case.0x14005f686.4
lea rax, [rbp + 0x2a0]
cmp qword [rbx + 8], rax
jne 0x14005fdd2
mov r13, qword [rbx + 0x10]
shr r13, 1
jmp 0x14005fde9
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 0x14005fe0a
lea rcx, [rbp + 0x2a0]
mov rdx, r13
call fcn.140006110
jmp case.0x14005f686.4
mov r8, qword [0x140112460]
cmp rsi, r8
jbe 0x14005fe3b
cmp rsi, qword [rbx + 0x18]
jbe 0x14005fe3b
lea r8, [0x1400e245c]
lea rdx, str.Memory_limit_reached__see_MaxMem_in_the_help_file_.
lea rcx, [0x140119150]
call fcn.140040420
jmp case.0x14005f686.4
cmp rax, 2
jae 0x14005fe55
xor r8d, r8d
mov rcx, rbx
lea edx, [r8 + 4]
call fcn.1400b08f0
jmp case.0x14005f686.4
movzx eax, byte [rbx + 0x21]
test al, 2
je 0x14005fe72
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 [0x140112460]
mov r9, qword [rbx + 0x18]
and byte [rbx + 0x21], 0x82
cmp rsi, r9
jbe 0x14005fff0
movzx r10d, byte [rbx + 0x20]
movzx eax, r10b
cmp r10b, 1
jbe 0x14005fea9
cmp al, 2
je 0x14005fee9
mov rdi, qword [rbp + 0x107f8]
mov rax, qword [rbp + 0x107f8]
jmp 0x14005ffe4
cmp rsi, 0x80
ja 0x14005fee9
cmp rsi, 8
ja 0x14005febf
mov edi, 8
jmp 0x14005fecf
mov eax, reloc.OLEAUT32.dll_SafeArrayGetDim
mov edi, 0x80
cmp rsi, rax
cmovbe edi, eax
mov rcx, rdi
call fcn.1400a93c0
test rax, rax
je case.0x14005f686.4
mov byte [rbx + 0x20], 1
jmp 0x14005ffe4
cmp rsi, 0x20
jae 0x14005fef9
mov edi, SafeArrayAllocDescriptor
jmp 0x14005ffa3
mov edi, 0x208
cmp rsi, rdi
jb 0x14005ffa3
cmp rsi, 0x50000
jae 0x14005ff5f
pxor xmm0, xmm0
cvtsi2sd xmm0, rsi
test rsi, rsi
jns 0x14005ff26
addsd xmm0, qword [0x140100db8]
mulsd xmm0, qword [0x140100df0]
movsd xmm1, qword [0x140100de8]
xor ecx, ecx
comisd xmm0, xmm1
jbe 0x14005ff55
subsd xmm0, xmm1
comisd xmm0, xmm1
jae 0x14005ff55
movabs rax, 0x8000000000000000
mov rcx, rax
cvttsd2si rdi, xmm0
add rdi, rcx
jmp 0x14005ffa3
cmp rsi, 0x320000
jae 0x14005ff71
lea rdi, [rsi + 0x8000]
jmp 0x14005ffa3
cmp rsi, 0xc80000
jae 0x14005ff9c
movabs rax, 0x47ae147ae147ae15
mov rdi, rsi
mul rsi
sub rdi, rdx
shr rdi, 1
add rdi, rdx
shr rdi, 6
add rdi, rsi
jmp 0x14005ffa3
lea rdi, [rsi + 0x20000]
cmp rdi, r8
cmova rdi, r8
cmp r10b, 2
jne 0x14005ffc3
test r9, r9
je 0x14005ffc3
mov rcx, qword [rbx + 8]
mov sil, 1
call fcn.1400ca100
jmp 0x14005ffc6
xor sil, sil
test rdi, rdi
js 0x140060060
mov rcx, rdi
call fcn.1400c9664
test rax, rax
je 0x140060060
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 0x140060011
lea rdx, [rbp + 0x2a0]
lea r8, [r13 + r13]
call fcn.1400ca2c0
lea rcx, [r13 + r13]
mov rax, qword [rbx + 8]
mov word [rcx + rax], r12w
mov qword [rbx + 0x10], rcx
mov rcx, qword [0x140118280]
lea rdx, [0x1400e24fc]
xor r9d, r9d
or r8, 0xffffffffffffffff
mov byte [rsp + 0x20], 1
call fcn.1400b0240
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 0x140060076
lea rax, [0x140119108]
mov qword [rbx + 0x18], r12
mov qword [rbx + 8], rax
jmp 0x14006007e
mov rax, qword [rbx + 8]
mov word [rax], r12w
lea r8, [0x1400e245c]
lea rdx, str.Out_of_memory.
lea rcx, [0x140119150]
mov qword [rbx + 0x10], r12
call fcn.140040420
jmp case.0x14005f686.4
lea rcx, [rbp + 0x7a0]
mov r8d, 0x7ffe
mov rdx, rdi
call fcn.1400cc7d4
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 0x1400600f0
cmp word [rbp + rcx*2 + 0x79e], 0x5c
je 0x1400600f0
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.0x14005f686.0
mov eax, eax
mov ecx, dword [r14 + rax*4 + 0x60ce8]
add rcx, r14
jmp rcx
movzx eax, byte [rbx + 0x23]
test al, al
jne 0x14006013e
mov rcx, qword [rbx + 0x10]
lea rdx, str.Unknown
xor r9d, r9d
or r8, 0xffffffffffffffff
mov byte [rsp + 0x20], 1
call fcn.1400b0240
jmp case.0x14005f686.4
lea r14, str.Unknown
cmp qword [rbx + 8], r14
jne 0x140060154
mov rsi, qword [rbx + 0x10]
shr rsi, 1
jmp 0x140060159
mov esi, 7
lea rcx, [rsi + 1]
lea r13, [rcx + rcx]
cmp al, 2
je 0x14006068d
mov r8, qword [0x140112460]
cmp r13, r8
jbe 0x14006017f
cmp r13, qword [rbx + 0x18]
ja 0x14005fe1c
cmp rcx, 2
jb 0x14005fe41
movzx eax, byte [rbx + 0x21]
test al, 2
je 0x1400601a6
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 [0x140112460]
mov r9, qword [rbx + 0x18]
and byte [rbx + 0x21], 0x82
cmp r13, r9
jbe 0x140060324
movzx r10d, byte [rbx + 0x20]
movzx eax, r10b
cmp r10b, 1
jbe 0x1400601dd
cmp al, 2
je 0x14006021d
mov rdi, qword [rbp + 0x107f8]
mov rax, qword [rbp + 0x107f8]
jmp 0x140060318
cmp r13, 0x80
ja 0x14006021d
cmp r13, 8
ja 0x1400601f3
mov edi, 8
jmp 0x140060203
mov eax, reloc.OLEAUT32.dll_SafeArrayGetDim
mov edi, 0x80
cmp r13, rax
cmovbe edi, eax
mov rcx, rdi
call fcn.1400a93c0
test rax, rax
je case.0x14005f686.4
mov byte [rbx + 0x20], 1
jmp 0x140060318
cmp r13, 0x20
jae 0x14006022d
mov edi, SafeArrayAllocDescriptor
jmp 0x1400602d7
mov edi, 0x208
cmp r13, rdi
jb 0x1400602d7
cmp r13, 0x50000
jae 0x140060293
pxor xmm0, xmm0
cvtsi2sd xmm0, r13
test r13, r13
jns 0x14006025a
addsd xmm0, qword [0x140100db8]
mulsd xmm0, qword [0x140100df0]
movsd xmm1, qword [0x140100de8]
xor ecx, ecx
comisd xmm0, xmm1
jbe 0x140060289
subsd xmm0, xmm1
comisd xmm0, xmm1
jae 0x140060289
movabs rax, 0x8000000000000000
mov rcx, rax
cvttsd2si rdi, xmm0
add rdi, rcx
jmp 0x1400602d7
cmp r13, 0x320000
jae 0x1400602a5
lea rdi, [r13 + 0x8000]
jmp 0x1400602d7
cmp r13, 0xc80000
jae 0x1400602d0
movabs rax, 0x47ae147ae147ae15
mov rdi, r13
mul r13
sub rdi, rdx
shr rdi, 1
add rdi, rdx
shr rdi, 6
add rdi, r13
jmp 0x1400602d7
lea rdi, [r13 + 0x20000]
cmp rdi, r8
cmova rdi, r8
cmp r10b, 2
jne 0x1400602f7
test r9, r9
je 0x1400602f7
mov rcx, qword [rbx + 8]
mov r13b, 1
call fcn.1400ca100
jmp 0x1400602fa
xor r13b, r13b
test rdi, rdi
js 0x140060821
mov rcx, rdi
call fcn.1400c9664
test rax, rax
je 0x140060821
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 0x140060339
lea r8, [rsi + rsi]
mov rdx, r14
call fcn.1400ca2c0
lea rcx, [rsi + rsi]
jmp 0x140060016
movzx eax, byte [rbx + 0x23]
test al, al
jne 0x14006036b
mov rcx, qword [rbx + 0x10]
lea rdx, str.Removable
xor r9d, r9d
or r8, 0xffffffffffffffff
mov byte [rsp + 0x20], 1
call fcn.1400b0240
jmp case.0x14005f686.4
lea r13, str.Removable
cmp qword [rbx + 8], r13
jne 0x140060381
mov r14, qword [rbx + 0x10]
shr r14, 1
jmp 0x140060387
mov r14d, 9
lea rcx, [r14 + 1]
lea rsi, [rcx + rcx]
cmp al, 2
jne 0x1400603a3
mov rdx, r14
mov rcx, r13
call fcn.140006110
jmp case.0x14005f686.4
mov r8, qword [0x140112460]
cmp rsi, r8
jbe 0x1400603b9
cmp rsi, qword [rbx + 0x18]
ja 0x14005fe1c
cmp rcx, 2
jb 0x14005fe41
movzx eax, byte [rbx + 0x21]
test al, 2
je 0x1400603e0
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 [0x140112460]
mov r9, qword [rbx + 0x18]
and byte [rbx + 0x21], 0x82
cmp rsi, r9
jbe 0x14006055e
movzx r10d, byte [rbx + 0x20]
movzx eax, r10b
cmp r10b, 1
jbe 0x140060417
cmp al, 2
je 0x140060457
mov rdi, qword [rbp + 0x107f8]
mov rax, qword [rbp + 0x107f8]
jmp 0x140060552
cmp rsi, 0x80
ja 0x140060457
cmp rsi, 8
ja 0x14006042d
mov edi, 8
jmp 0x14006043d
mov eax, reloc.OLEAUT32.dll_SafeArrayGetDim
mov edi, 0x80
cmp rsi, rax
cmovbe edi, eax
mov rcx, rdi
call fcn.1400a93c0
test rax, rax
je case.0x14005f686.4
mov byte [rbx + 0x20], 1
jmp 0x140060552
cmp rsi, 0x20
jae 0x140060467
mov edi, SafeArrayAllocDescriptor
jmp 0x140060511
mov edi, 0x208
cmp rsi, rdi
jb 0x140060511
cmp rsi, 0x50000
jae 0x1400604cd
pxor xmm0, xmm0
cvtsi2sd xmm0, rsi
test rsi, rsi
jns 0x140060494
addsd xmm0, qword [0x140100db8]
mulsd xmm0, qword [0x140100df0]
movsd xmm1, qword [0x140100de8]
xor ecx, ecx
comisd xmm0, xmm1
jbe 0x1400604c3
subsd xmm0, xmm1
comisd xmm0, xmm1
jae 0x1400604c3
movabs rax, 0x8000000000000000
mov rcx, rax
cvttsd2si rdi, xmm0
add rdi, rcx
jmp 0x140060511
cmp rsi, 0x320000
jae 0x1400604df
lea rdi, [rsi + 0x8000]
jmp 0x140060511
cmp rsi, 0xc80000
jae 0x14006050a
movabs rax, 0x47ae147ae147ae15
mov rdi, rsi
mul rsi
sub rdi, rdx
shr rdi, 1
add rdi, rdx
shr rdi, 6
add rdi, rsi
jmp 0x140060511
lea rdi, [rsi + 0x20000]
cmp rdi, r8
cmova rdi, r8
cmp r10b, 2
jne 0x140060531
test r9, r9
je 0x140060531
mov rcx, qword [rbx + 8]
mov sil, 1
call fcn.1400ca100
jmp 0x140060534
xor sil, sil
test rdi, rdi
js 0x140060060
mov rcx, rdi
call fcn.1400c9664
test rax, rax
je 0x140060060
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 0x140060573
lea r8, [r14 + r14]
mov rdx, r13
call fcn.1400ca2c0
lea rcx, [r14 + r14]
jmp 0x140060016
movzx eax, byte [rbx + 0x23]
test al, al
jne 0x1400605a5
mov rcx, qword [rbx + 0x10]
lea rdx, str.Fixed
xor r9d, r9d
or r8, 0xffffffffffffffff
mov byte [rsp + 0x20], 1
call fcn.1400b0240
jmp case.0x14005f686.4
lea r14, str.Fixed
cmp qword [rbx + 8], r14
jne 0x140060bfc
mov rsi, qword [rbx + 0x10]
shr rsi, 1
jmp 0x1400608f5
movzx eax, byte [rbx + 0x23]
test al, al
jne 0x1400605eb
mov rcx, qword [rbx + 0x10]
lea rdx, str.Network
xor r9d, r9d
or r8, 0xffffffffffffffff
mov byte [rsp + 0x20], 1
call fcn.1400b0240
jmp case.0x14005f686.4
lea r14, str.Network
jmp 0x1400608e1
movzx eax, byte [rbx + 0x23]
test al, al
jne 0x140060620
mov rcx, qword [rbx + 0x10]
lea rdx, str.CDROM
xor r9d, r9d
or r8, 0xffffffffffffffff
mov byte [rsp + 0x20], 1
call fcn.1400b0240
jmp case.0x14005f686.4
lea r14, str.CDROM
cmp qword [rbx + 8], r14
jne 0x140060bfc
mov rsi, qword [rbx + 0x10]
shr rsi, 1
jmp 0x1400608f5
movzx eax, byte [rbx + 0x23]
test al, al
jne 0x140060666
mov rcx, qword [rbx + 0x10]
lea rdx, str.RAMDisk
xor r9d, r9d
or r8, 0xffffffffffffffff
mov byte [rsp + 0x20], 1
call fcn.1400b0240
jmp case.0x14005f686.4
lea r14, str.RAMDisk
cmp qword [rbx + 8], r14
jne 0x14006067c
mov rsi, qword [rbx + 0x10]
shr rsi, 1
jmp 0x140060681
mov esi, 7
lea rcx, [rsi + 1]
lea r13, [rcx + rcx]
cmp al, 2
jne 0x14006069d
mov rdx, rsi
mov rcx, r14
call fcn.140006110
jmp case.0x14005f686.4
mov r8, qword [0x140112460]
cmp r13, r8
jbe 0x1400606b3
cmp r13, qword [rbx + 0x18]
ja 0x14005fe1c
cmp rcx, 2
jb 0x14005fe41
movzx eax, byte [rbx + 0x21]
test al, 2
je 0x1400606da
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 [0x140112460]
mov r9, qword [rbx + 0x18]
and byte [rbx + 0x21], 0x82
cmp r13, r9
jbe 0x140060324
movzx r10d, byte [rbx + 0x20]
movzx eax, r10b
cmp r10b, 1
jbe 0x140060711
cmp al, 2
je 0x14006072e
mov rdi, qword [rbp + 0x107f8]
mov rax, qword [rbp + 0x107f8]
jmp 0x140060318
cmp r13, 0x80
ja 0x14006072e
cmp r13, 8
ja 0x1400601f3
mov edi, 8
jmp 0x140060203
cmp r13, 0x20
jae 0x14006073e
mov edi, SafeArrayAllocDescriptor
jmp 0x1400607e8
mov edi, 0x208
cmp r13, rdi
jb 0x1400607e8
cmp r13, 0x50000
jae 0x1400607a4
pxor xmm0, xmm0
cvtsi2sd xmm0, r13
test r13, r13
jns 0x14006076b
addsd xmm0, qword [0x140100db8]
mulsd xmm0, qword [0x140100df0]
movsd xmm1, qword [0x140100de8]
xor ecx, ecx
comisd xmm0, xmm1
jbe 0x14006079a
subsd xmm0, xmm1
comisd xmm0, xmm1
jae 0x14006079a
movabs rax, 0x8000000000000000
mov rcx, rax
cvttsd2si rdi, xmm0
add rdi, rcx
jmp 0x1400607e8
cmp r13, 0x320000
jae 0x1400607b6
lea rdi, [r13 + 0x8000]
jmp 0x1400607e8
cmp r13, 0xc80000
jae 0x1400607e1
movabs rax, 0x47ae147ae147ae15
mov rdi, r13
mul r13
sub rdi, rdx
shr rdi, 1
add rdi, rdx
shr rdi, 6
add rdi, r13
jmp 0x1400607e8
lea rdi, [r13 + 0x20000]
cmp rdi, r8
cmova rdi, r8
cmp r10b, 2
jne 0x140060808
test r9, r9
je 0x140060808
mov rcx, qword [rbx + 8]
mov r13b, 1
call fcn.1400ca100
jmp 0x14006080b
xor r13b, r13b
test rdi, rdi
js 0x140060821
mov rcx, rdi
call fcn.1400c9664
test rax, rax
jne 0x140060314
test r13b, r13b
jmp 0x140060063
lea rcx, [rbp + 0x7a0]
mov r8d, 0x7ffe
mov rdx, rdi
call fcn.1400cc7d4
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 0x14006087b
cmp word [rbp + rcx*2 + 0x79e], 0x5c
je 0x14006087b
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 0x140060bc2
call qword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
je 0x140060bc2
cmp eax, 3
je 0x140060b8d
cmp eax, 0x13
je 0x140060b31
cmp eax, 0x15
movzx eax, byte [rbx + 0x23]
je 0x14006090a
test al, al
je 0x14006011d
lea r14, str.Unknown
cmp qword [rbx + 8], r14
jne 0x1400608f0
mov rsi, qword [rbx + 0x10]
shr rsi, 1
jmp 0x1400608f5
mov esi, 7
lea rcx, [rsi + 1]
lea r13, [rcx + rcx]
cmp al, 2
je 0x14006068d
jmp 0x14006069d
test al, al
jne 0x14006092f
mov rcx, qword [rbx + 0x10]
lea rdx, str.NotReady
xor r9d, r9d
or r8, 0xffffffffffffffff
mov byte [rsp + 0x20], 1
call fcn.1400b0240
jmp case.0x14005f686.4
lea r14, str.NotReady
mov edi, 8
cmp qword [rbx + 8], r14
jne 0x14006094a
mov r13, qword [rbx + 0x10]
shr r13, 1
jmp 0x14006094d
mov r13, rdi
lea rcx, [r13 + 1]
lea rsi, [rcx + rcx]
cmp al, 2
jne 0x140060969
mov rdx, r13
mov rcx, r14
call fcn.140006110
jmp case.0x14005f686.4
mov r8, qword [0x140112460]
cmp rsi, r8
jbe 0x14006097f
cmp rsi, qword [rbx + 0x18]
ja 0x14005fe1c
cmp rcx, 2
jb 0x14005fe41
movzx eax, byte [rbx + 0x21]
test al, 2
je 0x1400609a6
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 [0x140112460]
mov r9, qword [rbx + 0x18]
and byte [rbx + 0x21], 0x82
cmp rsi, r9
jbe 0x140060b1c
movzx r10d, byte [rbx + 0x20]
movzx eax, r10b
cmp r10b, 1
jbe 0x1400609dd
cmp al, 2
je 0x140060a15
mov rax, qword [rbp + 0x107f8]
mov rdi, qword [rbp + 0x107f8]
jmp 0x140060b10
cmp rsi, 0x80
ja 0x140060a15
cmp rsi, rdi
jbe 0x1400609fb
mov eax, reloc.OLEAUT32.dll_SafeArrayGetDim
mov edi, 0x80
cmp rsi, rax
cmovbe edi, eax
mov rcx, rdi
call fcn.1400a93c0
test rax, rax
je case.0x14005f686.4
mov byte [rbx + 0x20], 1
jmp 0x140060b10
cmp rsi, 0x20
jae 0x140060a25
mov edi, SafeArrayAllocDescriptor
jmp 0x140060acf
mov edi, 0x208
cmp rsi, rdi
jb 0x140060acf
cmp rsi, 0x50000
jae 0x140060a8b
pxor xmm0, xmm0
cvtsi2sd xmm0, rsi
test rsi, rsi
jns 0x140060a52
addsd xmm0, qword [0x140100db8]
mulsd xmm0, qword [0x140100df0]
movsd xmm1, qword [0x140100de8]
xor ecx, ecx
comisd xmm0, xmm1
jbe 0x140060a81
subsd xmm0, xmm1
comisd xmm0, xmm1
jae 0x140060a81
movabs rax, 0x8000000000000000
mov rcx, rax
cvttsd2si rdi, xmm0
add rdi, rcx
jmp 0x140060acf
cmp rsi, 0x320000
jae 0x140060a9d
lea rdi, [rsi + 0x8000]
jmp 0x140060acf
cmp rsi, 0xc80000
jae 0x140060ac8
movabs rax, 0x47ae147ae147ae15
mov rdi, rsi
mul rsi
sub rdi, rdx
shr rdi, 1
add rdi, rdx
shr rdi, 6
add rdi, rsi
jmp 0x140060acf
lea rdi, [rsi + 0x20000]
cmp rdi, r8
cmova rdi, r8
cmp r10b, 2
jne 0x140060aef
test r9, r9
je 0x140060aef
mov rcx, qword [rbx + 8]
mov sil, 1
call fcn.1400ca100
jmp 0x140060af2
xor sil, sil
test rdi, rdi
js 0x140060060
mov rcx, rdi
call fcn.1400c9664
test rax, rax
je 0x140060060
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 0x140060011
mov rdx, r14
jmp 0x140060007
movzx eax, byte [rbx + 0x23]
test al, al
jne 0x140060b5a
mov rcx, qword [rbx + 0x10]
lea rdx, str.ReadOnly
xor r9d, r9d
or r8, 0xffffffffffffffff
mov byte [rsp + 0x20], 1
call fcn.1400b0240
jmp case.0x14005f686.4
lea r14, str.ReadOnly
mov edi, 8
cmp qword [rbx + 8], r14
jne 0x140060b75
mov r13, qword [rbx + 0x10]
shr r13, 1
jmp 0x140060b78
mov r13, rdi
lea rcx, [r13 + 1]
lea rsi, [rcx + rcx]
cmp al, 2
je 0x140060959
jmp 0x140060969
movzx eax, byte [rbx + 0x23]
test al, al
jne 0x140060bb6
mov rcx, qword [rbx + 0x10]
lea rdx, str.Invalid
xor r9d, r9d
or r8, 0xffffffffffffffff
mov byte [rsp + 0x20], 1
call fcn.1400b0240
jmp case.0x14005f686.4
lea r14, str.Invalid
jmp 0x1400608e1
movzx eax, byte [rbx + 0x23]
test al, al
jne 0x140060beb
mov rcx, qword [rbx + 0x10]
lea rdx, str.Ready
xor r9d, r9d
or r8, 0xffffffffffffffff
mov byte [rsp + 0x20], 1
call fcn.1400b0240
jmp case.0x14005f686.4
lea r14, str.Ready
cmp qword [rbx + 8], r14
je 0x1400608e7
mov esi, 5
jmp 0x1400608f5
cmp word [rdi], 0
jne 0x140060c2d
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 0x140060c9b
lea r8, str.open__s_type_cdaudio_alias_cd_wait_shareable
lea rcx, [rbp + 0x5a0]
mov r9, rdi
mov edx, 0x100
call fcn.1400ac1c0
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.0x14005f686.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.0x14005f686.0
lea rdx, [rbp + 0x4a0]
xor r9d, r9d
or r8, 0xffffffffffffffff
mov rcx, rbx
mov byte [rsp + 0x20], 1
call fcn.1400b0240
jmp case.0x14005f686.4