Function at 0x1400f70d0
Capabilities:
Query environment variable

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x108
mov rsi, rcx
cmp byte [rdx + 0x18], 0
je 0x1400f7111
mov qword [rsp + 0x90], rsi
xorps xmm0, xmm0
movups xmmword [rsp + 0xa0], xmm0
mov rbx, qword [rdx + 8]
test rbx, rbx
jne 0x1400f735a
jmp 0x1400f773d
cmp qword [rdx + 0x10], 0
je 0x1400f777b
mov qword [rsp + 0x28], rdx
xorps xmm0, xmm0
movups xmmword [rsp + 0xa0], xmm0
call qword [sym.imp.KERNEL32.dll_GetEnvironmentStringsW]
test rax, rax
je 0x1400f77ab
mov qword [rsp + 0x90], rsi
mov qword [rsp + 0x20], rax
cmp word [rax], 0
je 0x1400f733d
lea rdi, [rsp + 0x30]
mov rbx, qword [rsp + 0x20]
jmp 0x1400f716d
cmp word [r13 + r15*2], 0
je 0x1400f733d
mov r13, rbx
xor ecx, ecx
xor r15d, r15d
nop word cs:[rax + rax]
mov rax, rcx
cmp word [r13 + r15*2], 0
lea r15, [r15 + 1]
lea rcx, [rcx - 2]
jne 0x1400f7180
mov rbx, r13
sub rbx, rcx
lea rsi, [r15 - 1]
cmp rsi, 1
je 0x1400f7160
test rsi, rsi
je 0x1400f7784
add rax, 2
xor ebp, ebp
xor r12d, r12d
nop word cs:[rax + rax]
cmp word [r13 + r12*2 + 2], 0x3d
je 0x1400f71e0
inc r12
add rbp, 0xfffffffffffffffe
cmp rax, rbp
jne 0x1400f71c0
jmp 0x1400f7160
cmp r12, rsi
jae 0x1400f7784
lea r8, [r12 + 1]
mov rcx, rdi
mov rdx, r13
call fcn.1400eb560
lea rax, [r12 + 2]
cmp rsi, rax
jb 0x1400f7784
mov r8, r15
sub r8, r12
add r8, 0xfffffffffffffffd
mov rdx, r13
sub rdx, rbp
add rdx, 4
lea rdi, [rsp + 0x70]
mov rcx, rdi
call fcn.1400eb560
movups xmm0, xmmword [rsp + 0x30]
movups xmm1, xmmword [rsp + 0x40]
movaps xmmword [rsp + 0x60], xmm1
movaps xmmword [rsp + 0x50], xmm0
mov rsi, qword [rsp + 0x50]
mov r12, qword [rsp + 0x58]
mov rbp, qword [rsp + 0x60]
movzx r14d, byte [rsp + 0x68]
movups xmm0, xmmword [rdi - 7]
movups xmm1, xmmword [rdi + 9]
movaps xmmword [rsp + 0xb0], xmm0
movaps xmmword [rsp + 0xc0], xmm1
mov rax, qword [rdi + 0x18]
mov qword [rsp + 0xcf], rax
cmp r14b, 2
lea rdi, [rsp + 0x30]
je 0x1400f733d
lea rax, [rsp + 0xb7]
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
movaps xmmword [rsp + 0xf0], xmm1
movaps xmmword [rsp + 0xe0], xmm0
lea rax, [r12 + rbp]
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x38], r12
mov word [rsp + 0x40], 0
lea rcx, [rsp + 0x70]
mov rdx, rdi
call fcn.1400f4000
mov qword [rsp + 0x50], rsi
mov qword [rsp + 0x58], r12
mov qword [rsp + 0x60], rbp
mov byte [rsp + 0x68], r14b
mov eax, dword [rsp + 0xb0]
mov ecx, dword [rsp + 0xb3]
lea rdx, [rsp + 0x70]
mov dword [rdx - 4], ecx
mov dword [rdx - 7], eax
mov rcx, rdi
lea rdx, [rsp + 0x98]
lea r8, [rsp + 0x50]
lea r9, [rsp + 0xe0]
call fcn.1400f86e0
cmp byte [rsp + 0x48], 2
je 0x1400f7160
mov rdx, qword [rsp + 0x30]
test rdx, rdx
je 0x1400f7160
mov rcx, qword [rsp + 0x38]
mov r8d, 1
call fcn.14000dd90
jmp 0x1400f7160
mov rcx, qword [rsp + 0x20]
call qword [sym.imp.KERNEL32.dll_FreeEnvironmentStringsW]
mov rdx, qword [rsp + 0x28]
mov rbx, qword [rdx + 8]
test rbx, rbx
je 0x1400f773d
mov r14, qword [rdx + 0x10]
test r14, r14
je 0x1400f773d
mov rax, qword [rdx]
xor r12d, r12d
lea rbp, [rsp + 0x50]
jmp 0x1400f7396
mov r12, qword [rsp + 0xd8]
mov eax, 0
dec r14
je 0x1400f773d
test r12, r12
je 0x1400f73b0
cmp r12, 2
jne 0x1400f7433
jmp 0x1400f7784
mov r12d, 1
test rax, rax
je 0x1400f742e
mov rcx, rax
and rcx, 7
je 0x1400f7639
xor edx, edx
nop word [rax + rax]
mov rbx, qword [rbx + 0x3d8]
inc rdx
cmp rcx, rdx
jne 0x1400f73d0
mov rcx, rax
sub rcx, rdx
cmp rax, 8
jb 0x1400f742e
nop dword [rax + rax]
mov rax, qword [rbx + 0x3d8]
mov rax, qword [rax + 0x3d8]
mov rax, qword [rax + 0x3d8]
mov rax, qword [rax + 0x3d8]
mov rax, qword [rax + 0x3d8]
mov rax, qword [rax + 0x3d8]
mov rax, qword [rax + 0x3d8]
mov rbx, qword [rax + 0x3d8]
add rcx, 0xfffffffffffffff8
jne 0x1400f73f0
xor r15d, r15d
xor eax, eax
movzx ecx, word [rbx + 0x3d2]
mov rsi, rbx
mov rdi, r15
cmp r15, rcx
jb 0x1400f7476
nop word cs:[rax + rax]
mov rcx, qword [rsi + 0x160]
test rcx, rcx
je 0x1400f7784
movzx edi, word [rsi + 0x3d0]
inc rax
mov rsi, rcx
cmp di, word [rcx + 0x3d2]
jae 0x1400f7450
test rax, rax
je 0x1400f7510
mov rbx, qword [rsi + rdi*8 + 0x3e0]
mov rcx, rax
dec rcx
je 0x1400f74fe
add rax, 0xfffffffffffffffe
mov rdx, rcx
and rdx, 7
je 0x1400f74b2
xor r8d, r8d
nop
mov rbx, qword [rbx + 0x3d8]
inc r8
cmp rdx, r8
jne 0x1400f74a0
sub rcx, r8
cmp rax, 7
jb 0x1400f74fe
nop dword [rax + rax]
mov rax, qword [rbx + 0x3d8]
mov rax, qword [rax + 0x3d8]
mov rax, qword [rax + 0x3d8]
mov rax, qword [rax + 0x3d8]
mov rax, qword [rax + 0x3d8]
mov rax, qword [rax + 0x3d8]
mov rax, qword [rax + 0x3d8]
mov rbx, qword [rax + 0x3d8]
add rcx, 0xfffffffffffffff8
jne 0x1400f74c0
xor r15d, r15d
jmp 0x1400f7517
lea r15, [rdi + 1]
mov rbx, rsi
imul rax, rdi, 0x38
lea r13, [rsi + rax]
add r13, 0x168
shl rdi, 5
cmp byte [rsi + rdi + 0x18], 2
jne 0x1400f7580
mov rcx, rbp
lea rdx, [rsp + 0x98]
mov r8, r13
call fcn.1400f8a30
cmp byte [rsp + 0x68], 2
je 0x1400f7388
mov rdx, qword [rsp + 0x50]
test rdx, rdx
je 0x1400f7388
mov rcx, qword [rsp + 0x58]
mov r8d, 1
call fcn.14000dd90
jmp 0x1400f7388
mov qword [rsp + 0xd8], r12
mov rbp, qword [r13 + 8]
mov r12, qword [r13 + 0x10]
test r12, r12
mov qword [rsp + 0x28], r14
mov qword [rsp + 0x20], r15
je 0x1400f75bc
js 0x1400f7788
mov edx, 1
mov rcx, r12
call fcn.14000dd80
test rax, rax
jne 0x1400f75c1
jmp 0x1400f778f
mov eax, 1
mov qword [rsp + 0x50], r12
mov qword [rsp + 0x58], rax
mov rcx, rax
mov rdx, rbp
mov r8, r12
call fcn.14012ca80
mov qword [rsp + 0x60], r12
movzx r15d, byte [r13 + 0x18]
mov rdx, qword [r13 + 0x28]
mov r12, qword [r13 + 0x30]
test r12, r12
je 0x1400f762f
xor ebp, ebp
mov rax, r12
shr rax, 0x3e
sete al
jne 0x1400f7788
lea r13, [r12 + r12]
mov bpl, al
add rbp, rbp
test r13, r13
je 0x1400f764b
mov rcx, r13
mov r14, rdx
mov rdx, rbp
call fcn.14000dd80
mov rdx, r14
mov rcx, rax
test rcx, rcx
jne 0x1400f7657
jmp 0x1400f779e
mov ecx, 2
xor r13d, r13d
jmp 0x1400f7657
mov rcx, rax
cmp rax, 8
jae 0x1400f73f0
jmp 0x1400f742e
mov rcx, rbp
test rcx, rcx
je 0x1400f779e
add rsi, rdi
mov qword [rsp + 0x70], r12
mov qword [rsp + 0x78], rcx
mov r8, r13
call fcn.14012ca80
mov qword [rsp + 0x80], r12
mov byte [rsp + 0x68], r15b
mov r13, qword [rsi + 8]
mov r12, qword [rsi + 0x10]
test r12, r12
lea rbp, [rsp + 0x50]
je 0x1400f76b2
mov r15, qword [rsp + 0x20]
js 0x1400f7788
mov edx, 1
mov rcx, r12
call fcn.14000dd80
test rax, rax
mov r14, qword [rsp + 0x28]
jne 0x1400f76c1
jmp 0x1400f778f
mov eax, 1
mov r15, qword [rsp + 0x20]
mov r14, qword [rsp + 0x28]
mov qword [rsp + 0xb0], r12
mov qword [rsp + 0xb8], rax
mov rcx, rax
mov rdx, r13
mov r8, r12
call fcn.14012ca80
mov qword [rsp + 0xc0], r12
movzx eax, byte [rsi + 0x18]
mov byte [rsp + 0xc8], al
lea rcx, [rsp + 0x30]
lea rdx, [rsp + 0x98]
mov r8, rbp
lea r9, [rsp + 0xb0]
call fcn.1400f86e0
cmp byte [rsp + 0x48], 2
je 0x1400f7380
mov rdx, qword [rsp + 0x30]
test rdx, rdx
je 0x1400f7380
mov rcx, qword [rsp + 0x38]
mov r8d, 1
call fcn.14000dd90
jmp 0x1400f7380
mov rax, qword [rsp + 0xa8]
mov rsi, qword [rsp + 0x90]
mov qword [rsi + 0x18], rax
movups xmm0, xmmword [rsp + 0x98]
movups xmmword [rsi + 8], xmm0
mov qword [rsi], 1
mov rax, rsi
add rsp, 0x108
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov qword [rsi], 0
jmp 0x1400f7764
ud2
call fcn.1400f4aa0
ud2
mov edx, 1
mov rcx, r12
call fcn.140130c60
ud2
mov rcx, r13
mov rdx, rbp
call fcn.140130c60
ud2
call sub.KERNEL32.dll_GetLastError
ud2