Function at 0x14004f8e4
Capabilities:
Query environment variable

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x30
mov r15, rdx
mov r12, r9
xor edx, edx
mov r14, r8
mov r13d, ecx
test r8, r8
je 0x14004fdf7
mov r8d, dword [0x14046e844]
lea r9d, [rdx + 1]
test r8d, r8d
jne 0x14004f938
mov dword [0x140708198], r9d
mov r8d, r9d
mov dword [0x14046e844], r9d
mov ecx, dword [0x14046e85c]
cmp ecx, 0xffffffff
je 0x14004f94b
cmp dword [0x140708198], edx
je 0x14004f973
lea rcx, str.POSIXLY_CORRECT
call qword [sym.imp.api_ms_win_crt_environment_l1_1_0.dll_getenv]
mov r8d, dword [0x14046e844]
xor edx, edx
mov ecx, edx
test rax, rax
setne cl
mov dword [0x14046e85c], ecx
lea r9d, [rdx + 1]
mov al, byte [r14]
cmp al, 0x2d
jne 0x14004f986
mov ebp, dword [rsp + 0x88]
or ebp, 2
jmp 0x14004f9a5
test ecx, ecx
jne 0x14004f997
cmp al, 0x2b
je 0x14004f997
mov ebp, dword [rsp + 0x88]
jmp 0x14004f9a8
mov ebp, dword [rsp + 0x88]
and ebp, 0xfffffffe
cmp al, 0x2b
jne 0x14004f9a8
add r14, r9
cmp dword [0x140708198], edx
mov qword [0x1407081a0], rdx
je 0x14004f9ca
or esi, 0xffffffff
or edi, esi
mov dword [0x14046e858], esi
mov dword [0x14046e84c], edi
jmp 0x14004f9d6
mov edi, dword [0x14046e84c]
mov esi, dword [0x14046e858]
mov rbx, qword [0x14046e850]
lea rcx, [0x14070819c]
cmp dword [0x140708198], edx
jne 0x14004f9f4
cmp byte [rbx], dl
jne 0x14004fb1f
mov dword [0x140708198], edx
cmp r8d, r13d
jge 0x14004fdb9
movsxd rax, r8d
mov rbx, qword [r15 + rax*8]
mov qword [0x14046e850], rbx
cmp byte [rbx], 0x2d
jne 0x14004fa4d
cmp byte [rbx + 1], dl
jne 0x14004fad2
mov edx, 0x2d
mov rcx, r14
call sub.VCRUNTIME140.dll_strchr
mov r8d, dword [0x14046e844]
lea rcx, [0x14070819c]
mov edi, dword [0x14046e84c]
xor edx, edx
mov esi, dword [0x14046e858]
test rax, rax
jne 0x14004facb
mov qword [0x14046e850], rcx
mov rbx, rcx
test bpl, 2
jne 0x14004fd98
mov r9d, 1
test r9b, bpl
je 0x14004fdf7
cmp edi, 0xffffffff
jne 0x14004fa81
mov edi, r8d
mov dword [0x14046e84c], r8d
jmp 0x14004faba
cmp esi, 0xffffffff
je 0x14004faba
mov r9, r15
mov edx, esi
mov ecx, edi
call fcn.14005012c
mov r8d, dword [0x14046e844]
lea rcx, [0x14070819c]
mov eax, r8d
sub eax, esi
add edi, eax
or esi, 0xffffffff
mov dword [0x14046e84c], edi
mov dword [0x14046e858], esi
lea r9d, [rsi + 2]
add r8d, r9d
mov dword [0x14046e844], r8d
xor edx, edx
jmp 0x14004f9e4
mov rbx, qword [0x14046e850]
cmp edi, 0xffffffff
je 0x14004fae4
cmp esi, 0xffffffff
cmove esi, r8d
mov dword [0x14046e858], esi
lea rax, [rbx + 1]
cmp byte [rax], dl
je 0x14004fb1f
cmp byte [rax], 0x2d
mov rbx, rax
mov qword [0x14046e850], rax
jne 0x14004fb1f
cmp byte [rax + 1], dl
jne 0x14004fb1f
inc r8d
mov qword [0x14046e850], rcx
mov dword [0x14046e844], r8d
cmp esi, 0xffffffff
je 0x14004fde9
jmp 0x14004fdc5
mov esi, 0x3a
test r12, r12
je 0x14004fbc3
movsxd rax, r8d
cmp rbx, qword [r15 + rax*8]
je 0x14004fbc3
movsx eax, byte [rbx]
cmp al, 0x2d
je 0x14004fb47
test bpl, 4
je 0x14004fbc3
mov edi, edx
cmp al, 0x2d
jne 0x14004fb5e
mov ebp, 1
add rbx, rbp
mov qword [0x14046e850], rbx
jmp 0x14004fb7f
cmp al, sil
je 0x14004fb7a
mov edx, eax
mov rcx, r14
call sub.VCRUNTIME140.dll_strchr
test rax, rax
mov ebp, 1
cmovne edi, ebp
jmp 0x14004fb7f
mov ebp, 1
mov r9, qword [rsp + 0x80]
mov r8, r12
mov rdx, r14
mov dword [rsp + 0x20], edi
mov rcx, r15
call fcn.14004fe18
cmp eax, 0xffffffff
je 0x14004fbb1
lea rcx, [0x14070819c]
mov qword [0x14046e850], rcx
jmp 0x14004fdfa
mov r8d, dword [0x14046e844]
xor edx, edx
mov rbx, qword [0x14046e850]
jmp 0x14004fbc8
mov ebp, 1
movsx edi, byte [rbx]
add rbx, rbp
mov qword [0x14046e850], rbx
cmp edi, esi
je 0x14004fd62
cmp edi, 0x2d
jne 0x14004fbea
cmp byte [rbx], dl
jne 0x14004fd70
mov edx, edi
mov rcx, r14
call sub.VCRUNTIME140.dll_strchr
xor edx, edx
test rax, rax
je 0x14004fd45
test r12, r12
je 0x14004fca6
lea ebx, [rdx + 0x57]
cmp edi, ebx
jne 0x14004fca6
cmp byte [rax + 1], 0x3b
jne 0x14004fca6
mov rax, qword [0x14046e850]
cmp byte [rax], dl
jne 0x14004fc87
mov eax, dword [0x14046e844]
inc eax
mov dword [0x14046e844], eax
cmp eax, r13d
jl 0x14004fc7a
cmp dword [0x14046e840], edx
lea rcx, [0x14070819c]
mov qword [0x14046e850], rcx
je 0x14004fc64
cmp byte [r14], sil
je 0x14004fc64
mov edx, ebx
lea rcx, str.option_requires_an_argument_____c
call fcn.140050280
mov dword [0x14046e848], ebx
cmp byte [r14], sil
mov eax, 0x3f
cmove eax, esi
jmp 0x14004fdfa
cdqe
mov rcx, qword [r15 + rax*8]
mov qword [0x14046e850], rcx
mov r9, qword [rsp + 0x80]
mov r8, r12
mov dword [rsp + 0x20], edx
mov rcx, r15
mov rdx, r14
call fcn.14004fe18
jmp 0x14004fb9e
cmp byte [rax + rbp], sil
je 0x14004fcbd
mov rax, qword [0x14046e850]
cmp byte [rax], dl
jne 0x14004fd3e
jmp 0x14004fd38
mov rcx, qword [0x14046e850]
mov qword [0x1407081a0], rdx
cmp byte [rcx], dl
jne 0x14004fd23
cmp byte [rax + rbp + 1], sil
je 0x14004fd2a
mov eax, dword [0x14046e844]
inc eax
mov dword [0x14046e844], eax
cmp eax, r13d
jl 0x14004fd1d
cmp dword [0x14046e840], edx
lea rcx, [0x14070819c]
mov qword [0x14046e850], rcx
je 0x14004fd12
cmp byte [r14], sil
je 0x14004fd12
mov edx, edi
lea rcx, str.option_requires_an_argument_____c
call fcn.140050280
mov dword [0x14046e848], edi
jmp 0x14004fc6a
cdqe
mov rcx, qword [r15 + rax*8]
mov qword [0x1407081a0], rcx
lea rcx, [0x14070819c]
mov qword [0x14046e850], rcx
add dword [0x14046e844], ebp
mov eax, edi
jmp 0x14004fdfa
mov rbx, qword [0x14046e850]
cmp edi, 0x2d
jne 0x14004fd5b
cmp byte [rbx], dl
je 0x14004fdf7
jmp 0x14004fd70
mov r8d, dword [0x14046e844]
cmp byte [rbx], dl
jne 0x14004fd70
add r8d, ebp
mov dword [0x14046e844], r8d
cmp dword [0x14046e840], edx
je 0x14004fd8b
cmp byte [r14], sil
je 0x14004fd8b
mov edx, edi
lea rcx, str.unknown_option_____c
call fcn.140050280
mov dword [0x14046e848], edi
mov eax, 0x3f
jmp 0x14004fdfa
movsxd rax, r8d
mov ebp, 1
add r8d, ebp
mov rcx, qword [r15 + rax*8]
mov eax, ebp
mov qword [0x1407081a0], rcx
mov dword [0x14046e844], r8d
jmp 0x14004fdfa
mov qword [0x14046e850], rcx
cmp esi, 0xffffffff
je 0x14004fddb
mov r9, r15
mov edx, esi
mov ecx, edi
call fcn.14005012c
sub edi, esi
add dword [0x14046e844], edi
jmp 0x14004fde9
cmp edi, 0xffffffff
cmovne r8d, edi
mov dword [0x14046e844], r8d
or dword [0x14046e858], 0xffffffff
or dword [0x14046e84c], 0xffffffff
or eax, 0xffffffff
mov rbx, qword [rsp + 0x60]
mov rbp, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x70]
add rsp, 0x30
pop r15
pop r14
pop r13
pop r12
pop rdi
ret