Function at 0x14002f410
Capabilities:
Create process on windows
Set environment variable

Disassembly:
mov rax, rsp
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x5a8]
sub rsp, 0x668
movaps xmmword [rax - 0x58], xmm6
movaps xmmword [rax - 0x68], xmm7
mov rax, qword [0x1403749c0]
xor rax, rsp
mov qword [rbp + 0x530], rax
mov qword [rbp + 0x110], r9
mov r12, r8
mov qword [rbp - 0x60], rdx
mov qword [rbp - 0x68], rcx
mov byte [rsp + 0x50], 0
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0xa0], xmm0
movups xmmword [rbp + 0xb0], xmm0
movups xmmword [rbp + 0xc0], xmm0
movups xmmword [rbp + 0xd0], xmm0
movups xmmword [rbp + 0xe0], xmm0
movups xmmword [rbp + 0xf0], xmm0
mov qword [rbp + 0x100], rax
movups xmmword [rbp - 0x50], xmm0
mov qword [rbp - 0x40], rax
mov qword [rbp - 0x18], rax
mov qword [rbp - 8], rax
mov qword [rbp], reloc.WS2_32.dll_ntohs
mov byte [rbp - 0x18], al
mov dword [rbp + 0xa0], WSAGetLastError
mov eax, 1
mov dword [rbp + 0xdc], eax
mov word [rbp + 0xe0], ax
mov r13, qword [rdx + 0x10]
movabs rcx, 0x7fffffffffffffff
mov rax, rcx
sub rax, r13
cmp rax, 1
jb 0x14002ff89
mov r15, rdx
cmp qword [rdx + 0x18], 0x10
jb 0x14002f4f5
mov r15, qword [rdx]
mov qword [rsp + 0x58], 0
mov qword [rsp + 0x68], 0
mov qword [rsp + 0x70], 0
lea r14, [r13 + 1]
mov ebx, reloc.WS2_32.dll_ntohs
lea rdi, [rsp + 0x58]
lea eax, [rbx + 7]
lea rsi, [rbx - 0x10]
cmp r14, rbx
jbe 0x14002f598
mov rbx, r14
or rbx, 0xf
cmp rbx, rcx
jbe 0x14002f53b
mov rbx, rcx
jmp 0x14002f542
cmp rbx, rax
cmovb rbx, rax
mov rcx, rbx
add rcx, 1
cmovb rcx, rsi
cmp rcx, 0x1000
jb 0x14002f582
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x14002ff8f
mov rcx, rax
call fcn.140159258
test rax, rax
je 0x14002ff9b
lea rdi, [rax + 0x27]
and rdi, 0xffffffffffffffe0
mov qword [rdi - 8], rax
jmp 0x14002f593
test rcx, rcx
je 0x14002f591
call fcn.140159258
mov rdi, rax
jmp 0x14002f593
xor edi, edi
mov qword [rsp + 0x58], rdi
mov qword [rsp + 0x68], r14
mov qword [rsp + 0x70], rbx
mov byte [rdi], 0x22
lea rcx, [rdi + 1]
mov r8, r13
mov rdx, r15
call fcn.14015b790
mov byte [rdi + r14], 0
mov rcx, qword [rsp + 0x68]
mov rdx, qword [rsp + 0x70]
mov rax, rdx
sub rax, rcx
cmp rax, 1
jb 0x14002f5f4
lea rax, [rcx + 1]
mov qword [rsp + 0x68], rax
lea rax, [rsp + 0x58]
cmp rdx, 0x10
cmovae rax, qword [rsp + 0x58]
mov word [rax + rcx], 0x22
lea rax, [rsp + 0x58]
jmp 0x14002f619
mov qword [rsp + 0x20], 1
lea r9, [0x140346fe4]
movzx r8d, byte [rsp + 0x50]
mov edx, 1
lea rcx, [rsp + 0x58]
call fcn.140005400
movups xmm6, xmmword [rax]
movups xmm7, xmmword [rax + 0x10]
xor ebx, ebx
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rax], bl
mov rdx, qword [rbp]
cmp rdx, 0x10
jb 0x14002f66b
inc rdx
mov rcx, qword [rbp - 0x18]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002f666
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002ff95
call fcn.1401594f8
movups xmmword [rbp - 0x18], xmm6
movups xmmword [rbp - 8], xmm7
mov rdx, qword [rsp + 0x70]
cmp rdx, 0x10
jb 0x14002f6b0
inc rdx
mov rcx, qword [rsp + 0x58]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002f6ab
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002ff9b
call fcn.1401594f8
mov r14, qword [r12]
mov rax, qword [r12 + 8]
mov qword [rbp - 0x58], rax
cmp r14, rax
je 0x14002f87f
movzx edi, byte [rsp + 0x50]
nop dword [rax + rax]
mov r15, qword [r14 + 0x10]
movabs rcx, 0x7fffffffffffffff
mov rax, rcx
sub rax, r15
cmp rax, 1
jb 0x14002ffb3
mov r13, r14
cmp qword [r14 + 0x18], 0x10
jb 0x14002f6fb
mov r13, qword [r14]
mov qword [rsp + 0x58], rbx
mov qword [rsp + 0x68], rbx
mov qword [rsp + 0x70], rbx
lea r12, [r15 + 1]
mov ebx, reloc.WS2_32.dll_ntohs
lea rsi, [rsp + 0x58]
cmp r12, rbx
jbe 0x14002f798
mov rbx, r12
or rbx, 0xf
cmp rbx, rcx
jbe 0x14002f72e
mov rbx, rcx
jmp 0x14002f73b
cmp rbx, 0x16
mov eax, socket
cmovb rbx, rax
mov rcx, rbx
add rcx, 1
mov rax, 0xffffffffffffffff
cmovb rcx, rax
cmp rcx, 0x1000
jb 0x14002f782
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x14002ffa7
mov rcx, rax
call fcn.140159258
test rax, rax
je 0x14002ffad
lea rsi, [rax + 0x27]
and rsi, 0xffffffffffffffe0
mov qword [rsi - 8], rax
jmp 0x14002f793
test rcx, rcx
je 0x14002f791
call fcn.140159258
mov rsi, rax
jmp 0x14002f793
xor esi, esi
mov qword [rsp + 0x58], rsi
mov qword [rsp + 0x68], r12
mov qword [rsp + 0x70], rbx
mov byte [rsi], 0x20
lea rcx, [rsi + 1]
mov r8, r15
mov rdx, r13
call fcn.14015b790
mov byte [rsi + r12], 0
lea r9, [rsp + 0x58]
mov rsi, qword [rsp + 0x58]
mov r15, qword [rsp + 0x70]
cmp r15, 0x10
cmovae r9, rsi
mov rcx, qword [rbp - 8]
mov rdx, qword [rbp]
mov rax, rdx
sub rax, rcx
mov r12, qword [rsp + 0x68]
cmp r12, rax
ja 0x14002f815
lea rax, [r12 + rcx]
mov qword [rbp - 8], rax
lea rbx, [rbp - 0x18]
cmp rdx, 0x10
cmovae rbx, qword [rbp - 0x18]
add rbx, rcx
mov r8, r12
mov rdx, r9
mov rcx, rbx
call fcn.14015b790
mov byte [r12 + rbx], 0
jmp 0x14002f834
mov qword [rsp + 0x20], r12
movzx r8d, dil
mov rdx, r12
lea rcx, [rbp - 0x18]
call fcn.140005400
mov r15, qword [rsp + 0x70]
mov rsi, qword [rsp + 0x58]
cmp r15, 0x10
jb 0x14002f86b
lea rdx, [r15 + 1]
mov rax, rsi
cmp rdx, 0x1000
jb 0x14002f863
add rdx, 0x27
mov rsi, qword [rsi - 8]
sub rax, rsi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002ffad
mov rcx, rsi
call fcn.1401594f8
add r14, 0x20
xor ebx, ebx
cmp r14, qword [rbp - 0x58]
jne 0x14002f6d0
lea rsi, [rbx - 1]
cmp byte [rbp + 0x5d0], 0
jne 0x14002f96c
mov qword [rbp - 0x38], rbx
mov qword [rbp - 0x28], rbx
mov qword [rbp - 0x20], reloc.WS2_32.dll_ntohs
mov byte [rbp - 0x38], 0
mov r8d, 0x1b
lea rdx, str.EOS_USE_ANTICHEATCLIENTNULL
lea rcx, [rbp - 0x38]
call fcn.140004930
nop
lea rdx, [rbp - 0x38]
lea rcx, [rsp + 0x78]
call fcn.140017c80
cmp qword [rax + 0x18], 8
jb 0x14002f8cf
mov rax, qword [rax]
lea rdx, [0x140348780]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_SetEnvironmentVariableW]
mov rdx, qword [rbp - 0x70]
cmp rdx, 8
jb 0x14002f920
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002f91b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002ffa1
call fcn.1401594f8
mov qword [rbp - 0x78], rbx
mov qword [rbp - 0x70], 7
mov word [rsp + 0x78], bx
mov rdx, qword [rbp - 0x20]
cmp rdx, 0x10
jb 0x14002f96c
inc rdx
mov rcx, qword [rbp - 0x38]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002f967
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002ffb9
call fcn.1401594f8
xor ecx, ecx
call fcn.140033340
mov rdx, qword [rbp - 0x60]
lea rcx, [rbp + 0x80]
call fcn.140017c80
nop
lea rdx, [rbp - 0x18]
lea rcx, [rbp + 8]
call fcn.140017c80
nop
mov rdx, qword [rbp + 0x110]
lea rcx, [rbp + 0x48]
call fcn.140017c80
nop
mov r8, qword [rbp + 0x18]
cmp r8, 0x7fff
jbe 0x14002f9cd
lea rax, [rbp + 8]
cmp qword [rbp + 0x20], 8
cmovae rax, qword [rbp + 8]
mov qword [rbp + 0x18], 0x7fff
mov word [rax + 0xfffe], bx
cmp qword [rbp + 0x58], 0
je 0x14002f9e4
lea rax, [rbp + 0x48]
cmp qword [rbp + 0x60], 8
cmovae rax, qword [rbp + 0x48]
jmp 0x14002f9e7
mov rax, rbx
lea rdx, [rbp + 8]
cmp qword [rbp + 0x20], 8
cmovae rdx, qword [rbp + 8]
lea rcx, [rbp + 0x80]
cmp qword [rbp + 0x98], 8
cmovae rcx, qword [rbp + 0x80]
lea rdi, [rbp - 0x50]
mov qword [rsp + 0x48], rdi
lea rdi, [rbp + 0xa0]
mov qword [rsp + 0x40], rdi
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x30], rbx
mov dword [rsp + 0x28], 0x4000400
mov dword [rsp + 0x20], ebx
xor r9d, r9d
xor r8d, r8d
call qword [sym.imp.KERNEL32.dll_CreateProcessW]
test eax, eax
jne 0x14002fe54
mov qword [rbp - 0x38], rbx
mov qword [rbp - 0x28], rbx
mov qword [rbp - 0x20], reloc.WS2_32.dll_ntohs
mov byte [rbp - 0x38], al
mov qword [rbp + 0x28], rbx
mov qword [rbp + 0x38], rbx
mov qword [rbp + 0x40], reloc.WS2_32.dll_ntohs
mov byte [rbp + 0x28], al
xor edx, edx
mov r8d, 0x400
lea rcx, [rbp + 0x130]
call fcn.14015be40
call qword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
je 0x14002fbe2
mov qword [rsp + 0x30], rbx
mov dword [rsp + 0x28], ebx
lea rcx, [rbp - 0x58]
mov qword [rsp + 0x20], rcx
mov r9d, 0x400
mov r8d, eax
xor edx, edx
mov ecx, 0x13ff
call qword [sym.imp.KERNEL32.dll_FormatMessageW]
mov r8d, eax
test eax, eax
je 0x14002fbe2
mov eax, 0x200
cmp r8, rax
cmova r8d, eax
mov rdx, qword [rbp - 0x58]
lea rcx, [rbp + 0x130]
call fcn.1400175b0
mov rcx, qword [rbp - 0x58]
call qword [sym.imp.KERNEL32.dll_LocalFree]
mov qword [rsp + 0x58], rbx
mov qword [rsp + 0x68], rbx
mov qword [rsp + 0x70], 7
mov word [rsp + 0x58], bx
lea rax, [rbp + 0x130]
nop dword [rax + rax]
inc rsi
cmp word [rax + rsi*2], 0
jne 0x14002fb10
mov r8, rsi
lea rdx, [rbp + 0x130]
lea rcx, [rsp + 0x58]
call fcn.1400047e0
nop
lea rdx, [rsp + 0x58]
lea rcx, [rsp + 0x78]
call fcn.140017ae0
mov rdx, rax
lea rcx, [rbp + 0x28]
call fcn.1400045b0
mov rdx, qword [rbp - 0x70]
cmp rdx, 0x10
jb 0x14002fb86
inc rdx
mov rcx, qword [rsp + 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002fb81
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002ffbf
call fcn.1401594f8
mov qword [rbp - 0x78], rbx
mov qword [rbp - 0x70], reloc.WS2_32.dll_ntohs
mov byte [rsp + 0x78], 0
mov rdx, qword [rsp + 0x70]
cmp rdx, 8
jb 0x14002fccf
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x58]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002fbd8
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002ffc5
call fcn.1401594f8
jmp 0x14002fccf
mov r8d, 0x1e
lea rdx, str.CreateProcess_failed_with_0.
lea rcx, [rbp + 0x28]
call fcn.140004930
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edi, eax
lea r9, [rbp + 0x125]
nop word [rax + rax]
dec r9
mov eax, 0xcccccccd
mul edi
shr edx, 3
movzx eax, dl
shl al, 2
lea ecx, [rax + rdx]
add cl, cl
sub dil, cl
add dil, 0x30
mov byte [r9], dil
mov edi, edx
test edx, edx
jne 0x14002fc10
mov qword [rsp + 0x78], rbx
movdqa xmm0, xmmword [0x140349ce0]
movdqu xmmword [rbp - 0x78], xmm0
mov byte [rsp + 0x78], dl
lea rax, [rbp + 0x125]
cmp r9, rax
je 0x14002fc72
lea r8, [rbp + 0x125]
sub r8, r9
mov rdx, r9
lea rcx, [rsp + 0x78]
call fcn.140004930
nop
lea rax, [rsp + 0x78]
mov qword [rbp + 0x110], rax
lea rax, [rbp - 0x68]
mov qword [rbp + 0x118], rax
lea rdx, [rbp + 0x110]
lea rcx, [rsp + 0x58]
call fcn.140025530
nop
lea rdx, [rsp + 0x58]
lea rcx, [rbp + 0x28]
call fcn.140017ea0
nop
lea rcx, [rsp + 0x58]
call fcn.140009dd0
nop
lea r9, [fcn.140004550]
mov edx, 0x20
lea r8d, [rdx - 0x1f]
lea rcx, [rsp + 0x78]
call fcn.14015952c
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x68], xmm0
mov qword [rbp + 0x78], rax
lea rdx, [rbp + 0x28]
lea rcx, [rsp + 0x78]
call fcn.140004650
nop
lea rax, [rsp + 0x78]
mov qword [rbp + 0x110], rax
lea rax, [rbp - 0x68]
mov qword [rbp + 0x118], rax
lea rdx, [rbp + 0x110]
lea rcx, [rbp + 0x68]
call fcn.140025530
nop
lea r9, [fcn.140004550]
mov edx, 0x20
lea r8d, [rdx - 0x1f]
lea rcx, [rsp + 0x78]
call fcn.14015952c
mov rdi, qword [rbp - 0x68]
lea rcx, [rdi + 0x218]
lea rax, [rbp + 0x68]
mov qword [rsp + 0x20], rax
lea r9, str.Failed_to_create_the_game_process:_0
lea r8, str.launcher_error.error_create_process
lea rdx, [rsp + 0x58]
call fcn.14000f300
mov rdx, rax
lea rcx, [rbp - 0x38]
call fcn.1400045b0
mov rdx, qword [rsp + 0x70]
cmp rdx, 0x10
jb 0x14002fda2
inc rdx
mov rcx, qword [rsp + 0x58]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002fd9d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002ffcb
call fcn.1401594f8
lea r8, [rbp - 0x38]
cmp qword [rbp - 0x20], 0x10
cmovae r8, qword [rbp - 0x38]
mov edx, 0x1f6
mov rcx, rdi
call fcn.1400229a0
nop
lea rcx, [rbp + 0x68]
call fcn.140009dd0
nop
mov rdx, qword [rbp + 0x40]
cmp rdx, 0x10
jb 0x14002fe03
inc rdx
mov rcx, qword [rbp + 0x28]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002fdfe
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002ffd1
call fcn.1401594f8
mov qword [rbp + 0x38], rbx
mov qword [rbp + 0x40], reloc.WS2_32.dll_ntohs
mov byte [rbp + 0x28], 0
mov rdx, qword [rbp - 0x20]
cmp rdx, 0x10
jb 0x14002fead
inc rdx
mov rcx, qword [rbp - 0x38]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002fe4d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002ffd7
call fcn.1401594f8
jmp 0x14002fead
mov rax, qword [rbp - 0x40]
test eax, eax
je 0x14002fe8e
mov r8d, eax
xor edx, edx
mov ecx, 0x101001
call qword [sym.imp.KERNEL32.dll_OpenProcess]
mov rdi, qword [rbp - 0x68]
mov qword [rdi + 0x358], rax
mov rax, qword [rbp - 0x40]
mov dword [rdi + 0x1f0], eax
mov ecx, eax
call qword [sym.imp.USER32.dll_AllowSetForegroundWindow]
mov byte [rsp + 0x50], 1
mov rcx, qword [rbp - 0x48]
test rcx, rcx
je 0x14002fe9d
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, qword [rbp - 0x50]
test rcx, rcx
je 0x14002fead
call qword [sym.imp.KERNEL32.dll_CloseHandle]
nop
mov rdx, qword [rbp + 0x60]
cmp rdx, 8
jb 0x14002feed
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002fee8
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002ffdd
call fcn.1401594f8
mov qword [rbp + 0x58], rbx
mov qword [rbp + 0x60], 7
mov word [rbp + 0x48], bx
lea rcx, [rbp + 8]
call fcn.140004420
nop
lea rcx, [rbp + 0x80]
call fcn.140004420
nop
mov rdx, qword [rbp]
cmp rdx, 0x10
jb 0x14002ff4b
inc rdx
mov rcx, qword [rbp - 0x18]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002ff46
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002ff83
call fcn.1401594f8
movzx eax, byte [rsp + 0x50]
mov rcx, qword [rbp + 0x530]
xor rcx, rsp
call fcn.140158fa0
movaps xmm6, xmmword [rsp + 0x650]
movaps xmm7, xmmword [rsp + 0x640]
add rsp, 0x668
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
call fcn.14015fc24
nop
call fcn.140001b10
nop
call fcn.140001a70
nop
call fcn.14015fc24
nop
call fcn.14015fc24
nop
call fcn.14015fc24
nop
call fcn.140001a70
int3
call fcn.14015fc24
int3
call fcn.140001b10
int3
call fcn.14015fc24
nop
call fcn.14015fc24
nop
call fcn.14015fc24
nop
call fcn.14015fc24
nop
call fcn.14015fc24
nop
call fcn.14015fc24
nop
call fcn.14015fc24
int3