Function at 0x14044d170
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 0x14044d332
mov r10d, dword [0x1405e42bc]
test r10d, r10d
je 0x14044d290
cmp dword [0x1405e42a0], 0xffffffff
je 0x14044d2a4
mov r9d, dword [0x140abb558]
test r9d, r9d
jne 0x14044d2a4
movzx edx, byte [r8]
cmp dl, 0x2d
je 0x14044d618
mov eax, dword [0x1405e42a0]
test eax, eax
jne 0x14044d530
cmp dl, 0x2b
je 0x14044d2e9
mov rdi, qword [0x1405e42b0]
mov qword [0x140abb550], 0
movzx eax, byte [rdi]
test al, al
je 0x14044d380
nop dword [rax + rax]
test r14, r14
je 0x14044d5ad
movsxd rdx, dword [0x1405e42bc]
cmp rdi, qword [rbp + rdx*8]
je 0x14044d5ad
cmp al, 0x2d
je 0x14044d6b2
and r15d, 4
jne 0x14044d562
lea r15, [rdi + 1]
movsx ebx, al
mov qword [0x1405e42b0], r15
cmp al, 0x3a
jne 0x14044d5cc
mov ebx, 0x3a
cmp byte [rdi + 1], 0
jne 0x14044d265
add dword [0x1405e42bc], 1
mov ecx, dword [0x1405e42c0]
test ecx, ecx
je 0x14044d27a
cmp byte [r13], 0x3a
jne 0x14044d69a
mov dword [0x1405e42b8], ebx
mov ebx, 0x3f
jmp 0x14044d337
mov dword [0x140abb558], 1
mov dword [0x1405e42bc], 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 [0x1405e42a0], eax
mov eax, dword [0x140abb558]
cmp dl, 0x2d
je 0x14044d350
mov r8d, dword [0x1405e42a0]
test r8d, r8d
jne 0x14044d518
cmp dl, 0x2b
jne 0x14044d358
and r15d, 0xfffffffe
jmp 0x14044d354
mov esi, dword [0x1405e42a4]
lea rax, [0x140705c28]
mov edi, dword [0x1405e42a8]
mov qword [0x1405e42b0], rax
cmp esi, 0xffffffff
jne 0x14044d544
cmp edi, 0xffffffff
je 0x14044d31e
mov dword [0x1405e42bc], edi
mov dword [0x1405e42a4], 0xffffffff
mov dword [0x1405e42a8], 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 [0x140abb550], 0
test eax, eax
je 0x14044d415
mov dword [0x1405e42a4], 0xffffffff
mov dword [0x1405e42a8], 0xffffffff
nop
movsxd rbx, dword [0x1405e42bc]
mov dword [0x140abb558], 0
cmp ebx, r12d
jge 0x14044d2f0
movsxd rax, ebx
mov rsi, qword [rbp + rax*8]
cmp byte [rsi], 0x2d
je 0x14044d430
lea rax, [0x140705c28]
mov qword [0x1405e42b0], rax
test r15b, 2
jne 0x14044d4f8
test r15b, 1
je 0x14044d332
mov esi, dword [0x1405e42a8]
cmp esi, 0xffffffff
je 0x14044d4e8
mov edi, dword [0x1405e42a4]
cmp edi, 0xffffffff
je 0x14044d40c
mov edx, edi
mov r9, rbp
mov r8d, ebx
mov ecx, esi
call fcn.14044cc80
sub edi, esi
mov eax, ebx
mov dword [0x1405e42a4], 0xffffffff
sub eax, edi
mov dword [0x1405e42a8], eax
add ebx, 1
mov dword [0x1405e42bc], ebx
mov rdi, qword [0x1405e42b0]
movzx eax, byte [rdi]
test al, al
je 0x14044d380
jmp 0x14044d210
movzx eax, byte [rsi + 1]
test al, al
jne 0x14044d630
mov edx, 0x2d
mov rcx, r13
call fcn.14045c510
test rax, rax
je 0x14044d3ab
cmp dword [0x1405e42a8], 0xffffffff
je 0x14044d468
cmp dword [0x1405e42a4], 0xffffffff
je 0x14044d73a
lea r15, [rsi + 1]
mov qword [0x1405e42b0], r15
cmp byte [rsi + 1], 0
jne 0x14044d690
mov edx, 0x2d
mov rcx, r13
call fcn.14045c510
test rax, rax
je 0x14044d332
cmp byte [rax + 1], 0x3a
mov ebx, 0x2d
mov rdi, rsi
jne 0x14044d609
mov qword [0x140abb550], 0
cmp byte [rdi + 1], 0
mov edx, dword [0x1405e42bc]
je 0x14044d7f0
mov qword [0x140abb550], r15
lea rax, [0x140705c28]
add edx, 1
mov qword [0x1405e42b0], rax
mov dword [0x1405e42bc], edx
jmp 0x14044d337
mov dword [0x1405e42a8], ebx
jmp 0x14044d40c
add ebx, 1
mov qword [0x140abb550], rsi
mov dword [0x1405e42bc], ebx
mov ebx, 1
jmp 0x14044d337
and r15d, 0xfffffffe
cmp dl, 0x2b
jne 0x14044d358
jmp 0x14044d354
and r15d, 0xfffffffe
cmp dl, 0x2b
jne 0x14044d1ee
xor eax, eax
jmp 0x14044d354
mov edx, esi
sub esi, edi
mov r8d, ebx
mov r9, rbp
mov ecx, edi
sub ebx, esi
call fcn.14044cc80
mov dword [0x1405e42bc], ebx
jmp 0x14044d31e
cmp al, 0x3a
je 0x14044d6bd
movsx edx, al
mov rcx, r13
call fcn.14045c510
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.14044cdd0
mov ebx, eax
cmp eax, 0xffffffff
jne 0x14044d7b0
mov rdi, qword [0x1405e42b0]
movzx eax, byte [rdi]
lea r15, [rdi + 1]
movsx ebx, al
mov qword [0x1405e42b0], r15
cmp al, 0x3a
je 0x14044d258
cmp ebx, 0x2d
je 0x14044d864
mov edx, ebx
mov rcx, r13
call fcn.14045c510
test rax, rax
je 0x14044d258
movzx edx, byte [rax + 1]
test r14, r14
je 0x14044d5f6
cmp ebx, 0x57
jne 0x14044d5f6
cmp dl, 0x3b
je 0x14044d6c4
cmp dl, 0x3a
je 0x14044d4a5
cmp byte [rdi + 1], 0
jne 0x14044d337
add dword [0x1405e42bc], 1
jmp 0x14044d337
mov qword [0x140abb550], 0
or r15d, 2
add r13, 1
jmp 0x14044d415
mov ecx, dword [0x1405e42a8]
cmp ecx, 0xffffffff
je 0x14044d648
cmp dword [0x1405e42a4], 0xffffffff
je 0x14044d745
lea rdi, [rsi + 1]
mov qword [0x1405e42b0], rdi
cmp al, 0x2d
je 0x14044d7c3
test r14, r14
je 0x14044d750
cmp rdi, qword [rbp + rbx*8]
jne 0x14044d233
lea r15, [rsi + 2]
movsx ebx, al
mov qword [0x1405e42b0], r15
cmp al, 0x3a
jne 0x14044d5cc
jmp 0x14044d253
mov ebx, 0x2d
jmp 0x14044d265
mov rcx, qword [rbp]
mov r8d, ebx
lea rdx, [0x140705c50]
call fcn.14044cd50
jmp 0x14044d27a
add rdi, 1
mov qword [0x1405e42b0], rdi
xor eax, eax
jmp 0x14044d57e
cmp byte [rdi + 1], 0
jne 0x14044d790
mov eax, dword [0x1405e42bc]
add eax, 1
mov dword [0x1405e42bc], eax
cmp eax, r12d
jl 0x14044d782
mov edx, dword [0x1405e42c0]
lea rax, [0x140705c28]
mov qword [0x1405e42b0], rax
test edx, edx
je 0x14044d71b
cmp byte [r13], 0x3a
je 0x14044d71b
mov rcx, qword [rbp]
mov r8d, 0x57
lea rdx, [0x140705d20]
call fcn.14044cd50
mov dword [0x1405e42b8], 0x57
cmp byte [r13], 0x3a
jne 0x14044d280
mov ebx, 0x3a
jmp 0x14044d337
mov dword [0x1405e42a4], ebx
jmp 0x14044d468
mov dword [0x1405e42a4], ebx
jmp 0x14044d648
lea r15, [rsi + 2]
movsx ebx, al
mov qword [0x1405e42b0], r15
cmp al, 0x3a
je 0x14044d253
mov edx, ebx
mov rcx, r13
call fcn.14045c510
test rax, rax
je 0x14044d258
movzx edx, byte [rax + 1]
jmp 0x14044d5f6
cdqe
mov rax, qword [rbp + rax*8]
mov qword [0x1405e42b0], rax
mov dword [rsp + 0x20], 0
mov r8, r14
mov rdx, r13
mov rcx, rbp
mov r9, qword [rsp + 0xb0]
call fcn.14044cdd0
mov ebx, eax
lea rax, [0x140705c28]
mov qword [0x1405e42b0], rax
jmp 0x14044d337
cmp byte [rsi + 2], 0
je 0x14044d86c
test r14, r14
je 0x14044d7dd
cmp qword [rbp + rbx*8], rdi
jne 0x14044d6b2
lea r15, [rsi + 2]
mov rsi, rdi
mov qword [0x1405e42b0], r15
jmp 0x14044d473
cmp byte [rax + 2], 0x3a
je 0x14044d4c7
add edx, 1
mov dword [0x1405e42bc], edx
cmp r12d, edx
jle 0x14044d81c
movsxd rax, edx
mov rax, qword [rbp + rax*8]
mov qword [0x140abb550], rax
jmp 0x14044d4c7
lea rax, [0x140705c28]
mov qword [0x1405e42b0], rax
mov eax, dword [0x1405e42c0]
test eax, eax
je 0x14044d84e
cmp byte [r13], 0x3a
je 0x14044d84e
mov rcx, qword [rbp]
mov r8d, ebx
lea rdx, [0x140705d20]
call fcn.14044cd50
mov dword [0x1405e42b8], ebx
cmp byte [r13], 0x3a
jne 0x14044d280
jmp 0x14044d730
mov rsi, rdi
jmp 0x14044d473
mov esi, dword [0x1405e42a4]
add ebx, 1
lea rax, [0x140705c28]
mov dword [0x1405e42bc], ebx
mov qword [0x1405e42b0], rax
cmp esi, 0xffffffff
je 0x14044d31e
mov r8d, ebx
mov edx, esi
mov r9, rbp
mov dword [rsp + 0x3c], ecx
call fcn.14044cc80
mov ecx, dword [rsp + 0x3c]
sub esi, ecx
sub ebx, esi
mov dword [0x1405e42bc], ebx
jmp 0x14044d31e