Function at 0x14041fe20
Capabilities:
Query environment variable

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x48
mov r15d, dword [rsp + 0xb8]
mov r12d, ecx
mov rbp, rdx
mov r13, r8
mov r14, r9
test r8, r8
je 0x14041ffe2
mov r10d, dword [0x1405a5abc]
test r10d, r10d
je 0x14041ff40
cmp dword [0x1405a5aa0], 0xffffffff
je 0x14041ff54
mov r9d, dword [0x140a3e938]
test r9d, r9d
jne 0x14041ff54
movzx edx, byte [r8]
cmp dl, 0x2d
je 0x1404202c8
mov eax, dword [0x1405a5aa0]
test eax, eax
jne 0x1404201e0
cmp dl, 0x2b
je 0x14041ff99
mov rdi, qword [0x1405a5ab0]
mov qword [0x140a3e930], 0
movzx eax, byte [rdi]
test al, al
je 0x140420030
nop dword [rax + rax]
test r14, r14
je 0x14042025d
movsxd rdx, dword [0x1405a5abc]
cmp rdi, qword [rbp + rdx*8]
je 0x14042025d
cmp al, 0x2d
je 0x140420362
and r15d, 4
jne 0x140420212
lea r15, [rdi + 1]
movsx ebx, al
mov qword [0x1405a5ab0], r15
cmp al, 0x3a
jne 0x14042027c
mov ebx, 0x3a
cmp byte [rdi + 1], 0
jne 0x14041ff15
add dword [0x1405a5abc], 1
mov ecx, dword [0x1405a5ac0]
test ecx, ecx
je 0x14041ff2a
cmp byte [r13], 0x3a
jne 0x14042034a
mov dword [0x1405a5ab8], ebx
mov ebx, 0x3f
jmp 0x14041ffe7
mov dword [0x140a3e938], 1
mov dword [0x1405a5abc], 1
xor edx, edx
xor r8d, r8d
lea rcx, str.POSIXLY_CORRECT
call qword [sym.imp.KERNEL32.dll_GetEnvironmentVariableW]
movzx edx, byte [r13]
test eax, eax
setne al
movzx eax, al
mov dword [0x1405a5aa0], eax
mov eax, dword [0x140a3e938]
cmp dl, 0x2d
je 0x140420000
mov r8d, dword [0x1405a5aa0]
test r8d, r8d
jne 0x1404201c8
cmp dl, 0x2b
jne 0x140420008
and r15d, 0xfffffffe
jmp 0x140420004
mov esi, dword [0x1405a5aa4]
lea rax, [0x1406903e8]
mov edi, dword [0x1405a5aa8]
mov qword [0x1405a5ab0], rax
cmp esi, 0xffffffff
jne 0x1404201f4
cmp edi, 0xffffffff
je 0x14041ffce
mov dword [0x1405a5abc], edi
mov dword [0x1405a5aa4], 0xffffffff
mov dword [0x1405a5aa8], 0xffffffff
mov ebx, 0xffffffff
mov eax, ebx
add rsp, 0x48
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
or r15d, 2
add r13, 1
mov qword [0x140a3e930], 0
test eax, eax
je 0x1404200c5
mov dword [0x1405a5aa4], 0xffffffff
mov dword [0x1405a5aa8], 0xffffffff
nop
movsxd rbx, dword [0x1405a5abc]
mov dword [0x140a3e938], 0
cmp ebx, r12d
jge 0x14041ffa0
movsxd rax, ebx
mov rsi, qword [rbp + rax*8]
cmp byte [rsi], 0x2d
je 0x1404200e0
lea rax, [0x1406903e8]
mov qword [0x1405a5ab0], rax
test r15b, 2
jne 0x1404201a8
test r15b, 1
je 0x14041ffe2
mov esi, dword [0x1405a5aa8]
cmp esi, 0xffffffff
je 0x140420198
mov edi, dword [0x1405a5aa4]
cmp edi, 0xffffffff
je 0x1404200bc
mov edx, edi
mov r9, rbp
mov r8d, ebx
mov ecx, esi
call fcn.14041f930
sub edi, esi
mov eax, ebx
mov dword [0x1405a5aa4], 0xffffffff
sub eax, edi
mov dword [0x1405a5aa8], eax
add ebx, 1
mov dword [0x1405a5abc], ebx
mov rdi, qword [0x1405a5ab0]
movzx eax, byte [rdi]
test al, al
je 0x140420030
jmp 0x14041fec0
movzx eax, byte [rsi + 1]
test al, al
jne 0x1404202e0
mov edx, 0x2d
mov rcx, r13
call fcn.14042f1b8
test rax, rax
je 0x14042005b
cmp dword [0x1405a5aa8], 0xffffffff
je 0x140420118
cmp dword [0x1405a5aa4], 0xffffffff
je 0x1404203ea
lea r15, [rsi + 1]
mov qword [0x1405a5ab0], r15
cmp byte [rsi + 1], 0
jne 0x140420340
mov edx, 0x2d
mov rcx, r13
call fcn.14042f1b8
test rax, rax
je 0x14041ffe2
cmp byte [rax + 1], 0x3a
mov ebx, 0x2d
mov rdi, rsi
jne 0x1404202b9
mov qword [0x140a3e930], 0
cmp byte [rdi + 1], 0
mov edx, dword [0x1405a5abc]
je 0x1404204a0
mov qword [0x140a3e930], r15
lea rax, [0x1406903e8]
add edx, 1
mov qword [0x1405a5ab0], rax
mov dword [0x1405a5abc], edx
jmp 0x14041ffe7
mov dword [0x1405a5aa8], ebx
jmp 0x1404200bc
add ebx, 1
mov qword [0x140a3e930], rsi
mov dword [0x1405a5abc], ebx
mov ebx, 1
jmp 0x14041ffe7
and r15d, 0xfffffffe
cmp dl, 0x2b
jne 0x140420008
jmp 0x140420004
and r15d, 0xfffffffe
cmp dl, 0x2b
jne 0x14041fe9e
xor eax, eax
jmp 0x140420004
mov edx, esi
sub esi, edi
mov r8d, ebx
mov r9, rbp
mov ecx, edi
sub ebx, esi
call fcn.14041f930
mov dword [0x1405a5abc], ebx
jmp 0x14041ffce
cmp al, 0x3a
je 0x14042036d
movsx edx, al
mov rcx, r13
call fcn.14042f1b8
test rax, rax
setne al
movzx eax, al
mov dword [rsp + 0x20], eax
mov r8, r14
mov rdx, r13
mov rcx, rbp
mov r9, qword [rsp + 0xb0]
call fcn.14041fa80
mov ebx, eax
cmp eax, 0xffffffff
jne 0x140420460
mov rdi, qword [0x1405a5ab0]
movzx eax, byte [rdi]
lea r15, [rdi + 1]
movsx ebx, al
mov qword [0x1405a5ab0], r15
cmp al, 0x3a
je 0x14041ff08
cmp ebx, 0x2d
je 0x140420514
mov edx, ebx
mov rcx, r13
call fcn.14042f1b8
test rax, rax
je 0x14041ff08
movzx edx, byte [rax + 1]
test r14, r14
je 0x1404202a6
cmp ebx, 0x57
jne 0x1404202a6
cmp dl, 0x3b
je 0x140420374
cmp dl, 0x3a
je 0x140420155
cmp byte [rdi + 1], 0
jne 0x14041ffe7
add dword [0x1405a5abc], 1
jmp 0x14041ffe7
mov qword [0x140a3e930], 0
or r15d, 2
add r13, 1
jmp 0x1404200c5
mov ecx, dword [0x1405a5aa8]
cmp ecx, 0xffffffff
je 0x1404202f8
cmp dword [0x1405a5aa4], 0xffffffff
je 0x1404203f5
lea rdi, [rsi + 1]
mov qword [0x1405a5ab0], rdi
cmp al, 0x2d
je 0x140420473
test r14, r14
je 0x140420400
cmp rdi, qword [rbp + rbx*8]
jne 0x14041fee3
lea r15, [rsi + 2]
movsx ebx, al
mov qword [0x1405a5ab0], r15
cmp al, 0x3a
jne 0x14042027c
jmp 0x14041ff03
mov ebx, 0x2d
jmp 0x14041ff15
mov rcx, qword [rbp]
mov r8d, ebx
lea rdx, [0x140690410]
call fcn.14041fa00
jmp 0x14041ff2a
add rdi, 1
mov qword [0x1405a5ab0], rdi
xor eax, eax
jmp 0x14042022e
cmp byte [rdi + 1], 0
jne 0x140420440
mov eax, dword [0x1405a5abc]
add eax, 1
mov dword [0x1405a5abc], eax
cmp eax, r12d
jl 0x140420432
mov edx, dword [0x1405a5ac0]
lea rax, [0x1406903e8]
mov qword [0x1405a5ab0], rax
test edx, edx
je 0x1404203cb
cmp byte [r13], 0x3a
je 0x1404203cb
mov rcx, qword [rbp]
mov r8d, 0x57
lea rdx, str.qnjwqp
call fcn.14041fa00
mov dword [0x1405a5ab8], 0x57
cmp byte [r13], 0x3a
jne 0x14041ff30
mov ebx, 0x3a
jmp 0x14041ffe7
mov dword [0x1405a5aa4], ebx
jmp 0x140420118
mov dword [0x1405a5aa4], ebx
jmp 0x1404202f8
lea r15, [rsi + 2]
movsx ebx, al
mov qword [0x1405a5ab0], r15
cmp al, 0x3a
je 0x14041ff03
mov edx, ebx
mov rcx, r13
call fcn.14042f1b8
test rax, rax
je 0x14041ff08
movzx edx, byte [rax + 1]
jmp 0x1404202a6
cdqe
mov rax, qword [rbp + rax*8]
mov qword [0x1405a5ab0], rax
mov dword [rsp + 0x20], 0
mov r8, r14
mov rdx, r13
mov rcx, rbp
mov r9, qword [rsp + 0xb0]
call fcn.14041fa80
mov ebx, eax
lea rax, [0x1406903e8]
mov qword [0x1405a5ab0], rax
jmp 0x14041ffe7
cmp byte [rsi + 2], 0
je 0x14042051c
test r14, r14
je 0x14042048d
cmp qword [rbp + rbx*8], rdi
jne 0x140420362
lea r15, [rsi + 2]
mov rsi, rdi
mov qword [0x1405a5ab0], r15
jmp 0x140420123
cmp byte [rax + 2], 0x3a
je 0x140420177
add edx, 1
mov dword [0x1405a5abc], edx
cmp r12d, edx
jle 0x1404204cc
movsxd rax, edx
mov rax, qword [rbp + rax*8]
mov qword [0x140a3e930], rax
jmp 0x140420177
lea rax, [0x1406903e8]
mov qword [0x1405a5ab0], rax
mov eax, dword [0x1405a5ac0]
test eax, eax
je 0x1404204fe
cmp byte [r13], 0x3a
je 0x1404204fe
mov rcx, qword [rbp]
mov r8d, ebx
lea rdx, str.qnjwqp
call fcn.14041fa00
mov dword [0x1405a5ab8], ebx
cmp byte [r13], 0x3a
jne 0x14041ff30
jmp 0x1404203e0
mov rsi, rdi
jmp 0x140420123
mov esi, dword [0x1405a5aa4]
add ebx, 1
lea rax, [0x1406903e8]
mov dword [0x1405a5abc], ebx
mov qword [0x1405a5ab0], rax
cmp esi, 0xffffffff
je 0x14041ffce
mov r8d, ebx
mov edx, esi
mov r9, rbp
mov dword [rsp + 0x3c], ecx
call fcn.14041f930
mov ecx, dword [rsp + 0x3c]
sub esi, ecx
sub ebx, esi
mov dword [0x1405a5abc], ebx
jmp 0x14041ffce