Function at 0x1800698c0
Capabilities:
Query environment variable

Disassembly:
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rdi
sub rsp, 0x310
mov qword [rsp + 0x60], 0xfffffffffffffffe
mov rax, qword [0x180132010]
xor rax, rsp
mov qword [rsp + 0x300], rax
mov rdx, qword [rsp + 0x328]
lea rcx, [rsp + 0xa8]
call fcn.180007554
nop
lea rdx, str.__r_t_n
lea rcx, [rsp + 0xa8]
call fcn.18006bea0
lea rcx, [rsp + 0xa8]
call fcn.180005da8
movzx eax, al
test eax, eax
je 0x18006994c
mov byte [rsp + 0x20], 0
lea rcx, [rsp + 0xa8]
call fcn.180005de4
movzx eax, byte [rsp + 0x20]
jmp 0x180069c8c
lea rax, [rsp + 0xf0]
mov rdi, rax
xor eax, eax
mov ecx, 0x208
rep stosb byte [rdi], al
lea rcx, [rsp + 0xa8]
call fcn.18000618c
mov r8d, 0x104
lea rdx, [rsp + 0xf0]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_ExpandEnvironmentStringsW]
test eax, eax
jbe 0x18006999d
lea rdx, [rsp + 0xf0]
lea rcx, [rsp + 0xa8]
call fcn.180005db4
lea rcx, [rsp + 0xa8]
call fcn.18006dc60
movzx eax, al
test eax, eax
je 0x1800699e2
lea rdx, [rsp + 0xa8]
mov rcx, qword [rsp + 0x330]
call fcn.1800067ec
mov byte [rsp + 0x21], 1
lea rcx, [rsp + 0xa8]
call fcn.180005de4
movzx eax, byte [rsp + 0x21]
jmp 0x180069c8c
xor r8d, r8d
mov dx, 0x22
lea rcx, [rsp + 0xa8]
call fcn.18006abf0
mov qword [rsp + 0x28], rax
cmp qword [rsp + 0x28], 0
jne 0x180069ac3
mov rax, qword [rsp + 0x28]
inc rax
mov r8, rax
mov dx, 0x22
lea rcx, [rsp + 0xa8]
call fcn.18006abf0
mov qword [rsp + 0x38], rax
cmp qword [rsp + 0x38], 0xffffffffffffffff
je 0x180069ac3
mov rax, qword [rsp + 0x28]
mov rcx, qword [rsp + 0x38]
sub rcx, rax
mov rax, rcx
dec rax
mov rcx, qword [rsp + 0x28]
inc rcx
mov r9, rax
mov r8, rcx
lea rdx, [rsp + 0x68]
lea rcx, [rsp + 0xa8]
call fcn.180008670
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x40]
mov qword [rsp + 0x48], rax
mov rdx, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x330]
call fcn.18000681c
nop
lea rcx, [rsp + 0x68]
call fcn.180005de4
mov rcx, qword [rsp + 0x330]
call fcn.18006dc60
movzx eax, al
test eax, eax
je 0x180069ac3
mov byte [rsp + 0x22], 1
lea rcx, [rsp + 0xa8]
call fcn.180005de4
movzx eax, byte [rsp + 0x22]
jmp 0x180069c8c
mov qword [rsp + 0x28], 0
lea rcx, [rsp + 0xc8]
call fcn.180005e80
nop
xor eax, eax
cmp eax, 1
je 0x180069c67
mov rax, qword [rsp + 0x28]
inc rax
mov r8, rax
mov dx, 0x20
lea rcx, [rsp + 0xa8]
call fcn.1800086d0
mov qword [rsp + 0x30], rax
cmp qword [rsp + 0x30], 0xffffffffffffffff
jne 0x180069b3a
mov byte [rsp + 0x23], 0
lea rcx, [rsp + 0xc8]
call fcn.180005de4
nop
lea rcx, [rsp + 0xa8]
call fcn.180005de4
movzx eax, byte [rsp + 0x23]
jmp 0x180069c8c
mov rax, qword [rsp + 0x28]
inc rax
cmp qword [rsp + 0x30], rax
jne 0x180069b55
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x28], rax
jmp 0x180069ada
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x28], rax
mov r9, qword [rsp + 0x30]
xor r8d, r8d
lea rdx, [rsp + 0x88]
lea rcx, [rsp + 0xa8]
call fcn.180008670
mov qword [rsp + 0x50], rax
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x58], rax
mov rdx, qword [rsp + 0x58]
lea rcx, [rsp + 0xc8]
call fcn.18000681c
nop
lea rcx, [rsp + 0x88]
call fcn.180005de4
lea rcx, [rsp + 0xc8]
call fcn.18006c610
movzx eax, al
test eax, eax
je 0x180069bfe
lea rdx, [rsp + 0xc8]
mov rcx, qword [rsp + 0x330]
call fcn.1800067ec
mov byte [rsp + 0x24], 1
lea rcx, [rsp + 0xc8]
call fcn.180005de4
nop
lea rcx, [rsp + 0xa8]
call fcn.180005de4
movzx eax, byte [rsp + 0x24]
jmp 0x180069c8c
lea rdx, [0x1800f8cf8]
lea rcx, [rsp + 0xc8]
call fcn.18000dea0
lea rcx, [rsp + 0xc8]
call fcn.18006c610
movzx eax, al
test eax, eax
je 0x180069c62
lea rdx, [rsp + 0xc8]
mov rcx, qword [rsp + 0x330]
call fcn.1800067ec
mov byte [rsp + 0x25], 1
lea rcx, [rsp + 0xc8]
call fcn.180005de4
nop
lea rcx, [rsp + 0xa8]
call fcn.180005de4
movzx eax, byte [rsp + 0x25]
jmp 0x180069c8c
jmp 0x180069ada
mov byte [rsp + 0x26], 0
lea rcx, [rsp + 0xc8]
call fcn.180005de4
nop
lea rcx, [rsp + 0xa8]
call fcn.180005de4
movzx eax, byte [rsp + 0x26]
mov rcx, qword [rsp + 0x300]
xor rcx, rsp
call fcn.1800a5100
add rsp, 0x310
pop rdi
ret