Function at 0x140002e90
Capabilities:
Check if file exists
Set environment variable

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x37]
sub rsp, 0xe0
mov rax, qword [0x14000d040]
xor rax, rsp
mov qword [rbp + 0x2f], rax
mov rbx, rcx
xor r12d, r12d
mov r10d, dword [rcx + 0x68]
lea edx, [r10 - 1]
movsxd rax, edx
test edx, edx
js 0x140002eff
mov r9, qword [rcx + 0x70]
nop dword [rax + rax]
lea rcx, [rbx + 0x58]
cmp r9, 7
jbe 0x140002eee
mov rcx, qword [rbx + 0x58]
cmp word [rcx + rax*2], 0x2e
je 0x140002efd
dec edx
sub rax, 1
jns 0x140002ee0
test edx, edx
cmovs edx, r10d
lea rcx, [rbx + 0x58]
xorps xmm0, xmm0
movups xmmword [rbp + 0xf], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x1f], xmm1
movsxd r8, edx
cmp qword [rcx + 0x10], r8
cmovb r8, qword [rcx + 0x10]
cmp qword [rcx + 0x18], 7
jbe 0x140002f2c
mov rcx, qword [rcx]
mov rdx, rcx
lea rcx, [rbp + 0xf]
call fcn.1400010a0
nop
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x61], xmm0
mov qword [rbp - 0x51], r12
movdqu xmmword [rbp - 0x49], xmm0
mov qword [rbp - 0x39], r12
lea rax, [rbx + 0xb8]
mov qword [rax + 0x10], r12
cmp qword [rax + 0x18], 7
jbe 0x140002f63
mov rax, qword [rax]
mov word [rax], r12w
movups xmmword [rbp - 0x31], xmm0
mov qword [rbp - 0x21], r12
mov qword [rbp - 0x19], 7
mov word [rbp - 0x31], r12w
lea r8, [rbx + 0x98]
mov rcx, qword [r8 + 0x10]
movabs r13, 0x7ffffffffffffffe
mov rax, r13
sub rax, rcx
cmp rax, 0x26
jb 0x140003332
mov r9, r8
cmp qword [r8 + 0x18], 7
jbe 0x140002fae
mov r9, qword [r8]
mov qword [rsp + 0x30], 0x26
lea rax, str.LunaTranslatorLunaTranslator_main.py
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
movzx edx, byte [rbp - 0x69]
lea rcx, [rbp - 0x11]
call fcn.140001d00
mov rdx, qword [rbp - 0x19]
cmp rdx, 7
jbe 0x140003015
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x31]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140003010
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140003338
call fcn.14000482c
movups xmm0, xmmword [rbp - 0x11]
movups xmmword [rbp - 0x31], xmm0
movups xmm1, xmmword [rbp - 1]
movups xmmword [rbp - 0x21], xmm1
lea rcx, [rbp - 0x31]
movq rdx, xmm0
psrldq xmm1, 8
movq rax, xmm1
cmp rax, 7
cmova rcx, rdx
call qword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x140003071
lea rcx, [rbx + 0xb8]
lea rax, [rbp - 0x31]
cmp rcx, rax
je 0x140003071
lea rdx, [rbp - 0x31]
cmp qword [rbp - 0x19], 7
cmova rdx, qword [rbp - 0x31]
mov r8, qword [rbp - 0x21]
call fcn.140004110
cmp qword [rbx + 0xc8], 0
jne 0x1400031f5
mov rsi, qword [rbp - 0x21]
mov rax, r13
sub rax, rsi
cmp rax, 0xe
jb 0x14000333e
lea r15, [rbp - 0x31]
cmp qword [rbp - 0x19], 7
cmova r15, qword [rbp - 0x31]
xorps xmm0, xmm0
movups xmmword [rbp - 0x11], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 1], xmm1
lea r14, [rsi + 0xe]
mov edi, 7
lea rbx, [rbp - 0x11]
cmp r14, rdi
jbe 0x140003151
mov rdi, r14
or rdi, 7
cmp rdi, r13
jbe 0x140003118
mov rdi, r13
movabs rax, 0x7fffffffffffffff
lea rcx, [rax + rax]
cmp rcx, 0x1000
jb 0x140003145
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x14000334a
mov rcx, rax
call fcn.1400047f0
test rax, rax
je 0x140003344
lea rbx, [rax + 0x27]
and rbx, 0xffffffffffffffe0
mov qword [rbx - 8], rax
jmp 0x14000314d
mov eax, 0xa
cmp rdi, rax
cmovb rdi, rax
lea rcx, [rdi + 1]
movabs rax, 0x7fffffffffffffff
cmp rcx, rax
ja 0x14000334a
add rcx, rcx
jne 0x1400030e3
mov rbx, r12
jmp 0x14000314d
call fcn.1400047f0
mov rbx, rax
mov qword [rbp - 0x11], rbx
mov qword [rbp - 1], r14
mov qword [rbp + 7], rdi
movups xmm0, xmmword [str.Cant_find_:_r_n]
movups xmmword [rbx], xmm0
movsd xmm0, qword [0x14000a610]
movsd qword [rbx + 0x10], xmm0
mov eax, dword [0x14000a618]
mov dword [rbx + 0x18], eax
lea rcx, [rbx + 0x1c]
lea r8, [rsi + rsi]
mov rdx, r15
call sub.msvcrt.dll_memcpy
mov word [rbx + r14*2], r12w
lea rdx, [rbp - 0x11]
cmp qword [rbp + 7], 7
cmova rdx, qword [rbp - 0x11]
xor r9d, r9d
lea r8, str.ERROR
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxW]
mov rdx, qword [rbp + 7]
cmp rdx, 7
jbe 0x1400031ee
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x11]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400031e9
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140003344
call fcn.14000482c
mov edi, 0xffffffff
jmp 0x140003270
lea rdx, [rbx + 0xb8]
cmp qword [rdx + 0x18], 7
jbe 0x140003206
mov rdx, qword [rdx]
lea rcx, str.PYSTAND_SCRIPT
call qword [sym.imp.KERNEL32.dll_SetEnvironmentVariableW]
mov ecx, 0x208
call fcn.1400047f0
mov rbx, rax
xor edx, edx
mov r8d, 0x208
mov rcx, rax
call sub.msvcrt.dll_memset
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleW]
mov r8d, 0x104
mov rdx, rbx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
mov rdx, rbx
lea rcx, str.LUNA_EXE_NAME
call qword [sym.imp.KERNEL32.dll_SetEnvironmentVariableW]
mov edi, r12d
test rbx, rbx
je 0x140003270
mov edx, 0x208
mov rcx, rbx
call fcn.14000482c
nop
mov rdx, qword [rbp - 0x19]
cmp rdx, 7
jbe 0x1400032b0
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x31]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400032ab
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140003350
call fcn.14000482c
mov qword [rbp - 0x21], r12
mov qword [rbp - 0x19], 7
mov word [rbp - 0x31], r12w
mov rdx, qword [rbp + 0x27]
cmp rdx, 7
jbe 0x1400032fd
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0xf]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400032f8
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000332c
call fcn.14000482c
mov eax, edi
mov rcx, qword [rbp + 0x2f]
xor rcx, rsp
call fcn.140004b70
lea r11, [rsp + 0xe0]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call fcn.1400085a0
nop
call fcn.140004050
nop
call fcn.1400085a0
int3
call fcn.140004050
int3
call fcn.1400085a0
int3
call fcn.140003fc0
nop
call fcn.1400085a0
int3