Function at 0x14000a970
Capabilities:
Query environment variable

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
push rbp
push r14
push r15
lea rbp, [rax - 0x2f8]
sub rsp, 0x3e0
movaps xmmword [rax - 0x28], xmm6
movaps xmmword [rax - 0x38], xmm7
movaps xmmword [rax - 0x48], xmm8
movaps xmmword [rax - 0x58], xmm9
movaps xmmword [rax - 0x68], xmm10
movaps xmmword [rax - 0x78], xmm11
mov rax, qword [0x1400f1200]
xor rax, rsp
mov qword [rbp + 0x270], rax
xorps xmm0, xmm0
movups xmmword [rbp + 0x40], xmm0
movdqa xmm1, xmmword [0x1400d7e20]
movdqu xmmword [rbp + 0x50], xmm1
xor r15d, r15d
mov word [rbp + 0x40], r15w
mov qword [rsp + 0x38], r15
mov qword [rsp + 0x40], r15
mov r8d, 0x101
lea rdx, [rbp + 0x60]
lea rcx, str.USERNAME
call qword [sym.imp.api_ms_win_core_processenvironment_l1_1_0.dll_GetEnvironmentVariableW]
test eax, eax
jne 0x14000aa27
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
mov ebx, eax
test eax, eax
jle 0x14000aa15
movzx ebx, ax
or ebx, 0x80070000
test ebx, ebx
js 0x14000ad12
mov ebx, 0x80004005
jmp 0x14000ad12
mov r8d, 0xc
lea rdx, str.Autorun_for
lea rcx, [rbp + 0x40]
call fcn.140007410
lea rax, [rbp + 0x60]
mov rsi, 0xffffffffffffffff
mov r8, rsi
nop dword [rax + rax]
inc r8
cmp word [rax + r8*2], 0
jne 0x14000aa50
lea rdx, [rbp + 0x60]
lea rcx, [rbp + 0x40]
call fcn.14000ae00
lea rax, [rsp + 0x38]
mov qword [rsp + 0x20], rax
lea r9, [0x1400b8640]
xor edx, edx
lea r8d, [rdx + 1]
lea rcx, [0x1400b8650]
call qword [sym.imp.api_ms_win_core_com_l1_1_0.dll_CoCreateInstance]
mov ebx, eax
test eax, eax
js 0x14000ad12
mov rax, qword [rsp + 0x38]
mov rcx, qword [rax]
mov rbx, qword [rcx + 0x50]
lea rcx, [rbp - 0x60]
call qword [sym.imp.OLEAUT32.dll_VariantClear]
nop
movups xmm11, xmmword [rbp - 0x60]
movsd xmm10, qword [rbp - 0x50]
lea rcx, [rbp - 0x78]
call qword [sym.imp.OLEAUT32.dll_VariantClear]
nop
movups xmm9, xmmword [rbp - 0x78]
movsd xmm8, qword [rbp - 0x68]
lea rcx, [rsp + 0x70]
call qword [sym.imp.OLEAUT32.dll_VariantClear]
nop
movups xmm7, xmmword [rsp + 0x70]
movsd xmm6, qword [rbp - 0x80]
lea rcx, [rsp + 0x58]
call qword [sym.imp.OLEAUT32.dll_VariantClear]
nop
movaps xmmword [rbp - 0x40], xmm11
movsd qword [rbp - 0x30], xmm10
movaps xmmword [rbp - 0x20], xmm9
movsd qword [rbp - 0x10], xmm8
movaps xmmword [rbp], xmm7
movsd qword [rbp + 0x10], xmm6
movups xmm0, xmmword [rsp + 0x58]
movaps xmmword [rbp + 0x20], xmm0
movsd xmm1, qword [rsp + 0x68]
movsd qword [rbp + 0x30], xmm1
lea rax, [rbp - 0x40]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x20]
lea r8, [rbp]
lea rdx, [rbp + 0x20]
mov rcx, qword [rsp + 0x38]
call rbx
mov ebx, eax
lea rcx, [rsp + 0x58]
call qword [sym.imp.OLEAUT32.dll_VariantCopy]
nop
lea rcx, [rsp + 0x70]
call qword [sym.imp.OLEAUT32.dll_VariantCopy]
nop
lea rcx, [rbp - 0x78]
call qword [sym.imp.OLEAUT32.dll_VariantCopy]
nop
lea rcx, [rbp - 0x60]
call qword [sym.imp.OLEAUT32.dll_VariantCopy]
test ebx, ebx
js 0x14000ad12
mov rax, qword [rsp + 0x38]
mov rcx, qword [rax]
mov rbx, qword [rcx + 0x38]
mov ecx, 0x18
call fcn.140078e70
mov rdi, rax
mov qword [rsp + 0x48], rax
test rax, rax
je 0x14000abbf
mov qword [rax + 8], r15
mov dword [rax + 0x10], 1
lea rcx, [0x1400c7610]
call qword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov qword [rdi], rax
test rax, rax
je 0x14000adc7
jmp 0x14000abc2
mov rdi, r15
mov qword [rbp - 0x48], rdi
test rdi, rdi
je 0x14000addd
lea r8, [rsp + 0x40]
mov rdx, qword [rdi]
mov rcx, qword [rsp + 0x38]
call rbx
mov ebx, eax
mov eax, esi
lock xadd dword [rdi + 0x10], eax
cmp eax, 1
jne 0x14000ac1c
mov rcx, qword [rdi]
test rcx, rcx
je 0x14000abfd
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
mov qword [rdi], r15
mov rcx, qword [rdi + 8]
test rcx, rcx
je 0x14000ac0f
call fcn.140078eb4
mov qword [rdi + 8], r15
mov edx, 0x18
mov rcx, rdi
call fcn.140078eb4
test ebx, ebx
js 0x14000ad12
mov qword [rsp + 0x48], r15
mov rax, qword [rsp + 0x40]
mov rcx, qword [rax]
mov r14, qword [rcx + 0x68]
lea rbx, [rbp + 0x40]
cmp qword [rbp + 0x58], 8
cmovae rbx, qword [rbp + 0x40]
mov ecx, 0x18
call fcn.140078e70
mov rdi, rax
mov qword [rsp + 0x50], rax
test rax, rax
je 0x14000ac81
mov qword [rax + 8], r15
mov dword [rax + 0x10], 1
mov rcx, rbx
call qword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov qword [rdi], rax
test rax, rax
jne 0x14000ac84
test rbx, rbx
jne 0x14000add2
jmp 0x14000ac84
mov rdi, r15
mov qword [rsp + 0x50], rdi
test rdi, rdi
je 0x14000ade8
lea r8, [rsp + 0x48]
mov rdx, qword [rdi]
mov rcx, qword [rsp + 0x40]
call r14
mov ebx, eax
lock xadd dword [rdi + 0x10], esi
cmp esi, 1
jne 0x14000acde
mov rcx, qword [rdi]
test rcx, rcx
je 0x14000acbf
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
mov qword [rdi], r15
mov rcx, qword [rdi + 8]
test rcx, rcx
je 0x14000acd1
call fcn.140078eb4
mov qword [rdi + 8], r15
mov edx, 0x18
mov rcx, rdi
call fcn.140078eb4
test ebx, ebx
js 0x14000ad12
mov rcx, qword [rsp + 0x48]
mov rax, qword [rcx]
lea rdx, [rsp + 0x30]
call qword [rax + 0x50]
mov ebx, eax
mov rcx, qword [rsp + 0x48]
mov rax, qword [rcx]
call qword [rax + 0x10]
test ebx, ebx
js 0x14000ad12
mov ebx, 0x80004005
cmp word [rsp + 0x30], 0xffff
cmove ebx, r15d
mov rcx, qword [rsp + 0x38]
test rcx, rcx
je 0x14000ad22
mov rax, qword [rcx]
call qword [rax + 0x10]
mov rcx, qword [rsp + 0x40]
test rcx, rcx
je 0x14000ad32
mov rax, qword [rcx]
call qword [rax + 0x10]
shr ebx, 0x1f
xor bl, 1
mov rdx, qword [rbp + 0x58]
cmp rdx, 8
jb 0x14000ad74
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000ad6f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000adc1
call fcn.140078eb4
movzx eax, bl
mov rcx, qword [rbp + 0x270]
xor rcx, rsp
call fcn.140078e50
lea r11, [rsp + 0x3e0]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rdi, qword [r11 + 0x30]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
movaps xmm10, xmmword [r11 - 0x50]
movaps xmm11, xmmword [r11 - 0x60]
mov rsp, r11
pop r15
pop r14
pop rbp
ret
call fcn.14007fed8
nop
mov ecx, 0x8007000e
call fcn.14007a0b0
nop
mov ecx, 0x8007000e
call fcn.14007a0b0
nop
mov ecx, 0x8007000e
call fcn.14007a0b0
int3
mov ecx, 0x8007000e
call fcn.14007a0b0
int3