Function at 0x1400205d0
Capabilities:
Copy file

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x870
mov rax, qword [0x1400950a0]
xor rax, rsp
mov qword [rsp + 0x868], rax
mov r15, rdx
mov r13, rcx
mov qword [rsp + 0x68], rcx
mov qword [rsp + 0x70], rcx
mov qword [rsp + 0x500], rdx
xor edi, edi
mov dword [rsp + 0x40], edi
mov rcx, qword [rdx + 0x10]
test rcx, rcx
je 0x1400206e5
movabs r12, 0x7fffffffffffffff
mov rax, r12
sub rax, rcx
cmp rax, 1
jb 0x140021d11
mov rax, r15
cmp qword [rdx + 0x18], 0x10
jb 0x14002064e
mov rax, qword [rdx]
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], 1
lea r9, [0x140085ba8]
lea rcx, [rsp + 0x628]
call fcn.14000a6b0
nop
mov dword [rsp + 0x40], 0x11
mov r8d, 1
lea rdx, [0x140085ba4]
lea rcx, [rsp + 0x628]
call fcn.140007fb0
mov qword [rsp + 0x588], rdi
mov qword [rsp + 0x598], rdi
mov qword [rsp + 0x5a0], rdi
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x588], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x598], xmm1
mov qword [rax + 0x10], rdi
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
lea rcx, [rsp + 0x588]
mov esi, 0x33
jmp 0x140020737
mov qword [rsp + 0x568], rdi
mov qword [rsp + 0x578], rdi
mov qword [rsp + 0x580], 0xf
mov byte [rsp + 0x568], 0
xor r8d, r8d
lea rdx, [0x14008008b]
lea rcx, [rsp + 0x568]
call fcn.140007e50
lea rcx, [rsp + 0x568]
mov esi, 4
movabs r12, 0x7fffffffffffffff
mov dword [rsp + 0x40], esi
mov r9d, 0x14
lea r8, str.Updater.HandleUpdate
call fcn.14000b4d0
mov qword [rsp + 0xe8], rdi
mov qword [rsp + 0xf8], rdi
mov qword [rsp + 0x100], rdi
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0xe8], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0xf8], xmm1
mov qword [rax + 0x10], rdi
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
or esi, 0x40
mov dword [rsp + 0x40], esi
lea rcx, [rsp + 0xe8]
call fcn.14002f780
nop
test sil, 4
je 0x14002080c
and esi, 0xfffffffb
mov dword [rsp + 0x40], esi
mov rdx, qword [rsp + 0x580]
cmp rdx, 0x10
jb 0x1400207f0
inc rdx
mov rcx, qword [rsp + 0x568]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400207eb
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140021d17
call fcn.14003e780
mov qword [rsp + 0x578], rdi
mov qword [rsp + 0x580], 0xf
mov byte [rsp + 0x568], 0
test sil, 2
je 0x140020878
and esi, 0xfffffffd
mov dword [rsp + 0x40], esi
mov rdx, qword [rsp + 0x5a0]
cmp rdx, 0x10
jb 0x14002085c
inc rdx
mov rcx, qword [rsp + 0x588]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140020857
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140021d1d
call fcn.14003e780
mov qword [rsp + 0x598], rdi
mov qword [rsp + 0x5a0], 0xf
mov byte [rsp + 0x588], 0
test sil, 1
je 0x1400208e4
and esi, 0xfffffffe
mov dword [rsp + 0x40], esi
mov rdx, qword [rsp + 0x640]
cmp rdx, 0x10
jb 0x1400208c8
inc rdx
mov rcx, qword [rsp + 0x628]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400208c3
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140021d23
call fcn.14003e780
mov qword [rsp + 0x638], rdi
mov qword [rsp + 0x640], 0xf
mov byte [rsp + 0x628], 0
call qword [sym.imp.KERNEL32.dll_WTSGetActiveConsoleSessionId]
test eax, eax
jne 0x140020a13
mov qword [rsp + 0x508], rdi
mov qword [rsp + 0x518], rdi
mov qword [rsp + 0x520], 0xf
lea r8d, [rax + 0x2b]
lea rdx, str.Updater.HandleUpdate_Exit___IsUserLoggedIn_
lea rcx, [rsp + 0x508]
call fcn.140007e50
lea rcx, [rsp + 0x508]
call fcn.14002f780
lea rax, [rsp + 0x508]
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x508], rdi
mov qword [rsp + 0x518], rdi
mov qword [rsp + 0x520], 0xf
mov r8d, 0x31
lea rdx, str.Exited_with_UpdateFailReason__User_not_logged_in_
lea rcx, [rsp + 0x508]
call fcn.140007e50
nop
mov qword [rsp + 0x88], rdi
mov qword [rsp + 0x98], rdi
mov qword [rsp + 0xa0], 0xf
mov r8d, 0xc
lea rdx, str.HandleUpdate
lea rcx, [rsp + 0x88]
call fcn.140007e50
nop
lea rdx, [rsp + 0x508]
lea rcx, [rsp + 0x88]
call fcn.140019e20
nop
mov rdx, qword [r15 + 0x18]
cmp rdx, 0x10
jb 0x1400209fe
mov rcx, qword [r15]
inc rdx
cmp rdx, 0x1000
jb 0x1400209f9
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x140021d2f
mov rcx, r8
call fcn.14003e780
mov qword [r15 + 0x10], rdi
mov qword [r15 + 0x18], 0xf
mov byte [r15], 0
jmp 0x140021ce4
mov qword [rsp + 0x548], rdi
mov qword [rsp + 0x558], rdi
mov qword [rsp + 0x560], 0xf
mov byte [rsp + 0x548], 0
xor r8d, r8d
lea rdx, [0x14008008b]
lea rcx, [rsp + 0x548]
call fcn.140007e50
nop
mov dword [rsp + 0x50], edi
cmp qword [r15 + 0x10], 0
jne 0x140020c8f
call fcn.14002f8d0
mov rdx, rax
call fcn.14001fee0
lea r9, [rsp + 0x50]
lea r8, [rsp + 0x548]
mov rdx, r15
mov rcx, r13
call fcn.140022f80
test al, al
je 0x140020c4b
mov rcx, qword [r15 + 0x10]
mov rax, r12
sub rax, rcx
cmp rax, 0x26
jb 0x140021d29
mov rax, r15
cmp qword [r15 + 0x18], 0x10
jb 0x140020aac
mov rax, qword [r15]
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], 0x26
lea r9, str.Updater.HandleUpdate_Update_Required__
lea rcx, [rsp + 0x608]
call fcn.14000a6b0
bts esi, 7
mov r8d, 1
lea rdx, [0x140085ba4]
lea rcx, [rsp + 0x608]
call fcn.140007fb0
mov qword [rsp + 0x108], rdi
mov qword [rsp + 0x118], rdi
mov qword [rsp + 0x120], rdi
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x108], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x118], xmm1
mov qword [rax + 0x10], rdi
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
bts esi, 8
lea rcx, [rsp + 0x108]
call fcn.14002f780
nop
mov rdx, qword [rsp + 0x620]
cmp rdx, 0x10
jb 0x140020b84
inc rdx
mov rcx, qword [rsp + 0x608]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140020b7f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140021d35
call fcn.14003e780
mov qword [rsp + 0x618], rdi
mov qword [rsp + 0x620], 0xf
mov byte [rsp + 0x608], 0
lea rax, [rsp + 0x2d0]
mov qword [rsp + 0x48], rax
mov rcx, qword [r15 + 0x10]
mov rax, r12
sub rax, rcx
cmp rax, 0x11
jb 0x140021d3b
mov rax, r15
cmp qword [r15 + 0x18], 0x10
jb 0x140020bce
mov rax, qword [r15]
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], 0x11
lea r9, str.Update_Required:
lea rcx, [rsp + 0x2d0]
call fcn.14000a6b0
bts esi, 9
mov dword [rsp + 0x40], esi
mov qword [rsp + 0xa8], rdi
mov qword [rsp + 0xb8], rdi
mov qword [rsp + 0xc0], 0xf
mov r8d, 0xc
lea rdx, str.HandleUpdate
lea rcx, [rsp + 0xa8]
call fcn.140007e50
nop
lea rdx, [rsp + 0x2d0]
lea rcx, [rsp + 0xa8]
call fcn.140019e20
jmp 0x140020c8f
mov qword [rsp + 0xa8], rdi
mov qword [rsp + 0xb8], rdi
mov qword [rsp + 0xc0], 0xf
mov r8d, 0x28
lea rdx, str.Updater.HandleUpdate_Update_not_Required
lea rcx, [rsp + 0xa8]
call fcn.140007e50
lea rcx, [rsp + 0xa8]
call fcn.14002f780
nop
lea r14, [r13 + 0x20]
mov rdx, r14
lea rcx, [rsp + 0x3f0]
call fcn.14002acc0
mov rcx, qword [rax]
movsxd rdx, dword [rcx + 4]
mov ebx, dword [rdx + rax + 0x10]
mov rax, qword [rsp + 0x3f0]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_ifstream_char__struct_std::char_traits_char__.0
mov qword [rsp + rcx + 0x3f0], rax
mov rax, qword [rsp + 0x3f0]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xb0]
mov dword [rsp + rcx + 0x3ec], edx
lea rcx, [rsp + 0x400]
call fcn.140006750
mov rax, qword [rsp + 0x3f0]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_istream_char__struct_std::char_traits_char__.0
mov qword [rsp + rcx + 0x3f0], rax
mov rax, qword [rsp + 0x3f0]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x18]
mov dword [rsp + rcx + 0x3ec], edx
lea rax, vtable.std::ios_base.0
mov qword [rsp + 0x4a0], rax
lea rcx, [rsp + 0x4a0]
call fcn.14003ccd0
nop
test ebx, ebx
jne 0x140020dae
mov rcx, r14
cmp qword [r14 + 0x18], 0x10
jb 0x140020d4e
mov rcx, qword [r14]
call fcn.14005201c
mov rcx, qword [r14 + 0x10]
mov rax, r12
sub rax, rcx
cmp rax, 0x2b
jb 0x140021d41
cmp qword [r14 + 0x18], 0x10
jb 0x140020d71
mov r14, qword [r14]
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x28], r14
mov qword [rsp + 0x20], 0x2b
lea r9, str.Updater.HandleUpdate_Deleting_old_updater:
lea rcx, [rsp + 0x2f0]
call fcn.14000a6b0
bts esi, 0xa
mov dword [rsp + 0x40], esi
lea rcx, [rsp + 0x2f0]
call fcn.14002f780
nop
jmp 0x140020dd2
lea rdx, [rsp + 0x528]
mov rcx, r13
call fcn.1400202d0
nop
cmp qword [rsp + 0x538], 0
jne 0x140020e3e
mov qword [rsp + 0x508], rdi
mov qword [rsp + 0x518], rdi
mov qword [rsp + 0x520], 0xf
mov r8d, 0x33
lea rdx, str.Updater.DownloadUpdater_error_getting_download_path
lea rcx, [rsp + 0x508]
call fcn.140007e50
lea rcx, [rsp + 0x508]
call fcn.14002f780
mov dword [rsp + 0x50], 5
jmp 0x14002194e
cmp qword [r15 + 0x10], 0
je 0x14002193e
mov qword [rsp + 0x1a8], rdi
mov qword [rsp + 0x1b8], rdi
mov qword [rsp + 0x1c0], 0xf
mov r8d, 0x25
lea rdx, str.Updater.HandleUpdate_Checking_LastAct
lea rcx, [rsp + 0x1a8]
call fcn.140007e50
lea rcx, [rsp + 0x1a8]
call fcn.14002f780
mov r14d, edi
movabs r13, 0x7ffffff207b8a7fe
nop dword [rax]
call fcn.1400201a0
mov rbx, rax
call fcn.14002f8d0
sub rax, rbx
cmp rax, 0x47868c00
jge 0x140020f9e
mov eax, r14d
inc r14d
cmp eax, 0x3c
jl 0x140021061
mov qword [rsp + 0x1c8], rdi
mov qword [rsp + 0x1d8], rdi
mov qword [rsp + 0x1e0], 0xf
mov r8d, 0x2c
lea rdx, str.Updater.HandleUpdate_Break__LastAct_Timeout_
lea rcx, [rsp + 0x1c8]
call fcn.140007e50
lea rcx, [rsp + 0x1c8]
call fcn.14002f780
lea rax, [rsp + 0x1e8]
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x1e8], rdi
mov qword [rsp + 0x1f8], rdi
mov qword [rsp + 0x200], 0xf
mov r8d, 0xf
lea rdx, str.LastAct_Timeout
lea rcx, [rsp + 0x1e8]
call fcn.140007e50
nop
mov qword [rsp + 0x208], rdi
mov qword [rsp + 0x218], rdi
mov qword [rsp + 0x220], 0xf
mov r8d, 0x11
lea rdx, str.CheckLastActivity
lea rcx, [rsp + 0x208]
call fcn.140007e50
nop
lea rdx, [rsp + 0x1e8]
lea rcx, [rsp + 0x208]
call fcn.140019e20
mov qword [rsp + 0x128], rdi
mov qword [rsp + 0x138], rdi
mov qword [rsp + 0x140], 0xf
mov r8d, 0xd
lea rdx, str.Uninstall.exe
lea rcx, [rsp + 0x128]
call fcn.140007e50
mov r8b, 1
lea rdx, [rsp + 0x128]
lea rcx, [rsp + 0x5e8]
call fcn.1400309f0
bts esi, 0xb
mov dword [rsp + 0x40], esi
lea rdx, [rsp + 0x548]
cmp qword [rsp + 0x560], 0x10
cmovae rdx, qword [rsp + 0x548]
lea rcx, [rsp + 0x5e8]
mov r13, qword [rsp + 0x600]
cmp r13, 0x10
setae byte [rsp + 0x60]
mov rbx, qword [rsp + 0x5e8]
cmovae rcx, rbx
mov r8, qword [rsp + 0x5f8]
mov r14, qword [rsp + 0x558]
cmp r8, r14
jne 0x1400210e1
call fcn.1400414e0
test eax, eax
jne 0x1400210e1
mov r12b, 1
jmp 0x1400210e4
call fcn.14003daf4
mov rbx, rax
call fcn.14003dad8
cmp rbx, 0x989680
jne 0x14002107d
imul rax, rax, 0x64
jmp 0x14002109b
cqo
idiv rbx
mov rcx, rax
imul rax, rdx, 0x3b9aca00
cqo
idiv rbx
imul rcx, rcx, 0x3b9aca00
add rax, rcx
cmp rax, r13
jg 0x1400210c7
movabs rcx, 0xdf8475800
add rcx, rax
mov qword [rsp + 0x80], rcx
lea rcx, [rsp + 0x80]
call fcn.14002e2f0
jmp 0x140020ea0
mov qword [rsp + 0x80], r12
lea rcx, [rsp + 0x80]
call fcn.14002e2f0
jmp 0x140020ea0
xor r12b, r12b
cmp byte [rsp + 0x60], 0
je 0x140021124
lea rdx, [r13 + 1]
mov rax, rbx
cmp rdx, 0x1000
jb 0x140021114
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140021d47
mov rcx, rbx
call fcn.14003e780
mov r14, qword [rsp + 0x558]
mov qword [rsp + 0x5f8], rdi
mov qword [rsp + 0x600], 0xf
mov byte [rsp + 0x5e8], 0
test r12b, r12b
movabs r12, 0x7fffffffffffffff
je 0x140021358
mov rax, r12
sub rax, r14
cmp rax, 0x19
jb 0x140021d4d
lea rax, [rsp + 0x548]
cmp qword [rsp + 0x560], 0x10
cmovae rax, qword [rsp + 0x548]
mov qword [rsp + 0x30], r14
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], 0x19
lea r9, str.Uninstall.exe_version_is
lea rcx, [rsp + 0x508]
call fcn.14000a6b0
bts esi, 0xc
mov r8d, 0x19
lea rdx, str.._Using_the_existing_file
lea rcx, [rsp + 0x508]
call fcn.140007fb0
mov qword [rsp + 0x88], rdi
mov qword [rsp + 0x98], rdi
mov qword [rsp + 0xa0], rdi
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x88], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x98], xmm1
mov qword [rax + 0x10], rdi
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
bts esi, 0xd
mov dword [rsp + 0x40], esi
lea rcx, [rsp + 0x88]
call fcn.14002f780
nop
mov rdx, qword [rsp + 0x520]
cmp rdx, 0x10
jb 0x140021259
inc rdx
mov rcx, qword [rsp + 0x508]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140021254
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140021d52
call fcn.14003e780
mov qword [rsp + 0x518], rdi
mov qword [rsp + 0x520], 0xf
mov byte [rsp + 0x508], 0
lea rbx, [rsp + 0x528]
cmp qword [rsp + 0x540], 0x10
cmovae rbx, qword [rsp + 0x528]
mov qword [rsp + 0x148], rdi
mov qword [rsp + 0x158], rdi
mov qword [rsp + 0x160], 0xf
mov r8d, 0xd
lea rdx, str.Uninstall.exe
lea rcx, [rsp + 0x148]
call fcn.140007e50
lea rdx, [rsp + 0x148]
lea rcx, [rsp + 0x648]
call fcn.140030660
cmp qword [rax + 0x18], 0x10
jb 0x1400212e4
mov rax, qword [rax]
xor r8d, r8d
mov rdx, rbx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_CopyFileA]
mov ebx, eax
mov rdx, qword [rsp + 0x660]
cmp rdx, 0x10
jb 0x140021338
inc rdx
mov rcx, qword [rsp + 0x648]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140021333
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140021d58
call fcn.14003e780
mov qword [rsp + 0x658], rdi
mov qword [rsp + 0x660], 0xf
mov byte [rsp + 0x648], 0
test ebx, ebx
jne 0x140021384
mov rdx, r15
lea rcx, [rsp + 0x390]
call fcn.140007140
lea r8, [rsp + 0x528]
mov rdx, rax
call fcn.140021d70
mov dword [rsp + 0x50], eax
test eax, eax
jne 0x14002193e
mov qword [rsp + 0xc8], rdi
mov qword [rsp + 0xd8], rdi
mov qword [rsp + 0xe0], rdi
mov r13, qword [rsp + 0x538]
lea r14, [rsp + 0x528]
cmp qword [rsp + 0x540], 0x10
cmovae r14, qword [rsp + 0x528]
cmp r13, 0x10
jae 0x1400213d7
movups xmm0, xmmword [r14]
movups xmmword [rsp + 0xc8], xmm0
mov ebx, 0xf
jmp 0x140021447
mov rbx, r13
or rbx, 0xf
cmp rbx, r12
cmova rbx, r12
lea rcx, [rbx + 1]
cmp rcx, 0x1000
jb 0x140021421
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x140021d5e
mov rcx, rax
call fcn.14003e788
mov rcx, rax
test rax, rax
je 0x140021d63
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x140021430
test rcx, rcx
je 0x14002142d
call fcn.14003e788
jmp 0x140021430
mov rax, rdi
mov qword [rsp + 0xc8], rax
lea r8, [r13 + 1]
mov rdx, r14
mov rcx, rax
call fcn.140040c10
mov qword [rsp + 0xd8], r13
mov qword [rsp + 0xe0], rbx
lea rdx, [rsp + 0xc8]
call fcn.140022a60
mov dword [rsp + 0x50], eax
test eax, eax
jne 0x14002193e
mov qword [rsp + 0x5c8], rdi
movdqa xmm0, xmmword [0x140087bf0]
movdqu xmmword [rsp + 0x5d8], xmm0
mov word [rsp + 0x5c8], di
xor r8d, r8d
lea rdx, [0x140084ee8]
lea rcx, [rsp + 0x5c8]
call fcn.140007c80
nop
mov qword [rsp + 0x188], rdi
mov qword [rsp + 0x198], rdi
mov qword [rsp + 0x1a0], 7
mov r8d, 0xe
lea rdx, str.LastUpdateDate
lea rcx, [rsp + 0x188]
call fcn.140007c80
lea rdx, [rsp + 0x5c8]
lea rcx, [rsp + 0x188]
call fcn.14001b1a0
nop
mov qword [rsp + 0x5a8], rdi
movdqa xmm0, xmmword [0x140087c00]
movdqu xmmword [rsp + 0x5b8], xmm0
mov byte [rsp + 0x5a8], 0
mov r8d, 7
lea rdx, str._update
lea rcx, [rsp + 0x5a8]
call fcn.140007e50
nop
mov rcx, qword [rsp + 0x538]
sub r12, rcx
cmp r12, 0x22
jb 0x140021d69
lea rax, [rsp + 0x528]
cmp qword [rsp + 0x540], 0x10
cmovae rax, qword [rsp + 0x528]
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], 0x22
lea r9, str.Updater.HandleUpdate_About_to_run
lea rcx, [rsp + 0x7c8]
call fcn.14000a6b0
bts esi, 0xe
mov dword [rsp + 0x40], esi
mov r8d, 1
lea rdx, [0x140080608]
lea rcx, [rsp + 0x7c8]
call fcn.140007fb0
mov qword [rsp + 0x688], rdi
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x698], xmm0
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x688], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x698], xmm1
mov qword [rax + 0x10], rdi
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
bts esi, 0xf
mov dword [rsp + 0x40], esi
lea r8, [rsp + 0x5a8]
lea rdx, [rsp + 0x688]
lea rcx, [rsp + 0x3b0]
call fcn.140008b70
mov rcx, rax
call fcn.14002f780
nop
lea rcx, [rsp + 0x688]
call fcn.140006fd0
nop
lea rcx, [rsp + 0x7c8]
call fcn.140006fd0
lea rax, [rsp + 0x3d0]
mov qword [rsp + 0x48], rax
lea r8, [rsp + 0x528]
lea rdx, str.Updater.HandleUpdate_About_to_run
lea rcx, [rsp + 0x808]
call fcn.140008a80
nop
lea r8, [0x140080608]
mov rdx, rax
lea rcx, [rsp + 0x7e8]
call fcn.140008af0
nop
lea r8, [rsp + 0x5a8]
mov rdx, rax
lea rcx, [rsp + 0x3d0]
call fcn.140008b70
mov rbx, rax
lea rdx, str.Updater::HandleUpdate
lea rcx, [rsp + 0x310]
call fcn.140007100
nop
mov rdx, rbx
mov rcx, rax
call fcn.140019e20
nop
lea rcx, [rsp + 0x7e8]
call fcn.140006fd0
nop
lea rcx, [rsp + 0x808]
call fcn.140006fd0
mov dword [rsp + 0x78], edi
lea rax, [rsp + 0x330]
mov qword [rsp + 0x48], rax
lea rdx, [rsp + 0x5a8]
lea rcx, [rsp + 0x330]
call fcn.140007140
mov rbx, rax
lea rdx, [rsp + 0x528]
lea rcx, [rsp + 0x370]
call fcn.140007140
nop
lea r9, [rsp + 0x78]
mov rdx, rbx
mov rcx, rax
call fcn.1400317d0
test al, al
jne 0x1400217f8
lea rax, [rsp + 0x2b0]
mov qword [rsp + 0x58], rax
mov edx, dword [rsp + 0x78]
lea rcx, [rsp + 0x708]
call fcn.14001e680
nop
mov r8, rax
lea rdx, str.Error_code
lea rcx, [rsp + 0x6e8]
call fcn.140008a20
nop
lea r8, str._while_running_updater_file:
mov rdx, rax
lea rcx, [rsp + 0x728]
call fcn.140008af0
nop
lea r8, [rsp + 0x528]
mov rdx, rax
lea rcx, [rsp + 0x2b0]
call fcn.140008b70
mov rbx, rax
lea rdx, str.HandleUpdate
lea rcx, [rsp + 0x290]
call fcn.140007100
nop
mov rdx, rbx
mov rcx, rax
call fcn.14001a0d0
nop
lea rcx, [rsp + 0x728]
call fcn.140006fd0
nop
lea rcx, [rsp + 0x6e8]
call fcn.140006fd0
nop
lea rcx, [rsp + 0x708]
call fcn.140006fd0
mov dword [rsp + 0x50], 8
lea rcx, [rsp + 0x5a8]
call fcn.140006fd0
nop
lea rcx, [rsp + 0x5c8]
call fcn.140006d50
jmp 0x140021949
lea rcx, [rsp + 0x5a8]
call fcn.140006fd0
nop
lea rdx, str.Updater.HandleUpdate_Checking_if_update_is_running
lea rcx, [rsp + 0x708]
call fcn.140007100
mov rcx, rax
call fcn.14002f780
mov ebx, edi
mov r13, qword [rsp + 0x68]
nop dword [rax]
mov rdx, r13
lea rcx, [rsp + 0x6e8]
call fcn.140006ea0
mov rcx, rax
call fcn.1400320f0
cmp al, 1
jne 0x140021877
mov eax, ebx
inc ebx
cmp eax, 0x12c
jl 0x140021b4e
lea rdx, str.Updater.HandleUpdate_updater_process_still_running
lea rcx, [rsp + 0x728]
call fcn.140007100
mov rcx, rax
call fcn.14002f780
lea rdx, str.Updater.HandleUpdate_Checking_for_LastUpdateDate
lea rcx, [rsp + 0x290]
call fcn.140007100
mov rcx, rax
call fcn.14002f780
mov ebx, edi
lea rdx, [0x140084ee8]
lea rcx, [rsp + 0x6c8]
call fcn.140006e60
nop
lea rdx, str.LastUpdateDate
lea rcx, [rsp + 0x2b0]
call fcn.140006e60
lea rdx, [rsp + 0x6c8]
mov rcx, rax
call fcn.14001b1a0
nop
lea rdx, [rsp + 0x5c8]
lea rcx, [rsp + 0x6c8]
call fcn.140015730
test al, al
jne 0x140021923
mov eax, ebx
inc ebx
cmp eax, 0x708
jl 0x140021b66
mov dword [rsp + 0x50], 0xa
movsxd rdx, ebx
lea rax, str.Updater.HandleUpdate_LastUpdateDate_timeout_at_least
add rdx, rax
lea rcx, [rsp + 0x270]
call fcn.140007100
mov rcx, rax
call fcn.14002f780
nop
lea rcx, [rsp + 0x6c8]
call fcn.140006d50
nop
lea rcx, [rsp + 0x5c8]
call fcn.140006d50
cmp dword [rsp + 0x50], 0
je 0x140021bd7
mov r13, qword [rsp + 0x68]
inc dword [r13 + 0x50]
mov edx, dword [r13 + 0x50]
lea rcx, [rsp + 0x668]
call fcn.140001f30
mov r14, rax
mov ebx, dword [rsp + 0x50]
mov edx, ebx
lea rcx, [rsp + 0x748]
call fcn.140001f30
nop
mov r8, rax
lea rdx, str.Updater.HandleUpdate_Exited_with_UpdateFailReason__
lea rcx, [rsp + 0x828]
call fcn.140008a20
nop
lea r8, str.__UpdateFailCount_
mov rdx, rax
lea rcx, [rsp + 0x848]
call fcn.140008af0
nop
mov r8, r14
mov rdx, rax
lea rcx, [rsp + 0x350]
call fcn.140008b50
mov rcx, rax
call fcn.14002f780
nop
lea rcx, [rsp + 0x848]
call fcn.140006fd0
nop
lea rcx, [rsp + 0x828]
call fcn.140006fd0
nop
lea rcx, [rsp + 0x748]
call fcn.140006fd0
nop
lea rcx, [rsp + 0x668]
call fcn.140006fd0
lea rax, [rsp + 0x168]
mov qword [rsp + 0x58], rax
mov edx, dword [r13 + 0x50]
lea rcx, [rsp + 0x6a8]
call fcn.140001f30
mov r14, rax
mov edx, ebx
lea rcx, [rsp + 0x7a8]
call fcn.140001f30
nop
mov r8, rax
lea rdx, str.Exited_with_UpdateFailReason_
lea rcx, [rsp + 0x788]
call fcn.140008a20
nop
lea r8, str._UpdateFailCount_
mov rdx, rax
lea rcx, [rsp + 0x768]
call fcn.140008af0
nop
mov r8, r14
mov rdx, rax
lea rcx, [rsp + 0x168]
call fcn.140008b50
mov rbx, rax
lea rdx, str.HandleUpdate
lea rcx, [rsp + 0x230]
call fcn.140007100
nop
mov rdx, rbx
mov rcx, rax
call fcn.140019e20
nop
lea rcx, [rsp + 0x768]
call fcn.140006fd0
nop
lea rcx, [rsp + 0x788]
call fcn.140006fd0
nop
lea rcx, [rsp + 0x7a8]
call fcn.140006fd0
nop
lea rcx, [rsp + 0x6a8]
call fcn.140006fd0
cmp dword [r13 + 0x50], 0xa
jle 0x140021bc7
mov dword [r13 + 0x50], edi
movabs rax, 0x861c46800
mov qword [r13 + 0x48], rax
lea rdx, str.Updater.HandleUpdate_Exited_with_UpdateFailReason_UpdateFailCount___10
lea rcx, [rsp + 0x6a8]
call fcn.140007100
mov rcx, rax
call fcn.14002f780
lea rax, [rsp + 0x7a8]
mov qword [rsp + 0x58], rax
lea rdx, str.Exited_with_UpdateFailReason_UpdateFailCount___10
lea rcx, [rsp + 0x7a8]
call fcn.140007100
mov rbx, rax
lea rdx, str.HandleUpdate
lea rcx, [rsp + 0x788]
call fcn.140007100
nop
mov rdx, rbx
mov rcx, rax
call fcn.14001a0d0
jmp 0x140021c07
mov qword [rsp + 0x70], 0x3e8
lea rcx, [rsp + 0x70]
call fcn.14002ce00
jmp 0x140021830
mov qword [rsp + 0x48], 0x3e8
lea rcx, [rsp + 0x48]
call fcn.14002ce00
lea rdx, str.LastUpdateDate
lea rcx, [rsp + 0x250]
call fcn.140006e60
lea rdx, [rsp + 0x6c8]
mov rcx, rax
call fcn.14001b1a0
jmp 0x1400218d0
movabs rax, 0x430e23400
mov qword [r13 + 0x48], rax
jmp 0x140021c07
movabs rax, 0x861c46800
mov rcx, qword [rsp + 0x68]
mov qword [rcx + 0x48], rax
lea rdx, str.Updater.HandleUpdate_Complete
lea rcx, [rsp + 0x6a8]
call fcn.140007100
mov rcx, rax
call fcn.14002f780
nop
cmp qword [rsp + 0x538], 0
je 0x140021c3c
lea rdx, [rsp + 0x528]
lea rcx, [rsp + 0x3f0]
call fcn.14002acc0
or esi, 8
mov rcx, qword [rax]
movsxd rdx, dword [rcx + 4]
cmp dword [rdx + rax + 0x10], 0
jne 0x140021c3c
mov bl, 1
jmp 0x140021c3e
xor bl, bl
test sil, 8
je 0x140021c51
lea rcx, [rsp + 0x3f0]
call fcn.140005b00
test bl, bl
je 0x140021c8f
lea r8, [rsp + 0x528]
lea rdx, str.Updater.HandleUpdate_Deleting_updater_file
lea rcx, [rsp + 0x768]
call fcn.140008a80
mov rcx, rax
call fcn.14002f780
lea rcx, [rsp + 0x528]
call fcn.140006fa0
mov rcx, rax
call fcn.14005201c
nop
jmp 0x140021c99
lea rdx, str.Updater.HandleUpdate_Exit
lea rcx, [rsp + 0x230]
call fcn.140007100
mov rcx, rax
call fcn.14002f780
nop
lea rcx, [rsp + 0x528]
call fcn.140006fd0
nop
lea rcx, [rsp + 0x548]
call fcn.140006fd0
nop
jmp 0x140021cdc
mov rcx, r15
call fcn.140006fd0
mov rcx, qword [rsp + 0x868]
xor rcx, rsp
call fcn.14003e760
lea r11, [rsp + 0x870]
mov rbx, qword [r11 + 0x40]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
call fcn.140001350
nop
call fcn.1400512b4
nop
call fcn.1400512b4
nop
call fcn.1400512b4
nop
call fcn.140001350
nop
call fcn.1400512b4
nop
call fcn.1400512b4
int3
call fcn.140001350
nop
call fcn.140001350
nop
call fcn.1400512b4
int3
call fcn.140001350
call fcn.1400512b4
int3
call fcn.1400512b4
int3
call fcn.1400012b0
call fcn.1400512b4
nop
call fcn.140001350
int3