Function at 0x1400c0dc0
Capabilities:
Create process on windows
Write and execute a file
Write file on windows

Disassembly:
push rbx
sub rsp, 0x30
mov rbx, qword [0x140285110]
mov edx, 6
mov qword [rsp + 0x50], r8
lea r8, [rsp + 0x50]
mov qword [rsp + 0x58], r9
mov rax, qword [rbx]
mov qword [rsp + 0x28], rax
xor eax, eax
mov qword [rsp + 0x20], r8
call sym.libvlccore.dll_vlc_stream_vaControl
mov rdx, qword [rsp + 0x28]
xor rdx, qword [rbx]
jne 0x1400c0db4
add rsp, 0x30
pop rbx
ret
call fcn.1400c4ec0
nop
nop word [rax + rax]
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x4f8
movaps xmmword [rsp + 0x4e0], xmm6
lea rsi, str.Opening_Stream__s
lea r15, str.update_DownloadReal
lea r9, str._builds_videolan_vlc_extras_package_win32_.._.._.._src_misc_update.c
mov rbx, rcx
mov rax, qword [0x140285110]
mov rdx, qword [rcx + 0x40]
mov r8, qword [str.main]
mov qword [rsp + 0x88], 0
mov rdi, qword [rax]
mov qword [rsp + 0x4d8], rdi
xor edi, edi
mov rdi, qword [rcx + 0x38]
mov qword [rsp + 0x50], rdx
mov edx, 3
mov rcx, qword [rdi + 0x48]
mov qword [rsp + 0x30], rsi
mov qword [rsp + 0x28], r15
mov dword [rsp + 0x20], 0x225
mov qword [rsp + 0x38], rcx
mov rcx, rbx
call sym.libvlccore.dll_vlc_Log
call sym.libvlccore.dll_vlc_savecancel
mov rdx, qword [rdi + 0x48]
mov rcx, rbx
mov dword [rsp + 0x5c], eax
call sym.libvlccore.dll_vlc_stream_NewURL
test rax, rax
mov rsi, rax
je 0x1400c11b4
lea r8, [rsp + 0x80]
mov edx, 6
mov rcx, rax
call fcn.1400c0d70
test eax, eax
je 0x1400c0f10
xor r12d, r12d
xor ebp, ebp
xor r14d, r14d
mov rcx, rsi
call sym.libvlccore.dll_vlc_stream_Delete
test rbp, rbp
je 0x1400c0eaa
mov rcx, rbp
call sub.msvcrt.dll_fclose
mov rcx, qword [rsp + 0x50]
call fcn.14016b6d8
mov rcx, qword [rsp + 0x88]
call fcn.14016b6d8
mov rcx, r12
call fcn.14016b6d8
mov rcx, r14
call fcn.14016b6d8
mov ecx, dword [rsp + 0x5c]
call sym.libvlccore.dll_vlc_restorecancel
mov r10, qword [0x140285110]
xor eax, eax
mov rbx, qword [rsp + 0x4d8]
xor rbx, qword [r10]
jne 0x1400c162a
movaps xmm6, xmmword [rsp + 0x4e0]
add rsp, 0x4f8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
cmp qword [rsp + 0x80], 0
je 0x1400c0e8d
mov rbp, qword [rdi + 0x48]
mov edx, 0x2f
mov rcx, rbp
call sub.msvcrt.dll_strrchr
test rax, rax
mov r14, rax
je 0x1400c1200
mov r8, qword [rsp + 0x50]
lea rcx, [rsp + 0x88]
lea r9, [rax + 1]
lea rdx, str._s_s
call 0x1400c0be0
cmp eax, 0xffffffff
je 0x1400c0e8d
mov rcx, qword [rsp + 0x88]
lea rdx, [0x14019fd62]
call sym.libvlccore.dll_vlc_fopen
test rax, rax
mov rbp, rax
je 0x1400c12e4
mov ecx, 0x400
call sub.msvcrt.dll_malloc
test rax, rax
mov r12, rax
je 0x1400c1471
mov r8, qword [rdi + 0x48]
lea r9, str.Downloading_Stream__s
mov edx, 3
mov rcx, rbx
mov qword [rsp + 0x28], r15
mov dword [rsp + 0x20], 0x24f
mov qword [rsp + 0x30], r9
lea r9, str._builds_videolan_vlc_extras_package_win32_.._.._.._src_misc_update.c
mov qword [rsp + 0x38], r8
mov r8, qword [str.main]
call sym.libvlccore.dll_vlc_Log
mov rcx, qword [rsp + 0x80]
call 0x1400c0c30
mov r10, qword [rdi + 0x48]
lea rcx, str._s_nDownloading...__s__s__.1f___done
mov r14, rax
mov qword [rsp + 0x60], r10
call sym.libvlccore.dll_vlc_gettext
lea rcx, str.Cancel
mov r13, rax
call sym.libvlccore.dll_vlc_gettext
mov r9, rax
mov rax, qword [rsp + 0x60]
lea r11, [0x14019fe03]
lea rdx, str.Downloading...
pxor xmm2, xmm2
mov qword [rsp + 0x48], 0
mov qword [rsp + 0x40], r14
mov rcx, rbx
mov qword [rsp + 0x20], rdx
mov qword [rsp + 0x38], r11
xor edx, edx
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x28], r13
call sym.libvlccore.dll_vlc_dialog_display_progress
test rax, rax
mov qword [rsp + 0x60], rax
je 0x1400c0e95
lea rcx, [rbx + 0x30]
mov qword [rsp + 0x70], rbp
xor r13d, r13d
movss xmm6, dword [0x1401a082c]
mov qword [rsp + 0x68], rsi
mov qword [rsp + 0x78], rcx
mov rbp, rax
mov rdx, rcx
jmp 0x1400c10f1
mov r10, qword [rsp + 0x80]
pxor xmm2, xmm2
test r10, r10
cvtsi2ss xmm2, r13
js 0x1400c1195
pxor xmm0, xmm0
cvtsi2ss xmm0, r10
mov qword [rsp + 0x30], r14
mov qword [rsp + 0x28], rsi
lea r9, str._s_nDownloading...__s__s____.1f___done
divss xmm2, xmm0
mov rdx, rbp
mov rcx, rbx
pxor xmm1, xmm1
movaps xmm3, xmm2
mulss xmm3, xmm6
cvtss2sd xmm1, xmm3
movsd qword [rsp + 0x38], xmm1
mov rax, qword [rdi + 0x48]
mov qword [rsp + 0x20], rax
call sym.libvlccore.dll_vlc_dialog_update_progress_text
mov rcx, rsi
call fcn.14016b6d8
mov rdx, qword [rsp + 0x78]
movzx esi, byte [rdx]
test sil, sil
jne 0x1400c1243
mov rcx, qword [rsp + 0x68]
mov r8d, 0x400
mov rdx, r12
call sym.libvlccore.dll_vlc_stream_Read
test eax, eax
mov rsi, rax
je 0x1400c1243
mov rdx, rbp
mov rcx, rbx
call sym.libvlccore.dll_vlc_dialog_is_cancelled
test al, al
jne 0x1400c1243
mov r9, qword [rsp + 0x70]
movsxd rsi, esi
mov r8d, 1
mov rdx, rsi
mov rcx, r12
call sub.msvcrt.dll_fwrite
test rax, rax
je 0x1400c1294
add r13, rsi
mov rcx, r13
call 0x1400c0c30
test r13, r13
mov rsi, rax
jns 0x1400c1083
mov r8, r13
mov r9, r13
mov r10, qword [rsp + 0x80]
pxor xmm2, xmm2
shr r8, 1
and r9d, 1
or r8, r9
test r10, r10
cvtsi2ss xmm2, r8
addss xmm2, xmm2
jns 0x1400c109d
mov r11, r10
pxor xmm0, xmm0
shr r11, 1
and r10d, 1
or r10, r11
cvtsi2ss xmm0, r10
addss xmm0, xmm0
jmp 0x1400c10a6
mov rsi, qword [rdi + 0x48]
lea r9, str.Failed_to_open__s_for_reading
mov r8, qword [str.main]
mov qword [rsp + 0x28], r15
mov dword [rsp + 0x20], 0x22c
mov edx, 1
mov qword [rsp + 0x30], r9
lea r9, str._builds_videolan_vlc_extras_package_win32_.._.._.._src_misc_update.c
mov rcx, rbx
mov qword [rsp + 0x38], rsi
xor r14d, r14d
xor r12d, r12d
call sym.libvlccore.dll_vlc_Log
jmp 0x1400c0eaa
lea r8, str.The_URL__s_is_badly_formatted
lea r9, str._builds_videolan_vlc_extras_package_win32_.._.._.._src_misc_update.c
mov qword [rsp + 0x38], rbp
mov qword [rsp + 0x28], r15
mov dword [rsp + 0x20], 0x239
mov edx, 1
mov qword [rsp + 0x30], r8
mov r8, qword [str.main]
mov rcx, rbx
xor r12d, r12d
xor ebp, ebp
call sym.libvlccore.dll_vlc_Log
jmp 0x1400c0e95
mov rsi, qword [rsp + 0x68]
mov rbp, qword [rsp + 0x70]
mov rcx, rbp
call sub.msvcrt.dll_fclose
movzx ebp, byte [rbx + 0x30]
test bpl, bpl
jne 0x1400c1273
mov rdx, qword [rsp + 0x60]
mov rcx, rbx
call sym.libvlccore.dll_vlc_dialog_is_cancelled
test al, al
je 0x1400c1382
mov rcx, qword [rsp + 0x88]
xor ebp, ebp
call sym.libvlccore.dll_vlc_unlink
mov rdx, qword [rsp + 0x60]
mov rcx, rbx
call sym.libvlccore.dll_vlc_dialog_release
jmp 0x1400c0e95
mov rcx, qword [rsp + 0x88]
lea r13, str.Failed_to_write_into__s
mov r8, qword [str.main]
lea r9, str._builds_videolan_vlc_extras_package_win32_.._.._.._src_misc_update.c
mov qword [rsp + 0x28], r15
mov dword [rsp + 0x20], 0x263
mov qword [rsp + 0x30], r13
mov edx, 1
mov rsi, qword [rsp + 0x68]
mov qword [rsp + 0x38], rcx
mov rcx, rbx
mov rbp, qword [rsp + 0x70]
call sym.libvlccore.dll_vlc_Log
jmp 0x1400c124d
mov r12, qword [rsp + 0x88]
mov r8, qword [str.main]
lea rcx, str.Failed_to_open__s_for_writing
lea r9, str._builds_videolan_vlc_extras_package_win32_.._.._.._src_misc_update.c
mov edx, 1
mov qword [rsp + 0x28], r15
mov qword [rsp + 0x30], rcx
mov dword [rsp + 0x20], 0x243
mov rcx, rbx
mov qword [rsp + 0x38], r12
xor r14d, r14d
xor r12d, r12d
call sym.libvlccore.dll_vlc_Log
lea rcx, str.Failed_to_open___s__for_writing
mov r15, qword [rsp + 0x88]
call sym.libvlccore.dll_vlc_gettext
lea rcx, str.Saving_file_failed
mov r13, rax
call sym.libvlccore.dll_vlc_gettext
lea r8, [0x14019fdbb]
mov qword [rsp + 0x38], r15
mov qword [rsp + 0x30], r13
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], 0
xor r9d, r9d
mov edx, 2
mov rcx, rbx
call sym.libvlccore.dll_vlc_dialog_wait_question
jmp 0x1400c0e95
mov rdx, qword [rsp + 0x60]
mov rcx, rbx
lea rbp, [rsp + 0x2a0]
call sym.libvlccore.dll_vlc_dialog_release
mov r8, qword [rdi + 0x48]
mov rdx, rbp
mov rcx, rbx
call fcn.1400c4910
test eax, eax
jne 0x1400c1479
mov rdx, qword [rdi + 0x58]
lea rcx, [rbp + 6]
mov r8d, 8
call sub.msvcrt.dll_memcmp
test eax, eax
jne 0x1400c15ff
cmp byte [rsp + 0x2a1], 0
je 0x1400c1513
mov rcx, qword [rsp + 0x88]
call sym.libvlccore.dll_vlc_unlink
lea r11, str.Invalid_signature_type
mov qword [rsp + 0x28], r15
mov dword [rsp + 0x20], 0x2a0
mov qword [rsp + 0x30], r11
mov r8, qword [str.main]
lea r9, str._builds_videolan_vlc_extras_package_win32_.._.._.._src_misc_update.c
mov edx, 1
mov rcx, rbx
call sym.libvlccore.dll_vlc_Log
lea rcx, str.The_cryptographic_signature_for_the_downloaded_file___s__was_invalid_and_could_not_be_used_to_securely_verify_it._Thus__the_file_was_deleted.
mov r15, qword [rsp + 0x88]
call sym.libvlccore.dll_vlc_gettext
lea rcx, str.Invalid_signature
mov r13, rax
call sym.libvlccore.dll_vlc_gettext
lea r8, [0x14019fdbb]
mov qword [rsp + 0x38], r15
mov qword [rsp + 0x30], r13
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], 0
xor r9d, r9d
mov edx, 2
mov rcx, rbx
call sym.libvlccore.dll_vlc_dialog_wait_question
xor ebp, ebp
jmp 0x1400c0e95
xor r14d, r14d
jmp 0x1400c0e95
mov rcx, qword [rsp + 0x88]
call sym.libvlccore.dll_vlc_unlink
lea rcx, str.It_was_not_possible_to_download_a_cryptographic_signature_for_the_downloaded_file___s_._Thus__it_was_deleted.
mov rbp, qword [rsp + 0x88]
call sym.libvlccore.dll_vlc_gettext
lea rcx, str.File_could_not_be_verified
mov rdi, rax
call sym.libvlccore.dll_vlc_gettext
lea r8, [0x14019fdbb]
mov qword [rsp + 0x38], rbp
xor r9d, r9d
mov edx, 2
mov rcx, rbx
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], 0
xor ebp, ebp
call sym.libvlccore.dll_vlc_dialog_wait_question
lea rdx, str.Couldnt_download_signature_of_downloaded_file
mov r8, qword [str.main]
lea r9, str._builds_videolan_vlc_extras_package_win32_.._.._.._src_misc_update.c
mov qword [rsp + 0x28], r15
mov dword [rsp + 0x20], 0x28d
mov rcx, rbx
mov qword [rsp + 0x30], rdx
mov edx, 1
call sym.libvlccore.dll_vlc_Log
jmp 0x1400c0e95
mov rcx, qword [rsp + 0x88]
mov rdx, rbp
call fcn.1400c3e00
test rax, rax
mov r13, rax
je 0x1400c162f
movzx r8d, byte [rsp + 0x2a4]
cmp byte [rax], r8b
jne 0x1400c1550
movzx r9d, byte [rsp + 0x2a5]
cmp byte [rax + 1], r9b
je 0x1400c16a0
mov rcx, qword [rsp + 0x88]
call sym.libvlccore.dll_vlc_unlink
lea rcx, str.Downloaded_file___s__was_corrupted._Thus__it_was_deleted.
mov rbp, qword [rsp + 0x88]
call sym.libvlccore.dll_vlc_gettext
lea rcx, str.File_corrupted
mov rdi, rax
call sym.libvlccore.dll_vlc_gettext
lea r8, [0x14019fdbb]
mov rcx, rbx
mov qword [rsp + 0x38], rbp
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x28], rax
xor r9d, r9d
mov qword [rsp + 0x20], 0
mov edx, 2
call sym.libvlccore.dll_vlc_dialog_wait_question
mov rcx, qword [rsp + 0x88]
lea r8, str.Bad_hash_for__s
mov qword [rsp + 0x28], r15
mov dword [rsp + 0x20], 0x2bd
mov qword [rsp + 0x30], r8
mov qword [rsp + 0x38], rcx
mov r8, qword [str.main]
lea r9, str._builds_videolan_vlc_extras_package_win32_.._.._.._src_misc_update.c
mov edx, 1
mov rcx, rbx
xor ebp, ebp
call sym.libvlccore.dll_vlc_Log
mov rcx, r13
call fcn.14016b6d8
jmp 0x1400c0e95
mov rcx, qword [rsp + 0x88]
call sym.libvlccore.dll_vlc_unlink
lea rax, str.Invalid_signature_issuer
mov qword [rsp + 0x28], r15
mov dword [rsp + 0x20], 0x294
mov qword [rsp + 0x30], rax
jmp 0x1400c13fd
call fcn.1400c4ec0
mov r9, qword [rsp + 0x88]
lea r10, str.Unable_to_hash__s
mov r8, qword [str.main]
mov edx, 1
mov qword [rsp + 0x28], r15
mov rcx, rbx
mov qword [rsp + 0x30], r10
mov dword [rsp + 0x20], 0x2ac
mov qword [rsp + 0x38], r9
lea r9, str._builds_videolan_vlc_extras_package_win32_.._.._.._src_misc_update.c
call sym.libvlccore.dll_vlc_Log
mov rcx, qword [rsp + 0x88]
call sym.libvlccore.dll_vlc_unlink
lea rcx, str.It_was_not_possible_to_securely_verify_the_downloaded_file___s_._Thus__it_was_deleted.
mov r15, qword [rsp + 0x88]
call sym.libvlccore.dll_vlc_gettext
lea rcx, str.File_not_verifiable
mov r13, rax
jmp 0x1400c1436
mov rdx, qword [rdi + 0x58]
mov r8, rax
mov rcx, rbp
add rdx, 0x10
call fcn.1400c3260
test eax, eax
je 0x1400c1745
mov rcx, qword [rsp + 0x88]
call sym.libvlccore.dll_vlc_unlink
lea rcx, str.Downloaded_file___s__was_corrupted._Thus__it_was_deleted.
mov rbp, qword [rsp + 0x88]
call sym.libvlccore.dll_vlc_gettext
lea rcx, str.File_corrupted
mov rdi, rax
call sym.libvlccore.dll_vlc_gettext
lea r8, [0x14019fdbb]
mov edx, 2
mov qword [rsp + 0x38], rbp
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x28], rax
xor r9d, r9d
mov qword [rsp + 0x20], 0
mov rcx, rbx
call sym.libvlccore.dll_vlc_dialog_wait_question
mov rax, qword [rsp + 0x88]
lea rdx, str.BAD_SIGNATURE_for__s
mov qword [rsp + 0x28], r15
mov dword [rsp + 0x20], 0x2c9
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x38], rax
jmp 0x1400c15d5
mov rdi, qword [rsp + 0x88]
lea r10, str._s_authenticated
mov r8, qword [str.main]
lea r9, str._builds_videolan_vlc_extras_package_win32_.._.._.._src_misc_update.c
xor edx, edx
mov qword [rsp + 0x28], r15
mov qword [rsp + 0x30], r10
mov rcx, rbx
mov dword [rsp + 0x20], 0x2ce
mov qword [rsp + 0x38], rdi
call sym.libvlccore.dll_vlc_Log
mov rcx, r13
call fcn.14016b6d8
lea rcx, str.The_new_version_was_successfully_downloaded._Do_you_want_to_close_VLC_and_install_it_now_
call sym.libvlccore.dll_vlc_gettext
lea rcx, str.Update_VLC_media_player
mov r15, rax
call sym.libvlccore.dll_vlc_gettext
lea rcx, str.Install
mov rbp, rax
call sym.libvlccore.dll_vlc_gettext
lea rcx, str.Cancel
mov r13, rax
call sym.libvlccore.dll_vlc_gettext
lea r11, [0x1401a016a]
mov qword [rsp + 0x28], rbp
xor edx, edx
mov r8, rax
mov qword [rsp + 0x38], r15
mov qword [rsp + 0x20], 0
mov qword [rsp + 0x30], r11
mov r9, r13
mov rcx, rbx
call sym.libvlccore.dll_vlc_dialog_wait_question
xor ebp, ebp
sub eax, 1
jne 0x1400c0e95
lea rdi, [rsp + 0x90]
or r9d, 0xffffffff
xor edx, edx
mov r8, qword [rsp + 0x88]
mov ecx, 0xfde9
mov dword [rsp + 0x28], 0x104
mov qword [rsp + 0x20], rdi
call qword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
xor r9d, r9d
xor ecx, ecx
mov dword [rsp + 0x28], 5
mov qword [rsp + 0x20], 0
mov r8, rdi
lea rdx, [0x1401a016e]
call qword [sym.imp.SHELL32.dll_ShellExecuteW]
cmp eax, 0x20
jle 0x1400c146a
mov rcx, qword [rbx + 0x18]
xor ebp, ebp
call sym.libvlccore.dll_libvlc_Quit
jmp 0x1400c0e95