Function at 0x140057870
Capabilities:
Query environment variable

Disassembly:
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x1d0]
sub rsp, 0x2d0
mov qword [rsp + 0x40], 0xfffffffffffffffe
mov qword [rsp + 0x328], rbx
mov rax, qword [0x140222080]
xor rax, rsp
mov qword [rbp + 0x1c0], rax
mov r12, r8
mov r14, rdx
mov rsi, rcx
xor edi, edi
call fcn.140002690
mov rbx, rax
cmp qword [rax + 0x10], rdi
jne 0x1400578cd
xor al, al
jmp 0x140057b81
lea rcx, [rsp + 0x48]
call fcn.140002670
nop
mov rax, rbx
mov r8, qword [rbx + 0x18]
cmp r8, 8
jb 0x1400578e8
mov rax, qword [rbx]
cmp word [rax], 0x40
jne 0x140057946
mov r8, qword [rbx + 0x10]
dec r8d
mov rdx, rsi
lea rcx, [rsp + 0x68]
call fcn.1400643d0
mov rbx, rax
lea rax, [rsp + 0x48]
cmp rax, rbx
je 0x14005793a
lea rcx, [rsp + 0x48]
call fcn.1400026a0
mov rcx, rbx
call fcn.140002690
mov rcx, rax
call fcn.140002690
mov rdx, rax
xor r8d, r8d
lea rcx, [rsp + 0x48]
call fcn.140004b20
nop
lea rcx, [rsp + 0x68]
call fcn.140002550
jmp 0x140057972
mov rcx, rsi
call fcn.140002690
lea rcx, [rsp + 0x48]
cmp rcx, rax
je 0x140057972
mov rdx, rbx
cmp r8, 8
jb 0x140057964
mov rdx, qword [rbx]
mov r8, qword [rbx + 0x10]
lea rcx, [rsp + 0x48]
call fcn.140002710
xor edx, edx
mov r8d, 0x208
lea rcx, [rbp - 0x50]
call fcn.140177d50
lea rcx, [rsp + 0x48]
call fcn.1400030b0
mov rcx, rax
mov r8d, 0x104
lea rdx, [rbp - 0x50]
call qword [sym.imp.KERNEL32.dll_ExpandEnvironmentStringsW]
mov esi, eax
cmp eax, 0x104
jb 0x140057a02
mov eax, 2
mul rsi
mov rcx, 0xffffffffffffffff
cmovo rax, rcx
mov rcx, rax
call fcn.140158e14
mov rbx, rax
lea rcx, [rsp + 0x48]
call fcn.1400030b0
mov rcx, rax
mov r8d, esi
mov rdx, rbx
call qword [sym.imp.KERNEL32.dll_ExpandEnvironmentStringsW]
mov rcx, rbx
call fcn.140002910
mov r8, rax
mov rdx, rbx
lea rcx, [rsp + 0x48]
call fcn.140002710
mov rcx, rbx
call fcn.1401588c0
jmp 0x140057a1c
lea rcx, [rbp - 0x50]
call fcn.140002910
mov r8, rax
lea rdx, [rbp - 0x50]
lea rcx, [rsp + 0x48]
call fcn.140002710
lea rdx, [0x1401d5940]
lea rcx, [rbp - 0x78]
call fcn.140002630
nop
lea rcx, [rsp + 0x48]
call fcn.140002690
mov rbx, rax
lea rcx, [rbp - 0x78]
call fcn.140002690
mov rsi, rax
mov r9, rax
cmp qword [rax + 0x18], 8
jb 0x140057a53
mov r9, qword [rax]
mov rcx, rbx
mov r15, qword [rbx + 0x18]
cmp r15, 8
jb 0x140057a63
mov rcx, qword [rbx]
mov rdx, qword [rbx + 0x10]
mov qword [rsp + 0x38], rdx
mov rax, qword [rax + 0x10]
mov qword [rsp + 0x20], rax
xor r8d, r8d
call fcn.14001fbc0
mov r13, rax
cmp rax, 0xffffffffffffffff
je 0x140057b3c
mov r8d, r13d
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x68]
call fcn.140064370
mov r15, rax
cmp r14, rax
je 0x140057acb
mov rcx, r14
call fcn.1400026a0
mov rcx, r15
call fcn.140002690
mov rcx, rax
call fcn.140002690
mov rdx, rax
xor r8d, r8d
mov rcx, r14
call fcn.140004b20
nop
lea rcx, [rsp + 0x68]
call fcn.140002550
test r12, r12
je 0x140057b38
mov r8, qword [rbx + 0x10]
sub r8d, r13d
sub r8d, dword [rsi + 0x10]
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x68]
call fcn.1400643d0
nop
lea rcx, [rsp + 0x68]
call fcn.1400030b0
movzx ecx, word [rax]
cmp cx, 0x30
jb 0x140057b2a
cmp cx, 0x39
ja 0x140057b2a
lea rdi, [rdi + rdi*4]
movzx ecx, cx
lea rdi, [rdi - 0x18]
lea rdi, [rcx + rdi*2]
add rax, 2
movzx ecx, word [rax]
cmp cx, 0x30
jae 0x140057b08
mov dword [r12], edi
lea rcx, [rsp + 0x68]
call fcn.140002550
mov bl, 1
jmp 0x140057b6a
lea rcx, [rsp + 0x48]
call fcn.140002690
cmp r14, rax
je 0x140057b64
cmp r15, 8
jb 0x140057b54
mov rbx, qword [rbx]
mov r8, qword [rsp + 0x38]
mov rdx, rbx
mov rcx, r14
call fcn.140002710
test r12, r12
sete bl
lea rcx, [rbp - 0x78]
call fcn.140002550
nop
lea rcx, [rsp + 0x48]
call fcn.140002550
movzx eax, bl
mov rcx, qword [rbp + 0x1c0]
xor rcx, rsp
call fcn.140158860
mov rbx, qword [rsp + 0x328]
add rsp, 0x2d0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret