Function at 0x1400204f0
Capabilities:
Get common file path
Move file
Set file attributes

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x7938]
mov eax, 0x7a10
call fcn.1401127d0
sub rsp, rax
mov rax, qword [0x1401bd830]
xor rax, rsp
mov qword [rbp + 0x7900], rax
mov r8d, 0x2800
lea rdx, [rbp + 0x2900]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
lea rdx, [rbp + 0x2900]
lea rcx, [rbp + 0x80]
call fcn.14001ebb8
lea rdx, [0x14017a3d0]
lea rcx, [rbp + 0x80]
call fcn.140020b94
or rsi, 0xffffffffffffffff
lea rdx, [rbp + 0x40]
mov r9, rsi
lea rcx, [rbp + 0x80]
lea r8, [rax + 1]
call fcn.140020b74
lea rdx, [0x140179fd4]
lea rcx, [rbp + 0x40]
call fcn.140020bd8
lea rdx, [0x14017a3d4]
mov rbx, rax
lea rcx, [rbp + 0x40]
call fcn.140020bd8
cmp rbx, rax
lea rdx, str..exe
mov rdi, rax
lea rcx, [rbp]
cmovb rdi, rbx
call fcn.14001ebb8
cmp rdi, rsi
je 0x1400205ed
mov r9, rsi
lea rdx, [rbp - 0x20]
mov r8, rdi
lea rcx, [rbp + 0x40]
call fcn.140020b74
mov rdx, rax
lea rcx, [rbp]
call fcn.14001eb4c
lea rcx, [rbp - 0x20]
call fcn.14001eb44
lea rdx, [0x140179ff8]
lea rcx, [rbp]
call fcn.140020b94
lea rdx, [0x140179ea8]
mov rbx, rax
lea rcx, [rbp + 0x20]
call fcn.14001ebb8
test rbx, rbx
je 0x140020641
lea r9, [rbx - 1]
mov r8d, 1
lea rdx, [rbp - 0x20]
lea rcx, [rbp]
call fcn.140020b74
mov rdx, rax
lea rcx, [rbp + 0x20]
call fcn.14001eb4c
lea rcx, [rbp - 0x20]
call fcn.14001eb44
lea rdx, [rbp + 0x20]
lea rcx, [rbp + 0xe0]
call fcn.14001ebf8
lea rdx, str.pc_exe
mov r13, rax
lea rcx, [rbp + 0xc0]
call fcn.14001ebb8
lea rdx, [0x1401d5a28]
mov r12, rax
lea rcx, [rbp - 0x20]
call fcn.14001ebf8
lea rdx, [0x1401d5960]
mov r15, rax
lea rcx, [rsp + 0x40]
call fcn.14001ebf8
lea rdx, [0x1401d5a48]
mov r14, rax
lea rcx, [rsp + 0x60]
call fcn.14001ebf8
lea rdx, [0x1401d5a08]
mov rsi, rax
lea rcx, [rbp - 0x80]
call fcn.14001ebf8
lea rdx, [0x1401d5a88]
mov rdi, rax
lea rcx, [rbp - 0x60]
call fcn.14001ebf8
lea rdx, [0x1401d5a68]
mov rbx, rax
lea rcx, [rbp - 0x40]
call fcn.14001ebf8
mov qword [rsp + 0x38], r13
mov rcx, rax
mov qword [rsp + 0x30], r12
mov r9, rsi
mov qword [rsp + 0x28], r15
mov r8, rdi
mov rdx, rbx
mov qword [rsp + 0x20], r14
call fcn.14001e200
call fcn.140020300
xor esi, esi
test al, al
je 0x140020ae1
lea rbx, str._temp_
mov rdx, rbx
lea rcx, [rbp + 0x60]
call fcn.14001ebb8
mov rdx, rbx
lea rcx, [rbp - 0x20]
call fcn.14001ebb8
mov rcx, rax
mov rdx, rbx
call fcn.14001f2e4
lea rcx, [rbp - 0x20]
mov bl, al
call fcn.14001eb44
test bl, bl
je 0x14002076c
lea rdx, [rbp + 0x5100]
mov ecx, 0x2800
call qword [sym.imp.KERNEL32.dll_GetTempPathA]
lea rdx, [rbp + 0x5100]
lea rcx, [rbp + 0x60]
call fcn.14001eb3c
jmp 0x140020771
call fcn.140020360
lea r8, str.st_tmp.dl
lea rdx, [rbp + 0x60]
lea rcx, [rbp + 0xa0]
call fcn.14001f208
lea rcx, [rbp + 0xa0]
call fcn.14001eacc
mov rcx, rax
lea rdx, [0x14017a3e8]
call fcn.14011eb20
mov rdi, rax
test rax, rax
jne 0x1400207d0
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
lea rcx, str.Error__d
call fcn.14001d530
lea rcx, str.Create_temp_file_failed_n
call fcn.14001d530
jmp 0x140020acc
mov rdx, rdi
call fcn.14001d9dc
mov ecx, gethostname
call fcn.140111d10
xorps xmm0, xmm0
mov qword [0x1401d56e8], rax
xor ecx, ecx
movups xmmword [rax], xmm0
movups xmmword [rax + 0x10], xmm0
movups xmmword [rax + 0x20], xmm0
mov qword [rax + 0x30], rcx
lea rcx, [0x1401d5760]
call fcn.140022fdc
lea r14, [0x1401d5980]
mov rcx, r14
call fcn.140022fdc
mov rcx, r14
call fcn.14002312c
lea rcx, [0x1401d57f0]
call fcn.140020190
mov eax, dword [0x1401d57e0]
mov edx, 0x140
test eax, eax
mov r8d, reloc.WS2_32.dll_WSASetLastError
cmovne edx, eax
mov eax, dword [0x1401d57e4]
test eax, eax
cmovne r8d, eax
call fcn.14002321c
mov ebx, eax
test eax, eax
js 0x140020b3a
mov bl, sil
jmp 0x140020955
test bl, bl
jne 0x140020962
call fcn.140020b64
mov rcx, rax
call fcn.14001dba8
movss xmm0, dword [0x1401d57f0]
lea rdx, str.Installing__3.f
mulss xmm0, dword [0x14017a4c0]
lea rcx, [rbp - 0x20]
mov bl, al
cvtps2pd xmm2, xmm0
movq r8, xmm2
call fcn.14001fb58
lea rdx, [rbp - 0x20]
lea rcx, [rbp + 0xe0]
call fcn.14001ebb8
mov rdx, rax
lea r8, [0x14017a440]
lea rcx, [rbp + 0xc0]
call fcn.14001f1d4
mov rdx, rax
lea rcx, [0x1401d5700]
call fcn.14001eb4c
lea rcx, [rbp + 0xc0]
call fcn.14001eb44
lea rcx, [rbp + 0xe0]
call fcn.14001eb44
call fcn.1400234b8
mov rcx, qword [0x1401d56e8]
lea rdx, [0x1401d5760]
xor r9d, r9d
mov dword [rsp + 0x28], esi
xor r8d, r8d
mov dword [rsp + 0x20], esi
call fcn.14002362c
mov rcx, qword [0x1401d56e8]
xor r9d, r9d
xor r8d, r8d
mov dword [rsp + 0x28], esi
mov rdx, r14
mov dword [rsp + 0x20], esi
call fcn.14002362c
lea rdx, [0x1401d57f0]
call fcn.140023714
call fcn.140023844
call fcn.140023554
mov ecx, 0xa
call qword [sym.imp.KERNEL32.dll_Sleep]
call fcn.140023620
test al, al
je 0x140020865
mov rcx, rdi
call fcn.14011ec50
lea rcx, [rbp]
call fcn.14001eacc
lea rcx, [rbp + 0x60]
mov r8, rax
call fcn.14001eacc
mov qword [rsp + 0x28], r8
lea rcx, [rbp + 0x100]
mov r9, rax
lea r8, str._s_s_s
lea rax, [0x14017a2b4]
mov edx, 0x2800
mov qword [rsp + 0x20], rax
call fcn.14001fb7c
lea rcx, [rbp + 0xa0]
call fcn.14001eacc
mov rcx, rax
lea rdx, [rbp + 0x100]
mov r8d, 3
call qword [sym.imp.KERNEL32.dll_MoveFileExA]
mov edx, 2
lea rcx, [rbp + 0x100]
call qword [sym.imp.KERNEL32.dll_SetFileAttributesA]
lea rcx, [rbp + 0x100]
call fcn.140020440
call fcn.14001db3c
lea rdx, [rbp + 0x20]
lea rcx, [rbp - 0x40]
call fcn.14001ebf8
lea rdx, str.pc_exe_download100
mov r13, rax
lea rcx, [rbp - 0x60]
call fcn.14001ebb8
lea rdx, [0x1401d5a28]
mov r12, rax
lea rcx, [rbp - 0x80]
call fcn.14001ebf8
lea rdx, [0x1401d5960]
mov r15, rax
lea rcx, [rsp + 0x60]
call fcn.14001ebf8
lea rdx, [0x1401d5a48]
mov r14, rax
lea rcx, [rsp + 0x40]
call fcn.14001ebf8
lea rdx, [0x1401d5a08]
mov rsi, rax
lea rcx, [rbp + 0xe0]
call fcn.14001ebf8
lea rdx, [0x1401d5a88]
mov rdi, rax
lea rcx, [rbp + 0xc0]
call fcn.14001ebf8
lea rdx, [0x1401d5a68]
mov rbx, rax
lea rcx, [rbp - 0x20]
call fcn.14001ebf8
mov qword [rsp + 0x38], r13
mov rcx, rax
mov qword [rsp + 0x30], r12
mov r9, rsi
mov qword [rsp + 0x28], r15
mov r8, rdi
mov rdx, rbx
mov qword [rsp + 0x20], r14
call fcn.14001e200
mov rcx, qword [0x1401d56e8]
call fcn.1400235bc
mov rcx, qword [0x1401d56e8]
mov edx, gethostname
call fcn.140111f9c
lea rcx, [rbp + 0xa0]
call fcn.14001eb44
lea rcx, [rbp + 0x60]
call fcn.14001eb44
lea rcx, [rbp + 0x20]
call fcn.14001eb44
lea rcx, [rbp]
call fcn.14001eb44
lea rcx, [rbp + 0x40]
call fcn.14001eb44
lea rcx, [rbp + 0x80]
call fcn.14001eb44
xor eax, eax
mov rcx, qword [rbp + 0x7900]
xor rcx, rsp
call fcn.140111cf0
lea r11, [rsp + 0x7a10]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
mov edx, ebx
lea rcx, str.screen_init_failed__d___n
call fcn.14001d530
mov ecx, ebx
call fcn.14011e980
int3