Function at 0x14005f700
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.1400d23b0
sub rsp, rax
mov r13, rcx
mov rcx, rdx
mov rdi, r8
mov rbx, rdx
call fcn.140043240
movsxd rsi, eax
cmp esi, 9
jne 0x14005f755
xor r8d, r8d
mov rdx, rdi
mov rcx, r13
call fcn.14005f040
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 0x14005faec
lea rcx, [rbp + 0x7a0]
mov r8d, 0x7ffe
mov rdx, rdi
call fcn.1400cd7f4
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 0x14005f7c0
cmp word [rbp + rcx*2 + 0x79e], 0x5c
je 0x14005f7c0
mov r13d, 0x5c
mov word [rbp + rcx*2 + 0x7a0], r13w
lea rdx, [rbx + 0x12]
movzx eax, word [rdx]
cmp ax, 0x20
je 0x14005f7d3
cmp ax, 9
jne 0x14005f7d9
add rdx, 2
jmp 0x14005f7c4
lea rcx, [rbp + 0x7a0]
call qword [sym.imp.KERNEL32.dll_SetVolumeLabelW]
mov rbx, qword [0x14011a308]
lea rdx, [0x1400e350c]
movzx r9d, byte [rbx + 0x23]
test eax, eax
lea r13, [0x1400e619c]
cmovne r13, rdx
test r9b, r9b
jne 0x14005f82b
mov rcx, qword [rbx + 0x10]
xor r9d, r9d
or r8, 0xffffffffffffffff
mov rdx, r13
mov byte [rsp + 0x20], 1
call fcn.1400b14e0
mov r12d, eax
jmp 0x1400604d2
mov dl, 1
test r13, r13
jne 0x14005f840
xor dl, dl
mov r14, r12
lea r13, [0x1400e346c]
jmp 0x14005f862
cmp qword [rbx + 8], r13
jne 0x14005f84f
mov r14, qword [rbx + 0x10]
shr r14, 1
jmp 0x14005f862
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 0x14005f883
mov rdx, r14
mov rcx, r13
call fcn.1400060c0
mov r12d, eax
jmp 0x1400604d2
mov r8, qword [0x140114480]
cmp rsi, r8
jbe 0x14005f8b7
cmp rsi, qword [rbx + 0x18]
jbe 0x14005f8b7
lea r8, [0x1400e346c]
lea rdx, str.Memory_limit_reached__see_MaxMem_in_the_help_file_.
lea rcx, [0x14011b1d0]
call fcn.140040740
mov r12d, eax
jmp 0x1400604d2
cmp rax, 2
jae 0x14005f8e1
test dl, dl
mov rcx, rbx
setne r12b
xor r8d, r8d
lea edx, [r12 + 3]
call fcn.1400b1b90
mov r12d, 1
mov eax, r12d
jmp 0x1400604d2
movzx eax, byte [rbx + 0x21]
test al, 2
je 0x14005f8fe
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 [0x140114480]
mov r9, qword [rbx + 0x18]
and byte [rbx + 0x21], 0x82
cmp rsi, r9
jbe 0x14005fa74
movzx r10d, byte [rbx + 0x20]
movzx eax, r10b
cmp r10b, 1
jbe 0x14005f935
cmp al, 2
je 0x14005f975
mov rdi, qword [rbp + 0x107f8]
mov rax, qword [rbp + 0x107f8]
jmp 0x14005fa68
cmp rsi, 0x80
ja 0x14005f975
cmp rsi, 8
ja 0x14005f94b
mov edi, 8
jmp 0x14005f95b
mov eax, reloc.OLEAUT32.dll_SafeArrayGetDim
mov edi, 0x80
cmp rsi, rax
cmovbe edi, eax
mov rcx, rdi
call fcn.1400aa400
test rax, rax
je 0x14005faa0
mov byte [rbx + 0x20], 1
jmp 0x14005fa68
cmp rsi, 0x20
jae 0x14005f985
mov edi, SafeArrayAllocDescriptor
jmp 0x14005fa2f
mov edi, 0x208
cmp rsi, rdi
jb 0x14005fa2f
cmp rsi, 0x50000
jae 0x14005f9eb
pxor xmm0, xmm0
cvtsi2sd xmm0, rsi
test rsi, rsi
jns 0x14005f9b2
addsd xmm0, qword [0x140101e88]
mulsd xmm0, qword [0x140101ec0]
movsd xmm1, qword [0x140101eb8]
xor ecx, ecx
comisd xmm0, xmm1
jbe 0x14005f9e1
subsd xmm0, xmm1
comisd xmm0, xmm1
jae 0x14005f9e1
movabs rax, 0x8000000000000000
mov rcx, rax
cvttsd2si rdi, xmm0
add rdi, rcx
jmp 0x14005fa2f
cmp rsi, 0x320000
jae 0x14005f9fd
lea rdi, [rsi + 0x8000]
jmp 0x14005fa2f
cmp rsi, 0xc80000
jae 0x14005fa28
movabs rax, 0x47ae147ae147ae15
mov rdi, rsi
mul rsi
sub rdi, rdx
shr rdi, 1
add rdi, rdx
shr rdi, 6
add rdi, rsi
jmp 0x14005fa2f
lea rdi, [rsi + 0x20000]
cmp rdi, r8
cmova rdi, r8
cmp r10b, 2
jne 0x14005fa4f
test r9, r9
je 0x14005fa4f
mov rcx, qword [rbx + 8]
mov sil, 1
call fcn.1400cb11c
jmp 0x14005fa52
xor sil, sil
test rdi, rdi
js 0x14005faa8
mov rcx, rdi
call fcn.1400ca9a4
test rax, rax
je 0x14005faa8
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 0x14005fa89
lea r8, [r14 + r14]
mov rdx, r13
call fcn.1400cb2e0
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 0x1400604d2
test sil, sil
je 0x14005fabe
lea rax, [0x14011b184]
mov qword [rbx + 0x18], r12
mov qword [rbx + 8], rax
jmp 0x14005fac6
mov rax, qword [rbx + 8]
mov word [rax], r12w
lea r8, [0x1400e346c]
lea rdx, str.Out_of_memory.
lea rcx, [0x14011b1d0]
mov qword [rbx + 0x10], r12
call fcn.140040740
mov r12d, eax
jmp 0x1400604d2
mov rbx, qword [0x140119630]
mov rcx, rbx
call fcn.14001c090
cmp esi, 8
ja case.0x14005fb16.4
lea r14, [0x140000000]
mov eax, dword [r14 + rsi*4 + 0x61154]
add rax, r14
jmp rax
xor r12d, r12d
cmp word [rdi], r12w
jne 0x14005fb2b
mov esi, 0x100
jmp 0x14005fbbd
lea rdx, str.CDRom
mov rcx, rdi
call fcn.1400ca91c
test eax, eax
jne 0x14005fb43
lea esi, [rax + 5]
jmp 0x14005fbbd
lea rdx, str.Removable
mov rcx, rdi
call fcn.1400ca91c
test eax, eax
jne 0x14005fb5b
lea esi, [rax + 2]
jmp 0x14005fbbd
lea rdx, str.Fixed
mov rcx, rdi
call fcn.1400ca91c
test eax, eax
jne 0x14005fb73
lea esi, [rax + 3]
jmp 0x14005fbbd
lea rdx, str.Network
mov rcx, rdi
call fcn.1400ca91c
test eax, eax
jne 0x14005fb8b
lea esi, [rax + 4]
jmp 0x14005fbbd
lea rdx, str.Ramdisk
mov rcx, rdi
call fcn.1400ca91c
test eax, eax
jne 0x14005fba3
lea esi, [rax + 6]
jmp 0x14005fbbd
lea rdx, str.Unknown
mov rcx, rdi
call fcn.1400ca91c
test eax, eax
jne case.0x14005fb16.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 0x14005fbff
cmp esi, 0x100
jne 0x14005fc0f
cmp eax, 1
je 0x14005fc0f
movzx eax, dil
inc r15d
add r14, 2
mov word [r14 - 2], ax
inc dil
cmp dil, 0x5a
jbe 0x14005fbd0
movsxd rax, r15d
mov r15, qword [rsp + 0x108a0]
movzx edx, byte [rbx + 0x23]
mov word [rsp + rax*2 + 0x60], r12w
test dl, dl
jne 0x14005fc50
mov rcx, qword [rbx + 0x10]
lea rdx, [rsp + 0x60]
xor r9d, r9d
or r8, 0xffffffffffffffff
mov byte [rsp + 0x20], 1
call fcn.1400b14e0
jmp 0x14005fea5
lea rax, [rsp + 0x60]
cmp qword [rbx + 8], rax
jne 0x14005fc64
mov r13, qword [rbx + 0x10]
shr r13, 1
jmp 0x14005fc79
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 0x14005fc98
lea rcx, [rsp + 0x60]
mov rdx, r13
call fcn.1400060c0
jmp 0x14005fea5
mov r8, qword [0x140114480]
cmp rsi, r8
jbe 0x14005fcc9
cmp rsi, qword [rbx + 0x18]
jbe 0x14005fcc9
lea r8, [0x1400e346c]
lea rdx, str.Memory_limit_reached__see_MaxMem_in_the_help_file_.
lea rcx, [0x14011b1d0]
call fcn.140040740
jmp 0x14005fea5
cmp rax, 2
jae 0x14005fce3
xor r8d, r8d
mov rcx, rbx
lea edx, [r8 + 4]
call fcn.1400b1b90
jmp 0x14005fea5
movzx eax, byte [rbx + 0x21]
test al, 2
je 0x14005fd00
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 [0x140114480]
mov r9, qword [rbx + 0x18]
and byte [rbx + 0x21], 0x82
cmp rsi, r9
jbe 0x14005fe76
movzx r10d, byte [rbx + 0x20]
movzx eax, r10b
cmp r10b, 1
jbe 0x14005fd37
cmp al, 2
je 0x14005fd77
mov rdi, qword [rbp + 0x107f8]
mov rax, qword [rbp + 0x107f8]
jmp 0x14005fe6a
cmp rsi, 0x80
ja 0x14005fd77
cmp rsi, 8
ja 0x14005fd4d
mov edi, 8
jmp 0x14005fd5d
mov eax, reloc.OLEAUT32.dll_SafeArrayGetDim
mov edi, 0x80
cmp rsi, rax
cmovbe edi, eax
mov rcx, rdi
call fcn.1400aa400
test rax, rax
je 0x14005fea5
mov byte [rbx + 0x20], 1
jmp 0x14005fe6a
cmp rsi, 0x20
jae 0x14005fd87
mov edi, SafeArrayAllocDescriptor
jmp 0x14005fe31
mov edi, 0x208
cmp rsi, rdi
jb 0x14005fe31
cmp rsi, 0x50000
jae 0x14005fded
pxor xmm0, xmm0
cvtsi2sd xmm0, rsi
test rsi, rsi
jns 0x14005fdb4
addsd xmm0, qword [0x140101e88]
mulsd xmm0, qword [0x140101ec0]
movsd xmm1, qword [0x140101eb8]
xor ecx, ecx
comisd xmm0, xmm1
jbe 0x14005fde3
subsd xmm0, xmm1
comisd xmm0, xmm1
jae 0x14005fde3
movabs rax, 0x8000000000000000
mov rcx, rax
cvttsd2si rdi, xmm0
add rdi, rcx
jmp 0x14005fe31
cmp rsi, 0x320000
jae 0x14005fdff
lea rdi, [rsi + 0x8000]
jmp 0x14005fe31
cmp rsi, 0xc80000
jae 0x14005fe2a
movabs rax, 0x47ae147ae147ae15
mov rdi, rsi
mul rsi
sub rdi, rdx
shr rdi, 1
add rdi, rdx
shr rdi, 6
add rdi, rsi
jmp 0x14005fe31
lea rdi, [rsi + 0x20000]
cmp rdi, r8
cmova rdi, r8
cmp r10b, 2
jne 0x14005fe51
test r9, r9
je 0x14005fe51
mov rcx, qword [rbx + 8]
mov sil, 1
call fcn.1400cb11c
jmp 0x14005fe54
xor sil, sil
test rdi, rdi
js 0x14005fec4
mov rcx, rdi
call fcn.1400ca9a4
test rax, rax
je 0x14005fec4
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 0x14005fe93
lea r8, [r13 + r13]
lea rdx, [rsp + 0x60]
call fcn.1400cb2e0
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.0x14005fb16.4
mov rcx, qword [rbp + 0x107e0]
mov dl, 1
call fcn.14003f1a0
jmp 0x1400604d2
test sil, sil
je 0x14005feda
lea rax, [0x14011b184]
mov qword [rbx + 0x18], r12
mov qword [rbx + 8], rax
jmp 0x14005fee2
mov rax, qword [rbx + 8]
mov word [rax], r12w
lea r8, [0x1400e346c]
lea rdx, str.Out_of_memory.
lea rcx, [0x14011b1d0]
mov qword [rbx + 0x10], r12
call fcn.140040740
jmp 0x14005fea5
lea rcx, [rbp + 0x7a0]
mov r8d, 0x7ffe
mov rdx, rdi
call fcn.1400cd7f4
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 0x14005ff54
cmp word [rbp + rcx*2 + 0x79e], 0x5c
je 0x14005ff54
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.0x14005fb16.0
sub esi, 2
je 0x140060223
dec esi
je 0x14005ffd1
cmp esi, 2
jne case.0x14005fb16.4
mov edx, dword [rbp + 0x107f8]
mov r8b, reloc.OLEAUT32.dll_SafeArrayGetElement
mov rcx, rbx
call fcn.140001090
jmp case.0x14005fb16.4
movzx edx, byte [rbx + 0x23]
test dl, dl
jne 0x14005fffa
mov rcx, qword [rbx + 0x10]
lea rdx, [rbp + 0xa0]
xor r9d, r9d
or r8, 0xffffffffffffffff
mov byte [rsp + 0x20], 1
call fcn.1400b14e0
jmp case.0x14005fb16.4
lea rax, [rbp + 0xa0]
cmp qword [rbx + 8], rax
jne 0x140060010
mov r13, qword [rbx + 0x10]
shr r13, 1
jmp 0x140060027
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 0x140060048
lea rcx, [rbp + 0xa0]
mov rdx, r13
call fcn.1400060c0
jmp case.0x14005fb16.4
mov r8, qword [0x140114480]
cmp rsi, r8
jbe 0x14006005e
cmp rsi, qword [rbx + 0x18]
ja 0x1400602ac
cmp rax, 2
jb 0x1400602d1
movzx eax, byte [rbx + 0x21]
test al, 2
je 0x140060085
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 [0x140114480]
mov r9, qword [rbx + 0x18]
and byte [rbx + 0x21], 0x82
cmp rsi, r9
jbe 0x140060203
movzx r10d, byte [rbx + 0x20]
movzx eax, r10b
cmp r10b, 1
jbe 0x1400600bc
cmp al, 2
je 0x1400600fc
mov rdi, qword [rbp + 0x107f8]
mov rax, qword [rbp + 0x107f8]
jmp 0x1400601f7
cmp rsi, 0x80
ja 0x1400600fc
cmp rsi, 8
ja 0x1400600d2
mov edi, 8
jmp 0x1400600e2
mov eax, reloc.OLEAUT32.dll_SafeArrayGetDim
mov edi, 0x80
cmp rsi, rax
cmovbe edi, eax
mov rcx, rdi
call fcn.1400aa400
test rax, rax
je case.0x14005fb16.4
mov byte [rbx + 0x20], 1
jmp 0x1400601f7
cmp rsi, 0x20
jae 0x14006010c
mov edi, SafeArrayAllocDescriptor
jmp 0x1400601b6
mov edi, 0x208
cmp rsi, rdi
jb 0x1400601b6
cmp rsi, 0x50000
jae 0x140060172
pxor xmm0, xmm0
cvtsi2sd xmm0, rsi
test rsi, rsi
jns 0x140060139
addsd xmm0, qword [0x140101e88]
mulsd xmm0, qword [0x140101ec0]
movsd xmm1, qword [0x140101eb8]
xor ecx, ecx
comisd xmm0, xmm1
jbe 0x140060168
subsd xmm0, xmm1
comisd xmm0, xmm1
jae 0x140060168
movabs rax, 0x8000000000000000
mov rcx, rax
cvttsd2si rdi, xmm0
add rdi, rcx
jmp 0x1400601b6
cmp rsi, 0x320000
jae 0x140060184
lea rdi, [rsi + 0x8000]
jmp 0x1400601b6
cmp rsi, 0xc80000
jae 0x1400601af
movabs rax, 0x47ae147ae147ae15
mov rdi, rsi
mul rsi
sub rdi, rdx
shr rdi, 1
add rdi, rdx
shr rdi, 6
add rdi, rsi
jmp 0x1400601b6
lea rdi, [rsi + 0x20000]
cmp rdi, r8
cmova rdi, r8
cmp r10b, 2
jne 0x1400601d6
test r9, r9
je 0x1400601d6
mov rcx, qword [rbx + 8]
mov sil, 1
call fcn.1400cb11c
jmp 0x1400601d9
xor sil, sil
test rdi, rdi
js 0x1400604f0
mov rcx, rdi
call fcn.1400ca9a4
test rax, rax
je 0x1400604f0
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 0x1400604a1
lea rdx, [rbp + 0xa0]
jmp 0x140060497
movzx edx, byte [rbx + 0x23]
test dl, dl
jne 0x14006024c
mov rcx, qword [rbx + 0x10]
lea rdx, [rbp + 0x2a0]
xor r9d, r9d
or r8, 0xffffffffffffffff
mov byte [rsp + 0x20], 1
call fcn.1400b14e0
jmp case.0x14005fb16.4
lea rax, [rbp + 0x2a0]
cmp qword [rbx + 8], rax
jne 0x140060262
mov r13, qword [rbx + 0x10]
shr r13, 1
jmp 0x140060279
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 0x14006029a
lea rcx, [rbp + 0x2a0]
mov rdx, r13
call fcn.1400060c0
jmp case.0x14005fb16.4
mov r8, qword [0x140114480]
cmp rsi, r8
jbe 0x1400602cb
cmp rsi, qword [rbx + 0x18]
jbe 0x1400602cb
lea r8, [0x1400e346c]
lea rdx, str.Memory_limit_reached__see_MaxMem_in_the_help_file_.
lea rcx, [0x14011b1d0]
call fcn.140040740
jmp case.0x14005fb16.4
cmp rax, 2
jae 0x1400602e5
xor r8d, r8d
mov rcx, rbx
lea edx, [r8 + 4]
call fcn.1400b1b90
jmp case.0x14005fb16.4
movzx eax, byte [rbx + 0x21]
test al, 2
je 0x140060302
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 [0x140114480]
mov r9, qword [rbx + 0x18]
and byte [rbx + 0x21], 0x82
cmp rsi, r9
jbe 0x140060480
movzx r10d, byte [rbx + 0x20]
movzx eax, r10b
cmp r10b, 1
jbe 0x140060339
cmp al, 2
je 0x140060379
mov rdi, qword [rbp + 0x107f8]
mov rax, qword [rbp + 0x107f8]
jmp 0x140060474
cmp rsi, 0x80
ja 0x140060379
cmp rsi, 8
ja 0x14006034f
mov edi, 8
jmp 0x14006035f
mov eax, reloc.OLEAUT32.dll_SafeArrayGetDim
mov edi, 0x80
cmp rsi, rax
cmovbe edi, eax
mov rcx, rdi
call fcn.1400aa400
test rax, rax
je case.0x14005fb16.4
mov byte [rbx + 0x20], 1
jmp 0x140060474
cmp rsi, 0x20
jae 0x140060389
mov edi, SafeArrayAllocDescriptor
jmp 0x140060433
mov edi, 0x208
cmp rsi, rdi
jb 0x140060433
cmp rsi, 0x50000
jae 0x1400603ef
pxor xmm0, xmm0
cvtsi2sd xmm0, rsi
test rsi, rsi
jns 0x1400603b6
addsd xmm0, qword [0x140101e88]
mulsd xmm0, qword [0x140101ec0]
movsd xmm1, qword [0x140101eb8]
xor ecx, ecx
comisd xmm0, xmm1
jbe 0x1400603e5
subsd xmm0, xmm1
comisd xmm0, xmm1
jae 0x1400603e5
movabs rax, 0x8000000000000000
mov rcx, rax
cvttsd2si rdi, xmm0
add rdi, rcx
jmp 0x140060433
cmp rsi, 0x320000
jae 0x140060401
lea rdi, [rsi + 0x8000]
jmp 0x140060433
cmp rsi, 0xc80000
jae 0x14006042c
movabs rax, 0x47ae147ae147ae15
mov rdi, rsi
mul rsi
sub rdi, rdx
shr rdi, 1
add rdi, rdx
shr rdi, 6
add rdi, rsi
jmp 0x140060433
lea rdi, [rsi + 0x20000]
cmp rdi, r8
cmova rdi, r8
cmp r10b, 2
jne 0x140060453
test r9, r9
je 0x140060453
mov rcx, qword [rbx + 8]
mov sil, 1
call fcn.1400cb11c
jmp 0x140060456
xor sil, sil
test rdi, rdi
js 0x1400604f0
mov rcx, rdi
call fcn.1400ca9a4
test rax, rax
je 0x1400604f0
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 0x1400604a1
lea rdx, [rbp + 0x2a0]
lea r8, [r13 + r13]
call fcn.1400cb2e0
lea rcx, [r13 + r13]
mov rax, qword [rbx + 8]
mov word [rcx + rax], r12w
mov qword [rbx + 0x10], rcx
mov rcx, qword [0x14011a308]
lea rdx, [0x1400e350c]
xor r9d, r9d
or r8, 0xffffffffffffffff
mov byte [rsp + 0x20], 1
call fcn.1400b14e0
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 0x140060506
lea rax, [0x14011b184]
mov qword [rbx + 0x18], r12
mov qword [rbx + 8], rax
jmp 0x14006050e
mov rax, qword [rbx + 8]
mov word [rax], r12w
lea r8, [0x1400e346c]
lea rdx, str.Out_of_memory.
lea rcx, [0x14011b1d0]
mov qword [rbx + 0x10], r12
call fcn.140040740
jmp case.0x14005fb16.4
lea rcx, [rbp + 0x7a0]
mov r8d, 0x7ffe
mov rdx, rdi
call fcn.1400cd7f4
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 0x140060580
cmp word [rbp + rcx*2 + 0x79e], 0x5c
je 0x140060580
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.0x14005fb16.0
mov eax, eax
mov ecx, dword [r14 + rax*4 + 0x61178]
add rcx, r14
jmp rcx
movzx eax, byte [rbx + 0x23]
test al, al
jne 0x1400605ce
mov rcx, qword [rbx + 0x10]
lea rdx, str.Unknown
xor r9d, r9d
or r8, 0xffffffffffffffff
mov byte [rsp + 0x20], 1
call fcn.1400b14e0
jmp case.0x14005fb16.4
lea r14, str.Unknown
cmp qword [rbx + 8], r14
jne 0x1400605e4
mov rsi, qword [rbx + 0x10]
shr rsi, 1
jmp 0x1400605e9
mov esi, 7
lea rcx, [rsi + 1]
lea r13, [rcx + rcx]
cmp al, 2
je 0x140060b1d
mov r8, qword [0x140114480]
cmp r13, r8
jbe 0x14006060f
cmp r13, qword [rbx + 0x18]
ja 0x1400602ac
cmp rcx, 2
jb 0x1400602d1
movzx eax, byte [rbx + 0x21]
test al, 2
je 0x140060636
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 [0x140114480]
mov r9, qword [rbx + 0x18]
and byte [rbx + 0x21], 0x82
cmp r13, r9
jbe 0x1400607b4
movzx r10d, byte [rbx + 0x20]
movzx eax, r10b
cmp r10b, 1
jbe 0x14006066d
cmp al, 2
je 0x1400606ad
mov rdi, qword [rbp + 0x107f8]
mov rax, qword [rbp + 0x107f8]
jmp 0x1400607a8
cmp r13, 0x80
ja 0x1400606ad
cmp r13, 8
ja 0x140060683
mov edi, 8
jmp 0x140060693
mov eax, reloc.OLEAUT32.dll_SafeArrayGetDim
mov edi, 0x80
cmp r13, rax
cmovbe edi, eax
mov rcx, rdi
call fcn.1400aa400
test rax, rax
je case.0x14005fb16.4
mov byte [rbx + 0x20], 1
jmp 0x1400607a8
cmp r13, 0x20
jae 0x1400606bd
mov edi, SafeArrayAllocDescriptor
jmp 0x140060767
mov edi, 0x208
cmp r13, rdi
jb 0x140060767
cmp r13, 0x50000
jae 0x140060723
pxor xmm0, xmm0
cvtsi2sd xmm0, r13
test r13, r13
jns 0x1400606ea
addsd xmm0, qword [0x140101e88]
mulsd xmm0, qword [0x140101ec0]
movsd xmm1, qword [0x140101eb8]
xor ecx, ecx
comisd xmm0, xmm1
jbe 0x140060719
subsd xmm0, xmm1
comisd xmm0, xmm1
jae 0x140060719
movabs rax, 0x8000000000000000
mov rcx, rax
cvttsd2si rdi, xmm0
add rdi, rcx
jmp 0x140060767
cmp r13, 0x320000
jae 0x140060735
lea rdi, [r13 + 0x8000]
jmp 0x140060767
cmp r13, 0xc80000
jae 0x140060760
movabs rax, 0x47ae147ae147ae15
mov rdi, r13
mul r13
sub rdi, rdx
shr rdi, 1
add rdi, rdx
shr rdi, 6
add rdi, r13
jmp 0x140060767
lea rdi, [r13 + 0x20000]
cmp rdi, r8
cmova rdi, r8
cmp r10b, 2
jne 0x140060787
test r9, r9
je 0x140060787
mov rcx, qword [rbx + 8]
mov r13b, 1
call fcn.1400cb11c
jmp 0x14006078a
xor r13b, r13b
test rdi, rdi
js 0x140060cb1
mov rcx, rdi
call fcn.1400ca9a4
test rax, rax
je 0x140060cb1
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 0x1400607c9
lea r8, [rsi + rsi]
mov rdx, r14
call fcn.1400cb2e0
lea rcx, [rsi + rsi]
jmp 0x1400604a6
movzx eax, byte [rbx + 0x23]
test al, al
jne 0x1400607fb
mov rcx, qword [rbx + 0x10]
lea rdx, str.Removable
xor r9d, r9d
or r8, 0xffffffffffffffff
mov byte [rsp + 0x20], 1
call fcn.1400b14e0
jmp case.0x14005fb16.4
lea r13, str.Removable
cmp qword [rbx + 8], r13
jne 0x140060811
mov r14, qword [rbx + 0x10]
shr r14, 1
jmp 0x140060817
mov r14d, 9
lea rcx, [r14 + 1]
lea rsi, [rcx + rcx]
cmp al, 2
jne 0x140060833
mov rdx, r14
mov rcx, r13
call fcn.1400060c0
jmp case.0x14005fb16.4
mov r8, qword [0x140114480]
cmp rsi, r8
jbe 0x140060849
cmp rsi, qword [rbx + 0x18]
ja 0x1400602ac
cmp rcx, 2
jb 0x1400602d1
movzx eax, byte [rbx + 0x21]
test al, 2
je 0x140060870
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 [0x140114480]
mov r9, qword [rbx + 0x18]
and byte [rbx + 0x21], 0x82
cmp rsi, r9
jbe 0x1400609ee
movzx r10d, byte [rbx + 0x20]
movzx eax, r10b
cmp r10b, 1
jbe 0x1400608a7
cmp al, 2
je 0x1400608e7
mov rdi, qword [rbp + 0x107f8]
mov rax, qword [rbp + 0x107f8]
jmp 0x1400609e2
cmp rsi, 0x80
ja 0x1400608e7
cmp rsi, 8
ja 0x1400608bd
mov edi, 8
jmp 0x1400608cd
mov eax, reloc.OLEAUT32.dll_SafeArrayGetDim
mov edi, 0x80
cmp rsi, rax
cmovbe edi, eax
mov rcx, rdi
call fcn.1400aa400
test rax, rax
je case.0x14005fb16.4
mov byte [rbx + 0x20], 1
jmp 0x1400609e2
cmp rsi, 0x20
jae 0x1400608f7
mov edi, SafeArrayAllocDescriptor
jmp 0x1400609a1
mov edi, 0x208
cmp rsi, rdi
jb 0x1400609a1
cmp rsi, 0x50000
jae 0x14006095d
pxor xmm0, xmm0
cvtsi2sd xmm0, rsi
test rsi, rsi
jns 0x140060924
addsd xmm0, qword [0x140101e88]
mulsd xmm0, qword [0x140101ec0]
movsd xmm1, qword [0x140101eb8]
xor ecx, ecx
comisd xmm0, xmm1
jbe 0x140060953
subsd xmm0, xmm1
comisd xmm0, xmm1
jae 0x140060953
movabs rax, 0x8000000000000000
mov rcx, rax
cvttsd2si rdi, xmm0
add rdi, rcx
jmp 0x1400609a1
cmp rsi, 0x320000
jae 0x14006096f
lea rdi, [rsi + 0x8000]
jmp 0x1400609a1
cmp rsi, 0xc80000
jae 0x14006099a
movabs rax, 0x47ae147ae147ae15
mov rdi, rsi
mul rsi
sub rdi, rdx
shr rdi, 1
add rdi, rdx
shr rdi, 6
add rdi, rsi
jmp 0x1400609a1
lea rdi, [rsi + 0x20000]
cmp rdi, r8
cmova rdi, r8
cmp r10b, 2
jne 0x1400609c1
test r9, r9
je 0x1400609c1
mov rcx, qword [rbx + 8]
mov sil, 1
call fcn.1400cb11c
jmp 0x1400609c4
xor sil, sil
test rdi, rdi
js 0x1400604f0
mov rcx, rdi
call fcn.1400ca9a4
test rax, rax
je 0x1400604f0
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 0x140060a03
lea r8, [r14 + r14]
mov rdx, r13
call fcn.1400cb2e0
lea rcx, [r14 + r14]
jmp 0x1400604a6
movzx eax, byte [rbx + 0x23]
test al, al
jne 0x140060a35
mov rcx, qword [rbx + 0x10]
lea rdx, str.Fixed
xor r9d, r9d
or r8, 0xffffffffffffffff
mov byte [rsp + 0x20], 1
call fcn.1400b14e0
jmp case.0x14005fb16.4
lea r14, str.Fixed
cmp qword [rbx + 8], r14
jne 0x14006108c
mov rsi, qword [rbx + 0x10]
shr rsi, 1
jmp 0x140060d85
movzx eax, byte [rbx + 0x23]
test al, al
jne 0x140060a7b
mov rcx, qword [rbx + 0x10]
lea rdx, str.Network
xor r9d, r9d
or r8, 0xffffffffffffffff
mov byte [rsp + 0x20], 1
call fcn.1400b14e0
jmp case.0x14005fb16.4
lea r14, str.Network
jmp 0x140060d71
movzx eax, byte [rbx + 0x23]
test al, al
jne 0x140060ab0
mov rcx, qword [rbx + 0x10]
lea rdx, str.CDROM
xor r9d, r9d
or r8, 0xffffffffffffffff
mov byte [rsp + 0x20], 1
call fcn.1400b14e0
jmp case.0x14005fb16.4
lea r14, str.CDROM
cmp qword [rbx + 8], r14
jne 0x14006108c
mov rsi, qword [rbx + 0x10]
shr rsi, 1
jmp 0x140060d85
movzx eax, byte [rbx + 0x23]
test al, al
jne 0x140060af6
mov rcx, qword [rbx + 0x10]
lea rdx, str.RAMDisk
xor r9d, r9d
or r8, 0xffffffffffffffff
mov byte [rsp + 0x20], 1
call fcn.1400b14e0
jmp case.0x14005fb16.4
lea r14, str.RAMDisk
cmp qword [rbx + 8], r14
jne 0x140060b0c
mov rsi, qword [rbx + 0x10]
shr rsi, 1
jmp 0x140060b11
mov esi, 7
lea rcx, [rsi + 1]
lea r13, [rcx + rcx]
cmp al, 2
jne 0x140060b2d
mov rdx, rsi
mov rcx, r14
call fcn.1400060c0
jmp case.0x14005fb16.4
mov r8, qword [0x140114480]
cmp r13, r8
jbe 0x140060b43
cmp r13, qword [rbx + 0x18]
ja 0x1400602ac
cmp rcx, 2
jb 0x1400602d1
movzx eax, byte [rbx + 0x21]
test al, 2
je 0x140060b6a
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 [0x140114480]
mov r9, qword [rbx + 0x18]
and byte [rbx + 0x21], 0x82
cmp r13, r9
jbe 0x1400607b4
movzx r10d, byte [rbx + 0x20]
movzx eax, r10b
cmp r10b, 1
jbe 0x140060ba1
cmp al, 2
je 0x140060bbe
mov rdi, qword [rbp + 0x107f8]
mov rax, qword [rbp + 0x107f8]
jmp 0x1400607a8
cmp r13, 0x80
ja 0x140060bbe
cmp r13, 8
ja 0x140060683
mov edi, 8
jmp 0x140060693
cmp r13, 0x20
jae 0x140060bce
mov edi, SafeArrayAllocDescriptor
jmp 0x140060c78
mov edi, 0x208
cmp r13, rdi
jb 0x140060c78
cmp r13, 0x50000
jae 0x140060c34
pxor xmm0, xmm0
cvtsi2sd xmm0, r13
test r13, r13
jns 0x140060bfb
addsd xmm0, qword [0x140101e88]
mulsd xmm0, qword [0x140101ec0]
movsd xmm1, qword [0x140101eb8]
xor ecx, ecx
comisd xmm0, xmm1
jbe 0x140060c2a
subsd xmm0, xmm1
comisd xmm0, xmm1
jae 0x140060c2a
movabs rax, 0x8000000000000000
mov rcx, rax
cvttsd2si rdi, xmm0
add rdi, rcx
jmp 0x140060c78
cmp r13, 0x320000
jae 0x140060c46
lea rdi, [r13 + 0x8000]
jmp 0x140060c78
cmp r13, 0xc80000
jae 0x140060c71
movabs rax, 0x47ae147ae147ae15
mov rdi, r13
mul r13
sub rdi, rdx
shr rdi, 1
add rdi, rdx
shr rdi, 6
add rdi, r13
jmp 0x140060c78
lea rdi, [r13 + 0x20000]
cmp rdi, r8
cmova rdi, r8
cmp r10b, 2
jne 0x140060c98
test r9, r9
je 0x140060c98
mov rcx, qword [rbx + 8]
mov r13b, 1
call fcn.1400cb11c
jmp 0x140060c9b
xor r13b, r13b
test rdi, rdi
js 0x140060cb1
mov rcx, rdi
call fcn.1400ca9a4
test rax, rax
jne 0x1400607a4
test r13b, r13b
jmp 0x1400604f3
lea rcx, [rbp + 0x7a0]
mov r8d, 0x7ffe
mov rdx, rdi
call fcn.1400cd7f4
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 0x140060d0b
cmp word [rbp + rcx*2 + 0x79e], 0x5c
je 0x140060d0b
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 0x140061052
call qword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
je 0x140061052
cmp eax, 3
je 0x14006101d
cmp eax, 0x13
je 0x140060fc1
cmp eax, 0x15
movzx eax, byte [rbx + 0x23]
je 0x140060d9a
test al, al
je 0x1400605ad
lea r14, str.Unknown
cmp qword [rbx + 8], r14
jne 0x140060d80
mov rsi, qword [rbx + 0x10]
shr rsi, 1
jmp 0x140060d85
mov esi, 7
lea rcx, [rsi + 1]
lea r13, [rcx + rcx]
cmp al, 2
je 0x140060b1d
jmp 0x140060b2d
test al, al
jne 0x140060dbf
mov rcx, qword [rbx + 0x10]
lea rdx, str.NotReady
xor r9d, r9d
or r8, 0xffffffffffffffff
mov byte [rsp + 0x20], 1
call fcn.1400b14e0
jmp case.0x14005fb16.4
lea r14, str.NotReady
mov edi, 8
cmp qword [rbx + 8], r14
jne 0x140060dda
mov r13, qword [rbx + 0x10]
shr r13, 1
jmp 0x140060ddd
mov r13, rdi
lea rcx, [r13 + 1]
lea rsi, [rcx + rcx]
cmp al, 2
jne 0x140060df9
mov rdx, r13
mov rcx, r14
call fcn.1400060c0
jmp case.0x14005fb16.4
mov r8, qword [0x140114480]
cmp rsi, r8
jbe 0x140060e0f
cmp rsi, qword [rbx + 0x18]
ja 0x1400602ac
cmp rcx, 2
jb 0x1400602d1
movzx eax, byte [rbx + 0x21]
test al, 2
je 0x140060e36
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 [0x140114480]
mov r9, qword [rbx + 0x18]
and byte [rbx + 0x21], 0x82
cmp rsi, r9
jbe 0x140060fac
movzx r10d, byte [rbx + 0x20]
movzx eax, r10b
cmp r10b, 1
jbe 0x140060e6d
cmp al, 2
je 0x140060ea5
mov rax, qword [rbp + 0x107f8]
mov rdi, qword [rbp + 0x107f8]
jmp 0x140060fa0
cmp rsi, 0x80
ja 0x140060ea5
cmp rsi, rdi
jbe 0x140060e8b
mov eax, reloc.OLEAUT32.dll_SafeArrayGetDim
mov edi, 0x80
cmp rsi, rax
cmovbe edi, eax
mov rcx, rdi
call fcn.1400aa400
test rax, rax
je case.0x14005fb16.4
mov byte [rbx + 0x20], 1
jmp 0x140060fa0
cmp rsi, 0x20
jae 0x140060eb5
mov edi, SafeArrayAllocDescriptor
jmp 0x140060f5f
mov edi, 0x208
cmp rsi, rdi
jb 0x140060f5f
cmp rsi, 0x50000
jae 0x140060f1b
pxor xmm0, xmm0
cvtsi2sd xmm0, rsi
test rsi, rsi
jns 0x140060ee2
addsd xmm0, qword [0x140101e88]
mulsd xmm0, qword [0x140101ec0]
movsd xmm1, qword [0x140101eb8]
xor ecx, ecx
comisd xmm0, xmm1
jbe 0x140060f11
subsd xmm0, xmm1
comisd xmm0, xmm1
jae 0x140060f11
movabs rax, 0x8000000000000000
mov rcx, rax
cvttsd2si rdi, xmm0
add rdi, rcx
jmp 0x140060f5f
cmp rsi, 0x320000
jae 0x140060f2d
lea rdi, [rsi + 0x8000]
jmp 0x140060f5f
cmp rsi, 0xc80000
jae 0x140060f58
movabs rax, 0x47ae147ae147ae15
mov rdi, rsi
mul rsi
sub rdi, rdx
shr rdi, 1
add rdi, rdx
shr rdi, 6
add rdi, rsi
jmp 0x140060f5f
lea rdi, [rsi + 0x20000]
cmp rdi, r8
cmova rdi, r8
cmp r10b, 2
jne 0x140060f7f
test r9, r9
je 0x140060f7f
mov rcx, qword [rbx + 8]
mov sil, 1
call fcn.1400cb11c
jmp 0x140060f82
xor sil, sil
test rdi, rdi
js 0x1400604f0
mov rcx, rdi
call fcn.1400ca9a4
test rax, rax
je 0x1400604f0
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 0x1400604a1
mov rdx, r14
jmp 0x140060497
movzx eax, byte [rbx + 0x23]
test al, al
jne 0x140060fea
mov rcx, qword [rbx + 0x10]
lea rdx, str.ReadOnly
xor r9d, r9d
or r8, 0xffffffffffffffff
mov byte [rsp + 0x20], 1
call fcn.1400b14e0
jmp case.0x14005fb16.4
lea r14, str.ReadOnly
mov edi, 8
cmp qword [rbx + 8], r14
jne 0x140061005
mov r13, qword [rbx + 0x10]
shr r13, 1
jmp 0x140061008
mov r13, rdi
lea rcx, [r13 + 1]
lea rsi, [rcx + rcx]
cmp al, 2
je 0x140060de9
jmp 0x140060df9
movzx eax, byte [rbx + 0x23]
test al, al
jne 0x140061046
mov rcx, qword [rbx + 0x10]
lea rdx, str.Invalid
xor r9d, r9d
or r8, 0xffffffffffffffff
mov byte [rsp + 0x20], 1
call fcn.1400b14e0
jmp case.0x14005fb16.4
lea r14, str.Invalid
jmp 0x140060d71
movzx eax, byte [rbx + 0x23]
test al, al
jne 0x14006107b
mov rcx, qword [rbx + 0x10]
lea rdx, str.Ready
xor r9d, r9d
or r8, 0xffffffffffffffff
mov byte [rsp + 0x20], 1
call fcn.1400b14e0
jmp case.0x14005fb16.4
lea r14, str.Ready
cmp qword [rbx + 8], r14
je 0x140060d77
mov esi, 5
jmp 0x140060d85
cmp word [rdi], 0
jne 0x1400610bd
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 0x14006112b
lea r8, str.open__s_type_cdaudio_alias_cd_wait_shareable
lea rcx, [rbp + 0x5a0]
mov r9, rdi
mov edx, 0x100
call fcn.1400ad210
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.0x14005fb16.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.0x14005fb16.0
lea rdx, [rbp + 0x4a0]
xor r9d, r9d
or r8, 0xffffffffffffffff
mov rcx, rbx
mov byte [rsp + 0x20], 1
call fcn.1400b14e0
jmp case.0x14005fb16.4