Function at 0x14002a5a0
Capabilities:
Create process on windows

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x238
movaps xmmword [rsp + 0x220], xmm7
movaps xmmword [rsp + 0x210], xmm6
mov rsi, r9
mov ebx, r8d
mov rdi, rdx
mov r14, rcx
mov rax, qword [0x1401f0038]
xor rax, rsp
mov qword [rsp + 0x208], rax
mov rcx, qword [0x140203b58]
test rcx, rcx
jne 0x14002a5fc
call fcn.140045f90
mov rcx, rax
mov qword [0x140203b58], rax
mov rdx, r14
mov r8d, 1
mov r9d, 0x1201bf
call fcn.140046280
mov ebp, eax
mov rcx, qword [0x140203b58]
test rcx, rcx
jne 0x14002a62d
call fcn.140045f90
mov rcx, rax
mov qword [0x140203b58], rax
mov edx, ebx
mov r8d, ebp
call fcn.140047050
test al, al
je 0x14002a7fe
xor ecx, ecx
call fcn.14002b350
test al, al
je 0x14002a7ca
movaps xmm6, xmmword [0x1401c1a20]
lea rdi, [rsp + 0x1b0]
movaps xmmword [rdi + 0x40], xmm6
movaps xmmword [rdi + 0x30], xmm6
movaps xmmword [rdi + 0x20], xmm6
movaps xmmword [rdi + 0x10], xmm6
movaps xmmword [rdi], xmm6
mov rcx, rdi
xor edx, edx
call fcn.14009bdb0
lea rcx, str.newautoupdater
lea rbx, [rsp + 0x1a0]
mov qword [rbx], rcx
call fcn.14014ea20
mov qword [rbx + 8], rax
mov rcx, rdi
mov rdx, rbx
mov r8, rsi
call fcn.14009d640
movabs rdi, 0xaaaaaaaaaaaaaaaa
lea rsi, [rsp + 0x180]
mov qword [rsi + 0x10], rdi
movaps xmmword [rsi], xmm6
mov rcx, rsi
call fcn.1400f1fd0
mov ecx, 1
mov rdx, rsi
call fcn.14008a620
test al, al
je 0x14002a7b0
xorps xmm0, xmm0
movups xmmword [rsp + 0x118], xmm0
movups xmmword [rsp + 0x128], xmm0
movups xmmword [rsp + 0x168], xmm0
movups xmmword [rsp + 0x158], xmm0
movups xmmword [rsp + 0x148], xmm0
movups xmmword [rsp + 0x138], xmm0
mov qword [rsp + 0x178], 0
movabs rax, 0x4000000070
mov qword [rsp + 0x110], rax
lea rax, str.runas
mov qword [rsp + 0x120], rax
cmp byte [rsp + 0x197], 0
jns 0x14002a74b
mov rsi, qword [rsp + 0x180]
mov qword [rsp + 0x128], rsi
lea rsi, [rsp + 0xf0]
mov qword [rsi + 0x10], rdi
movaps xmmword [rsi], xmm6
lea rcx, [rsp + 0x1b0]
mov rdx, rsi
call fcn.14009e2a0
cmp byte [rsi + 0x17], 0
jns 0x14002a780
mov rsi, qword [rsp + 0xf0]
lea rcx, [rsp + 0x110]
mov qword [rcx + 0x20], rsi
mov dword [rcx + 0x30], 5
call qword [sym.imp.SHELL32.dll_ShellExecuteExW]
cmp byte [rsp + 0x107], 0
jns 0x14002a7b0
mov rcx, qword [rsp + 0xf0]
call fcn.14012c3dc
lea rcx, [rsp + 0x180]
call fcn.1400f21a0
lea rcx, [rsp + 0x1b0]
call fcn.14009c340
mov rcx, qword [rsp + 0x208]
xor rcx, rsp
call fcn.14012cf50
movaps xmm6, xmmword [rsp + 0x210]
movaps xmm7, xmmword [rsp + 0x220]
add rsp, 0x238
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
movabs r15, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x120], r15
movaps xmm6, xmmword [0x1401c1a20]
movaps xmmword [rsp + 0x110], xmm6
call fcn.140036980
lea rbx, [rsp + 0x1b0]
mov rcx, rbx
mov rdx, rax
call fcn.1401678a0
lea rdx, str._autoupdate.version
mov r8d, shutdown
mov rcx, rbx
call fcn.14007cf90
mov rcx, qword [rax + 0x10]
mov qword [rsp + 0x120], rcx
movups xmm0, xmmword [rax]
movaps xmmword [rsp + 0x110], xmm0
xorps xmm7, xmm7
movups xmmword [rax], xmm7
mov qword [rax + 0x10], 0
cmp byte [rbx + 0x17], 0
jns 0x14002a884
mov rcx, qword [rsp + 0x1b0]
call fcn.14012c3dc
lea r14, [rsp + 0x1b0]
mov qword [r14 + 0x10], r15
movaps xmmword [r14], xmm6
lea rcx, str.files_list
lea rbx, [rsp + 0xe0]
mov qword [rbx], rcx
call fcn.14014ecd4
mov qword [rbx + 8], rax
mov rcx, rsi
mov rdx, r14
mov r8, rbx
call fcn.1400f34d0
lea rbx, [rsp + 0x180]
movaps xmmword [rbx], xmm7
mov qword [rbx + 0x10], 0
mov rcx, r14
mov rdx, rbx
call fcn.14008b810
test al, al
je 0x14002ab16
mov qword [rsp + 0x100], r15
movaps xmmword [rsp + 0xf0], xmm6
movzx ecx, byte [rsp + 0x197]
mov eax, ecx
and eax, 0x7f
test cl, cl
lea rcx, [0x1401c5d35]
cmovs rax, qword [rsp + 0x188]
mov qword [rsp + 0xd0], rcx
cmovs rbx, qword [rsp + 0x180]
mov qword [rsp + 0xd8], 2
mov qword [rsp + 0xc0], rbx
mov qword [rsp + 0xc8], rax
test rax, rax
js 0x14002ad5e
test rbx, rbx
jne 0x14002a956
test rax, rax
jne 0x14002ad8a
mov dword [rsp + 0x20], 1
lea rbx, [rsp + 0xf0]
lea rdx, [rsp + 0xc0]
lea r8, [rsp + 0xd0]
mov rcx, rbx
xor r9d, r9d
call fcn.1400e98b0
mov r14, qword [rbx]
cmp r14, qword [rbx + 8]
je 0x14002ab11
lea r14, str.opera_autoupdate.exe
lea r15, [rsp + 0x98]
mov qword [r15], r14
mov rcx, r14
call fcn.14014ea20
mov rbx, rax
mov qword [r15 + 8], rax
lea r12, [rsp + 0xa8]
mov rcx, rdi
mov rdx, r12
mov r8, r15
call fcn.14009a8d0
lea r8, [rsp + 0x70]
mov qword [r8], r14
mov qword [rsp + 0x28], rbx
mov qword [r8 + 8], rbx
lea r14, [rsp + 0x80]
mov rcx, rsi
mov rdx, r14
call fcn.14009a8d0
mov rcx, r14
mov rdx, r12
call fcn.1401886f0
mov ebp, eax
mov rcx, r14
call fcn.1400f21a0
mov rcx, r12
call fcn.1400f21a0
test bpl, bpl
je 0x14002ab09
lea rdx, [rsp + 0x110]
movzx ecx, byte [rdx + 0x17]
mov eax, ecx
and eax, 0x7f
test cl, cl
cmovs rax, qword [rdx + 8]
mov rcx, qword [rdx]
cmovns rcx, rdx
mov qword [rsp + 0x60], rcx
mov qword [rsp + 0x68], rax
test rax, rax
js 0x14002ad5e
test rcx, rcx
jne 0x14002aa4f
test rax, rax
jne 0x14002ad8a
lea rdx, [rsp + 0xa8]
lea r8, [rsp + 0x60]
mov rcx, rdi
call fcn.14009a8d0
movzx ecx, byte [rsp + 0x127]
mov eax, ecx
and eax, 0x7f
test cl, cl
cmovs rax, qword [rsp + 0x118]
mov rcx, qword [rsp + 0x110]
lea rdx, [rsp + 0x110]
cmovns rcx, rdx
mov qword [rsp + 0x50], rcx
mov qword [rsp + 0x58], rax
test rax, rax
js 0x14002ad5e
test rcx, rcx
jne 0x14002aab1
test rax, rax
jne 0x14002ad8a
lea r14, [rsp + 0x80]
lea r8, [rsp + 0x50]
mov rcx, rsi
mov rdx, r14
call fcn.14009a8d0
lea r15, [rsp + 0xa8]
mov rcx, r14
mov rdx, r15
call fcn.1401886f0
mov rcx, r14
call fcn.1400f21a0
mov rcx, r15
call fcn.1400f21a0
mov r12, qword [rsp + 0xf0]
mov rbp, qword [rsp + 0xf8]
jmp 0x14002acd8
mov rcx, rsi
call fcn.140088060
mov r14, qword [rsp + 0xf0]
test r14, r14
jne 0x14002ab5a
cmp byte [rsp + 0x197], 0
jns 0x14002ab2d
mov rcx, qword [rsp + 0x180]
call fcn.14012c3dc
lea rcx, [rsp + 0x1b0]
call fcn.1400f21a0
cmp byte [rsp + 0x127], 0
jns 0x14002a7ca
mov rcx, qword [rsp + 0x110]
call fcn.14012c3dc
jmp 0x14002a7ca
mov rsi, qword [rsp + 0xf8]
mov rcx, r14
cmp rsi, r14
je 0x14002ab91
add rsi, 0xffffffffffffffe8
test rsi, rsi
je 0x14002adb6
cmp byte [rsi + 0x17], 0
js 0x14002aba3
lea rax, [rsi - 0x18]
cmp rsi, r14
mov rsi, rax
jne 0x14002ab6e
mov rcx, qword [rsp + 0xf0]
mov qword [rsp + 0xf8], r14
call fcn.14012c3dc
jmp 0x14002ab16
mov rcx, qword [rsi]
call fcn.14012c3dc
jmp 0x14002ab7d
mov rcx, qword [r12]
mov rax, qword [r12 + 8]
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x38], rax
test rax, rax
jns 0x14002ac8b
jmp 0x14002ad5e
mov qword [rsp + 0x40], r13
mov qword [rsp + 0x48], r15
test r15, r15
jns 0x14002ac4d
jmp 0x14002ad5e
mov rcx, qword [r12]
mov r8, r15
call fcn.14012f730
test eax, eax
je 0x14002acd4
test r14b, r14b
mov r13, qword [r12]
mov rcx, r12
cmovs rcx, r13
test rbx, rbx
js 0x14002ad5e
je 0x14002ac18
test rcx, rcx
je 0x14002ad8a
cmp rbx, qword [rsp + 0x28]
jne 0x14002ac38
lea rdx, str.opera_autoupdate.exe
mov r8, qword [rsp + 0x28]
call fcn.14012f730
test eax, eax
je 0x14002acd4
test r14b, r14b
js 0x14002abce
mov qword [rsp + 0x40], r12
mov qword [rsp + 0x48], r14
mov r13, r12
mov r15, r14
test r13, r13
jne 0x14002ac5b
test r15, r15
jne 0x14002ad8a
mov rcx, rdi
lea rdx, [rsp + 0xa8]
lea r8, [rsp + 0x40]
call fcn.14009a8d0
movzx eax, byte [r12 + 0x17]
test al, al
js 0x14002abad
mov qword [rsp + 0x30], r12
mov qword [rsp + 0x38], rax
mov rcx, r12
test rcx, rcx
jne 0x14002ac99
test rax, rax
jne 0x14002ad8a
mov rcx, rsi
lea r14, [rsp + 0x80]
mov rdx, r14
lea r8, [rsp + 0x30]
call fcn.14009a8d0
mov rcx, r14
lea rbx, [rsp + 0xa8]
mov rdx, rbx
call fcn.1401886f0
mov rcx, r14
call fcn.1400f21a0
mov rcx, rbx
call fcn.1400f21a0
add r12, 0x18
cmp r12, rbp
je 0x14002ab01
movzx r14d, byte [r12 + 0x17]
mov eax, r14d
and eax, 0x7f
test r14b, r14b
mov r15, qword [r12 + 8]
mov rbx, rax
cmovs rbx, r15
movzx ecx, byte [rsp + 0x127]
test cl, cl
js 0x14002ad0f
mov edx, ecx
and edx, 0x7f
jmp 0x14002ad17
mov rdx, qword [rsp + 0x118]
cmp rbx, rdx
jne 0x14002abf6
lea rdx, [rsp + 0x110]
test cl, cl
jns 0x14002ad34
mov rdx, qword [rsp + 0x110]
test r14b, r14b
js 0x14002abe2
test al, al
je 0x14002acd4
xor ecx, ecx
mov r8b, byte [r12 + rcx]
cmp r8b, byte [rdx + rcx]
jne 0x14002abf6
inc rcx
cmp rax, rcx
jne 0x14002ad43
jmp 0x14002acd4
lea rax, str.string_view::string_view__CharT___size_t_:_length_does_not_fit_in_difference_type
mov qword [rsp + 0x20], rax
lea rcx, str._s:_d:_assertion__s_failed:__s_n
lea rdx, str....._third_partylibc_srcinclude_string_view
lea r9, str.__len___static_cast_size_type__numeric_limits_difference_type_::max___
mov r8d, 0x13a
call fcn.140168c70
lea rax, str.string_view::string_view__CharT___size_t_:_received_nullptr
mov qword [rsp + 0x20], rax
lea rcx, str._s:_d:_assertion__s_failed:__s_n
lea rdx, str....._third_partylibc_srcinclude_string_view
lea r9, str.__len__0____s___nullptr
mov r8d, 0x13c
call fcn.140168c70
lea rax, str.null_pointer_given_to_destroy_at
mov qword [rsp + 0x20], rax
lea rcx, str._s:_d:_assertion__s_failed:__s_n
lea rdx, str....._third_partylibc_srcinclude__memoryconstruct_at.h
lea r9, str.__loc___nullptr
mov r8d, 0x44
call fcn.140168c70
int3