Function at 0x14016cbd7
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 [0x14030f948]
xor rax, rsp
mov qword [rsp + 0x300], rax
call fcn.1400aff18
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + reloc.WS2_32.dll_recv]
mov rcx, rax
call fcn.140114ca4
test al, al
je 0x14016cc8c
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 0x14016ce85
call fcn.1400aff18
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + reloc.WS2_32.dll_recv]
mov rcx, rax
call fcn.140114c94
xor edi, edi
test al, al
je 0x14016ce85
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, eax
mov edx, 0x18
mov rcx, r14
mov r8d, 1
call fcn.1401409e2
test al, al
je 0x14016ce7b
call fcn.140140918
test rax, rax
je 0x14016ce7b
mov r13, rax
test rsi, rsi
je 0x14016ccfa
mov rcx, rsi
call fcn.14014109d
mov rdi, rax
test rax, rax
jne 0x14016ccfc
jmp 0x14016ce7b
xor edi, edi
test r12, r12
je 0x14016cd16
mov rcx, r12
call fcn.14014109d
mov rsi, rax
test rax, rax
jne 0x14016cd18
mov rcx, rdi
jmp 0x14016cd3a
xor esi, esi
test r15, r15
je 0x14016cd46
mov rcx, r15
call fcn.14014109d
mov r15, rax
test rax, rax
jne 0x14016cd49
mov rcx, rdi
xor edx, edx
call fcn.14014114b
mov rcx, rsi
xor edx, edx
call fcn.14014114b
jmp 0x14016ce7b
xor r15d, r15d
test rdi, rdi
je 0x14016cd54
mov rax, qword [rdi + 8]
jmp 0x14016cd56
xor eax, eax
mov qword [rsp + 0x88], rax
test rsi, rsi
je 0x14016cd69
mov rax, qword [rsi + 8]
jmp 0x14016cd6b
xor eax, eax
mov qword [rsp + 0x80], rax
test r15, r15
je 0x14016cd7e
mov rax, qword [r15 + 8]
jmp 0x14016cd80
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 0x14016cdb2
mov qword [rsp + 0x70], rbp
lea rbp, [rsp + 0x60]
mov rcx, rbp
mov rdx, r13
call fcn.1401418b2
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 rcx, rbp
mov edx, reloc.WS2_32.dll_listen
call fcn.14016c9d1
mov ebp, eax
mov rcx, rdi
xor edx, edx
call fcn.14014114b
mov rcx, rsi
xor edx, edx
call fcn.14014114b
mov rcx, r15
xor edx, edx
call fcn.14014114b
test ebp, ebp
je 0x14016ce5a
mov al, 1
jmp 0x14016ce77
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 0x14016ce85
mov ecx, ebx
call qword [sym.imp.KERNEL32.dll_SetLastError]
xor edi, edi
mov rcx, qword [rsp + 0x300]
xor rcx, rsp
call fcn.140183a80
mov eax, edi
add rsp, 0x308
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret