Function at 0x1400c6f30
Capabilities:
Get common file path
Move file
Set current directory

Disassembly:
push rbp
push rbx
push rsi
push r14
lea rbp, [rsp - 0x7e8]
sub rsp, 0x8e8
mov rax, qword [0x1401f7280]
xor rax, rsp
mov qword [rbp + 0x7d0], rax
mov r14, r8
mov rbx, rdx
mov rsi, rcx
test rcx, rcx
jne 0x1400c6f89
lea r8d, [rcx + 9]
mov rcx, qword [0x1401fbb50]
xor r9d, r9d
mov edx, 0x110a
call qword [sym.imp.USER32.dll_SendMessageW]
mov rsi, rax
test rax, rax
je 0x1400c723c
lea rdx, [rbp - 0x70]
mov r9d, 1
mov r8d, 0x104
mov rcx, rsi
call fcn.1400d0790
lea rax, [rbp - 0x70]
mov r8, r14
sub r8, rax
nop dword [rax + rax]
movzx edx, word [rax]
movzx ecx, word [rax + r8]
sub edx, ecx
jne 0x1400c6fc4
add rax, 2
test ecx, ecx
jne 0x1400c6fb0
mov qword [rsp + 0x928], rdi
mov qword [rsp + 0x8e0], r15
test edx, edx
je 0x1400c7227
lea rdx, [rbp - 0x70]
xor r9d, r9d
mov r8d, 0x104
mov rcx, rsi
call fcn.1400d0790
lea rcx, [rbp - 0x70]
call fcn.1400ed890
lea rcx, [rbp - 0x70]
or rax, 0xffffffffffffffff
inc rax
cmp word [rcx + rax*2], 0
jne 0x1400c7002
dec eax
movsxd rcx, eax
js 0x1400c7022
cmp word [rbp + rcx*2 - 0x70], 0x5c
je 0x1400c7022
dec eax
dec rcx
jns 0x1400c7013
inc eax
movsxd rcx, eax
add rcx, rcx
cmp rcx, 0x208
jae 0x1400c7258
xor edi, edi
lea r8, [rbp - 0x70]
lea rdx, str._s_s
mov word [rbp + rcx - 0x70], di
lea rcx, [rbp + 0x1a0]
mov r9, r14
call fcn.1400f98c8
lea r15, [0x140208ca0]
mov rdx, rbx
mov rcx, r15
call fcn.1400f92fc
test eax, eax
jne 0x1400c708d
lea rcx, [rbp + 0x3b0]
mov edx, 0x104
call qword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
lea rcx, [rbp + 0x3b0]
call qword [sym.imp.KERNEL32.dll_SetCurrentDirectoryW]
lea rdx, [rbp + 0x1a0]
mov rcx, rbx
call fcn.1400fa7c0
test eax, eax
je 0x1400c70f1
mov rcx, qword [0x1401fbba0]
lea r9, [rbp + 0x1a0]
xor r8d, r8d
mov edx, 0x4d8
mov dword [rsp + 0x28], edi
mov qword [rsp + 0x20], rdi
call fcn.1400f11b0
mov rdx, r15
sub rdx, rbx
nop word [rax + rax]
movzx eax, word [rbx]
lea rbx, [rbx + 2]
mov word [rdx + rbx - 2], ax
test ax, ax
jne 0x1400c70d0
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_SetCurrentDirectoryW]
xor eax, eax
jmp 0x1400c722c
mov rdx, r14
mov rcx, rsi
call fcn.1400d0bf0
mov rdx, rbx
mov rcx, r15
call fcn.1400f92fc
test eax, eax
jne 0x1400c7227
mov rcx, rdi
movzx eax, word [rbp + rcx + 0x1a0]
lea rcx, [rcx + 2]
mov word [rcx + r15 - 2], ax
test ax, ax
jne 0x1400c7112
mov rcx, r15
call fcn.1400e47e0
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_SetCurrentDirectoryW]
mov rcx, qword [0x1401fbab8]
xor r9d, r9d
xor r8d, r8d
mov edx, 0x1004
call qword [sym.imp.USER32.dll_SendMessageW]
test eax, eax
jle 0x1400c721f
nop word [rax + rax]
xor edx, edx
lea rcx, [rsp + 0x30]
lea r8d, [rdx + 0x58]
call fcn.1400f9ab0
mov rcx, qword [0x1401fbab8]
lea r9, [rsp + 0x30]
xor r8d, r8d
mov edx, 0x104b
mov dword [rsp + 0x30], 4
mov dword [rsp + 0x34], edi
call qword [sym.imp.USER32.dll_SendMessageW]
test eax, eax
je 0x1400c71fd
mov rbx, qword [rsp + 0x58]
test rbx, rbx
je 0x1400c71fd
lea rdx, [rbp + 0x5c0]
mov r8d, InitCommonControls
mov rcx, rbx
call fcn.1400ed200
lea r9, [rbp + 0x5c0]
lea rdx, str._s_s
mov r8, r15
mov rcx, rbx
call fcn.1400f98c8
mov rcx, qword [0x1401fbab8]
lea r9, [rsp + 0x30]
xor r8d, r8d
mov edx, 0x104c
mov dword [rsp + 0x30], 0x1004
mov dword [rsp + 0x34], edi
mov qword [rsp + 0x58], rbx
call qword [sym.imp.USER32.dll_SendMessageW]
mov rcx, qword [0x1401fbab8]
xor r9d, r9d
xor r8d, r8d
mov edx, 0x1004
inc edi
call qword [sym.imp.USER32.dll_SendMessageW]
cmp edi, eax
jl 0x1400c7160
mov rcx, r15
call fcn.1400c2fc0
mov eax, 1
mov rdi, qword [rsp + 0x928]
mov r15, qword [rsp + 0x8e0]
mov rcx, qword [rbp + 0x7d0]
xor rcx, rsp
call fcn.1400f9a80
add rsp, 0x8e8
pop r14
pop rsi
pop rbx
pop rbp
ret
call fcn.1400f8f44
int3