Function at 0x140003380
Capabilities:
Get common file path
Set environment variable

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
push rdi
push r14
push r15
sub rsp, 0x1f0
movaps xmmword [rax - 0x28], xmm6
movaps xmmword [rax - 0x38], xmm7
mov rax, qword [0x140025020]
xor rax, rsp
mov qword [rsp + 0x1c0], rax
mov r14, rcx
mov qword [rsp + 0x40], rcx
lea rax, str.san_path_env_7D9669CE_347E_435A_BDF7_DBDBA31FEA91
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x30], rax
xor r15d, r15d
mov qword [rsp + 0x30], r15
mov qword [rsp + 0x38], r15
lea r8, str.PATH
lea rdx, [rsp + 0x38]
lea rcx, [rsp + 0x30]
call fcn.140009214
test eax, eax
jne 0x140003466
mov rdx, qword [rsp + 0x30]
test rdx, rdx
je 0x140003466
mov qword [rsp + 0x140], r15
mov qword [rsp + 0x150], r15
mov qword [rsp + 0x158], 7
mov r8, 0xffffffffffffffff
inc r8
cmp word [rdx + r8*2], r15w
jne 0x140003423
lea rcx, [rsp + 0x140]
call fcn.140001f80
mov rcx, qword [rsp + 0x30]
call fcn.140008f84
movups xmm6, xmmword [rsp + 0x140]
movups xmmword [rsp + 0x120], xmm6
movups xmm7, xmmword [rsp + 0x150]
movups xmmword [rsp + 0x130], xmm7
jmp 0x14000349b
mov qword [rsp + 0x120], r15
mov qword [rsp + 0x130], r15
mov qword [rsp + 0x138], 7
mov word [rsp + 0x120], r15w
movups xmm7, xmmword [rsp + 0x130]
movups xmm6, xmmword [rsp + 0x120]
mov qword [rsp + 0x80], r15
mov qword [rsp + 0x90], r15
mov qword [rsp + 0x98], 7
mov word [rsp + 0x80], r15w
mov qword [rsp + 0x188], r15
mov dword [rsp + 0x70], r15d
lea rax, [0x140025b98]
mov qword [rsp + 0x78], rax
lea rdx, [rsp + 0x70]
lea rcx, [rsp + 0x160]
call fcn.140002fe0
mov rcx, qword [0x140025ba0]
mov rax, qword [rsp + 0x78]
cmp qword [rax + 8], rcx
jne 0x140003526
cmp dword [rsp + 0x70], 0
jne 0x140003526
movups xmm0, xmmword [rsp + 0x160]
movups xmmword [rsp + 0x48], xmm0
movups xmm1, xmmword [rsp + 0x170]
movups xmmword [rsp + 0x58], xmm1
mov al, 1
mov byte [rsp + 0x68], al
jmp 0x140003579
xor al, al
mov byte [rsp + 0x68], al
mov rdx, qword [rsp + 0x178]
cmp rdx, 8
jb 0x140003579
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x160]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000356f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140003b5e
call fcn.140004070
movzx eax, byte [rsp + 0x68]
mov qword [rsp + 0x180], r15
movdqa xmm1, xmmword [0x140021fa0]
test al, al
je 0x1400035b1
movups xmm0, xmmword [rsp + 0x48]
movups xmm1, xmmword [rsp + 0x58]
movups xmmword [rsp + 0xd0], xmm1
mov ecx, 7
mov qword [rsp + 0x60], rcx
mov word [rsp + 0x48], r15w
jmp 0x1400035c6
movups xmm0, xmmword [rsp + 0x180]
movups xmmword [rsp + 0xd0], xmm1
mov rcx, qword [rsp + 0x60]
movups xmmword [rsp + 0xc0], xmm0
test al, al
je 0x140003623
cmp rcx, 8
jb 0x14000360f
lea rdx, [rcx*2 + 2]
mov rcx, qword [rsp + 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000360a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140003b64
call fcn.140004070
movdqa xmm0, xmmword [0x140021fa0]
movdqu xmmword [rsp + 0x58], xmm0
mov word [rsp + 0x48], r15w
cmp qword [rsp + 0xd0], 0
je 0x140003870
mov qword [rsp + 0xe0], r15
mov qword [rsp + 0xf0], r15
mov qword [rsp + 0xf8], 7
mov word [rsp + 0xe0], r15w
xor r8d, r8d
lea rdx, [0x140021f64]
lea rcx, [rsp + 0xe0]
call fcn.140001f80
nop
lea rdx, [rsp + 0xe0]
lea rcx, [rsp + 0xc0]
call fcn.140001990
nop
mov rdx, qword [rsp + 0xf8]
cmp rdx, 8
jb 0x1400036cd
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0xe0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400036c8
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140003b6a
call fcn.140004070
lea r11, [rsp + 0xc0]
cmp qword [rsp + 0xd8], 8
cmovae r11, qword [rsp + 0xc0]
mov rax, qword [rsp + 0xd0]
lea rdx, [r11 + rax*2]
mov rcx, r11
call fcn.1400018a0
cmp rax, rdx
je 0x14000376c
movzx ecx, word [rax]
cmp cx, 0x5c
je 0x14000370f
cmp cx, 0x2f
jne 0x140003720
add rax, 2
jmp 0x1400036fb
lea r8, [rdx - 2]
movzx ecx, word [r8]
cmp cx, 0x5c
je 0x14000373e
cmp cx, 0x2f
je 0x14000373e
mov rdx, r8
cmp rax, r8
je 0x14000376c
jmp 0x140003720
cmp rax, rdx
je 0x14000376c
nop dword [rax]
nop word [rax + rax]
lea r8, [rdx - 2]
movzx ecx, word [r8]
cmp cx, 0x5c
je 0x140003764
cmp cx, 0x2f
jne 0x14000376c
mov rdx, r8
cmp rax, r8
jne 0x140003750
sub rdx, r11
sar rdx, 1
mov qword [rsp + 0x100], r15
mov qword [rsp + 0x110], r15
mov qword [rsp + 0x118], 7
mov word [rsp + 0x100], r15w
mov r8, rdx
mov rdx, r11
lea rcx, [rsp + 0x100]
call fcn.140001f80
nop
lea rdx, [rsp + 0x100]
lea rcx, [rsp + 0x1a0]
call fcn.140001cd0
mov rdx, qword [rsp + 0x98]
cmp rdx, 8
jb 0x140003808
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140003803
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140003b70
call fcn.140004070
movups xmm0, xmmword [rsp + 0x1a0]
movups xmmword [rsp + 0x80], xmm0
movups xmm1, xmmword [rsp + 0x1b0]
movups xmmword [rsp + 0x90], xmm1
mov rdx, qword [rsp + 0x118]
cmp rdx, 8
jb 0x140003870
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x100]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000386b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140003b76
call fcn.140004070
mov qword [rsp + 0xa0], r15
mov qword [rsp + 0xb0], r15
mov qword [rsp + 0xb8], 7
mov word [rsp + 0xa0], r15w
xor r8d, r8d
mov edx, 0x104
lea rcx, [rsp + 0xa0]
call fcn.140002c90
nop
lea rcx, [rsp + 0xa0]
cmp qword [rsp + 0xb8], 8
cmovae rcx, qword [rsp + 0xa0]
mov edx, 0x104
call qword [sym.imp.KERNEL32.dll_GetSystemDirectoryW]
cmp eax, 0x104
jae 0x1400039dd
mov rdi, qword [rsp + 0x90]
test rdi, rdi
je 0x140003957
mov rdx, qword [rsp + 0x98]
mov rax, rdx
sub rax, rdi
cmp rax, 1
jb 0x14000392d
lea rcx, [rdi + 1]
mov qword [rsp + 0x90], rcx
lea rax, [rsp + 0x80]
cmp rdx, 8
cmovae rax, qword [rsp + 0x80]
mov edx, 0x3b
mov word [rax + rdi*2], dx
mov word [rax + rcx*2], r15w
jmp 0x14000394f
mov qword [rsp + 0x20], 1
lea r9, [0x140021f68]
mov edx, 1
lea rcx, [rsp + 0x80]
call fcn.1400025b0
mov rdi, qword [rsp + 0x90]
mov rsi, qword [rsp + 0xb0]
lea r9, [rsp + 0xa0]
cmp qword [rsp + 0xb8], 8
cmovae r9, qword [rsp + 0xa0]
mov rcx, qword [rsp + 0x98]
mov rax, rcx
sub rax, rdi
cmp rsi, rax
ja 0x1400039c8
lea rax, [rdi + rsi]
mov qword [rsp + 0x90], rax
lea rbx, [rsp + 0x80]
cmp rcx, 8
cmovae rbx, qword [rsp + 0x80]
lea rcx, [rbx + rdi*2]
lea r8, [rsi + rsi]
mov rdx, r9
call fcn.140005c00
lea rax, [rdi + rsi]
mov word [rbx + rax*2], r15w
jmp 0x1400039dd
mov qword [rsp + 0x20], rsi
mov rdx, rsi
lea rcx, [rsp + 0x80]
call fcn.1400025b0
lea rdx, [rsp + 0x80]
cmp qword [rsp + 0x98], 8
cmovae rdx, qword [rsp + 0x80]
lea rcx, str.PATH
call qword [sym.imp.KERNEL32.dll_SetEnvironmentVariableW]
movups xmmword [r14], xmm6
movups xmmword [r14 + 0x10], xmm7
mov byte [r14 + 0x20], 1
mov rdx, qword [rsp + 0xb8]
cmp rdx, 8
jb 0x140003a5a
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0xa0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140003a55
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140003b76
call fcn.140004070
mov qword [rsp + 0xb0], r15
mov qword [rsp + 0xb8], 7
mov word [rsp + 0xa0], r15w
mov rdx, qword [rsp + 0xd8]
cmp rdx, 8
jb 0x140003abf
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0xc0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140003aba
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140003b7c
call fcn.140004070
mov qword [rsp + 0xd0], r15
mov qword [rsp + 0xd8], 7
mov word [rsp + 0xc0], r15w
mov rdx, qword [rsp + 0x98]
cmp rdx, 8
jb 0x140003b21
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140003b1b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140003b82
call fcn.140004070
nop
mov rax, r14
jmp 0x140003b2b
mov rcx, qword [rsp + 0x1c0]
xor rcx, rsp
call fcn.140004050
lea r11, [rsp + 0x1f0]
mov rbx, qword [r11 + 0x28]
mov rsi, qword [r11 + 0x30]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
mov rsp, r11
pop r15
pop r14
pop rdi
ret
call fcn.140008f0c
nop
call fcn.140008f0c
int3
call fcn.140008f0c
nop
call fcn.140008f0c
nop
call fcn.140008f0c
nop
call fcn.140008f0c
nop
call fcn.140008f0c
int3