Function at 0x1400b0494
Capabilities:
Get common file path
Get disk information

Disassembly:
mov rax, rsp
mov qword [rax + 0x20], r9
mov qword [rax + 0x18], r8
mov qword [rax + 0x10], rdx
mov qword [rax + 8], rcx
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x478
movaps xmmword [rax - 0x58], xmm6
movaps xmmword [rax - 0x68], xmm7
mov r13, rcx
lea rcx, [rax - 0x3b0]
movaps xmmword [rax - 0x78], xmm8
movaps xmmword [rax - 0x88], xmm9
call fcn.1400618c8
mov rdx, qword [rsp + 0x4c8]
xor r12d, r12d
mov qword [rsp + 0x110], r13
mov qword [rsp + 0x118], r12
movzx eax, word [rdx]
mov word [rsp + 0x5e], r12w
mov bpl, 0x2c
lea ecx, [r12 + 0x20]
lea r8d, [r12 + 9]
lea r9d, [r12 + 0x3a]
cmp ax, r12w
je 0x1400b056b
lea r13d, [r12 + 0x2a]
cmp r13w, ax
je 0x1400b0563
cmp r8w, ax
ja 0x1400b0531
cmp ax, 0xd
jbe 0x1400b0563
cmp cx, ax
je 0x1400b0563
mov ecx, 0x3b
cmp cx, ax
je 0x1400b0546
cmp r9w, ax
jne 0x1400b0549
mov bpl, byte [rdx]
add rdx, 2
mov ecx, 0x20
mov qword [rsp + 0x4c8], rdx
mov ax, word [rdx]
cmp ax, r12w
jne 0x1400b051f
mov r13, qword [rsp + 0x4c0]
lea rcx, [rsp + 0x120]
call fcn.140061d8c
lea rcx, [rsp + 0x4c8]
call fcn.1400592c8
lea rax, [rsp + 0x120]
mov qword [rsp + 0x150], r12
mov qword [rsp + 0x180], rax
mov rax, 0xfffffffffffffff8
mov qword [rsp + 0x158], r12
mov qword [rsp + 0x160], r12
mov qword [rsp + 0x168], r12
mov qword [rsp + 0x170], r12
mov qword [rsp + 0x178], r12
mov dword [rsp + 0x64], r12d
mov r15d, r12d
mov ebx, r12d
mov edi, r12d
mov dword [rsp + 0xc8], r12d
mov dword [rsp + 0xa8], r12d
mov dword [rsp + 0xb8], r12d
mov dword [rsp + 0xd0], r12d
mov esi, r12d
mov dword [rsp + 0xa0], r12d
mov r14b, r12b
mov dword [rsp + 0xd8], 2
mov dword [rsp + 0x78], eax
lea r12d, [rax + 9]
mov dword [rsp + 0x50], ebx
mov rax, qword [rsp + 0x4c8]
mov edx, 0x2d
lea ecx, [rdx - 3]
cmp cx, word [rax]
je 0x1400b0645
lea ecx, [rdx + 2]
cmp cx, word [rax]
je 0x1400b0645
cmp dx, word [rax]
jne 0x1400b0b14
cmp dx, word [rax]
jne 0x1400b0681
cmp dx, word [rax + 2]
jne 0x1400b0681
movzx ecx, word [rax + 4]
mov edx, 9
cmp dx, cx
ja 0x1400b0668
cmp cx, 0xd
jbe 0x1400b0c0d
mov edx, 0x20
cmp dx, cx
je 0x1400b0c0d
xor edx, edx
cmp cx, dx
je 0x1400b0c0d
lea rdx, [rsp + 0x4c8]
lea rcx, [0x14012148c]
mov r8d, 2
call fcn.140064388
xor ecx, ecx
cmp al, cl
je 0x1400b06ae
and r15d, 0xfffffffe
or r15d, 6
jmp 0x1400b061f
mov r11, qword [rsp + 0x4c8]
lea rcx, [0x140121488]
mov r8d, 3
lea rdx, [r11 + 2]
call fcn.14005a974
xor ecx, ecx
cmp al, cl
je 0x1400b06dc
add r11, 8
lea r15d, [rcx + 6]
jmp 0x1400b06fc
lea rdx, [r11 + 2]
lea rcx, str.delims:
mov r8d, 7
call fcn.14005a974
xor ebx, ebx
cmp al, bl
je 0x1400b0776
add r11, 0x10
mov eax, 0xa
lea rcx, [rsp + 0x4c8]
mov rdx, r13
mov qword [rsp + 0x4c8], r11
or r15d, eax
call fcn.1400a268c
mov rbx, qword [rsp + 0x4c8]
movzx eax, word [rbx]
mov word [rsp + 0x5e], ax
xor ecx, ecx
movzx eax, word [rbx]
cmp ax, cx
je 0x1400b0764
mov edx, 0x20
lea r8d, [rdx - 0x17]
cmp r8w, ax
ja 0x1400b074b
cmp ax, 0xd
jbe 0x1400b0764
cmp dx, ax
je 0x1400b0764
add rbx, 2
mov qword [rsp + 0x4c8], rbx
mov ax, word [rbx]
cmp ax, cx
jne 0x1400b073f
lea rcx, [rsp + 0x4c8]
call fcn.1400592c8
jmp 0x1400b0c04
lea rdx, [rsp + 0x4c8]
lea rcx, [0x14011951c]
or r8d, 0xffffffff
call fcn.140064324
cmp al, bl
jne 0x1400b0bfd
lea rdx, [rsp + 0x4c8]
lea rcx, [0x140115ccc]
or r8d, 0xffffffff
call fcn.140064324
cmp al, bl
jne 0x1400b0bfd
lea rdx, [rsp + 0x4c8]
lea rcx, [0x14011f58c]
mov r8d, r12d
call fcn.140064388
cmp al, bl
jne 0x1400b0bf7
lea rdx, [rsp + 0x4c8]
lea rcx, [0x140120c10]
mov r8d, 2
call fcn.140064324
cmp al, bl
jne 0x1400b0bf7
lea rdx, [rsp + 0x4c8]
lea rcx, [0x140121478]
mov r8d, r12d
call fcn.140064388
cmp al, bl
je 0x1400b082a
mov ecx, r15d
and ecx, 0xfffffffd
or ecx, 0x11
mov dword [rsp + 0xa0], ecx
mov r15d, ecx
jmp 0x1400b0c04
lea rdx, [rsp + 0x4c8]
lea rcx, [0x140121474]
mov r8d, 3
call fcn.140064324
cmp al, bl
je 0x1400b0850
mov esi, r12d
jmp 0x1400b0c04
lea rdx, [rsp + 0x4c8]
lea rcx, [0x14011961c]
mov r8d, 3
call fcn.140064324
cmp al, bl
je 0x1400b087b
mov dword [rsp + 0xc8], r12d
jmp 0x1400b0c04
lea rdx, [rsp + 0x4c8]
lea rcx, [0x140121470]
mov r8d, 3
call fcn.140064324
cmp al, bl
je 0x1400b08a6
mov dword [rsp + 0xb8], r12d
jmp 0x1400b0c04
lea rdx, [rsp + 0x4c8]
lea rcx, str.qu
mov r8d, 4
call fcn.140064324
cmp al, bl
je 0x1400b08d4
mov dword [rsp + 0xb8], 2
jmp 0x1400b0c04
lea rdx, [rsp + 0x4c8]
lea rcx, str.off
mov r8d, 4
call fcn.140064324
cmp al, bl
je 0x1400b08ff
mov dword [rsp + 0xd0], r12d
jmp 0x1400b0c04
lea rdx, [rsp + 0x4c8]
lea rcx, [0x14012145c]
mov r8d, 2
call fcn.140064324
cmp al, bl
je 0x1400b0929
mov ebx, dword [rsp + 0x50]
or ebx, 0x10
jmp 0x1400b061b
mov r11, qword [rsp + 0x4c8]
lea rcx, [0x140121458]
mov r8d, 3
mov rdx, r11
call fcn.14005a974
cmp al, bl
je 0x1400b0978
mov ebx, dword [rsp + 0x50]
add r11, 6
lea rdx, [rsp + 0x78]
or ebx, 0x10
lea rcx, [rsp + 0x4c8]
mov qword [rsp + 0x4c8], r11
mov dword [rsp + 0x50], ebx
call fcn.1400719e8
jmp 0x1400b061f
lea rdx, [rsp + 0x4c8]
lea rcx, str._O:N
mov r8d, 4
call fcn.140064324
cmp al, bl
je 0x1400b09a0
mov edi, 0x20
jmp 0x1400b0c04
lea rdx, [rsp + 0x4c8]
lea rcx, str._O:_N
mov r8d, 5
call fcn.140064324
cmp al, bl
je 0x1400b09c8
mov edi, 0x60
jmp 0x1400b0c04
lea rdx, [rsp + 0x4c8]
lea rcx, str.cur
mov r8d, 4
call fcn.140064324
cmp al, bl
je 0x1400b09f3
mov dword [rsp + 0xa8], r12d
jmp 0x1400b0c04
mov rbx, qword [rsp + 0x4c8]
lea rcx, str._size:
mov r8d, 7
mov rdx, rbx
call fcn.14005a974
xor ecx, ecx
cmp al, cl
je 0x1400b0a2d
or qword [rsp + 0x178], 0x10
add rbx, 2
mov qword [rsp + 0x4c8], rbx
jmp 0x1400b0a4c
lea rcx, [0x140121430]
mov r8d, 6
mov rdx, rbx
call fcn.14005a974
xor ecx, ecx
cmp al, cl
je 0x1400b0b02
lea rax, [rbx + 0xc]
lea rdx, [rsp + 0x158]
lea rcx, [rsp + 0x70]
mov qword [rsp + 0x70], rax
call fcn.140068810
mov r11, qword [rsp + 0x70]
xor eax, eax
cmp word [r11], ax
je 0x1400b072c
lea edx, [rax + 9]
cmp dx, word [r11]
ja 0x1400b0a88
cmp word [r11], 0xd
jbe 0x1400b0ab8
mov ecx, 0x20
cmp cx, word [r11]
je 0x1400b0abd
add r11, 2
lea rdx, [rsp + 0x160]
lea rcx, [rsp + 0x70]
mov qword [rsp + 0x70], r11
call fcn.140068810
mov r11, qword [rsp + 0x70]
xor eax, eax
lea edx, [rax + 9]
mov ecx, 0x20
cmp word [r11], ax
je 0x1400b072c
cmp dx, word [r11]
ja 0x1400b0ad8
cmp word [r11], 0xd
jbe 0x1400b072c
cmp cx, word [r11]
je 0x1400b072c
add r11, 2
lea rdx, [rsp + 0x170]
lea rcx, [rsp + 0x70]
mov qword [rsp + 0x70], r11
call fcn.140068810
jmp 0x1400b072c
mov eax, 0x2a
cmp ax, word [rbx]
je 0x1400b072e
mov ebx, dword [rsp + 0x50]
mov al, bl
lea rcx, [rsp + 0x100]
and al, 0x10
neg al
sbb eax, eax
or ebx, edi
and eax, esi
mov dword [rsp + 0x50], ebx
mov dword [rsp + 0x70], eax
cdqe
or qword [rsp + 0x178], rax
call fcn.1400618c8
lea rbx, [0x1401145d8]
lea rcx, [rsp + 0xf8]
mov rdx, rbx
call fcn.14006d808
lea rcx, [rsp + 0x80]
mov rdx, rbx
call fcn.14006d808
lea rcx, [rsp + 0x98]
mov rdx, rbx
call fcn.14006d808
mov rbx, qword [rsp + 0x4c8]
xor esi, esi
mov edi, 0x22
cmp dword [rsp + 0xb8], esi
je 0x1400b0cf0
cmp r15d, r12d
jne 0x1400b0cf0
lea rcx, [rsp + 0xc0]
call fcn.1400618c8
mov r8, qword [rsp + 0x4c8]
lea r13d, [rdi - 0x19]
movzx ecx, word [r8]
cmp di, cx
jne 0x1400b0c2b
add r8, 2
lea rcx, [rsp + 0x4c8]
mov edx, edi
mov qword [rsp + 0x4c8], r8
call fcn.14000a884
mov rcx, qword [rsp + 0x4c8]
cmp word [rcx], si
je 0x1400b0c6b
add rcx, 2
mov qword [rsp + 0x4c8], rcx
jmp 0x1400b0c6b
or r15d, 5
jmp 0x1400b0c04
and r15d, 0xfffffffd
or r15d, r12d
mov ebx, dword [rsp + 0x50]
jmp 0x1400b061f
add rax, 4
lea rcx, [rsp + 0x4c8]
mov qword [rsp + 0x4c8], rax
call fcn.1400592c8
jmp 0x1400b0b14
cmp cx, si
je 0x1400b0c6b
movsx edx, bpl
mov edi, 0x20
movzx eax, cx
cmp edx, eax
je 0x1400b0c66
cmp r13w, cx
ja 0x1400b0c4c
cmp cx, 0xd
jbe 0x1400b0c66
cmp di, cx
je 0x1400b0c66
add r8, 2
mov qword [rsp + 0x4c8], r8
mov cx, word [r8]
cmp cx, si
jne 0x1400b0c39
mov edi, 0x22
lea rcx, [rsp + 0x4c8]
call fcn.1400592c8
mov r8, qword [rsp + 0x4c8]
cmp word [r8], si
je 0x1400b0c96
movzx ecx, word [r8]
movsx eax, bpl
cmp eax, ecx
jne 0x1400b0bb4
sub r8, rbx
lea rcx, [rsp + 0xc0]
mov rdx, rbx
sar r8, 1
call fcn.140061b30
mov rdx, qword [rsp + 0xc0]
mov rcx, qword [rsp + 0x4c0]
lea r8, [rsp + 0x108]
xor r9d, r9d
mov byte [rsp + 0x20], r12b
call fcn.140078d20
mov r11, qword [rsp + 0x108]
lea rcx, [rsp + 0xc0]
mov qword [rsp + 0x118], r11
call fcn.1400592f8
jmp 0x1400b0d0c
lea rdx, [rsp + 0x4c8]
lea rcx, [rsp + 0x108]
movsx r8d, bpl
mov r9b, r12b
call fcn.14007c398
lea rdx, [rsp + 0x100]
lea rcx, [rsp + 0x118]
xor r8d, r8d
call fcn.1400657b8
mov r11, qword [rsp + 0x100]
mov ebx, 0x5c
mov qword [rsp + 0x90], r11
cmp r15d, esi
jne 0x1400b0dc3
movzx eax, word [r11]
cmp ax, si
je 0x1400b0dc3
mov ecx, 9
cmp cx, ax
ja 0x1400b0d5b
cmp ax, 0xd
jbe 0x1400b0dc3
mov ecx, 0x20
cmp cx, ax
je 0x1400b0dc3
mov ecx, 0x40
cmp cx, ax
jne 0x1400b0d79
mov dword [rsp + 0xd8], r12d
jmp 0x1400b0db2
mov ecx, 0x24
cmp cx, ax
jne 0x1400b0d90
mov dword [rsp + 0xd8], 3
jmp 0x1400b0db2
cmp bx, ax
jne 0x1400b0da3
cmp bx, word [r11 + 2]
je 0x1400b0dc0
or dword [rsp + 0x64], r12d
jmp 0x1400b0db2
mov ecx, 0x21
cmp cx, ax
jne 0x1400b0dc3
or dword [rsp + 0x64], 2
add r11, 2
mov qword [rsp + 0x90], r11
jmp 0x1400b0d42
mov r14b, r12b
lea rcx, [rsp + 0x90]
call fcn.1400592c8
mov r13d, r15d
and r13d, r12d
jne 0x1400b0de7
mov rcx, qword [rsp + 0x90]
call fcn.14001b86c
jmp 0x1400b0def
mov rax, qword [rsp + 0x90]
cmp dword [rsp + 0x64], esi
jne 0x1400b0e20
cmp r15d, esi
jne 0x1400b0e25
cmp r14b, sil
jne 0x1400b0e25
cmp bx, word [rax]
jne 0x1400b0e0a
cmp bx, word [rax + 2]
je 0x1400b0e25
lea rdx, [rsp + 0x80]
mov rcx, rax
call fcn.14001bcc8
jmp 0x1400b0e35
add rax, 2
cmp word [rax], bx
je 0x1400b0e1c
lea rcx, [rsp + 0x80]
mov rdx, rax
call fcn.14006d888
mov rcx, qword [rsp + 0x4c8]
movsx edi, bpl
movzx eax, word [rcx]
cmp edi, eax
jne 0x1400b0e8b
add rcx, 2
lea rdx, [rsp + 0x4c8]
movsx r8d, bpl
mov qword [rsp + 0x4c8], rcx
lea rcx, [rsp + 0x108]
mov r9b, r12b
call fcn.14007c398
lea rdx, [rsp + 0xf8]
xor r8d, r8d
mov rcx, rax
call fcn.1400657b8
mov rcx, qword [rsp + 0x4c8]
cmp r15d, esi
jne 0x1400b0edf
movzx eax, word [rcx]
cmp edi, eax
jne 0x1400b0edf
add rcx, 2
movsx ebx, bpl
lea rdx, [rsp + 0x4c8]
mov qword [rsp + 0x4c8], rcx
lea rcx, [rsp + 0x108]
mov r9b, r12b
movzx r8d, bx
call fcn.14007c398
lea rdx, [rsp + 0x150]
movzx r8d, bx
mov rcx, rax
call fcn.140065af0
mov rcx, qword [rsp + 0x4c8]
mov rax, qword [rsp + 0x150]
mov rdx, 0xfffffffffffffff8
cmp rax, rsi
cmovle rax, rdx
mov qword [rsp + 0x150], rax
movzx eax, word [rcx]
cmp eax, edi
jne 0x1400b14c6
add rcx, 2
mov qword [rsp + 0x4c8], rcx
lea rcx, [rsp + 0x4c8]
call fcn.1400592c8
mov rdx, qword [rsp + 0x4c8]
lea rcx, [rsp + 0x98]
call fcn.14006d920
mov rsi, qword [rsp + 0x98]
mov eax, 0x2a
xor ebp, ebp
cmp word [rsi], ax
jne 0x1400b0f53
mov bl, r12b
cmp word [rsi + 2], bp
je 0x1400b0f56
mov bl, bpl
lea rcx, [rsp + 0x138]
mov byte [rsp + 0x5c], bl
call fcn.1400618c8
mov rdi, qword [rsp + 0xf8]
mov qword [rsp + 0x140], rbp
mov qword [rsp + 0x148], rbp
cmp bl, bpl
jne 0x1400b0f94
lea rcx, [rsp + 0x138]
mov rdx, rdi
call fcn.14006d920
mov rdx, qword [rsp + 0x4d8]
mov qword [rsp + 0xf0], rbp
cmp rdx, rbp
je 0x1400b0fae
mov r14, qword [rdx]
jmp 0x1400b0fb1
mov r14, rbp
mov qword [rsp + 0xe0], r14
cmp word [rsi], bp
jne 0x1400b0fe3
cmp r14, rbp
je 0x1400b0fe3
mov rcx, qword [rsp + 0x4c0]
movzx eax, word [r14]
cmp word [rcx + 0x96], ax
jne 0x1400b0fe3
xor r9d, r9d
xor r8d, r8d
call fcn.1400605e4
lea rcx, [rsp + 0xc0]
mov edx, 0x32a
call fcn.14006193c
mov rbx, qword [rsp + 0xc0]
mov r10, qword [rsp + 0x4c0]
xor edx, edx
lea rax, [rbx + 4]
mov qword [rsp + 0xb0], rax
mov eax, 0x8b
mov qword [rsp + 0x88], rdx
and word [r10 + 0xc8], ax
mov rbp, rdx
mov dword [rsp + 0x58], edx
mov dword [rsp + 0x7c], edx
lea ecx, [rax + 0x75]
cmp word [rsi], dx
jne 0x1400b1051
cmp r14, rdx
je 0x1400b1051
movzx eax, word [r14]
mov r14d, ecx
cmp word [r10 + 0x96], ax
je 0x1400b1054
mov r14d, edx
cmp word [rdi], dx
je 0x1400b1070
mov rax, qword [rsp + 0x98]
cmp word [rax], dx
jne 0x1400b1070
mov dword [rsp + 0x68], r12d
cmp r14d, edx
je 0x1400b1074
mov dword [rsp + 0x68], edx
mov rcx, qword [rsp + 0x80]
mov r12d, r15d
mov qword [rsp + 0x90], rdx
and r12d, 4
mov rsi, rcx
mov qword [rsp + 0x4c8], rcx
je 0x1400b1144
lea rcx, [0x140135110]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rdx, qword [rsp + 0x80]
mov rcx, qword [rsp + 0x4c0]
xor esi, esi
or r9d, 0xffffffff
xor r8d, r8d
mov qword [rsp + 0x20], rsi
call fcn.140018664
cmp rax, rsi
jne 0x1400b10e8
lea rcx, [0x140135110]
lea ebx, [rsi + 2]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov ecx, esi
jmp 0x1400b1ccc
mov r8, qword [rax + 0x18]
mov rdx, qword [rax + 8]
movabs rcx, 0x1fffffffffffffff
shr r8, 1
and r8, rcx
lea rcx, [rsp + 0x90]
call fcn.140061b30
mov r11, qword [rsp + 0x90]
lea rcx, [0x140135110]
mov qword [rsp + 0x4c8], r11
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rsi, qword [rsp + 0x4c8]
mov rcx, qword [rsp + 0x80]
mov r10, qword [rsp + 0x4c0]
xor edx, edx
movsxd rax, r14d
mov qword [rsp + 0xe8], rax
test r15b, 2
je 0x1400b12fb
movzx eax, word [rsi]
mov qword [rsp + 0xb0], rdx
cmp ax, dx
je 0x1400b12e1
mov rbp, qword [rsp + 0x4e0]
mov r12, qword [rsp + 0xe8]
mov r14, qword [rsp + 0xe0]
mov r15w, word [rsp + 0x5e]
mov r13d, 0xfeff
test byte [r10 + 0xc8], 0xef
jne 0x1400b12e1
mov r9, rsi
cmp r15w, dx
je 0x1400b11c5
lea rcx, [rsp + 0x4c8]
movzx edx, r15w
call fcn.14000a884
mov rsi, qword [rsp + 0x4c8]
xor edx, edx
jmp 0x1400b11ee
cmp ax, dx
je 0x1400b11ee
mov ecx, 0xa
cmp ax, 0xd
je 0x1400b11ee
cmp ax, cx
je 0x1400b11ee
add rsi, 2
mov qword [rsp + 0x4c8], rsi
mov ax, word [rsi]
cmp ax, dx
jne 0x1400b11cf
movzx ebx, word [rsi]
mov word [rsi], dx
mov r8, r9
mov rdx, rdi
mov rcx, r10
call fcn.140060cec
mov rsi, qword [rsp + 0x4c8]
xor eax, eax
cmp r15w, ax
jne 0x1400b1227
cmp bx, 0xd
jne 0x1400b1227
lea ecx, [rax + 0xa]
cmp cx, word [rsi + 2]
jne 0x1400b122c
add rsi, 4
jmp 0x1400b1230
cmp bx, ax
je 0x1400b1238
add rsi, 2
mov qword [rsp + 0x4c8], rsi
inc dword [rsp + 0x58]
cmp r12, rax
je 0x1400b127b
mov rdx, qword [rsp + 0x4d0]
mov rcx, qword [rsp + 0x4c0]
lea rax, [r14 + 2]
mov qword [rsp + 0xf0], rax
lea rax, [0x1401145d8]
lea r8, [rsp + 0xf0]
xor r9d, r9d
mov qword [rsp + 0x20], rax
call fcn.1400ab008
jmp 0x1400b12a5
mov rdx, qword [rsp + 0x98]
cmp word [rdx], ax
je 0x1400b12ad
mov r8, qword [rsp + 0x4d0]
mov rcx, qword [rsp + 0x4c0]
xor r9d, r9d
mov qword [rsp + 0x20], rbp
call fcn.14004ad0c
mov rsi, qword [rsp + 0x4c8]
mov r10, qword [rsp + 0x4c0]
mov ecx, 0x100
movzx eax, word [r10 + 0xc8]
test cx, ax
je 0x1400b12d3
and ax, r13w
mov word [r10 + 0xc8], ax
mov ax, word [rsi]
xor edx, edx
cmp ax, dx
jne 0x1400b1191
lea rcx, [rsp + 0xb0]
call fcn.1400592f8
mov ecx, dword [rsp + 0x58]
mov ebx, dword [rsp + 0x7c]
jmp 0x1400b1ccc
cmp r13d, edx
je 0x1400b1834
cmp r12d, edx
je 0x1400b1320
lea rcx, [rsp + 0x4c8]
call fcn.1400592c8
mov rsi, qword [rsp + 0x4c8]
xor edx, edx
xorpd xmm6, xmm6
movsxd rbx, dword [rsp + 0xb8]
mov r11d, 1
lea r10d, [rbx - 1]
mov qword [rsp + 0xd0], rdx
mov rbp, rdx
movapd xmm8, xmm6
movapd xmm9, xmm6
mov qword [rsp + 0xd8], rdx
mov r15, r11
mov qword [rsp + 0xc8], r11
mov dword [rsp + 0x78], r10d
mov r13, rdx
mov r14b, dl
mov r9b, r11b
mov byte [rsp + 0x54], r11b
mov r12b, r11b
cmp dword [rsp + 0xa0], edx
je 0x1400b1538
lea r8, [rsp + 0x5e]
lea rdx, [rsp + 0xd8]
lea rcx, [rsp + 0x70]
mov qword [rsp + 0x70], rsi
mov byte [rsp + 0x5e], 0xc
call fcn.14006290c
lea rcx, [rsp + 0x70]
movapd xmm7, xmm0
call fcn.1400592c8
lea r8, [rsp + 0x61]
lea rdx, [rsp + 0xc8]
lea rcx, [rsp + 0x70]
mov byte [rsp + 0x61], 0xc
call fcn.14006290c
lea rcx, [rsp + 0x70]
movapd xmm8, xmm0
call fcn.1400592c8
mov r15, qword [rsp + 0xc8]
mov rbp, qword [rsp + 0xd8]
lea r8, [rsp + 0x60]
lea rdx, [rsp + 0xc8]
lea rax, [r15 + rbp]
lea rcx, [rsp + 0x70]
mov byte [rsp + 0x60], 0xc
mov qword [rsp + 0xc8], rax
call fcn.14006290c
mov al, byte [rsp + 0x60]
or al, byte [rsp + 0x61]
movapd xmm9, xmm0
or al, byte [rsp + 0x5e]
test al, 2
jne 0x1400b147e
mov r11d, 1
test r11b, al
setne r14b
add r14b, r11b
comisd xmm6, xmm8
jbe 0x1400b1449
mov r9b, 0xff
mov byte [rsp + 0x54], r9b
jmp 0x1400b144c
mov r9b, r11b
or eax, 0xffffffff
xor edx, edx
movzx r12d, r12b
cmp r15, rdx
cmovl r12d, eax
cmp r14b, r11b
jne 0x1400b146b
cmp r15, rdx
mov eax, edx
sete al
jmp 0x1400b1476
ucomisd xmm6, xmm8
jp 0x1400b1474
je 0x1400b147e
mov eax, edx
cmp eax, edx
je 0x1400b1529
lea rcx, [rsp + 0xd0]
call fcn.1400592f8
lea rcx, [rsp + 0x90]
call fcn.1400592f8
lea rcx, [rsp + 0x88]
call fcn.1400592f8
lea rcx, [rsp + 0xc0]
call fcn.1400592f8
lea rcx, [rsp + 0x138]
call fcn.1400592f8
mov r12, 0xffffffff80070057
lea rcx, [rsp + 0x98]
call fcn.1400592f8
lea rcx, [rsp + 0x80]
call fcn.1400592f8
lea rcx, [rsp + 0xf8]
call fcn.1400592f8
lea rcx, [rsp + 0x100]
call fcn.1400592f8
lea rcx, [rsp + 0x120]
call fcn.1400ee6f8
lea rcx, [rsp + 0x120]
call fcn.1400592f8
lea rcx, [rsp + 0x108]
call fcn.1400592f8
mov rax, r12
jmp 0x1400b1da5
mov r13, qword [rsp + 0xc8]
mov r10d, dword [rsp + 0x78]
jmp 0x1400b1541
movsd xmm7, qword [rsp + 0x4c8]
movzx eax, word [rsi]
mov r8, rbx
mov qword [rsp + 0xb0], rbx
cmp ax, dx
je 0x1400b1827
mov ebx, 0xfeff
mov rcx, qword [rsp + 0x4c0]
test byte [rcx + 0xc8], 0xef
jne 0x1400b1827
xor ecx, ecx
mov rdx, rsi
cmp dword [rsp + 0xa0], ecx
je 0x1400b1672
xor edx, edx
cmp r14b, r11b
jne 0x1400b15c4
cmp r12b, dl
jle 0x1400b159c
cmp rbp, r13
jg 0x1400b1827
cmp r12b, dl
jge 0x1400b15a7
cmp rbp, r13
jl 0x1400b1827
mov rsi, qword [rsp + 0x4c0]
mov r8, rdi
mov edx, ebp
mov rcx, rsi
call fcn.140064be4
add rbp, r15
jmp 0x1400b175d
cmp r9b, dl
jle 0x1400b15d7
comisd xmm7, xmm9
ja 0x1400b1827
cmp r9b, dl
jge 0x1400b15e4
comisd xmm9, xmm7
ja 0x1400b1827
lea r8, [0x14011ee38]
lea rcx, [rsp + 0x190]
movapd xmm1, xmm7
call fcn.1400df94c
lea rcx, [rsp + 0x190]
mov edx, 0x2e
call qword [sym.imp.SHLWAPI.dll_StrChrW]
xor esi, esi
mov rbx, rax
cmp rax, rsi
je 0x1400b1648
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_lstrlenW]
movsxd rcx, eax
lea rax, [rbx + rcx*2 - 2]
lea ecx, [rsi + 0x30]
jmp 0x1400b1636
mov word [rax], si
sub rax, 2
cmp cx, word [rax]
je 0x1400b162f
mov ecx, 0x2e
cmp cx, word [rax]
jne 0x1400b1648
mov word [rax], si
mov rsi, qword [rsp + 0x4c0]
lea r8, [rsp + 0x190]
mov rdx, rdi
mov rcx, rsi
call fcn.140060cec
mov ebx, 0xfeff
addsd xmm7, xmm8
jmp 0x1400b175d
xor r9d, r9d
cmp r8, r9
je 0x1400b16df
lea r8d, [r9 + 0x22]
cmp r8w, ax
jne 0x1400b16df
movsxd rax, r10d
lea rdx, [rsi + rax*2]
add rsi, 2
mov qword [rsp + 0x4c8], rsi
movzx eax, word [rsi]
cmp ax, r9w
je 0x1400b1716
cmp r8w, ax
jne 0x1400b168b
movzx eax, word [rsi + 2]
cmp ax, r9w
je 0x1400b16ce
mov r11d, 9
cmp r11w, ax
ja 0x1400b16c2
cmp ax, 0xd
jbe 0x1400b16ce
mov r11d, 0x20
cmp r11w, ax
jne 0x1400b168b
add rsi, 2
mov ecx, r10d
mov qword [rsp + 0x4c8], rsi
jmp 0x1400b1716
cmp ax, r9w
je 0x1400b1716
mov r8d, 0x20
lea r10d, [r8 - 0x17]
cmp r10w, ax
ja 0x1400b16fb
cmp ax, 0xd
jbe 0x1400b1716
cmp r8w, ax
je 0x1400b1716
add rsi, 2
mov qword [rsp + 0x4c8], rsi
mov ax, word [rsi]
cmp ax, r9w
jne 0x1400b16ef
movsxd rax, ecx
lea rcx, [rsp + 0xd0]
add rax, rax
sub rsi, rax
sub rsi, rdx
sar rsi, 1
mov r8, rsi
call fcn.140061b30
lea rcx, [rsp + 0x4c8]
call fcn.1400592c8
mov rsi, qword [rsp + 0x4c0]
mov r8, qword [rsp + 0xd0]
mov rcx, rsi
mov rdx, rdi
call fcn.140060cec
mov r11d, 1
xor ecx, ecx
add dword [rsp + 0x58], r11d
cmp qword [rsp + 0xe8], rcx
je 0x1400b17b1
mov rax, qword [rsp + 0xe0]
mov rdx, qword [rsp + 0x4d0]
lea r8, [rsp + 0xf0]
add rax, 2
xor r9d, r9d
mov rcx, rsi
mov qword [rsp + 0xf0], rax
lea rax, [0x1401145d8]
mov qword [rsp + 0x20], rax
call fcn.1400ab008
jmp 0x1400b17de
mov rdx, qword [rsp + 0x98]
cmp word [rdx], cx
je 0x1400b17e6
mov rax, qword [rsp + 0x4e0]
mov r8, qword [rsp + 0x4d0]
xor r9d, r9d
mov rcx, rsi
mov qword [rsp + 0x20], rax
call fcn.14004ad0c
mov r11d, 1
xor ecx, ecx
movzx eax, word [rsi + 0xc8]
mov edx, 0x100
test dx, ax
je 0x1400b1801
and ax, bx
mov word [rsi + 0xc8], ax
mov rsi, qword [rsp + 0x4c8]
mov r8, qword [rsp + 0xb0]
mov r9b, byte [rsp + 0x54]
mov ax, word [rsi]
mov r10d, dword [rsp + 0x78]
cmp ax, cx
jne 0x1400b155d
lea rcx, [rsp + 0xd0]
jmp 0x1400b12e9
call fcn.14001b86c
lea rcx, [rsp + 0x80]
mov rdx, rax
call fcn.14006d888
mov r11, qword [rsp + 0x80]
xor r9d, r9d
cmp word [r11], r9w
je 0x1400b1cc8
mov r12d, dword [rsp + 0x64]
movzx r13d, r9w
mov r15b, r9b
cmp r12d, r9d
je 0x1400b192e
cmp dword [rsp + 0xa8], r9d
je 0x1400b18bc
lea rdx, [rsp + 0x220]
mov ecx, 0x104
mov word [rsp + 0x220], r9w
call qword [sym.imp.KERNEL32.dll_GetCurrentDirectoryW]
mov r13w, word [rsp + 0x220]
cmp r13w, 0x61
jb 0x1400b18b9
cmp r13w, 0x7a
ja 0x1400b18b9
mov eax, 0xffdf
and r13w, ax
xor r9d, r9d
lea rbp, [rbx + 4]
mov ecx, 0x324
mov word [rbp + 2], r9w
mov word [rbp], r9w
mov word [rbx + 2], r9w
mov rdx, rbp
mov word [rbx], r9w
call qword [sym.imp.KERNEL32.dll_GetLogicalDriveStringsW]
xor r9d, r9d
and r12b, 2
mov rsi, rbp
mov rbx, rbp
cmp word [rbp], r9w
je 0x1400b1912
mov rcx, rbx
mov rsi, rbx
call qword [sym.imp.KERNEL32.dll_lstrlenW]
xor r9d, r9d
movsxd rcx, eax
lea rbx, [rbx + rcx*2 + 2]
cmp word [rbx], r9w
jne 0x1400b18f5
cmp r12b, r9b
mov r12, qword [rsp + 0x4e0]
cmovne rbp, rsi
mov rsi, qword [rsp + 0xb0]
jmp 0x1400b1b45
mov rax, qword [rsp + 0x88]
mov rsi, qword [rsp + 0xb0]
mov r12, qword [rsp + 0x4e0]
mov qword [rsp + 0x80], rax
mov qword [rsp + 0x88], r11
cmp r14d, r9d
jne 0x1400b1976
mov rax, qword [rsp + 0x98]
cmp word [rax], r9w
jne 0x1400b1976
mov eax, dword [rsp + 0x68]
cmp eax, r9d
je 0x1400b1cbe
cmp dword [rsp + 0xc8], r9d
je 0x1400b19a7
movzx ecx, word [r11]
cmp cx, r9w
je 0x1400b19a7
mov eax, 0x3a
cmp word [r11 + 2], ax
jne 0x1400b19a7
call fcn.1400f9934
xor r9d, r9d
cmp eax, r9d
je 0x1400b1b3a
lea rcx, [rsp + 0xa0]
call fcn.1400618c8
mov rcx, qword [rsp + 0x88]
lea r8, [rsp + 0xb0]
lea rdx, [rsp + 0xa0]
xor r15d, r15d
mov qword [rsp + 0xb0], r15
call fcn.1400dcbc8
mov r8, qword [rsp + 0xa0]
cmp dword [rsp + 0xd0], r15d
je 0x1400b1a04
mov rax, qword [rsp + 0xb0]
sub rax, r8
sar rax, 1
mov qword [rsp + 0x168], rax
cmp dword [rsp + 0x70], r15d
je 0x1400b1aa0
mov ecx, 8
call fcn.1400fa958
cmp rax, r15
je 0x1400b1a30
lea rdx, [rsp + 0xa0]
mov rcx, rax
call fcn.14006d868
jmp 0x1400b1a33
mov rax, r15
mov ebx, 1
lea r9, [rsp + 0xe8]
lea r8, [rsp + 0x130]
lea rdx, [rsp + 0x128]
lea rcx, [rsp + 0x120]
mov qword [rsp + 0x28], rbx
mov dword [rsp + 0x20], 8
mov qword [rsp + 0xe8], rax
call fcn.140061c18
cmp dword [rsp + 0x64], r15d
je 0x1400b1a98
cmp word [rbp], r15w
je 0x1400b1a98
lea rcx, [rsp + 0xa0]
mov r15b, bl
call fcn.1400592f8
xor r9d, r9d
jmp 0x1400b1b45
mov r8, qword [rsp + 0xa0]
mov eax, dword [rsp + 0x78]
mov rbx, qword [rsp + 0x4c0]
mov r9, qword [rsp + 0x4d0]
mov qword [rsp + 0x48], r12
mov dword [rsp + 0x40], eax
lea rax, [rsp + 0x150]
mov qword [rsp + 0x38], rax
mov rax, qword [rsp + 0x98]
mov ecx, r14d
or ecx, dword [rsp + 0x50]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0xe0]
or ecx, dword [rsp + 0xd8]
lea rdx, [rsp + 0x138]
mov dword [rsp + 0x28], ecx
mov rcx, rbx
mov qword [rsp + 0x20], rax
call fcn.1400af860
mov ecx, 0x100
add dword [rsp + 0x58], eax
movzx eax, word [rbx + 0xc8]
test cx, ax
je 0x1400b1b2a
mov ecx, 0xfeff
and ax, cx
mov word [rbx + 0xc8], ax
lea rcx, [rsp + 0xa0]
call fcn.1400592f8
xor r9d, r9d
cmp dword [rsp + 0x64], r9d
je 0x1400b1c1c
movsxd rbx, dword [rsp + 0xa8]
cmp word [rbp], r9w
je 0x1400b1c1c
lea rax, [rsp + 0x150]
cmp qword [rax], r9
je 0x1400b1c1c
mov rax, qword [rsp + 0x4c0]
test byte [rax + 0xc8], 0xef
jne 0x1400b1c1c
lea rcx, [rsp + 0x88]
mov rdx, rbp
call fcn.14006d920
mov rdx, qword [rsp + 0x80]
lea rcx, [rsp + 0x88]
call fcn.140061a04
xor r9d, r9d
cmp rbx, r9
jne 0x1400b1bfb
test byte [rsp + 0x64], 2
je 0x1400b1bcf
sub rbp, 2
cmp rbp, rsi
jbe 0x1400b1be4
lea rax, [rbp - 2]
cmp word [rax], r9w
je 0x1400b1be4
mov rbp, rax
cmp rax, rsi
ja 0x1400b1bbb
jmp 0x1400b1be4
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_lstrlenW]
inc eax
xor r9d, r9d
cdqe
lea rbp, [rbp + rax*2]
mov r11, qword [rsp + 0x88]
cmp r13w, word [r11]
jne 0x1400b1956
jmp 0x1400b1b4d
mov rax, qword [rsp + 0x88]
mov dword [rsp + 0xa8], r9d
mov word [rax], r13w
mov r11, qword [rsp + 0x88]
jmp 0x1400b1956
cmp r15b, r9b
je 0x1400b12ee
mov rbx, qword [rsp + 0x98]
lea r8, [rsp + 0x128]
lea rdx, [rsp + 0x120]
mov r9d, 8
xor ecx, ecx
call fcn.140061d28
or r14d, dword [rsp + 0x50]
mov r9, qword [rsp + 0x4d0]
mov rcx, qword [rax]
mov rax, qword [rsp + 0x4e0]
or r14d, dword [rsp + 0xd8]
mov r8, qword [rcx]
mov rcx, qword [rsp + 0x4c0]
mov qword [rsp + 0x48], rax
mov eax, dword [rsp + 0x78]
lea rdx, [rsp + 0x138]
mov dword [rsp + 0x40], eax
lea rax, [rsp + 0x150]
mov qword [rsp + 0x38], rax
mov rax, qword [rsp + 0xe0]
mov qword [rsp + 0x30], rbx
mov dword [rsp + 0x28], r14d
mov qword [rsp + 0x20], rax
call fcn.1400af860
mov ecx, dword [rsp + 0x58]
add ecx, eax
jmp 0x1400b12f2
mov ecx, dword [rsp + 0x58]
mov ebx, dword [rsp + 0x7c]
jmp 0x1400b1cd0
mov ecx, ebp
mov ebx, ecx
mov eax, dword [rsp + 0x68]
mov r9, qword [rsp + 0x4c0]
mov edx, 0x8b
and word [r9 + 0xc8], dx
xor edx, edx
cmp byte [rsp + 0x5c], dl
je 0x1400b1d02
mov r8, qword [rsp + 0x138]
mov rdx, rdi
mov rcx, r9
call fcn.140060cec
jmp 0x1400b1d13
cmp eax, edx
je 0x1400b1d13
mov edx, ecx
mov r8, rdi
mov rcx, r9
call fcn.140064be4
lea rcx, [rsp + 0x90]
call fcn.1400592f8
lea rcx, [rsp + 0x88]
call fcn.1400592f8
lea rcx, [rsp + 0xc0]
call fcn.1400592f8
lea rcx, [rsp + 0x138]
call fcn.1400592f8
lea rcx, [rsp + 0x98]
call fcn.1400592f8
lea rcx, [rsp + 0x80]
call fcn.1400592f8
lea rcx, [rsp + 0xf8]
call fcn.1400592f8
lea rcx, [rsp + 0x100]
call fcn.1400592f8
lea rcx, [rsp + 0x120]
call fcn.1400ee6f8
lea rcx, [rsp + 0x120]
call fcn.1400592f8
lea rcx, [rsp + 0x108]
call fcn.1400592f8
movsxd rax, ebx
lea r11, [rsp + 0x478]
movaps xmm6, xmmword [r11 - 0x18]
movaps xmm7, xmmword [r11 - 0x28]
movaps xmm8, xmmword [r11 - 0x38]
movaps xmm9, xmmword [r11 - 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret