Function at 0x4650ec
Capabilities:
Copy file
Delete file

Disassembly:
push rdi
push r12
push r13
push r14
push r15
mov eax, 0x1510
call fcn.00478be0
sub rsp, rax
mov qword [rsp + 0x70], 0xfffffffffffffffe
mov qword [rsp + 0x1540], rbx
mov qword [rsp + 0x1550], rbp
mov qword [rsp + 0x1558], rsi
mov rax, qword [0x004bf230]
xor rax, rsp
mov qword [rsp + 0x1500], rax
mov dil, r8b
mov byte [rsp + 0x20], r8b
mov r12, rdx
mov qword [rsp + 0x38], rdx
mov r13d, 7
mov qword [rsp + 0x68], r13
xor ebp, ebp
mov qword [rsp + 0x60], rbp
mov word [rsp + 0x50], bp
lea r8d, [r13 - 4]
lea rdx, [0x00496040]
lea rcx, [rsp + 0x48]
call fcn.00404e54
nop
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x78]
call fcn.0046019c
nop
cmp qword [rsp + 0x68], 8
jb 0x465195
mov rcx, qword [rsp + 0x50]
call fcn.00443d3c
mov qword [rsp + 0x68], r13
mov qword [rsp + 0x60], rbp
mov word [rsp + 0x50], bp
mov rcx, qword [0x004c2688]
call fcn.0044531c
mov r14d, eax
call fcn.004551b8
mov rbx, qword [rax + 0x70]
mov qword [rsp + 0x40], rbx
cmp qword [r12 + 0x20], 8
jb 0x4651d3
lea rsi, [r12 + 8]
mov rdx, qword [rsi]
jmp 0x4651db
lea rsi, [r12 + 8]
mov rdx, rsi
lea r8, [0x00496034]
lea rcx, [rsp + 0x28]
call fcn.00470660
cmp eax, ebp
je 0x46523c
cmp rbx, rbp
je 0x465205
lea rdx, str.ERROR:_Failed_to_open_input_manifest_file_in_MergeManifestFile__.
mov rcx, rbx
call fcn.0045fe58
nop
cmp qword [rsp + 0x98], 8
jb 0x46521d
mov rcx, qword [rsp + 0x80]
call fcn.00443d3c
mov qword [rsp + 0x98], r13
mov qword [rsp + 0x90], rbp
mov word [rsp + 0x80], bp
xor al, al
jmp 0x4655db
lea rdx, [rsp + 0x80]
cmp qword [rsp + 0x98], 8
cmovae rdx, qword [rsp + 0x80]
lea r8, [0x00495fa8]
lea rcx, [rsp + 0x30]
call fcn.00470660
cmp eax, ebp
je 0x4652c1
mov rcx, qword [rsp + 0x28]
call fcn.00450248
cmp rbx, rbp
je 0x46528a
lea rdx, str.ERROR:_Failed_to_open_output_manifest_file_in_MergeManifestFile__.
mov rcx, rbx
call fcn.0045fe58
nop
cmp qword [rsp + 0x98], 8
jb 0x4652a2
mov rcx, qword [rsp + 0x80]
call fcn.00443d3c
mov qword [rsp + 0x98], r13
mov qword [rsp + 0x90], rbp
mov word [rsp + 0x80], bp
xor al, al
jmp 0x4655db
mov r15b, bpl
mov word [rsp + 0xa0], bp
xor edx, edx
mov r8d, 0x1450
lea rcx, [rsp + 0xa2]
call fcn.00449860
mov r8, qword [rsp + 0x28]
mov edx, 0xa28
lea rcx, [rsp + 0xa0]
call fcn.004703e8
mov r13d, 1
cmp rax, rbp
je 0x465417
mov bl, byte [rsp + 0x20]
xor r12d, r12d
lea rdx, str.UIFlags
lea rcx, [rsp + 0xa0]
call fcn.00445330
mov rbp, rax
cmp rax, r12
je 0x4653cf
mov r15b, r13b
add rbp, 0x10
mov rdi, rbp
movzx ecx, word [rbp]
call fcn.00444eb8
cmp eax, r12d
je 0x465357
add rdi, 2
movzx ecx, word [rdi]
call fcn.00444eb8
cmp eax, r12d
jne 0x465346
mov word [rdi], r12w
mov rcx, rbp
call fcn.0044531c
mov ecx, eax
cmp bl, r12b
je 0x465377
and eax, r14d
cmp eax, r14d
je 0x46537a
or ecx, r14d
jmp 0x46537a
mov ecx, r12d
sub rdi, rbp
sar rdi, 1
lea r8, [r13 + rdi]
mov r9d, 0xa
mov rdx, rbp
call fcn.00445bf0
xor eax, eax
or rcx, 0xffffffffffffffff
mov rdi, rbp
repne scasw ax, word [rdi]
not rcx
sub rcx, r13
lea rcx, [rbp + rcx*2]
lea rdx, [rsp + 0xa0]
mov rax, rcx
sub rax, rdx
sar rax, 1
mov edx, 0xa29
sub rdx, rax
lea r8, [0x0049fba8]
call fcn.00444f54
mov rdx, qword [rsp + 0x30]
lea rcx, [rsp + 0xa0]
call fcn.004702f0
mov r8, qword [rsp + 0x28]
mov edx, 0xa28
lea rcx, [rsp + 0xa0]
call fcn.004703e8
cmp rax, r12
jne 0x46530e
cmp r15b, r12b
mov rbx, qword [rsp + 0x40]
mov r12, qword [rsp + 0x38]
jne 0x465449
mov dil, byte [rsp + 0x20]
xor ebp, ebp
cmp dil, bpl
je 0x46544b
lea r8, str._r_nUIFlags1_r_n
mov edx, 0xa28
lea rcx, [rsp + 0xa0]
call fcn.004444bc
mov rdx, qword [rsp + 0x30]
lea rcx, [rsp + 0xa0]
call fcn.004702f0
jmp 0x46544b
xor ebp, ebp
mov rcx, qword [rsp + 0x28]
call fcn.00450248
mov rcx, qword [rsp + 0x30]
call fcn.00450248
cmp qword [r12 + 0x20], 8
jb 0x46546c
mov rcx, qword [rsi]
jmp 0x46546f
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_DeleteFileW]
cmp eax, ebp
jne 0x4654c9
cmp rbx, rbp
je 0x46548e
lea rdx, str.ERROR:Failed_to_delete_the_original_manifest_in_MergeManifestFile__.
mov rcx, rbx
call fcn.0045fe58
nop
cmp qword [rsp + 0x98], 8
jb 0x4654a6
mov rcx, qword [rsp + 0x80]
call fcn.00443d3c
mov qword [rsp + 0x98], 7
mov qword [rsp + 0x90], rbp
mov word [rsp + 0x80], bp
xor al, al
jmp 0x4655db
cmp qword [r12 + 0x20], 8
jb 0x4654d4
mov rsi, qword [rsi]
lea rcx, [rsp + 0x80]
cmp qword [rsp + 0x98], 8
cmovae rcx, qword [rsp + 0x80]
xor r8d, r8d
mov rdx, rsi
call qword [sym.imp.KERNEL32.dll_CopyFileW]
cmp eax, ebp
jne 0x46554e
cmp rbx, rbp
je 0x465513
lea rdx, str.ERROR:Failed_to_copy_the_new_manifest_in_MergeManifestFile__.
mov rcx, rbx
call fcn.0045fe58
nop
cmp qword [rsp + 0x98], 8
jb 0x46552b
mov rcx, qword [rsp + 0x80]
call fcn.00443d3c
mov qword [rsp + 0x98], 7
mov qword [rsp + 0x90], rbp
mov word [rsp + 0x80], bp
xor al, al
jmp 0x4655db
lea rcx, [rsp + 0x80]
cmp qword [rsp + 0x98], 8
cmovae rcx, qword [rsp + 0x80]
call qword [sym.imp.KERNEL32.dll_DeleteFileW]
cmp eax, ebp
jne 0x4655a4
cmp rbx, rbp
je 0x465587
lea rdx, str.ERROR:Failed_to_delete_the_temp_manifest_in_MergeManifestFile__.
mov rcx, rbx
call fcn.0045fe58
nop
cmp qword [rsp + 0x98], 8
jb 0x46559f
mov rcx, qword [rsp + 0x80]
call fcn.00443d3c
mov r13b, bpl
jmp 0x4655bc
cmp qword [rsp + 0x98], 8
jb 0x4655bc
mov rcx, qword [rsp + 0x80]
call fcn.00443d3c
mov qword [rsp + 0x98], 7
mov qword [rsp + 0x90], rbp
mov word [rsp + 0x80], bp
mov al, r13b
mov rcx, qword [rsp + 0x1500]
xor rcx, rsp
call fcn.00443d60
lea r11, [rsp + 0x1510]
mov rbx, qword [r11 + 0x30]
mov rbp, qword [r11 + 0x40]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret