Function at 0x140051440
Capabilities:
Query environment variable

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0xd0]
sub rsp, 0x1d0
mov rax, qword [0x14009d080]
xor rax, rsp
mov qword [rbp + 0xc0], rax
mov r15, rdx
mov qword [rsp + 0x38], rdx
mov r13, rcx
mov edx, 0x81
lea rcx, [rbp - 0x78]
call fcn.14004f630
nop
mov r12d, 0xf
mov rbx, qword [rbp - 0x68]
test rbx, rbx
mov rsi, 0xffffffffffffffff
je 0x14005192d
lea rdi, [rbp - 0x78]
mov r14, qword [rbp - 0x78]
mov r15, qword [rbp - 0x60]
cmp r15, 0x10
cmovae rdi, r14
test rbx, rbx
je 0x1400514d5
mov r8, rbx
lea edx, [rsi + 0x21]
mov rcx, rdi
call fcn.14005f9a0
test rax, rax
je 0x1400514d5
sub rax, rdi
jmp 0x1400514d8
mov rax, rsi
mov rsi, rbx
cmp rax, 0xffffffffffffffff
cmovne rsi, rax
mov qword [rsp + 0x40], rsi
xor edi, edi
mov qword [rsp + 0x48], rdi
mov qword [rsp + 0x58], rdi
mov qword [rsp + 0x60], r12
mov byte [rsp + 0x48], dil
mov r8, rsi
cmp rbx, rsi
cmovb r8, rbx
lea rdx, [rbp - 0x78]
cmp r15, 0x10
cmovae rdx, r14
lea rcx, [rsp + 0x48]
call fcn.140058f50
nop
mov qword [rbp - 0x80], r12
mov edx, 0xa
mov qword [rsp + 0x78], rdx
movsd xmm0, qword [str._IDE_HOME_]
movsd qword [rsp + 0x68], xmm0
movzx eax, word [0x1400940b8]
mov word [rsp + 0x70], ax
mov byte [rsp + 0x72], dil
mov ebx, edi
mov rcx, qword [rsp + 0x68]
mov qword [rsp + 0x30], rcx
mov rax, qword [rsp + 0x58]
test rax, rax
je 0x140051651
mov rsi, rcx
nop dword [rax]
lea rdi, [rsp + 0x68]
cmp r12, 0x10
cmovae rdi, rsi
lea r12, [rsp + 0x48]
cmp qword [rsp + 0x60], 0x10
cmovae r12, qword [rsp + 0x48]
cmp rdx, rax
ja 0x14005163f
sub rax, rdx
cmp rbx, rax
ja 0x14005163f
test rdx, rdx
je 0x1400515f7
lea r14, [r12 + rax]
lea rcx, [r12 + rbx]
movsx r15d, byte [rdi]
lea r8, [r14 + 1]
sub r8, rcx
mov edx, r15d
call fcn.14005f9a0
test rax, rax
mov rbx, rax
je 0x14005163f
mov r8d, 0xa
mov rdx, rdi
mov rcx, rax
call fcn.14005f8c0
test eax, eax
je 0x1400515ef
inc rbx
lea r8, [r14 + 1]
sub r8, rbx
mov rcx, rbx
jmp 0x1400515bb
sub rbx, r12
mov edx, 0xa
cmp rbx, 0xffffffffffffffff
je 0x14005163f
mov r9, r13
cmp qword [r13 + 0x18], 0x10
jb 0x14005160b
mov r9, qword [r13]
mov rax, qword [r13 + 0x10]
mov qword [rsp + 0x20], rax
mov r8, rdx
mov rdx, rbx
lea rcx, [rsp + 0x48]
call fcn.140058db0
add rbx, qword [r13 + 0x10]
mov rax, qword [rsp + 0x58]
cmp rbx, rax
mov edx, 0xa
lea r12d, [rdx + 5]
jb 0x140051570
mov rsi, qword [rsp + 0x40]
mov rcx, qword [rsp + 0x30]
xor edi, edi
mov r12d, 0xf
cmp r12, 0x10
jb 0x140051686
lea rdx, [r12 + 1]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140051681
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140051b8e
call fcn.14005cdb0
mov r15, qword [rsp + 0x38]
mov rbx, qword [r15 + 8]
cmp rbx, qword [r15 + 0x10]
je 0x140051754
mov qword [rbx], rdi
mov qword [rbx + 0x10], rdi
mov qword [rbx + 0x18], rdi
mov r14, qword [rsp + 0x58]
lea r15, [rsp + 0x48]
cmp qword [rsp + 0x60], 0x10
cmovae r15, qword [rsp + 0x48]
cmp r14, 0x10
jae 0x1400516cc
movups xmm0, xmmword [r15]
movups xmmword [rbx], xmm0
mov rdi, r12
jmp 0x140051740
mov rdi, r14
or rdi, 0xf
movabs rax, 0x7fffffffffffffff
cmp rdi, rax
cmova rdi, rax
lea rcx, [rdi + 1]
cmp rcx, 0x1000
jb 0x140051720
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x140051b88
mov rcx, rax
call fcn.14005cdb8
mov rcx, rax
test rax, rax
je 0x140051b8e
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x14005172e
test rcx, rcx
je 0x14005172c
call fcn.14005cdb8
jmp 0x14005172e
xor eax, eax
mov qword [rbx], rax
lea r8, [r14 + 1]
mov rdx, r15
mov rcx, rax
call fcn.14005f230
mov qword [rbx + 0x10], r14
mov qword [rbx + 0x18], rdi
mov r15, qword [rsp + 0x38]
add qword [r15 + 8], 0x20
jmp 0x140051764
lea r8, [rsp + 0x48]
mov rdx, rbx
mov rcx, r15
call fcn.140059e10
mov rdx, qword [rbp - 0x60]
mov r8, qword [rbp - 0x78]
mov rcx, qword [rbp - 0x68]
cmp rsi, rcx
jae 0x14005179a
nop word [rax + rax]
lea rax, [rbp - 0x78]
cmp rdx, 0x10
cmovae rax, r8
cmp byte [rax + rsi], 0x20
jne 0x14005179a
inc rsi
cmp rsi, rcx
jb 0x140051780
mov qword [rsp + 0x68], 0
mov qword [rbp - 0x80], r12
cmp rcx, rsi
jb 0x140051ba0
sub rcx, rsi
mov rdi, 0xffffffffffffffff
cmp rcx, rdi
cmovb rdi, rcx
lea r14, [rbp - 0x78]
cmp rdx, 0x10
cmovae r14, r8
add r14, rsi
cmp rdi, 0xf
ja 0x1400517f5
mov qword [rsp + 0x78], rdi
mov r8, rdi
mov rdx, r14
lea rcx, [rsp + 0x68]
call fcn.14005f230
mov byte [rsp + rdi + 0x68], 0
jmp 0x14005189a
movabs rax, 0x7fffffffffffffff
cmp rdi, rax
ja 0x140051b9a
mov rbx, rdi
or rbx, 0xf
cmp rbx, rax
jbe 0x140051823
mov rbx, rax
movabs rax, 0x8000000000000027
jmp 0x14005184a
cmp rbx, 0x16
mov eax, 0x16
cmovb rbx, rax
lea rcx, [rbx + 1]
cmp rcx, 0x1000
jb 0x140051869
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x140051b88
mov rcx, rax
call fcn.14005cdb8
test rax, rax
je 0x140051b8e
lea rsi, [rax + 0x27]
and rsi, 0xffffffffffffffe0
mov qword [rsi - 8], rax
jmp 0x14005187a
test rcx, rcx
je 0x140051878
call fcn.14005cdb8
mov rsi, rax
jmp 0x14005187a
xor esi, esi
mov qword [rsp + 0x78], rdi
mov qword [rbp - 0x80], rbx
mov r8, rdi
mov rdx, r14
mov rcx, rsi
call fcn.14005f230
mov byte [rsi + rdi], 0
mov qword [rsp + 0x68], rsi
mov rdx, qword [rbp - 0x60]
cmp rdx, 0x10
jb 0x1400518d5
inc rdx
mov rcx, qword [rbp - 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400518d0
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140051b8e
call fcn.14005cdb0
movups xmm0, xmmword [rsp + 0x68]
movups xmmword [rbp - 0x78], xmm0
movups xmm1, xmmword [rsp + 0x78]
movups xmmword [rbp - 0x68], xmm1
mov rdx, qword [rsp + 0x60]
cmp rdx, 0x10
jb 0x140051490
inc rdx
mov rcx, qword [rsp + 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140051923
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140051b94
call fcn.14005cdb0
jmp 0x140051490
mov edx, reloc.WS2_32.dll_WSASetLastError
lea rcx, [rsp + 0x68]
call fcn.14004f630
cmp qword [rax + 0x18], 0x10
jb 0x140051946
mov rax, qword [rax]
mov r8d, 0x104
lea rdx, [rbp - 0x50]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetEnvironmentVariableA]
mov ebx, eax
mov rdx, qword [rbp - 0x80]
cmp rdx, 0x10
jb 0x140051997
inc rdx
mov rcx, qword [rsp + 0x68]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140051992
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140051ba6
call fcn.14005cdb0
test ebx, ebx
je 0x140051b21
mov qword [rsp + 0x48], 0
mov qword [rsp + 0x58], 0
mov qword [rsp + 0x60], r12
mov byte [rsp + 0x48], 0
mov ecx, 0x20
call fcn.14005cdb8
mov rbx, rax
mov qword [rsp + 0x58], 0x17
mov qword [rsp + 0x60], 0x1f
movups xmm0, xmmword [str._Didea.properties.file]
movups xmmword [rax], xmm0
mov ecx, dword [0x140094100]
mov dword [rax + 0x10], ecx
movzx ecx, word [0x140094104]
mov word [rax + 0x14], cx
movzx ecx, byte [0x140094106]
mov byte [rax + 0x16], cl
mov byte [rax + 0x17], 0
mov qword [rsp + 0x48], rax
lea rax, [rbp - 0x50]
nop
inc rsi
cmp byte [rax + rsi], 0
jne 0x140051a10
cmp rsi, 8
ja 0x140051a44
lea rax, [rsi + 0x17]
mov qword [rsp + 0x58], rax
mov r8, rsi
lea rdx, [rbp - 0x50]
lea rcx, [rbx + 0x17]
call fcn.14005f230
mov byte [rsi + rbx + 0x17], 0
lea rax, [rsp + 0x48]
jmp 0x140051a5a
mov qword [rsp + 0x20], rsi
lea r9, [rbp - 0x50]
mov rdx, rsi
lea rcx, [rsp + 0x48]
call fcn.14005a350
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x68], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x78], xmm1
mov qword [rax + 0x10], 0
mov qword [rax + 0x18], r12
mov byte [rax], 0
mov rdx, qword [r15 + 8]
cmp rdx, qword [r15 + 0x10]
je 0x140051a97
movups xmmword [rdx], xmm0
movups xmmword [rdx + 0x10], xmm1
mov byte [rsp + 0x68], 0
add qword [r15 + 8], 0x20
jmp 0x140051aa8
lea r8, [rsp + 0x68]
mov rcx, r15
call fcn.140059c80
mov r12, qword [rbp - 0x80]
cmp r12, 0x10
jb 0x140051ae3
lea rdx, [r12 + 1]
mov rcx, qword [rsp + 0x68]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140051add
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140051bac
call fcn.14005cdb0
nop
mov rdx, qword [rsp + 0x60]
cmp rdx, 0x10
jb 0x140051b21
inc rdx
mov rcx, qword [rsp + 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140051b1b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140051bb2
call fcn.14005cdb0
nop
mov rdx, qword [rbp - 0x60]
cmp rdx, 0x10
jb 0x140051b58
inc rdx
mov rcx, qword [rbp - 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140051b53
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140051b82
call fcn.14005cdb0
mov rcx, qword [rbp + 0xc0]
xor rcx, rsp
call fcn.14005cd90
mov rbx, qword [rsp + 0x220]
add rsp, 0x1d0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.1400674bc
nop
call fcn.14004e630
nop
call fcn.1400674bc
nop
call fcn.1400674bc
nop
call fcn.14004e6d0
int3
call fcn.1400594a0
nop
call fcn.1400674bc
nop
call fcn.1400674bc
nop
call fcn.1400674bc
int3