Function at 0x14001fbd0
Capabilities:
Query environment variable

Disassembly:
push rbp
push rsi
push rdi
push r14
push r15
mov rbp, rsp
sub rsp, 0x40
mov qword [rbp - 0x10], 0xfffffffffffffffe
mov qword [rsp + 0x70], rbx
mov r15, rcx
call fcn.14002d140
mov rcx, rax
xor r14d, r14d
mov edx, r14d
test rax, rax
setne dl
test edx, edx
jne 0x14001fc12
mov ecx, 0x80004005
call fcn.140001910
int3
mov rax, qword [rax]
call qword [rax + 0x18]
lea rbx, [rax + 0x18]
mov qword [rbp + 0x38], rbx
xor r8d, r8d
xor edx, edx
lea rcx, str.USERDNSDOMAIN
call qword [sym.imp.KERNEL32.dll_GetEnvironmentVariableW]
mov esi, eax
test eax, eax
jne 0x14001fc90
lea rdx, [rbx - 0x18]
mov rsi, qword [rdx]
cmp dword [rdx + 8], eax
je 0x14001ff28
cmp dword [rdx + 0x10], eax
jge 0x14001fc6a
cmp dword [rbx - 0xc], eax
jge 0x14001fc5d
mov ecx, 0x80070057
call fcn.140001910
int3
mov dword [rbx - 0x10], r14d
mov word [rbx], r14w
jmp 0x14001ff28
lock add dword [rdx + 0x10], 0xffffffff
jg 0x14001fc7a
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + 0x18]
lea rbx, [rax + 0x18]
mov qword [rbp + 0x38], rbx
jmp 0x14001ff28
jns 0x14001fc9d
mov ecx, 0x80070057
call fcn.140001910
int3
mov edx, 1
sub edx, dword [rbx - 8]
mov eax, dword [rbx - 0xc]
sub eax, esi
or eax, edx
jge 0x14001fcbd
mov edx, esi
lea rcx, [rbp + 0x38]
call fcn.140001650
mov rbx, qword [rbp + 0x38]
mov r8d, esi
mov rdx, rbx
lea rcx, str.USERDNSDOMAIN
call qword [sym.imp.KERNEL32.dll_GetEnvironmentVariableW]
movsxd rdx, dword [rbx - 0xc]
mov rcx, rbx
call fcn.1401af460
test eax, eax
js 0x14001ff49
cmp eax, dword [rbx - 0xc]
jg 0x14001ff49
mov dword [rbx - 0x10], eax
cdqe
mov word [rbx + rax*2], r14w
movsxd rsi, dword [rbx - 0x10]
test esi, esi
jns 0x14001fd0a
mov ecx, 0x80070057
call fcn.140001910
int3
mov ecx, 1
sub ecx, dword [rbx - 8]
mov eax, dword [rbx - 0xc]
sub eax, esi
or eax, ecx
jge 0x14001fd2a
mov edx, esi
lea rcx, [rbp + 0x38]
call fcn.140001650
mov rbx, qword [rbp + 0x38]
lea eax, [rsi + 1]
movsxd rdx, eax
mov rcx, rbx
call fcn.1401b132c
cmp esi, dword [rbx - 0xc]
jg 0x14001ff3e
mov dword [rbx - 0x10], esi
mov word [rbx + rsi*2], r14w
cmp dword [rbx - 0x10], 0
jl 0x14001ff28
lea rdx, str.AUTODESK.COM
mov rcx, rbx
call fcn.1401af480
test rax, rax
je 0x14001ff28
sub rax, rbx
sar rax, 1
cmp eax, 0xffffffff
je 0x14001ff28
mov byte [r15 + 0x3b9], 1
call fcn.14002d140
mov rdx, rax
mov ecx, r14d
test rax, rax
setne cl
test ecx, ecx
jne 0x14001fda2
mov ecx, 0x80004005
call fcn.140001910
int3
mov rax, qword [rax]
mov rcx, rdx
call qword [rax + 0x18]
add rax, 0x18
mov qword [rbp + 0x40], rax
lea rdx, str.USERNAME
lea rcx, [rbp + 0x40]
call fcn.140020140
lea rcx, [rbp + 0x40]
call fcn.14000b880
mov rcx, rax
call fcn.14000b940
call fcn.14002d140
mov rcx, rax
test rax, rax
setne r14b
test r14d, r14d
jne 0x14001fdf3
mov ecx, 0x80004005
call fcn.140001910
int3
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rbp + 0x48], rax
lea rdx, str.COMPUTERNAME
lea rcx, [rbp + 0x48]
call fcn.140020140
lea rcx, [rbp + 0x48]
call fcn.14000b880
mov rcx, rax
call fcn.14000b940
mov rax, qword [r15 + 0x350]
cmp dword [rax - 0x10], 0
jne 0x14001fe76
mov rax, qword [rbp + 0x40]
cmp dword [rax - 0x10], 0
je 0x14001fe76
lea r8, str._autodesk.com
lea rdx, [rbp + 0x40]
lea rcx, [rbp - 0x20]
call fcn.140004dc0
nop
mov rdx, rax
lea rcx, [r15 + 0x350]
call fcn.1400017a0
nop
mov rdx, qword [rbp - 0x20]
add rdx, 0xffffffffffffffe8
lock add dword [rdx + 0x10], 0xffffffff
jg 0x14001fe76
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov rax, qword [r15 + 0x340]
cmp dword [rax - 0x10], 0
jne 0x14001fede
mov rax, qword [rbp + 0x48]
cmp dword [rax - 0x10], 0
je 0x14001fede
lea r8, [0x14024a7a8]
lea rdx, [rbp + 0x40]
lea rcx, [rbp - 0x18]
call fcn.140004dc0
nop
mov rdx, rax
lea rcx, [r15 + 0x340]
call fcn.1400017a0
nop
mov rdx, qword [rbp - 0x18]
add rdx, 0xffffffffffffffe8
lock add dword [rdx + 0x10], 0xffffffff
jg 0x14001feca
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov rdx, qword [rbp + 0x48]
mov r8d, dword [rdx - 0x10]
lea rcx, [r15 + 0x340]
call fcn.140004e90
cmp dword [r15 + 0x380], 1
je 0x14001fef3
mov dword [r15 + 0x380], 1
mov rdx, qword [rbp + 0x48]
add rdx, 0xffffffffffffffe8
lock add dword [rdx + 0x10], 0xffffffff
jg 0x14001ff0c
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rbp + 0x40]
add rdx, 0xffffffffffffffe8
lock add dword [rdx + 0x10], 0xffffffff
jg 0x14001ff24
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov rbx, qword [rbp + 0x38]
lea rdx, [rbx - 0x18]
lock add dword [rdx + 0x10], 0xffffffff
jg 0x14001ff54
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
jmp 0x14001ff54
mov ecx, 0x80070057
call fcn.140001910
int3
mov ecx, 0x80070057
call fcn.140001910
nop
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop r15
pop r14
pop rdi
pop rsi
pop rbp
ret