Function at 0x14036d2b0
Capabilities:
Query environment variable

Disassembly:
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
push rbp
sub rsp, 0x138
mov r15, rcx
mov rax, qword [0x14194d6d8]
xor rax, rsp
mov qword [rsp + 0x128], rax
mov r13d, dword [r15 + 0x1e0]
cmp dword [0x141a58194], 0
jne 0x14036d6b5
lea rcx, str.FOR_FMT_TERMINATOR
lea rdx, [rsp + 0x20]
mov r8d, 0x105
call qword [sym.imp.KERNEL32.dll_GetEnvironmentVariableA]
mov eax, eax
test rax, rax
jbe 0x14036d341
cmp rax, 0x105
jae 0x14036d318
inc rax
jmp 0x14036d346
xor edx, edx
lea r12, [rsp + 0x20]
mov byte [r12], dl
mov dword [0x141a58198], edx
mov dword [0x141a5819c], edx
mov dword [0x141a581a0], edx
mov dword [0x141a58194], 1
jmp 0x14036d372
mov byte [rsp + 0x20], 0
xor ebp, ebp
lea r12, [rsp + 0x20]
mov dword [0x141a58198], ebp
mov dword [0x141a5819c], ebp
mov dword [0x141a581a0], ebp
mov dword [0x141a58194], 1
test rax, rax
je 0x14036d729
xor ebp, ebp
xor ebx, ebx
cmp byte [r12], 0
je 0x14036d729
mov rdi, r12
lea rsi, [0x140595c50]
mov dl, byte [rdi]
cmp dl, byte [rsi]
jne 0x14036d3ad
test dl, dl
je 0x14036d3a9
mov dl, byte [rdi + 1]
cmp dl, byte [rsi + 1]
jne 0x14036d3ad
add rdi, 2
add rsi, 2
test dl, dl
jne 0x14036d38b
xor eax, eax
jmp 0x14036d3b2
sbb eax, eax
or eax, 1
test eax, eax
je 0x14036d71a
mov rdi, r12
lea rsi, [0x140595c4c]
mov dl, byte [rdi]
cmp dl, byte [rsi]
jne 0x14036d3e6
test dl, dl
je 0x14036d3e2
mov dl, byte [rdi + 1]
cmp dl, byte [rsi + 1]
jne 0x14036d3e6
add rdi, 2
add rsi, 2
test dl, dl
jne 0x14036d3c4
xor eax, eax
jmp 0x14036d3eb
sbb eax, eax
or eax, 1
test eax, eax
je 0x14036d709
mov rdi, r12
lea rsi, str.CRLF
mov dl, byte [rdi]
cmp dl, byte [rsi]
jne 0x14036d41f
test dl, dl
je 0x14036d41b
mov dl, byte [rdi + 1]
cmp dl, byte [rsi + 1]
jne 0x14036d41f
add rdi, 2
add rsi, 2
test dl, dl
jne 0x14036d3fd
xor eax, eax
jmp 0x14036d424
sbb eax, eax
or eax, 1
test eax, eax
je 0x14036d6f8
mov rax, r12
mov r11d, 0x3b
mov rcx, rax
and ecx, 0xf
and rax, 0xfffffffffffffff0
pxor xmm2, xmm2
movd xmm1, r11d
punpcklbw xmm1, xmm1
punpcklbw xmm1, xmm1
pshufd xmm1, xmm1, 0
movdqa xmm0, xmmword [rax]
pcmpeqb xmm2, xmm0
pcmpeqb xmm0, xmm1
pmovmskb r11d, xmm0
pmovmskb r10d, xmm2
shr r11d, cl
shr r10d, cl
test r11d, r11d
jne 0x14036d47d
test r10d, r10d
je 0x14036d498
jmp 0x14036d494
bsf r11d, r11d
bsf r10d, r10d
je 0x14036d48c
cmp r11d, r10d
jg 0x14036d494
add rax, rcx
add rax, r11
jmp 0x14036d49d
xor eax, eax
jmp 0x14036d49d
call fcn.14042b510
mov rsi, rax
test rsi, rsi
je 0x14036d500
mov rcx, r12
lea rdx, [0x140595c60]
call fcn.140440e58
cmp r12, rax
je 0x14036d824
mov rcx, r12
lea rdx, [0x140595c5c]
call fcn.140440e58
cmp r12, rax
je 0x14036d810
mov rcx, r12
lea rdx, str.CRLF_
call fcn.140440e58
cmp r12, rax
jne 0x14036d695
mov dword [0x141a58198], 8
mov ebp, 8
lea r12, [rsi + 1]
mov rax, r12
mov r11d, 0x3a
mov rcx, rax
and ecx, 0xf
and rax, 0xfffffffffffffff0
pxor xmm2, xmm2
movd xmm1, r11d
punpcklbw xmm1, xmm1
punpcklbw xmm1, xmm1
pshufd xmm1, xmm1, 0
movdqa xmm0, xmmword [rax]
pcmpeqb xmm2, xmm0
pcmpeqb xmm0, xmm1
pmovmskb r11d, xmm0
pmovmskb r10d, xmm2
shr r11d, cl
shr r10d, cl
test r11d, r11d
jne 0x14036d551
test r10d, r10d
je 0x14036d56c
jmp 0x14036d568
bsf r11d, r11d
bsf r10d, r10d
je 0x14036d560
cmp r11d, r10d
jg 0x14036d568
add rax, rcx
add rax, r11
jmp 0x14036d571
xor eax, eax
jmp 0x14036d571
call fcn.14042b510
mov rsi, rax
test rsi, rsi
je 0x14036d806
mov rcx, r12
lea rdx, [0x140595c70]
call fcn.140440e58
cmp r12, rax
je 0x14036d7fc
mov rcx, r12
lea rdx, [0x140595c6c]
call fcn.140440e58
cmp r12, rax
je 0x14036d7f2
mov rcx, r12
lea rdx, str.CRLF:
call fcn.140440e58
cmp r12, rax
jne 0x14036d695
mov edx, 8
lea r12, [rsi + 1]
xor esi, esi
cmp edx, ebp
mov ebp, esi
cmovne ebp, edx
cmove edx, esi
cmp byte [r12], 0
je 0x14036d695
lea r11, [0x140000000]
xor r10d, r10d
movsx r9d, byte [r12]
test r9d, r9d
je 0x14036d64f
test esi, 0xfffffffd
je 0x14036d7dd
cmp esi, 1
jne 0x14036d61d
mov r8d, r9d
and r8d, 0xfffffffe
cmp r8d, 0x2c
je 0x14036d776
jmp 0x14036d622
cmp esi, 3
jne 0x14036d695
cmp r9d, 0x2c
je 0x14036d7bc
lea r8d, [r9 - 0x30]
cmp r8d, 9
ja 0x14036d695
lea r8d, [r14 + r14*4]
lea r14d, [r9 + r8*2 - 0x30]
inc r12
cmp rbx, 0x40
jl 0x14036d5ef
cmp byte [r12], 0
jne 0x14036d695
mov al, byte [r12 - 1]
cmp al, 0x2c
je 0x14036d695
cmp al, 0x2d
je 0x14036d695
cmp esi, 1
je 0x14036d792
lea rax, [0x140000000]
cmp r14d, dword [rax + rbx*4 + 0x1a57f60]
jl 0x14036d695
lea rax, [0x140000000]
mov dword [0x141a5819c], edx
mov dword [rax + rbx*4 + 0x1a58080], r14d
inc ebx
mov dword [0x141a581a0], ebx
jmp 0x14036d6bb
mov ecx, 0x60
xor edx, edx
xor eax, eax
mov dword [0x141a58198], eax
mov dword [0x141a5819c], eax
mov dword [0x141a581a0], eax
call fcn.140383960
mov ebp, dword [0x141a5819c]
test ebp, ebp
je 0x14036d6f0
movsxd rax, dword [0x141a581a0]
xor edx, edx
test rax, rax
jle 0x14036d6f0
lea rcx, [0x140000000]
cmp r13d, dword [rcx + rdx*4 + 0x1a57f60]
jl 0x14036d6e8
cmp r13d, dword [rcx + rdx*4 + 0x1a58080]
jle 0x14036d729
inc rdx
cmp rdx, rax
jl 0x14036d6d4
mov ebp, dword [0x141a58198]
jmp 0x14036d729
mov dword [0x141a58198], 8
mov ebp, 8
jmp 0x14036d729
mov dword [0x141a58198], 6
mov ebp, 6
jmp 0x14036d729
mov dword [0x141a58198], 7
mov ebp, 7
test ebp, ebp
je 0x14036d73c
mov byte [r15 + 0x27c], bpl
mov byte [r15 + 0x27e], 3
mov rcx, qword [rsp + 0x128]
mov qword [rsp + 0x128], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x14036d838
xor eax, eax
add rsp, 0x138
pop rbp
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
ret
mov dword [r11 + rbx*4 + 0x1a57f60], r14d
cmp r9d, 0x2d
jne 0x14036d622
mov esi, 2
jmp 0x14036d63f
lea rax, [0x140000000]
mov dword [0x141a5819c], edx
mov dword [rax + rbx*4 + 0x1a57f60], r14d
mov dword [rax + rbx*4 + 0x1a58080], r14d
inc ebx
mov dword [0x141a581a0], ebx
jmp 0x14036d6bb
cmp r14d, dword [r11 + rbx*4 + 0x1a57f60]
jl 0x14036d695
mov dword [r11 + rbx*4 + 0x1a58080], r14d
inc rbx
mov esi, r10d
jmp 0x14036d63f
lea r14d, [r9 - 0x30]
cmp r14d, 9
ja 0x14036d695
inc esi
jmp 0x14036d63f
mov edx, 6
jmp 0x14036d5ca
mov edx, 7
jmp 0x14036d5ca
mov edx, 7
jmp 0x14036d5ce
mov dword [0x141a58198], 6
mov ebp, 6
jmp 0x14036d4fc
mov dword [0x141a58198], 7
mov ebp, 7
jmp 0x14036d4fc
call fcn.14043dac0
nop
nop
push rsi
push rdi
sub rsp, 0x68
mov r9, rcx
mov rax, qword [0x14194d6d8]
mov rsi, rdx
xor rax, rsp
mov qword [rsp + 0x60], rax
mov r8b, byte [r9 + 0x295]
and r8b, 0xdf
or r8b, 0x10
mov byte [r9 + 0x280], 0
mov byte [r9 + 0x295], r8b
mov rcx, rdx
and rdx, 0xfffffffffffffff0
pxor xmm0, xmm0
pcmpeqb xmm0, xmmword [rdx]
pmovmskb eax, xmm0
and ecx, 0xf
shr eax, cl
bsf eax, eax
jne 0x14036d8a1
mov rax, rdx
add rdx, rcx
call fcn.14042af70
mov rcx, rax
mov eax, 0x14
cmp rcx, 0x14
cmovb rax, rcx
xor edi, edi
test rax, rax
jle 0x14036d912
mov qword [rsp + 0x20], r12
mov r12, rax
mov qword [rsp + 0x28], r13
mov r13, rsi
mov qword [rsp + 0x30], r14
mov rsi, r9
mov qword [rsp + 0x38], r15
mov qword [rsp + 0x40], rbp
mov bpl, r8b
movsx ecx, byte [rdi + r13]
call fcn.140452db8
mov byte [rsp + rdi + 0x48], al
inc rdi
cmp rdi, r12
jl 0x14036d8dd
mov r12, qword [rsp + 0x20]
mov r8b, bpl
mov r13, qword [rsp + 0x28]
mov r9, rsi
mov r14, qword [rsp + 0x30]
mov r15, qword [rsp + 0x38]
mov rbp, qword [rsp + 0x40]
mov byte [rsp + rdi + 0x48], 0
lea rdi, str.NATIVE
lea rsi, [rsp + 0x48]
mov dl, byte [rdi]
cmp dl, byte [rsi]
jne 0x14036d945
test dl, dl
je 0x14036d941
mov dl, byte [rdi + 1]
cmp dl, byte [rsi + 1]
jne 0x14036d945
add rdi, 2
add rsi, 2
test dl, dl
jne 0x14036d923
xor eax, eax
jmp 0x14036d94a
sbb eax, eax
or eax, 1
test eax, eax
je 0x14036dbcb
lea rdi, str.BIG_ENDIAN
lea rsi, [rsp + 0x48]
mov dl, byte [rdi]
cmp dl, byte [rsi]
jne 0x14036d980
test dl, dl
je 0x14036d97c
mov dl, byte [rdi + 1]
cmp dl, byte [rsi + 1]
jne 0x14036d980
add rdi, 2
add rsi, 2
test dl, dl
jne 0x14036d95e
xor eax, eax
jmp 0x14036d985
sbb eax, eax
or eax, 1
test eax, eax
je 0x14036dbb6
lea rdi, str.VAXD
lea rsi, [rsp + 0x48]
mov dl, byte [rdi]
cmp dl, byte [rsi]
jne 0x14036d9bb
test dl, dl
je 0x14036d9b7
mov dl, byte [rdi + 1]
cmp dl, byte [rsi + 1]
jne 0x14036d9bb
add rdi, 2
add rsi, 2
test dl, dl
jne 0x14036d999
xor eax, eax
jmp 0x14036d9c0
sbb eax, eax
or eax, 1
test eax, eax
je 0x14036dbac
lea rdi, str.VAXG
lea rsi, [rsp + 0x48]
mov dl, byte [rdi]
cmp dl, byte [rsi]
jne 0x14036d9f6
test dl, dl
je 0x14036d9f2
mov dl, byte [rdi + 1]
cmp dl, byte [rsi + 1]
jne 0x14036d9f6
add rdi, 2
add rsi, 2
test dl, dl
jne 0x14036d9d4
xor eax, eax
jmp 0x14036d9fb
sbb eax, eax
or eax, 1
test eax, eax
je 0x14036dba2
lea rdi, [0x140595d68]
lea rsi, [rsp + 0x48]
mov dl, byte [rdi]
cmp dl, byte [rsi]
jne 0x14036da31
test dl, dl
je 0x14036da2d
mov dl, byte [rdi + 1]
cmp dl, byte [rsi + 1]
jne 0x14036da31
add rdi, 2
add rsi, 2
test dl, dl
jne 0x14036da0f
xor eax, eax
jmp 0x14036da36
sbb eax, eax
or eax, 1
test eax, eax
je 0x14036db98
lea rdi, [0x140595d6c]
lea rsi, [rsp + 0x48]
mov dl, byte [rdi]
cmp dl, byte [rsi]
jne 0x14036da6c
test dl, dl
je 0x14036da68
mov dl, byte [rdi + 1]
cmp dl, byte [rsi + 1]
jne 0x14036da6c
add rdi, 2
add rsi, 2
test dl, dl
jne 0x14036da4a
xor eax, eax
jmp 0x14036da71
sbb eax, eax
or eax, 1
test eax, eax
je 0x14036db8e
lea rdi, str.LITTLE_ENDIAN
lea rsi, [rsp + 0x48]
mov dl, byte [rdi]
cmp dl, byte [rsi]
jne 0x14036daa7
test dl, dl
je 0x14036daa3
mov dl, byte [rdi + 1]
cmp dl, byte [rsi + 1]
jne 0x14036daa7
add rdi, 2
add rsi, 2
test dl, dl
jne 0x14036da85
xor eax, eax
jmp 0x14036daac
sbb eax, eax
or eax, 1
test eax, eax
je 0x14036db79
lea rdi, [0x140595d64]
lea rsi, [rsp + 0x48]
mov dl, byte [rdi]
cmp dl, byte [rsi]
jne 0x14036dae2
test dl, dl
je 0x14036dade
mov dl, byte [rdi + 1]
cmp dl, byte [rsi + 1]
jne 0x14036dae2
add rdi, 2
add rsi, 2
test dl, dl
jne 0x14036dac0
xor eax, eax
jmp 0x14036dae7
sbb eax, eax
or eax, 1
test eax, eax
je 0x14036db64
lea rdi, str.CRAY
lea rsi, [rsp + 0x48]
mov dl, byte [rdi]
cmp dl, byte [rsi]
jne 0x14036db19
test dl, dl
je 0x14036db15
mov dl, byte [rdi + 1]
cmp dl, byte [rsi + 1]
jne 0x14036db19
add rdi, 2
add rsi, 2
test dl, dl
jne 0x14036daf7
xor eax, eax
jmp 0x14036db1e
sbb eax, eax
or eax, 1
test eax, eax
jne 0x14036db3a
add r8b, 0x20
mov byte [r9 + 0x295], r8b
mov byte [r9 + 0x280], 4
jmp 0x14036dbde
mov rcx, qword [rsp + 0x60]
mov qword [rsp + 0x60], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x14036dc01
mov eax, 0x2e
add rsp, 0x68
pop rdi
pop rsi
ret
add r8b, 0x20
mov byte [r9 + 0x295], r8b
mov byte [r9 + 0x280], 3
jmp 0x14036dbde
and r8b, 0xef
mov byte [r9 + 0x280], 0
mov byte [r9 + 0x295], r8b
jmp 0x14036dbde
mov byte [r9 + 0x280], 6
jmp 0x14036dbde
mov byte [r9 + 0x280], 5
jmp 0x14036dbde
mov byte [r9 + 0x280], 1
jmp 0x14036dbde
mov byte [r9 + 0x280], 2
jmp 0x14036dbde
add r8b, 0x20
mov byte [r9 + 0x295], r8b
mov byte [r9 + 0x280], 0
jmp 0x14036dbde
and r8b, 0xef
mov byte [r9 + 0x295], r8b
mov byte [r9 + 0x280], 0
mov rcx, qword [rsp + 0x60]
mov qword [rsp + 0x60], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x14036dc01
xor eax, eax
add rsp, 0x68
pop rdi
pop rsi
ret
call fcn.14043dac0
nop
nop word [rax + rax]