Function at 0x1801ee3e0
Capabilities:
Get common file path

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x408
mov rbp, r8
mov r14, rdx
mov rsi, rcx
mov rax, qword [0x1804a9038]
xor rax, rsp
mov qword [rsp + 0x400], rax
lea rdi, [rsp + 0x378]
mov r8d, 0x88
mov rcx, rdi
mov dl, 0xaa
call fcn.180366c80
mov qword [rdi - 0x18], rdi
mov qword [rdi - 0x10], rdi
lea rax, [rsp + 0x3f8]
mov qword [rdi - 8], rax
lea r15, [rsp + 0x360]
mov rcx, r14
mov rdx, r15
call fcn.1801f1090
lea rcx, [rsp + 0x138]
mov word [rcx + 0x10], 0x106
mov qword [rcx], r15
call fcn.1801edd80
test al, al
jne 0x1801ee48c
xor ecx, ecx
xor edx, edx
call qword [sym.imp.KERNEL32.dll_GetCurrentDirectoryW]
test eax, eax
je 0x1801ee47a
mov r15d, eax
jmp 0x1801ee48f
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov rcx, rsi
mov edx, eax
call fcn.1801ec6f0
jmp 0x1801ee4c9
xor r15d, r15d
mov r14, qword [rsp + 0x360]
mov rbx, qword [rsp + 0x368]
sub rbx, r14
lea rax, [rbx + r15]
cmp rax, 0xf8
jae 0x1801ee559
lea rdx, [rsp + 0x30]
mov qword [rdx], r14
mov qword [rdx + 8], rbx
mov rcx, rsi
mov r8, rbp
call fcn.1801ee9c0
mov rcx, qword [rsp + 0x360]
cmp rcx, rdi
je 0x1801ee4db
call fcn.18037e050
mov rcx, qword [rsp + 0x400]
xor rcx, rsp
call fcn.180364a40
mov rax, rsi
add rsp, 0x408
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov rax, qword [rsp + 0x138]
mov rcx, qword [rsp + 0x140]
sub rcx, rax
lea rdx, [rsp + 0x40]
mov qword [rdx], rax
mov qword [rdx + 8], rcx
mov rcx, rsi
mov r8, qword [rsp + 0x28]
call fcn.1801ee9c0
lea rdi, [rsp + 0x378]
lea r12, [rsp + 0x150]
mov rcx, qword [rsp + 0x138]
cmp rcx, r12
je 0x1801ee4c9
call fcn.18037e050
jmp 0x1801ee4c9
cmp rbx, 4
jb 0x1801ee56c
cmp dword [r14], 0x5c3f5c5c
je 0x1801ee4b2
lea r12, [rsp + 0x150]
mov r8d, 0x210
mov rcx, r12
mov dl, 0xaa
call fcn.180366c80
mov qword [r12 - 0x18], r12
lea rax, [rsp + 0x358]
mov qword [r12 - 8], rax
mov dword [r12], 0x5c3f5c5c
lea rax, [rsp + 0x154]
mov qword [rax - 0x14], rax
movabs r13, 0xaaaaaaaaaaaaaaaa
test r15, r15
je 0x1801ee6be
lea rbx, [rsp + 0xd8]
mov qword [rbx + 0x50], r13
movaps xmm0, xmmword [0x1803ff180]
movups xmmword [rbx + 0x40], xmm0
movups xmmword [rbx + 0x30], xmm0
movups xmmword [rbx + 0x20], xmm0
movups xmmword [rbx + 0x10], xmm0
movups xmmword [rbx], xmm0
mov qword [rbx - 0x18], rbx
mov qword [rbx - 0x10], rbx
lea rax, [rsp + 0x128]
mov qword [rax - 0x58], rax
movups xmmword [rsi], xmm0
lea rdx, [rsp + 0xc0]
mov rcx, rsi
call fcn.1801ee890
cmp dword [rsi], 0
je 0x1801ee62a
mov rcx, qword [rsp + 0xc0]
cmp rcx, rbx
je 0x1801ee53e
call fcn.18037e050
jmp 0x1801ee53e
mov r12, qword [rsp + 0xc0]
mov rdi, qword [rsp + 0xc8]
mov r15, rdi
sub r15, r12
mov r8, qword [rsp + 0x140]
mov rax, qword [rsp + 0x148]
sub rax, r8
cmp r15, rax
jbe 0x1801ee679
add r8, r15
lea rcx, [rsp + 0x138]
sub r8, qword [rcx]
mov r9d, 1
lea rdx, [rsp + 0x150]
call fcn.1801efbb0
cmp r12, rdi
je 0x1801ee691
mov rcx, qword [rsp + 0x140]
mov rdx, r12
mov r8, r15
call fcn.1803665d0
add qword [rsp + 0x140], r15
mov rcx, qword [rsp + 0xc0]
cmp rcx, rbx
je 0x1801ee6ab
call fcn.18037e050
mov r14, qword [rsp + 0x360]
mov rbx, qword [rsp + 0x368]
sub rbx, r14
mov qword [rsp + 0x28], rbp
lea r12, [rsp + 0xd0]
mov qword [r12 + 0x10], r13
movaps xmm0, xmmword [0x1803ff180]
movaps xmmword [r12], xmm0
movaps xmmword [r12 - 0x10], xmm0
lea rdx, [rsp + 0xb0]
mov qword [rdx], r14
mov qword [rdx + 8], rbx
lea r15, [rsp + 0xc0]
mov rcx, r15
call fcn.1801ed150
mov r13, qword [rsp + 0x360]
mov rbp, qword [rsp + 0x368]
sub rbp, r13
jmp 0x1801ee783
mov rax, qword [rsp + 0xd0]
movzx eax, word [rax]
cmp eax, 0x2e2e
je 0x1801ee7ca
mov ax, 0x101
lea rcx, [rsp + 0x98]
mov word [rcx + 0x10], ax
lea r9, [rsp + 0x80]
mov word [r9 + 0x10], ax
lea r8, [rsp + 0x68]
mov word [r8 + 0x10], ax
lea rdx, [rsp + 0x50]
mov word [rdx + 0x10], 0x105
mov qword [rdx], r12
mov qword [rsp + 0x20], rcx
lea rcx, [rsp + 0x138]
call fcn.1801ed730
lea r15, [rsp + 0xc0]
mov rcx, r15
call fcn.1801ed2a0
cmp qword [r15], r13
jne 0x1801ee796
cmp qword [rsp + 0xe0], rbp
je 0x1801ee502
mov rax, qword [rsp + 0xd8]
cmp rax, 2
je 0x1801ee716
cmp rax, 1
jne 0x1801ee72c
mov rax, qword [rsp + 0xd0]
cmp byte [rax], 0x2e
jne 0x1801ee72c
jmp 0x1801ee773
mov r14b, 1
jmp 0x1801ee80e
mov rbx, qword [rsp + 0x138]
mov rdi, qword [rsp + 0x140]
lea rcx, [rsp + 0x98]
mov qword [rcx], rbx
mov rax, rdi
sub rax, rbx
mov qword [rcx + 8], rax
call fcn.1801ed4f0
mov r15, rax
sub rdi, rbx
je 0x1801ee7c5
mov al, byte [rbx + r15]
cmp al, 0x5c
setne cl
cmp al, 0x2f
setne r14b
and r14b, cl
cmp rdi, r15
cmovae rdi, r15
lea rcx, [rsp + 0x80]
mov qword [rcx], rbx
mov qword [rcx + 8], rdi
call fcn.1801ed400
test r15, r15
je 0x1801ee855
lea rcx, [rax + 1]
jmp 0x1801ee839
dec r15
je 0x1801ee855
cmp rcx, r15
je 0x1801ee850
movzx edx, byte [rbx + r15 - 1]
cmp edx, 0x5c
je 0x1801ee834
cmp edx, 0x2f
je 0x1801ee834
jmp 0x1801ee858
mov r15, rcx
jmp 0x1801ee858
xor r15d, r15d
mov rcx, r15
xor rcx, 1
or rax, rcx
setne al
cmp r15, 0xffffffffffffffff
je 0x1801ee773
or r14b, al
je 0x1801ee773
add r15, qword [rsp + 0x138]
mov qword [rsp + 0x140], r15
jmp 0x1801ee773