Function at 0x14002cfa0
Capabilities:
Query environment variable

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
push r14
push r15
sub rsp, 0x130
mov rsi, r9
mov r15, rdx
lea r9, str._5_3
mov r14, r8
lea rdx, [0x14014a384]
mov rbx, rcx
call fcn.140015f40
mov rcx, rax
call qword [sym.imp.api_ms_win_crt_environment_l1_1_0.dll_getenv]
xor ebp, ebp
mov rdi, rax
test rax, rax
jne 0x14002cffe
mov rcx, r14
call qword [sym.imp.api_ms_win_crt_environment_l1_1_0.dll_getenv]
mov rdi, rax
test rax, rax
je 0x14002d031
mov rdx, qword [rbx + 0x18]
lea r8, str.LUA_NOENV
add rdx, 0x40
mov rcx, rbx
call fcn.1400160e0
mov rax, qword [rbx + 0x10]
add rax, 0xfffffffffffffff0
mov ecx, dword [rax + 8]
test ecx, ecx
je 0x14002d07b
cmp ecx, 1
jne 0x14002d02d
cmp dword [rax], ebp
je 0x14002d07b
mov qword [rbx + 0x10], rax
test rsi, rsi
jne 0x14002d03f
mov rax, qword [rbx + 0x10]
mov dword [rax + 8], ebp
jmp 0x14002d05b
mov rdx, rsi
mov rcx, rbx
call fcn.140024540
mov rcx, qword [rbx + 0x10]
mov qword [rcx], rax
movzx eax, byte [rax + 8]
or eax, 0x40
mov dword [rcx + 8], eax
mov rax, qword [rbx + 0x18]
add qword [rbx + 0x10], 0x10
cmp qword [rax + 0x18], rbp
jle 0x14002d10e
mov rcx, rbx
call fcn.140021c00
jmp 0x14002d10e
lea r9, [0x14014a38c]
mov qword [rbx + 0x10], rax
lea r8, [0x14014a390]
mov rdx, rdi
mov rcx, rbx
call fcn.140008520
mov r9, rsi
lea r8, [0x14014a394]
mov rdx, rax
mov rcx, rbx
call fcn.140008520
mov rax, qword [rbx + 0x10]
lea rcx, [rax - 0x10]
add rax, 0xffffffffffffffe0
mov r8, rcx
lea rdx, [rax + 0x10]
cmp rdx, rcx
jae 0x14002d0eb
nop word [rax + rax]
movups xmm0, xmmword [r8]
movups xmm1, xmmword [rdx]
movups xmmword [rdx], xmm0
add rdx, 0x10
movups xmmword [r8], xmm1
sub r8, 0x10
cmp rdx, r8
jb 0x14002d0d0
cmp rax, rcx
jae 0x14002d109
movups xmm0, xmmword [rcx]
movups xmm1, xmmword [rax]
movups xmmword [rax], xmm0
add rax, 0x10
movups xmmword [rcx], xmm1
sub rcx, 0x10
cmp rax, rcx
jb 0x14002d0f0
add qword [rbx + 0x10], 0xfffffffffffffff0
mov r8d, 0x105
lea rdx, [rsp + 0x20]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
test eax, eax
je 0x14002d258
cmp eax, 0x105
je 0x14002d258
mov edx, 0x5c
lea rcx, [rsp + 0x20]
call qword [sym.imp.VCRUNTIME140.dll_strrchr]
test rax, rax
je 0x14002d258
mov byte [rax], bpl
lea rdi, [rbx + 0x10]
mov rax, qword [rbx + 0x10]
sub rax, 0x10
mov ecx, dword [rax + 8]
and ecx, 0xf
cmp ecx, 4
je 0x14002d19b
cmp ecx, 3
je 0x14002d172
lea rdi, [rbx + 0x10]
jmp 0x14002d1a2
mov rdx, rax
mov rcx, rbx
call fcn.140023850
mov rax, qword [rbx + 0x18]
cmp qword [rax + 0x18], rbp
jle 0x14002d18f
mov rcx, rbx
call fcn.140021c00
mov rax, qword [rbx + 0x10]
lea rdi, [rbx + 0x10]
sub rax, 0x10
mov rbp, qword [rax]
add rbp, 0x18
lea r9, [rsp + 0x20]
mov rdx, rbp
lea r8, [0x14014a360]
mov rcx, rbx
call fcn.140008520
mov rax, qword [rbx + 0x10]
lea rcx, [rax - 0x10]
add rax, 0xffffffffffffffe0
mov r8, rcx
lea rdx, [rax + 0x10]
cmp rdx, rcx
jae 0x14002d1f0
movups xmm0, xmmword [r8]
movups xmm1, xmmword [rdx]
movups xmmword [rdx], xmm0
add rdx, 0x10
movups xmmword [r8], xmm1
sub r8, 0x10
cmp rdx, r8
jb 0x14002d1d1
lea rdi, [rbx + 0x10]
cmp rax, rcx
jae 0x14002d21d
nop word [rax + rax]
movups xmm0, xmmword [rcx]
movups xmm1, xmmword [rax]
movups xmmword [rax], xmm0
add rax, 0x10
movups xmmword [rcx], xmm1
sub rcx, 0x10
cmp rax, rcx
jb 0x14002d200
lea rdi, [rbx + 0x10]
mov rdx, qword [rbx + 0x10]
mov r8, r15
sub rdx, 0x10
mov rcx, rbx
mov qword [rdi], rdx
add rdx, 0xffffffffffffffd0
call fcn.140016940
add qword [rdi], 0xfffffffffffffff0
lea r11, [rsp + 0x130]
mov rbx, qword [r11 + 0x20]
mov rbp, qword [r11 + 0x28]
mov rsi, qword [r11 + 0x30]
mov rsp, r11
pop r15
pop r14
pop rdi
ret
lea rdx, str.unable_to_get_ModuleFileName
mov rcx, rbx
call fcn.140005f60
int3