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

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x260
mov rax, qword [0x7ff66298c008]
xor rax, rsp
mov qword [rsp + 0x250], rax
xor edi, edi
cmp word [0x7ff66298cd18], di
jne 0x7ff662983141
cmp dword [0x7ff66298cd04], edi
jne 0x7ff662983134
call fcn.7ff6629860a4
test eax, eax
je 0x7ff662983236
cmp word [0x7ff66298cd18], di
jne 0x7ff662983141
call fcn.7ff662983f74
test eax, eax
je 0x7ff662983236
call fcn.7ff662985fe4
test eax, eax
je 0x7ff662983236
call fcn.7ff6629866c4
test eax, eax
je 0x7ff662983236
mov ebx, 0x105
lea rcx, [rsp + 0x30]
mov edx, ebx
call qword [sym.imp.KERNEL32.dll_GetSystemDirectoryA]
nop dword [rax + rax]
lea r8, [0x7ff662989708]
mov edx, ebx
lea rcx, [rsp + 0x30]
call fcn.7ff662987ba8
lea rcx, [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
nop dword [rax + rax]
mov rbx, rax
test rax, rax
je 0x7ff6629831c9
lea rdx, [0x7ff662989890]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
nop dword [rax + rax]
test rax, rax
je 0x7ff6629831c9
xor edx, edx
lea rcx, [0x7ff66298d610]
call qword [0x7ff662989650]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
nop dword [rax + rax]
cmp dword [0x7ff66298cd04], edi
jne 0x7ff662983273
cmp dword [0x7ff66298de60], edi
jne 0x7ff662983273
mov edx, 0x104
lea rcx, [rsp + 0x140]
call qword [sym.imp.KERNEL32.dll_GetWindowsDirectoryA]
nop dword [rax + rax]
test eax, eax
jne 0x7ff66298325a
mov edx, 0x4f0
xor r9d, r9d
mov dword [rsp + 0x28], edi
xor r8d, r8d
mov dword [rsp + 0x20], 0x10
xor ecx, ecx
call fcn.7ff662984dcc
call fcn.7ff662987700
mov dword [0x7ff66298d544], eax
xor eax, eax
mov rcx, qword [rsp + 0x250]
xor rcx, rsp
call fcn.7ff662988470
mov rbx, qword [rsp + 0x270]
add rsp, 0x260
pop rdi
ret
mov edx, 2
lea rcx, [rsp + 0x140]
mov r8d, edx
call fcn.7ff662986ca4
test eax, eax
je 0x7ff662983236
lea rcx, [0x7ff66298d610]
call qword [sym.imp.KERNEL32.dll_SetCurrentDirectoryA]
nop dword [rax + rax]
test eax, eax
jne 0x7ff662983291
mov edx, 0x4bc
jmp 0x7ff662983212
cmp dword [0x7ff66298cd0c], edi
jne 0x7ff66298332d
lea rax, [0x7ff66298d040]
mov ecx, 0x28
mov dword [rax], 1
lea rax, [rax + 0x20]
sub rcx, 1
jne 0x7ff6629832a9
test byte [0x7ff66298cd18], 1
jne 0x7ff6629832fb
test byte [0x7ff66298de64], 1
jne 0x7ff6629832fb
mov eax, dword [0x7ff66298c1ac]
lea r9, [0x7ff662983910]
neg eax
mov qword [rsp + 0x28], rdi
mov qword [rsp + 0x20], rdi
sbb rdx, rdx
xor r8d, r8d
add rdx, 0x7d5
call fcn.7ff662987ac8
test rax, rax
jmp 0x7ff662983302
call fcn.7ff662985d90
test eax, eax
jne 0x7ff662983313
mov dword [0x7ff66298d544], 0x8007042b
jmp 0x7ff662983236
lea rcx, [0x7ff6629878b0]
call fcn.7ff66298772c
test eax, eax
je 0x7ff662983236
mov dword [0x7ff66298d544], edi
mov eax, dword [0x7ff66298d028]
test al, 0x40
jne 0x7ff662983349
test al, al
js 0x7ff662983349
movzx ecx, word [0x7ff66298de78]
call fcn.7ff662982318
jmp 0x7ff66298334b
mov eax, edi
mov dword [0x7ff66298de7c], eax
mov eax, dword [0x7ff66298cd04]
test eax, eax
jne 0x7ff662983376
cmp dword [0x7ff66298de60], edi
jne 0x7ff662983376
call fcn.7ff6629840c4
test eax, eax
je 0x7ff662983236
mov eax, dword [0x7ff66298cd04]
cmp word [0x7ff66298cd18], di
jne 0x7ff662983388
test eax, eax
jne 0x7ff662983388
call fcn.7ff66298494c
mov eax, 1
jmp 0x7ff662983238