Function at 0x1400a9d70
Capabilities:
Get common file path

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x308
mov rdi, r9
mov rsi, r8
mov r12, rdx
mov rbx, rcx
mov r14, qword [rsp + 0x3a0]
mov r15, qword [rsp + 0x390]
mov rax, qword [0x140191d78]
xor rax, rsp
mov qword [rsp + 0x300], rax
call fcn.14008f820
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x10]
mov rcx, rax
call fcn.1400913d0
test al, al
je 0x1400a9e25
mov rax, qword [rsp + 0x398]
mov rcx, qword [rsp + 0x388]
mov edx, dword [rsp + 0x380]
mov ebp, dword [rsp + 0x378]
mov r9, qword [rsp + 0x370]
mov qword [rsp + 0x48], r14
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x38], r15
mov qword [rsp + 0x30], rcx
mov dword [rsp + 0x28], edx
mov dword [rsp + 0x20], ebp
mov rcx, r12
mov rdx, rsi
mov r8, rdi
call rbx
mov edi, 1
test eax, eax
jne 0x1400aa020
call fcn.14008f820
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x10]
mov rcx, rax
call fcn.1400913b0
xor edi, edi
test al, al
je 0x1400aa020
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, eax
mov edx, 0x18
mov r8d, 1
mov rcx, r14
call fcn.140096490
test al, al
je 0x1400aa016
call fcn.1400963c0
mov r13, rax
test r13, r13
je 0x1400aa016
test rsi, rsi
je 0x1400a9e93
mov rcx, rsi
call fcn.140096bd0
mov rdi, rax
test rdi, rdi
jne 0x1400a9e95
jmp 0x1400aa016
xor edi, edi
test r12, r12
je 0x1400a9eb1
mov rcx, r12
call fcn.140096bd0
mov rsi, rax
test rsi, rsi
jne 0x1400a9eb3
xor edx, edx
mov rcx, rdi
jmp 0x1400a9ed7
xor esi, esi
test r15, r15
je 0x1400a9ee1
mov rcx, r15
call fcn.140096bd0
mov r15, rax
test r15, r15
jne 0x1400a9ee4
xor edx, edx
mov rcx, rdi
call fcn.140096890
xor edx, edx
mov rcx, rsi
call fcn.140096890
jmp 0x1400aa016
xor r15d, r15d
test rdi, rdi
je 0x1400a9eef
mov rax, qword [rdi + 8]
jmp 0x1400a9ef1
xor eax, eax
mov qword [rsp + 0x88], rax
test rsi, rsi
je 0x1400a9f04
mov rax, qword [rsi + 8]
jmp 0x1400a9f06
xor eax, eax
mov qword [rsp + 0x80], rax
test r15, r15
je 0x1400a9f19
mov rax, qword [r15 + 8]
jmp 0x1400a9f1b
xor eax, eax
mov qword [rsp + 0x78], rax
mov qword [rsp + 0x70], 0
lea rbp, [rsp + 0xf0]
mov ecx, 0x104
mov rdx, rbp
call qword [sym.imp.KERNEL32.dll_GetCurrentDirectoryW]
dec eax
cmp eax, 0x102
ja 0x1400a9f4d
mov qword [rsp + 0x70], rbp
lea rbp, [rsp + 0x60]
mov rcx, rbp
mov rdx, r13
call fcn.140097220
xorps xmm0, xmm0
lea rax, [rsp + 0x90]
movaps xmmword [rax + 0x40], xmm0
movaps xmmword [rax + 0x30], xmm0
movaps xmmword [rax + 0x20], xmm0
movaps xmmword [rax + 0x10], xmm0
movaps xmmword [rax], xmm0
mov qword [rax + 0x50], 0
lea rcx, [rsp + 0x50]
mov dword [rcx], 0x18
mov qword [rcx + 8], r14
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x30], rcx
lea rax, [rsp + 0x78]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x70]
mov qword [rsp + 0x20], rax
lea r8, [rsp + 0x80]
lea r9, [rsp + 0x88]
mov edx, 0xd
mov rcx, rbp
call fcn.1400a9a70
mov ebp, eax
xor edx, edx
mov rcx, rdi
call fcn.140096890
xor edx, edx
mov rcx, rsi
call fcn.140096890
xor edx, edx
mov rcx, r15
call fcn.140096890
test ebp, ebp
je 0x1400a9ff5
mov al, 1
jmp 0x1400aa012
mov ecx, dword [rsp + 0x98]
call qword [sym.imp.KERNEL32.dll_SetLastError]
xor edi, edi
cmp dword [rsp + 0x98], 0
sete dil
xor eax, eax
test al, al
je 0x1400aa020
mov ecx, ebx
call qword [sym.imp.KERNEL32.dll_SetLastError]
xor edi, edi
mov rcx, qword [rsp + 0x300]
xor rcx, rsp
call fcn.1400edc60
mov eax, edi
add rsp, 0x308
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret