Function at 0x140009090
Capabilities:
Query environment variable

Disassembly:
push rbp
push rsi
push rdi
push r13
push r14
push r15
lea rbp, [rsp - 7]
sub rsp, 0xb8
mov rax, qword [0x1401ad1c0]
xor rax, rsp
mov qword [rbp - 0x31], rax
mov rax, qword [rbp + 0x77]
mov rsi, qword [rbp + 0x6f]
movsxd r14, ecx
movaps xmmword [rsp + 0x90], xmm6
movaps xmm6, xmm2
mov qword [rbp - 0x51], rax
mov rax, qword [rbp + 0x97]
mov dword [rbp - 0x65], r9d
mov r13, rdx
mov dword [rbp - 0x69], r14d
mov qword [rbp - 0x49], rsi
mov qword [rbp - 0x59], rax
xor edi, edi
mov dword [rbp - 0x61], 0xffffffff
call fcn.140006b20
mov qword [rbp - 0x71], rax
movaps xmm0, xmm6
call fcn.140007500
lea rdx, [rbp - 0x41]
movaps xmm6, xmmword [rsp + 0x90]
sub rdx, rax
movzx ecx, byte [rax]
lea rax, [rax + 1]
mov byte [rdx + rax - 1], cl
test cl, cl
jne 0x140009111
mov eax, 2
mov qword [rsp + 0xa8], r12
lea r15d, [rax - 1]
cmp r14d, 3
jne 0x14000913c
mov r12d, r15d
jmp 0x140009147
mov r12d, r14d
cmp r14d, 4
cmove r12d, eax
mov qword [rsp + 0xb0], rbx
test rsi, rsi
je 0x140009278
mov eax, dword [rsi]
xor ebx, ebx
cmp eax, 0xffffffff
je 0x1400091b1
cmp eax, r15d
je 0x140009185
mov ecx, 0xfffffc6a
call fcn.140008990
inc rbx
inc edi
mov rax, rbx
add rax, rax
mov eax, dword [rsi + rax*8]
cmp eax, 0xffffffff
jne 0x140009161
jmp 0x1400091b1
movsxd rax, edi
add rax, rax
mov rcx, qword [rsi + rax*8 + 8]
test rcx, rcx
je 0x1400091a4
movzx eax, byte [rcx]
cmp al, byte [0x140186262]
je 0x1400091a4
xor ecx, ecx
jmp 0x1400091a9
mov ecx, 0xfffffc65
call fcn.140008990
mov dword [rbp - 0x61], edi
call fcn.1400088b0
cmp eax, 0xfffffc6a
je 0x1400091cd
call fcn.1400088b0
cmp eax, 0xfffffc65
jne 0x140009278
xor ecx, ecx
call qword [sym.imp.MSVCR110.dll__time64]
mov rbx, rax
sub ebx, dword [rbp + 0x7f]
cmp dword [rbp + 0x5f], 3
jne 0x140009209
lea r8, [rbp - 0x41]
lea rcx, str.Testing_only_for_the_validity_of_feature__s__s...
mov rdx, r13
call fcn.140008560
call fcn.1400088b0
lea rcx, str.Validity_test_completed_with_status__d.
mov edx, eax
call fcn.140008560
jmp 0x14000922a
mov edx, dword [rbp - 0x65]
test r13, r13
lea r8, str._NULL_
lea r9, [rbp - 0x41]
lea rcx, str.Checking_out__d_license_s__for__s__s...
cmovne r8, r13
call fcn.140008560
call fcn.1400088b0
mov r8d, ebx
mov edx, eax
cmp r12d, r15d
jne 0x14000924e
lea rcx, str.Check_out_completed_with_status__d__time__ld_.
call fcn.140008560
lea rdx, [0x140187510]
jmp 0x140009261
lea rcx, str.Check_out__Increment__completed_with_status__d__time__ld_.
call fcn.140008560
lea rdx, [0x140187514]
lea rcx, [0x1401871fc]
xor r8d, r8d
call fcn.1400084a0
mov eax, r15d
jmp 0x140009879
mov esi, dword [rbp + 0x5f]
cmp esi, 3
je 0x1400092da
lea rcx, str.CDS_LICFLTR
call qword [sym.imp.MSVCR110.dll_getenv]
mov rbx, rax
test rax, rax
je 0x1400092da
movzx ecx, byte [rax]
cmp cl, byte [0x140186262]
je 0x1400092da
cmp qword [0x1401cd620], 0
je 0x1400092da
lea rcx, str.CDS_LICFLTR_variable_is_set._Calling__s...
mov rdx, rax
call fcn.140008560
cmp qword [0x1401cd620], 0
je 0x1400092da
call fcn.1400088b0
lea rcx, str._s_exited_with_status_of__d...
mov rdx, rbx
mov r8d, eax
call fcn.140008560
mov rbx, qword [0x1401ccfb0]
xor edi, edi
cmp esi, 3
jne 0x1400092f4
mov rbx, qword [0x1401ccfb8]
jmp 0x1400094e7
test rbx, rbx
je 0x140009338
nop dword [rax]
mov rcx, qword [rbx]
test rcx, rcx
je 0x1400094d9
mov rdx, r13
call qword [sym.imp.MSVCR110.dll__stricmp]
test eax, eax
jne 0x140009328
cmp r14, r15
jne 0x140009328
cmp dword [rbx + 0x30], r15d
je 0x1400093ed
mov rax, qword [rbx + 0x50]
test rax, rax
cmove rdi, rbx
mov rbx, rax
jne 0x140009300
lea eax, [r14 - 3]
cmp eax, r15d
jbe 0x14000955a
mov ecx, 0x60
call fcn.140008430
xor ecx, ecx
mov qword [rbp - 0x71], rax
mov qword [rax], rcx
mov rax, qword [rbp - 0x71]
mov qword [rax + 8], rcx
mov rax, qword [rbp - 0x71]
mov qword [rax + 0x10], rcx
mov rax, qword [rbp - 0x71]
mov qword [rax + 0x18], rcx
mov rax, qword [rbp - 0x71]
mov dword [rax + 0x20], 0xffffffff
mov rax, qword [rbp - 0x71]
mov dword [rax + 0x24], ecx
mov rax, qword [rbp - 0x71]
mov dword [rax + 0x2c], ecx
mov rax, qword [rbp - 0x71]
mov dword [rax + 0x30], r15d
mov rax, qword [rbp - 0x71]
mov dword [rax + 0x3c], ecx
mov rax, qword [rbp - 0x71]
mov dword [rax + 0x40], ecx
mov rax, qword [rbp - 0x71]
mov dword [rax + 0x38], 0xffffffd7
mov rax, qword [rbp - 0x71]
mov qword [rax + 0x50], rcx
mov rax, qword [rbp - 0x71]
mov qword [rax + 0x58], rdi
mov rdx, qword [rbp - 0x71]
call fcn.140004560
call fcn.1400088b0
test eax, eax
jne 0x1400094f1
mov rax, qword [rbp - 0x59]
mov rbx, qword [rbp - 0x71]
mov qword [rdi + 0x50], rbx
test rax, rax
je 0x140009569
mov qword [rax], rbx
jmp 0x140009569
mov rdx, qword [rbx]
mov r8d, r15d
mov rcx, rbx
call fcn.140005250
test eax, eax
jne 0x1400094e7
mov r11, qword [rbp - 0x71]
mov r10d, dword [r11 + 0x38]
cmp r10d, dword [rbx + 0x2c]
jg 0x1400094e7
mov rax, qword [rbx + 8]
lea r8, [rbp - 0x41]
sub r8, rax
movzx edx, byte [rax]
movzx ecx, byte [rax + r8]
sub edx, ecx
jne 0x140009433
inc rax
test ecx, ecx
jne 0x140009420
test edx, edx
je 0x140009483
mov ecx, 0xfffffc71
call fcn.140008990
xor ecx, ecx
call qword [sym.imp.MSVCR110.dll__time64]
mov rbx, rax
sub ebx, dword [rbp + 0x7f]
call fcn.1400088b0
lea rcx, str.Check_out_completed_with_status__d__time__ld_.
mov edx, eax
mov r8d, ebx
call fcn.140008560
lea rdx, [0x140187510]
lea rcx, [0x1401871fc]
xor r8d, r8d
call fcn.1400084a0
mov eax, r15d
jmp 0x140009879
mov r9, qword [r11 + 8]
mov r8, qword [r11]
lea rcx, str.Checking_out__d_license_s__for__s__s...
mov edx, r10d
call fcn.140008560
cmp dword [0x1401ad1d8], 0
jl 0x1400094a7
call fcn.140008080
xor ecx, ecx
call fcn.140008990
xor ecx, ecx
call qword [sym.imp.MSVCR110.dll__time64]
mov rbx, rax
sub ebx, dword [rbp + 0x7f]
call fcn.1400088b0
lea rcx, str.Check_out_completed_with_status__d__time__ld_.
mov edx, eax
mov r8d, ebx
call fcn.140008560
xor eax, eax
jmp 0x140009879
mov rax, qword [rbp - 0x59]
test rax, rax
je 0x1400094e7
mov qword [rax], rbx
jmp 0x1400094e7
test rbx, rbx
jne 0x140009569
jmp 0x140009338
lea rcx, [rbp - 0x71]
call fcn.140007220
xor r8d, r8d
xor ecx, ecx
cmp r12d, r15d
jne 0x14000952f
lea rdx, [0x140187510]
call fcn.1400084a0
call fcn.1400088b0
mov r8d, dword [rbp + 0x7f]
lea rcx, str.Check_out_completed_with_status__d__time__ld_.
mov edx, eax
call fcn.140008560
mov eax, r15d
jmp 0x140009879
lea rdx, [0x140187514]
call fcn.1400084a0
call fcn.1400088b0
mov r8d, dword [rbp + 0x7f]
lea rcx, str.Check_out__Increment__completed_with_status__d__time__ld_.
mov edx, eax
call fcn.140008560
mov eax, r15d
jmp 0x140009879
mov rbx, qword [0x1401ccfc0]
mov qword [rdi + 0x50], rbx
mov qword [rbx + 0x58], rdi
mov rcx, qword [rbp + 0x8f]
mov rdx, rbx
sub rdx, rcx
nop word [rax + rax]
movzx eax, byte [rcx]
lea rcx, [rcx + 1]
mov byte [rcx + rdx + 0x33], al
test al, al
jne 0x140009580
cmp esi, 3
jne 0x1400095a2
cmp qword [rbx], 0
je 0x1400095a8
mov rcx, rbx
call fcn.140007220
cmp qword [rbx], 0
jne 0x1400095b3
mov rcx, r13
call fcn.140006fc0
mov qword [rbx], rax
cmp esi, 3
jne 0x1400095c8
cmp qword [rbx + 8], 0
lea rcx, [rbx + 8]
je 0x1400095c8
call fcn.140007220
mov rax, qword [rbx + 8]
test rax, rax
jne 0x140009682
lea rcx, [rbp - 0x41]
call fcn.140006fc0
mov qword [rbx + 8], rax
cmp esi, 3
jne 0x1400095f7
cmp qword [rbx + 0x10], 0
lea rcx, [rbx + 0x10]
je 0x1400095f7
call fcn.140007220
movsxd rax, dword [rbp - 0x61]
test eax, eax
js 0x1400096d1
cmp qword [rbx + 0x10], 0
jne 0x1400096d1
mov rcx, rax
mov rax, qword [rbp - 0x49]
mov edx, 0x414
add rcx, rcx
mov rcx, qword [rax + rcx*8 + 8]
call fcn.140007020
mov qword [rbx + 0x10], rax
cmp dword [0x1401ad1d0], 0
jne 0x1400096ff
lea rdi, [0x1401cd0d0]
mov rcx, rax
mov rdx, rdi
call qword [sym.imp.MSVCR110.dll_strstr]
test rax, rax
jne 0x1400096ff
mov rcx, qword [rbx + 0x10]
dec rcx
nop dword [rax + rax]
cmp byte [rcx + 1], 0
lea rcx, [rcx + 1]
jne 0x140009660
xor edx, edx
nop dword [rax]
movzx eax, byte [rdi + rdx]
lea rdx, [rdx + 1]
mov byte [rcx + rdx - 1], al
test al, al
jne 0x140009670
jmp 0x1400096ff
lea r8, [rbp - 0x41]
sub r8, rax
nop dword [rax]
movzx edx, byte [rax]
movzx ecx, byte [rax + r8]
sub edx, ecx
jne 0x1400096a3
inc rax
test ecx, ecx
jne 0x140009690
test edx, edx
je 0x1400095e2
mov ecx, 0xfffffc71
call fcn.140008990
xor ecx, ecx
call qword [sym.imp.MSVCR110.dll__time64]
mov rbx, rax
sub ebx, dword [rbp + 0x7f]
cmp esi, 3
jne 0x14000922a
jmp 0x1400091f4
cmp dword [0x1401ad1d0], 0
jne 0x1400096ff
cmp qword [rbx + 0x10], 0
je 0x1400096ea
lea rcx, [rbx + 0x10]
call fcn.140007220
lea rcx, [0x1401cd0d0]
mov edx, 0x414
call fcn.140007020
mov qword [rbx + 0x10], rax
mov eax, dword [rbp - 0x65]
mov dword [rbx + 0x20], 0x4000
mov dword [rbx + 0x30], r12d
mov dword [rbx + 0x24], eax
test esi, esi
jne 0x140009719
mov dword [rbx + 0x28], esi
jmp 0x140009732
cmp esi, 2
jne 0x140009723
mov dword [rbx + 0x28], esi
jmp 0x140009732
mov eax, 3
cmp esi, eax
cmove r15d, eax
mov dword [rbx + 0x28], r15d
mov r14, qword [rbp - 0x51]
cmp r14d, 3
jne 0x140009745
lea r14, [0x14000a160]
jmp 0x140009752
cmp r14d, 1
jne 0x14000978c
lea r14, [fcn.140007080]
cmp qword [0x1402818c8], 0
je 0x14000978c
lea rax, str.lmCheckOutIncr__
lea rdi, str.lmCheckOut__
cmp r12d, 2
cmove rdi, rax
call qword [sym.imp.MSVCR110.dll___iob_func]
lea rdx, str.Warning:_No_error_function_was_specfied_for__s._n
lea rcx, [rax + 0x60]
mov r8, rdi
call qword [sym.imp.MSVCR110.dll_fprintf]
cmp qword [0x1401cd620], 0
je 0x1400097d4
cmp esi, 3
jne 0x1400097b0
mov r8, qword [rbx + 8]
mov rdx, qword [rbx]
lea rcx, str.Testing_only_for_the_validity_of_feature__s__s...
call fcn.140008560
jmp 0x1400097d4
mov rax, qword [rbx]
mov r9, qword [rbx + 8]
mov edx, dword [rbx + 0x24]
test rax, rax
lea r8, str._NULL_
lea rcx, str.Checking_out__d_license_s__for__s__s...
cmovne r8, rax
call fcn.140008560
cmp dword [0x1401ad1d8], 0
jl 0x1400097e2
call fcn.140008080
mov rcx, qword [rbx + 0x48]
xor edx, edx
call fcn.140074f20
xor ecx, ecx
call fcn.140008990
mov rax, qword [rbp - 0x59]
mov edi, dword [rbp + 0x7f]
mov ecx, dword [rbp - 0x69]
mov qword [rsp + 0x30], rax
mov eax, dword [rbp + 0x87]
mov dword [rsp + 0x28], eax
mov r9, r14
mov r8d, esi
mov rdx, rbx
mov dword [rsp + 0x20], edi
call fcn.1400098b0
cmp qword [0x1401cd620], 0
mov r14d, eax
je 0x140009876
xor ecx, ecx
call qword [sym.imp.MSVCR110.dll__time64]
mov rbx, rax
sub ebx, edi
cmp esi, 3
jne 0x140009851
call fcn.1400088b0
lea rcx, str.Validity_test_completed_with_status__d.
mov edx, eax
call fcn.140008560
call fcn.1400088b0
lea r9, str.Check_out__Increment__completed_with_status__d__time__ld_.
cmp r12d, 2
lea rcx, str.Check_out_completed_with_status__d__time__ld_.
mov r8d, ebx
mov edx, eax
cmove rcx, r9
call fcn.140008560
mov eax, r14d
mov r12, qword [rsp + 0xa8]
mov rbx, qword [rsp + 0xb0]
mov rcx, qword [rbp - 0x31]
xor rcx, rsp
call fcn.14006b6a0
add rsp, 0xb8
pop r15
pop r14
pop r13
pop rdi
pop rsi
pop rbp
ret