Function at 0x140003aa0
Capabilities:
Set environment variable

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x20], rsi
push rbp
push rdi
push r14
lea rbp, [rsp - 0x47]
sub rsp, 0xe0
mov rbx, rcx
mov rsi, rdx
mov rcx, qword [0x140027640]
mov rax, qword [rcx]
call qword [rax + 0x140]
cmp eax, 2
jne 0x140003d17
mov rdx, qword [rbx + 0x18]
xor edi, edi
mov rcx, qword [rbx + 0x10]
mov rax, rdx
sub rax, rcx
mov qword [rsp + 0x100], r15
cmp rax, 0xe
jb 0x140003b28
lea r15, [rcx + 0xe]
mov r14, rbx
mov qword [rbx + 0x10], r15
cmp rdx, 8
jb 0x140003b0b
mov r14, qword [rbx]
lea rcx, [r14 + rcx*2]
mov r8d, 0x1c
lea rdx, str.__viveportApp
call sub.VCRUNTIME140.dll_memmove
mov word [r14 + r15*2], di
jmp 0x140003b4a
movzx r8d, byte [rbp + 0x77]
lea r9, str.__viveportApp
mov edx, 0xe
mov qword [rsp + 0x20], 0xe
mov rcx, rbx
call fcn.140004710
lea rcx, [rbp - 0x69]
call fcn.140003a70
cmp qword [rax + 0x18], 8
mov r8, qword [rax + 0x10]
jb 0x140003b61
mov rax, qword [rax]
mov rdx, rax
mov rcx, rbx
call fcn.140004c90
mov rdx, qword [rbp - 0x51]
cmp rdx, 8
jb 0x140003baf
mov rcx, qword [rbp - 0x69]
lea rdx, [rdx*2 + 2]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140003baa
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140003baa
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14001af28
mov rdx, qword [rbx + 0x18]
mov rcx, qword [rbx + 0x10]
mov rax, rdx
sub rax, rcx
cmp rax, 0x13
jb 0x140003bf4
lea r15, [rcx + 0x13]
mov r14, rbx
mov qword [rbx + 0x10], r15
cmp rdx, 8
jb 0x140003bd7
mov r14, qword [rbx]
lea rcx, [r14 + rcx*2]
mov r8d, 0x26
lea rdx, str.__viveportLocation
call sub.VCRUNTIME140.dll_memmove
mov word [r14 + r15*2], di
jmp 0x140003c16
movzx r8d, byte [rbp + 0x77]
lea r9, str.__viveportLocation
mov edx, 0x13
mov qword [rsp + 0x20], 0x13
mov rcx, rbx
call fcn.140004710
mov rdx, qword [rbx + 0x18]
mov r14d, 0x22
mov rcx, qword [rbx + 0x10]
mov rax, rdx
sub rax, rcx
cmp rax, 1
jb 0x140003c50
lea r8, [rcx + 1]
mov rax, rbx
mov qword [rbx + 0x10], r8
cmp rdx, 8
jb 0x140003c44
mov rax, qword [rbx]
mov word [rax + rcx*2], r14w
mov word [rax + r8*2], di
jmp 0x140003c72
movzx r8d, byte [rbp + 0x77]
lea r9, [0x14001e0c8]
mov edx, 1
mov qword [rsp + 0x20], 1
mov rcx, rbx
call fcn.140004710
cmp qword [rsi + 0x18], 8
mov rdx, rsi
jb 0x140003c7f
mov rdx, qword [rsi]
mov r8, qword [rsi + 0x10]
mov rcx, rbx
call fcn.140004c90
mov rdx, qword [rbx + 0x18]
mov rcx, qword [rbx + 0x10]
mov rax, rdx
sub rax, rcx
cmp rax, 1
jb 0x140003cbb
lea rax, [rcx + 1]
mov qword [rbx + 0x10], rax
cmp rdx, 8
jb 0x140003cb0
mov rbx, qword [rbx]
mov word [rbx + rcx*2], r14w
mov word [rbx + rax*2], di
jmp 0x140003cdd
movzx r8d, byte [rbp + 0x77]
lea r9, [0x14001e0c8]
mov edx, 1
mov qword [rsp + 0x20], 1
mov rcx, rbx
call fcn.140004710
cmp qword [rsi + 0x18], 8
jb 0x140003ce7
mov rsi, qword [rsi]
mov rdx, rsi
lea rcx, str.ViveportLocation
call qword [sym.imp.KERNEL32.dll_SetEnvironmentVariableW]
mov r15, qword [rsp + 0x100]
lea r11, [rsp + 0xe0]
mov rbx, qword [r11 + 0x28]
mov rsi, qword [r11 + 0x38]
mov rsp, r11
pop r14
pop rdi
pop rbp
ret
cmp eax, 3
jne 0x140003df5
mov rdx, qword [rbx + 0x18]
mov rcx, qword [rbx + 0x10]
mov rax, rdx
sub rax, rcx
cmp rax, 0xc
jb 0x140003d67
lea r14, [rcx + 0xc]
mov rsi, rbx
mov qword [rbx + 0x10], r14
cmp rdx, 8
jb 0x140003d48
mov rsi, qword [rbx]
lea rcx, [rsi + rcx*2]
mov r8d, 0x18
lea rdx, str.__oculusApp
call sub.VCRUNTIME140.dll_memmove
xor edi, edi
mov word [rsi + r14*2], di
jmp 0x140003d89
movzx r8d, byte [rbp + 0x77]
lea r9, str.__oculusApp
mov edx, 0xc
mov qword [rsp + 0x20], 0xc
mov rcx, rbx
call fcn.140004710
lea rcx, [rbp - 0x69]
call fcn.140003a70
cmp qword [rax + 0x18], 8
mov r8, qword [rax + 0x10]
jb 0x140003da0
mov rax, qword [rax]
mov rdx, rax
mov rcx, rbx
call fcn.140004c90
mov rdx, qword [rbp - 0x51]
cmp rdx, 8
jb 0x140003cff
mov rcx, qword [rbp - 0x69]
lea rdx, [rdx*2 + 2]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000420d
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14000420d
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
test eax, eax
jne 0x140003ed2
mov rdx, qword [rbx + 0x18]
mov rcx, qword [rbx + 0x10]
mov rax, rdx
sub rax, rcx
cmp rax, 0xd
jb 0x140003e44
lea r14, [rcx + 0xd]
mov rsi, rbx
mov qword [rbx + 0x10], r14
cmp rdx, 8
jb 0x140003e25
mov rsi, qword [rbx]
lea rcx, [rsi + rcx*2]
mov r8d, 0x1a
lea rdx, str.__minmodeApp
call sub.VCRUNTIME140.dll_memmove
xor edi, edi
mov word [rsi + r14*2], di
jmp 0x140003e66
movzx r8d, byte [rbp + 0x77]
lea r9, str.__minmodeApp
mov edx, 0xd
mov qword [rsp + 0x20], 0xd
mov rcx, rbx
call fcn.140004710
lea rcx, [rbp - 0x69]
call fcn.140003a70
cmp qword [rax + 0x18], 8
mov r8, qword [rax + 0x10]
jb 0x140003e7d
mov rax, qword [rax]
mov rdx, rax
mov rcx, rbx
call fcn.140004c90
mov rdx, qword [rbp - 0x51]
cmp rdx, 8
jb 0x140003cff
mov rcx, qword [rbp - 0x69]
lea rdx, [rdx*2 + 2]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000420d
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14000420d
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
cmp eax, 5
jne 0x140003fbc
lea rcx, str.Preparing_Epic_launch
call fcn.140005810
mov rdx, qword [rbx + 0x18]
mov rcx, qword [rbx + 0x10]
mov rax, rdx
sub rax, rcx
cmp rax, 0xc
jb 0x140003f2e
lea r14, [rcx + 0xc]
mov rsi, rbx
mov qword [rbx + 0x10], r14
cmp rdx, 8
jb 0x140003f0f
mov rsi, qword [rbx]
lea rcx, [rsi + rcx*2]
mov r8d, 0x18
lea rdx, str.__epicAppId
call sub.VCRUNTIME140.dll_memmove
xor edi, edi
mov word [rsi + r14*2], di
jmp 0x140003f50
movzx r8d, byte [rbp + 0x77]
lea r9, str.__epicAppId
mov edx, 0xc
mov qword [rsp + 0x20], 0xc
mov rcx, rbx
call fcn.140004710
lea rcx, [rbp - 0x69]
call fcn.140003a70
cmp qword [rax + 0x18], 8
mov r8, qword [rax + 0x10]
jb 0x140003f67
mov rax, qword [rax]
mov rdx, rax
mov rcx, rbx
call fcn.140004c90
mov rdx, qword [rbp - 0x51]
cmp rdx, 8
jb 0x140003cff
mov rcx, qword [rbp - 0x69]
lea rdx, [rdx*2 + 2]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000420d
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14000420d
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
cmp eax, 1
jne 0x140004217
lea rcx, str.Preparing_Steam_launch
call fcn.140005810
mov rcx, qword [0x140027640]
xorps xmm0, xmm0
movups xmmword [rbp - 0x69], xmm0
xor edi, edi
mov qword [rbp - 0x51], 7
movups xmmword [rbp - 0x49], xmm0
mov qword [rbp - 0x59], rdi
movups xmmword [rbp - 0x39], xmm0
mov word [rbp - 0x69], di
movups xmmword [rbp - 0x29], xmm0
movups xmmword [rbp - 0x19], xmm0
movups xmmword [rbp - 9], xmm0
movups xmmword [rbp + 7], xmm0
movups xmmword [rbp + 0x17], xmm0
movups xmmword [rbp + 0x27], xmm0
mov rax, qword [rcx]
call qword [rax + 0x170]
lea rdx, [rbp + 0x37]
mov rcx, qword [rax]
mov r8, qword [rcx + 8]
mov rcx, rax
call r8
mov rcx, qword [rax]
mov rdx, qword [rcx]
mov r8, qword [rdx + 0x18]
mov edx, dword [rax + 8]
call r8
mov r8, rax
lea rdx, [0x14001e188]
lea rcx, [rbp - 0x49]
call fcn.140004a70
lea rcx, [rbp - 0x69]
call fcn.140003730
mov rdx, qword [rbx + 0x18]
mov rcx, qword [rbx + 0x10]
mov rax, rdx
sub rax, rcx
cmp rax, 0xd
jb 0x14000409c
lea r14, [rcx + 0xd]
mov rsi, rbx
mov qword [rbx + 0x10], r14
cmp rdx, 8
jb 0x14000407f
mov rsi, qword [rbx]
lea rcx, [rsi + rcx*2]
mov r8d, 0x1a
lea rdx, str.__steamAppId
call sub.VCRUNTIME140.dll_memmove
mov word [rsi + r14*2], di
jmp 0x1400040be
movzx r8d, byte [rbp + 0x77]
lea r9, str.__steamAppId
mov edx, 0xd
mov qword [rsp + 0x20], 0xd
mov rcx, rbx
call fcn.140004710
lea rax, [rbp - 0x49]
mov rdx, 0xffffffffffffffff
nop dword [rax]
inc rdx
cmp word [rax + rdx*2], di
jne 0x1400040d0
mov r8, qword [rbx + 0x18]
mov rcx, qword [rbx + 0x10]
mov rax, r8
sub rax, rcx
cmp rdx, rax
ja 0x140004118
lea r14, [rcx + rdx]
mov rsi, rbx
mov qword [rbx + 0x10], r14
cmp r8, 8
jb 0x140004100
mov rsi, qword [rbx]
lea r8, [rdx + rdx]
lea rdx, [rbp - 0x49]
lea rcx, [rsi + rcx*2]
call sub.VCRUNTIME140.dll_memmove
mov word [rsi + r14*2], di
jmp 0x14000412e
movzx r8d, byte [rbp + 0x77]
lea r9, [rbp - 0x49]
mov rcx, rbx
mov qword [rsp + 0x20], rdx
call fcn.140004710
mov rdx, qword [rbx + 0x18]
mov rcx, qword [rbx + 0x10]
mov rax, rdx
sub rax, rcx
cmp rax, 0x10
jb 0x140004173
lea r14, [rcx + 0x10]
mov rsi, rbx
mov qword [rbx + 0x10], r14
cmp rdx, 8
jb 0x140004156
mov rsi, qword [rbx]
lea rcx, [rsi + rcx*2]
mov r8d, 0x20
lea rdx, str.__steamLocation
call sub.VCRUNTIME140.dll_memmove
mov word [rsi + r14*2], di
jmp 0x140004195
movzx r8d, byte [rbp + 0x77]
lea r9, str.__steamLocation
mov edx, 0x10
mov qword [rsp + 0x20], 0x10
mov rcx, rbx
call fcn.140004710
mov r14d, 0x22
mov rcx, rbx
mov edx, r14d
call fcn.140004b70
cmp qword [rbp - 0x51], 8
lea rdx, [rbp - 0x69]
mov r8, qword [rbp - 0x59]
mov rcx, rbx
cmovae rdx, qword [rbp - 0x69]
call fcn.140004c90
mov edx, r14d
mov rcx, rbx
call fcn.140004b70
mov rdx, qword [rbp - 0x51]
cmp rdx, 8
jb 0x140003cff
mov rcx, qword [rbp - 0x69]
lea rdx, [rdx*2 + 2]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000420d
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14000420d
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14001af28
jmp 0x140003cff
lea rcx, str.Unknown_External_Platform_Launch
call fcn.140005810
jmp 0x140003cff