Function at 0x14007e6c0
Capabilities:
Query environment variable

Disassembly:
mov qword [rsp + 0x18], rdi
mov qword [rsp + 0x20], r12
push rbp
push r14
push r15
lea rbp, [rsp - 0x200]
sub rsp, 0x300
cmp qword [rdx + 0x18], 8
xorps xmm0, xmm0
mov r15, qword [rdx + 0x10]
mov r12, rdx
movdqu xmmword [rsp + 0x40], xmm0
mov r14, rcx
mov rdi, rdx
jb 0x14007e6fe
mov rdi, qword [rdx]
mov qword [rsp + 0x320], rbx
cmp r15, 8
jae 0x14007e727
movups xmm0, xmmword [rdi]
mov qword [rsp + 0x48], 7
mov rax, r15
mov ebx, 7
movups xmmword [rsp + 0x30], xmm0
jmp 0x14007e76f
movabs rax, 0x7ffffffffffffffe
lea rcx, [rsp + 0x30]
mov rbx, r15
or rbx, 7
cmp rbx, rax
cmova rbx, rax
lea rdx, [rbx + 1]
call fcn.1400035a0
lea r8, [r15*2 + 2]
mov qword [rsp + 0x30], rax
mov rdx, rdi
mov rcx, rax
call sub.msvcrt.dll_memcpy
mov rax, qword [r12 + 0x10]
mov qword [rsp + 0x48], rbx
mov qword [rsp + 0x40], r15
movups xmm0, xmmword [rsp + 0x30]
cmp rax, 2
jae 0x14007e7b2
movups xmm1, xmmword [rsp + 0x40]
xor edi, edi
mov rcx, r12
movups xmmword [r14], xmm0
mov word [rsp + 0x30], di
movdqa xmm0, xmmword [0x1401f8bd0]
movups xmmword [r14 + 0x10], xmm1
movdqu xmmword [rsp + 0x40], xmm0
call fcn.1400034d0
mov rax, r14
jmp 0x14007f260
cmp rbx, 8
mov qword [rsp + 0x328], rsi
movq rsi, xmm0
lea rax, [rsp + 0x30]
cmovae rax, rsi
cmp word [rax], 0x23
je 0x14007f281
cmp rbx, 8
lea rax, [rsp + 0x30]
cmovae rax, rsi
cmp word [rax], 0x2a
je 0x14007f281
cmp rbx, 8
lea rax, [rsp + 0x30]
cmovae rax, rsi
cmp word [rax + 2], 0x3a
jne 0x14007e822
movdqa xmm1, xmmword [0x1401f8bd0]
movups xmmword [r14], xmm0
movups xmm0, xmmword [rsp + 0x40]
movdqu xmmword [rsp + 0x40], xmm1
movups xmmword [r14 + 0x10], xmm0
jmp 0x14007f2a2
cmp rbx, 8
movaps xmmword [rsp + 0x2f0], xmm6
lea rax, [rsp + 0x30]
movaps xmmword [rsp + 0x2e0], xmm7
cmovae rax, rsi
xor edi, edi
cmp word [rax], 0x2e
jne 0x14007e982
cmp rbx, 8
lea rax, [rsp + 0x30]
cmovae rax, rsi
cmp word [rax + 2], 0x5c
jne 0x14007e982
lea rcx, [rbp - 0x70]
call fcn.14007e5b0
mov rax, qword [rsp + 0x40]
movdqa xmm0, xmmword [0x1401f8bd0]
mov word [rsp + 0x70], di
movdqu xmmword [rbp - 0x80], xmm0
cmp rax, 2
jb 0x14007f2c8
add rax, 0xfffffffffffffffe
lea rdx, [rsp + 0x30]
mov r8, 0xffffffffffffffff
lea rcx, [rsp + 0x70]
cmp rax, r8
cmovb r8, rax
cmp qword [rsp + 0x48], 8
cmovae rdx, qword [rsp + 0x30]
add rdx, 4
call fcn.140003280
lea r8, [rbp - 0x70]
xor edx, edx
lea rcx, [rsp + 0x70]
call fcn.140041c40
lea rcx, [rsp + 0x30]
movups xmm6, xmmword [rax]
movups xmm7, xmmword [rax + 0x10]
mov qword [rax + 0x10], rdi
mov qword [rax + 0x18], 7
mov word [rax], di
call fcn.1400034d0
mov rdx, qword [rbp - 0x78]
movups xmmword [rsp + 0x30], xmm6
movups xmmword [rsp + 0x40], xmm7
cmp rdx, 8
jb 0x14007e939
mov rcx, qword [rsp + 0x70]
lea rdx, [rdx*2 + 2]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14007e934
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14007f2ce
call fcn.14017b7ac
mov rdx, qword [rbp - 0x58]
cmp rdx, 8
jb 0x14007f217
mov rcx, qword [rbp - 0x70]
lea rdx, [rdx*2 + 2]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14007e978
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14007f2c2
call fcn.14017b7ac
jmp 0x14007f217
cmp rbx, 8
lea rax, [rsp + 0x30]
cmovae rax, rsi
cmp word [rax], 0x2e
jne 0x14007ec42
cmp rbx, 8
lea rax, [rsp + 0x30]
cmovae rax, rsi
cmp word [rax + 2], 0x2e
jne 0x14007ec42
cmp rbx, 8
lea rax, [rsp + 0x30]
cmovae rax, rsi
cmp word [rax + 4], 0x5c
jne 0x14007ec42
lea rcx, [rbp - 0x50]
call fcn.14007e5b0
mov rax, qword [rbp - 0x40]
lea rdx, [rbp - 0x50]
movdqa xmm0, xmmword [0x1401f8bd0]
lea rcx, [rsp + 0x50]
movdqu xmmword [rsp + 0x60], xmm0
mov word [rsp + 0x50], di
lea r8, [rax - 1]
cmp rax, r8
cmovb r8, rax
cmp qword [rbp - 0x38], 8
cmovae rdx, qword [rbp - 0x50]
call fcn.140003280
mov r11, qword [rsp + 0x68]
lea rdx, [rsp + 0x50]
mov r10, qword [rsp + 0x50]
cmp r11, 8
mov r9, qword [rsp + 0x60]
mov rbx, 0xffffffffffffffff
cmovae rdx, r10
test r9, r9
je 0x14007ea68
lea rcx, [r9 - 1]
mov rax, rbx
cmp rcx, rbx
cmovb rax, rcx
cmp word [rdx + rax*2], 0x5c
lea r8, [rdx + rax*2]
je 0x14007ea60
nop dword [rax]
cmp r8, rdx
je 0x14007ea68
sub r8, 2
cmp word [r8], 0x5c
jne 0x14007ea50
sub r8, rdx
sar r8, 1
jmp 0x14007ea6b
mov r8, rbx
movdqa xmm0, xmmword [0x1401f8bd0]
lea rdx, [rsp + 0x50]
inc r8
mov word [rbp - 0x70], di
cmp r9, r8
lea rcx, [rbp - 0x70]
movdqu xmmword [rbp - 0x60], xmm0
cmovb r8, r9
cmp r11, 8
cmovae rdx, r10
call fcn.140003280
mov rax, qword [rsp + 0x40]
movdqa xmm0, xmmword [0x1401f8bd0]
mov word [rsp + 0x70], di
movdqu xmmword [rbp - 0x80], xmm0
cmp rax, 3
jb 0x14007f2d4
add rax, 0xfffffffffffffffd
lea rdx, [rsp + 0x30]
cmp rax, rbx
lea rcx, [rsp + 0x70]
cmovb rbx, rax
cmp qword [rsp + 0x48], 8
mov r8, rbx
cmovae rdx, qword [rsp + 0x30]
add rdx, 6
call fcn.140003280
lea r8, [rbp - 0x70]
xor edx, edx
lea rcx, [rsp + 0x70]
call fcn.140041c40
lea rcx, [rsp + 0x30]
movups xmm6, xmmword [rax]
movups xmm7, xmmword [rax + 0x10]
mov qword [rax + 0x10], rdi
mov qword [rax + 0x18], 7
mov word [rax], di
call fcn.1400034d0
mov rdx, qword [rbp - 0x78]
movups xmmword [rsp + 0x30], xmm6
movups xmmword [rsp + 0x40], xmm7
cmp rdx, 8
jb 0x14007eb65
mov rcx, qword [rsp + 0x70]
lea rdx, [rdx*2 + 2]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14007eb60
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14007f2da
call fcn.14017b7ac
mov rdx, qword [rbp - 0x58]
cmp rdx, 8
jb 0x14007eba5
mov rcx, qword [rbp - 0x70]
lea rdx, [rdx*2 + 2]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14007eba0
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14007f2bc
call fcn.14017b7ac
mov rdx, qword [rsp + 0x68]
cmp rdx, 8
jb 0x14007ebe7
mov rcx, qword [rsp + 0x50]
lea rdx, [rdx*2 + 2]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14007ebe2
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14007f2bc
call fcn.14017b7ac
mov rdx, qword [rbp - 0x38]
movdqa xmm0, xmmword [0x1401f8bd0]
mov word [rsp + 0x50], di
movdqu xmmword [rsp + 0x60], xmm0
cmp rdx, 8
jb 0x14007f217
mov rcx, qword [rbp - 0x50]
lea rdx, [rdx*2 + 2]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14007e978
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14007f2bc
jmp 0x14007e978
cmp rbx, 8
lea rax, [rsp + 0x30]
cmovae rax, rsi
cmp word [rax], 0x3a
jne 0x14007ee5d
cmp rbx, 8
lea rax, [rsp + 0x30]
cmovae rax, rsi
cmp word [rax + 2], 0x5c
jne 0x14007ee5d
lea rcx, [rsp + 0x70]
call fcn.14007e5b0
mov rax, qword [rsp + 0x40]
movdqa xmm0, xmmword [0x1401f8bd0]
mov word [rbp - 0x50], di
movdqu xmmword [rbp - 0x40], xmm0
cmp rax, 2
jb 0x14007f2e0
add rax, 0xfffffffffffffffe
lea rdx, [rsp + 0x30]
mov r8, 0xffffffffffffffff
lea rcx, [rbp - 0x50]
cmp rax, r8
cmovb r8, rax
cmp qword [rsp + 0x48], 8
cmovae rdx, qword [rsp + 0x30]
add rdx, 4
call fcn.140003280
movdqa xmm0, xmmword [0x1401f8bd0]
lea rdx, [rsp + 0x70]
mov r8d, 3
mov word [rsp + 0x50], di
cmp qword [rbp - 0x80], r8
lea rcx, [rsp + 0x50]
movdqu xmmword [rsp + 0x60], xmm0
cmovb r8, qword [rbp - 0x80]
cmp qword [rbp - 0x78], 8
cmovae rdx, qword [rsp + 0x70]
call fcn.140003280
mov rax, qword [rsp + 0x68]
mov rdx, qword [rsp + 0x60]
mov r8, qword [rbp - 0x40]
sub rax, rdx
mov rcx, qword [rbp - 0x38]
cmp r8, rax
jbe 0x14007ed3e
mov rax, rcx
sub rax, r8
cmp rax, rdx
jb 0x14007ed3e
lea r8, [rsp + 0x50]
xor edx, edx
lea rcx, [rbp - 0x50]
call fcn.140041c40
jmp 0x14007ed55
cmp rcx, 8
lea rdx, [rbp - 0x50]
lea rcx, [rsp + 0x50]
cmovae rdx, qword [rbp - 0x50]
call fcn.140002740
movups xmm6, xmmword [rax]
lea rcx, [rsp + 0x30]
movups xmm7, xmmword [rax + 0x10]
mov qword [rax + 0x10], rdi
mov qword [rax + 0x18], 7
mov word [rax], di
call fcn.1400034d0
mov rdx, qword [rsp + 0x68]
movups xmmword [rsp + 0x30], xmm6
movups xmmword [rsp + 0x40], xmm7
cmp rdx, 8
jb 0x14007edc1
mov rcx, qword [rsp + 0x50]
lea rdx, [rdx*2 + 2]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14007edbc
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14007f2e6
call fcn.14017b7ac
mov rdx, qword [rbp - 0x38]
movdqa xmm0, xmmword [0x1401f8bd0]
mov word [rsp + 0x50], di
movdqu xmmword [rsp + 0x60], xmm0
cmp rdx, 8
jb 0x14007ee14
mov rcx, qword [rbp - 0x50]
lea rdx, [rdx*2 + 2]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14007ee0f
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14007f2e6
call fcn.14017b7ac
mov rdx, qword [rbp - 0x78]
cmp rdx, 8
jb 0x14007f217
mov rcx, qword [rsp + 0x70]
lea rdx, [rdx*2 + 2]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14007e978
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14007f2c2
jmp 0x14007e978
cmp rbx, 8
lea rax, [rsp + 0x30]
cmovae rax, rsi
cmp word [rax], 0x25
jne 0x14007eed5
xor edx, edx
lea rcx, [rbp - 0x30]
mov r8d, 0x208
call sub.msvcrt.dll_memset
cmp rbx, 8
lea rcx, [rsp + 0x30]
mov r8d, 0x104
lea rdx, [rbp - 0x30]
cmovae rcx, rsi
call qword [sym.imp.KERNEL32.dll_ExpandEnvironmentStringsW]
dec eax
cmp eax, 0x102
ja 0x14007f217
lea rax, [rbp - 0x30]
mov rbx, 0xffffffffffffffff
inc rbx
cmp word [rax + rbx*2], di
jne 0x14007eeb6
mov r8, rbx
lea rdx, [rbp - 0x30]
lea rcx, [rsp + 0x30]
call fcn.140003280
jmp 0x14007f217
cmp rbx, 8
lea rdx, [rsp + 0x30]
mov rbx, 0xffffffffffffffff
cmovae rdx, rsi
test r15, r15
je 0x14007ef25
lea rcx, [r15 - 1]
mov rax, rbx
cmp rcx, rbx
cmovb rax, rcx
cmp word [rdx + rax*2], 0x3a
lea rcx, [rdx + rax*2]
je 0x14007ef16
cmp rcx, rdx
je 0x14007ef25
sub rcx, 2
cmp word [rcx], 0x3a
jne 0x14007ef07
sub rcx, rdx
sar rcx, 1
cmp rcx, rbx
jne 0x14007f217
xor edx, edx
lea rcx, [rbp - 0x30]
mov r8d, 0x208
call sub.msvcrt.dll_memset
lea rcx, [rbp - 0x70]
call fcn.14007e5b0
mov rdx, rax
lea r8, str.icons
lea rcx, [rsp + 0x50]
call fcn.14000e8b0
mov rdx, qword [rbp - 0x58]
cmp rdx, 8
jb 0x14007ef93
mov rcx, qword [rbp - 0x70]
lea rdx, [rdx*2 + 2]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14007ef8e
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14007f2b6
call fcn.14017b7ac
cmp qword [rsp + 0x48], 8
lea rax, [rbp - 0x30]
lea rdx, [rsp + 0x30]
mov qword [rsp + 0x28], rdi
cmovae rdx, qword [rsp + 0x30]
lea rcx, [rsp + 0x50]
cmp qword [rsp + 0x68], 8
mov r9d, 0x104
mov qword [rsp + 0x20], rax
cmovae rcx, qword [rsp + 0x50]
xor r8d, r8d
call qword [sym.imp.KERNEL32.dll_SearchPathW]
dec eax
cmp eax, 0x102
ja 0x14007efee
lea rax, [rbp - 0x30]
nop
inc rbx
cmp word [rax + rbx*2], di
jne 0x14007efe0
jmp 0x14007f0b9
lea rcx, [rsp + 0x70]
call fcn.14007e5b0
mov rdx, rax
lea r8, str.iconsurl
lea rcx, [rbp - 0x70]
call fcn.14000e8b0
mov rdx, rax
lea rcx, [rsp + 0x50]
call fcn.1400129c0
mov r8, qword [rbp - 0x58]
cmp r8, 8
jb 0x14007f032
mov rdx, qword [rbp - 0x70]
lea rcx, [rbp - 0x70]
inc r8
call fcn.140003490
mov r8, qword [rbp - 0x78]
movdqa xmm0, xmmword [0x1401f8bd0]
mov word [rbp - 0x70], di
movdqu xmmword [rbp - 0x60], xmm0
cmp r8, 8
jb 0x14007f05f
mov rdx, qword [rsp + 0x70]
lea rcx, [rsp + 0x70]
inc r8
call fcn.140003490
cmp qword [rsp + 0x48], 8
lea rax, [rbp - 0x30]
lea rdx, [rsp + 0x30]
mov qword [rsp + 0x28], rdi
cmovae rdx, qword [rsp + 0x30]
lea rcx, [rsp + 0x50]
cmp qword [rsp + 0x68], 8
mov r9d, 0x104
mov qword [rsp + 0x20], rax
cmovae rcx, qword [rsp + 0x50]
xor r8d, r8d
call qword [sym.imp.KERNEL32.dll_SearchPathW]
dec eax
cmp eax, 0x102
ja 0x14007f146
lea rax, [rbp - 0x30]
nop
inc rbx
cmp word [rax + rbx*2], di
jne 0x14007f0b0
mov r8, rbx
lea rdx, [rbp - 0x30]
lea rcx, [rsp + 0x30]
call fcn.140003280
movups xmm0, xmmword [rsp + 0x30]
mov r8, qword [rsp + 0x68]
mov word [rsp + 0x30], di
movups xmm1, xmmword [rsp + 0x40]
movups xmmword [r14], xmm0
movdqa xmm0, xmmword [0x1401f8bd0]
movdqu xmmword [rsp + 0x40], xmm0
movups xmmword [r14 + 0x10], xmm1
cmp r8, 8
jb 0x14007f10d
mov rdx, qword [rsp + 0x50]
lea rcx, [rsp + 0x50]
inc r8
call fcn.140003490
mov r8, qword [rsp + 0x48]
movdqa xmm0, xmmword [0x1401f8bd0]
mov word [rsp + 0x50], di
movdqu xmmword [rsp + 0x60], xmm0
cmp r8, 8
jb 0x14007f22a
mov rdx, qword [rsp + 0x30]
lea rcx, [rsp + 0x30]
inc r8
call fcn.140003490
jmp 0x14007f22a
mov r10, qword [rsp + 0x48]
lea rdx, [rsp + 0x30]
mov r9, qword [rsp + 0x30]
cmp r10, 8
mov rcx, qword [rsp + 0x40]
cmovae rdx, r9
test rcx, rcx
je 0x14007f197
dec rcx
mov rax, rbx
cmp rcx, rbx
cmovb rax, rcx
cmp word [rdx + rax*2], 0x2e
lea rcx, [rdx + rax*2]
je 0x14007f18f
nop
cmp rcx, rdx
je 0x14007f197
sub rcx, 2
cmp word [rcx], 0x2e
jne 0x14007f180
sub rcx, rdx
sar rcx, 1
jmp 0x14007f19a
mov rcx, rbx
cmp rcx, rbx
mov qword [rsp + 0x28], rdi
lea rax, [rbp - 0x30]
lea r8, str..exe
mov qword [rsp + 0x20], rax
cmovne r8, rdi
lea rdx, [rsp + 0x30]
cmp r10, 8
cmovae rdx, r9
xor ecx, ecx
mov r9d, 0x104
call qword [sym.imp.KERNEL32.dll_SearchPathW]
dec eax
cmp eax, 0x102
ja 0x14007f1fa
lea rax, [rbp - 0x30]
nop
inc rbx
cmp word [rax + rbx*2], di
jne 0x14007f1e0
mov r8, rbx
lea rdx, [rbp - 0x30]
lea rcx, [rsp + 0x30]
call fcn.140003280
mov r8, qword [rsp + 0x68]
cmp r8, 8
jb 0x14007f217
mov rdx, qword [rsp + 0x50]
lea rcx, [rsp + 0x50]
inc r8
call fcn.140003490
movups xmm0, xmmword [rsp + 0x30]
movups xmm1, xmmword [rsp + 0x40]
movups xmmword [r14], xmm0
movups xmmword [r14 + 0x10], xmm1
movdqa xmm0, xmmword [0x1401f8bd0]
mov rcx, r12
movdqu xmmword [rsp + 0x40], xmm0
mov word [rsp + 0x30], di
call fcn.1400034d0
movaps xmm6, xmmword [rsp + 0x2f0]
mov rax, r14
movaps xmm7, xmmword [rsp + 0x2e0]
mov rsi, qword [rsp + 0x328]
mov rbx, qword [rsp + 0x320]
lea r11, [rsp + 0x300]
mov rdi, qword [r11 + 0x30]
mov r12, qword [r11 + 0x38]
mov rsp, r11
pop r15
pop r14
pop rbp
ret
movups xmm0, xmmword [rsp + 0x30]
movups xmm1, xmmword [rsp + 0x40]
movups xmmword [r14], xmm0
movdqa xmm0, xmmword [0x1401f8bd0]
movdqu xmmword [rsp + 0x40], xmm0
movups xmmword [r14 + 0x10], xmm1
xor edi, edi
mov rcx, r12
mov word [rsp + 0x30], di
call fcn.1400034d0
mov rax, r14
jmp 0x14007f258
call fcn.1401b08a0
int3
call fcn.1401b08a0
int3
call fcn.1401b08a0
int3
call fcn.1400027c0
int3
call fcn.1401b08a0
int3
call fcn.1400027c0
int3
call fcn.1401b08a0
int3
call fcn.1400027c0
int3
call fcn.1401b08a0
int3