Function at 0x14001edc4
Capabilities:
Get common file path

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
lea rbp, [rsp - 0x170]
sub rsp, 0x270
mov rax, qword [0x140044158]
xor rax, rsp
mov qword [rbp + 0x160], rax
mov r12, r8
mov r13, rdx
mov rbx, rcx
mov rcx, r8
call fcn.1400192cc
mov rcx, r13
call fcn.14001ee40
mov esi, eax
xor edi, edi
test eax, eax
je 0x14001ebe3
lea rdx, [rsi*2]
add rdx, r13
mov r8d, edi
movzx ecx, word [rdx]
test cx, cx
je 0x14001ebdc
lea r14d, [rdi + 0x5c]
cmp cx, 0x2e
jne 0x14001eb88
test r8d, r8d
je 0x14001eb4f
lea eax, [r8 - 1]
cmp word [rdx + rax*2], r14w
je 0x14001eb4f
cmp word [rdx + rax*2], 0x2f
jne 0x14001eb88
lea r9d, [r8 + 2]
lea eax, [r9 - 1]
movzx eax, word [rdx + rax*2]
test ax, ax
je 0x14001eb97
cmp ax, r14w
je 0x14001eb97
cmp ax, 0x2f
je 0x14001eb97
cmp ax, 0x2e
jne 0x14001eb88
cmp word [rdx + r9*2], di
je 0x14001eb97
cmp word [rdx + r9*2], r14w
je 0x14001eb97
cmp word [rdx + r9*2], 0x2f
je 0x14001eb97
inc r8d
movzx ecx, word [rdx + r8*2]
test cx, cx
je 0x14001ebdc
jmp 0x14001eb32
lea rcx, [rsp + 0x40]
call fcn.140018e40
nop
lea rcx, [rsp + 0x40]
call fcn.14001f39c
test al, al
je 0x14001ebd2
cmp esi, dword [r12 + 8]
jae 0x14001ebc4
mov dword [r12 + 8], esi
mov rdx, qword [r12]
mov word [rdx + rsi*2], di
lea rdx, [rsp + 0x40]
mov rcx, r12
call fcn.140019648
nop
mov rcx, qword [rsp + 0x40]
call sub.mfc140u.dll_operator_1
mov al, 1
jmp 0x14001eda1
lea rcx, [rsp + 0x20]
call fcn.140018e98
nop
test rbx, rbx
je 0x14001ec02
mov rdx, rbx
lea rcx, [rsp + 0x20]
call fcn.1400192cc
jmp 0x14001ec42
mov dword [rsp + 0x28], edi
mov rax, qword [rsp + 0x20]
mov word [rax], di
mov word [rsp + 0x50], di
lea rdx, [rsp + 0x50]
mov ecx, operator
call qword [sym.imp.api_ms_win_core_processenvironment_l1_1_0.dll_GetCurrentDirectoryW]
mov ebx, eax
lea rdx, [rsp + 0x50]
lea rcx, [rsp + 0x20]
call fcn.1400192cc
lea eax, [rbx - 1]
cmp eax, 0x103
ja 0x14001ed91
mov r14d, 0x5c
mov ecx, dword [rsp + 0x28]
mov rbx, qword [rsp + 0x20]
test ecx, ecx
je 0x14001ec94
cmp word [rbx + rcx*2 - 2], r14w
je 0x14001ec94
cmp word [rbx + rcx*2 - 2], 0x2f
je 0x14001ec94
cmp dword [rsp + 0x2c], ecx
jne 0x14001ec7e
lea rcx, [rsp + 0x20]
call fcn.140019c24
mov ecx, dword [rsp + 0x28]
mov rbx, qword [rsp + 0x20]
mov eax, ecx
mov word [rbx + rax*2], r14w
inc ecx
mov word [rbx + rcx*2], di
mov dword [rsp + 0x28], ecx
mov rbx, qword [rsp + 0x20]
mov rcx, rbx
call fcn.14001f288
mov rcx, rbx
test al, al
je 0x14001ecb3
call fcn.14001ef28
mov esi, eax
test eax, eax
jne 0x14001ecfb
jmp 0x14001ed96
call fcn.14001f114
test al, al
je 0x14001ecc3
mov esi, 3
jmp 0x14001ecfb
cmp word [rbx], r14w
je 0x14001ecd3
cmp word [rbx], 0x2f
jne 0x14001ed96
cmp word [rbx + 2], r14w
je 0x14001ece5
cmp word [rbx + 2], 0x2f
jne 0x14001ed96
lea rcx, [rbx + 4]
call fcn.14001eee8
mov esi, eax
test eax, eax
je 0x14001ed96
add esi, 2
lea rcx, [rsp + 0x30]
call fcn.140018e98
nop
cmp word [r13], r14w
je 0x14001ed39
cmp word [r13], 0x2f
je 0x14001ed39
mov ebx, esi
mov rax, qword [rsp + 0x20]
lea rdx, [rax + rbx*2]
lea rcx, [rsp + 0x30]
call fcn.140019710
mov rdx, r13
lea rcx, [rsp + 0x30]
call fcn.140019710
jmp 0x14001ed49
lea rdx, [r13 + 2]
lea rcx, [rsp + 0x30]
call fcn.1400192cc
mov ebx, esi
lea rcx, [rsp + 0x30]
call fcn.14001f39c
test al, al
je 0x14001ed87
cmp esi, dword [rsp + 0x28]
jae 0x14001ed6a
mov dword [rsp + 0x28], esi
mov rax, qword [rsp + 0x20]
mov word [rax + rbx*2], di
lea rdx, [rsp + 0x20]
mov rcx, r12
call fcn.14001918c
lea rdx, [rsp + 0x30]
mov rcx, r12
call fcn.140019648
mov dil, 1
mov rcx, qword [rsp + 0x30]
call sub.mfc140u.dll_operator_1
mov rbx, qword [rsp + 0x20]
mov rcx, rbx
call sub.mfc140u.dll_operator_1
mov al, dil
mov rcx, qword [rbp + 0x160]
xor rcx, rsp
call fcn.140020a90
add rsp, 0x270
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
mov r8, rdx
mov rdx, rcx
xor ecx, ecx
jmp 0x14001eac4