Function at 0x45e268
Capabilities:
Copy file

Disassembly:
mov r11, rsp
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x2d0
mov qword [rsp + 0x20], 0xfffffffffffffffe
mov qword [r11 + 8], rbx
mov qword [r11 + 0x18], rbp
mov qword [r11 + 0x20], rsi
mov rax, qword [0x004bf230]
xor rax, rsp
mov qword [rsp + 0x2c0], rax
mov r14b, r8b
mov rsi, rdx
mov qword [r11 - 0x260], 7
xor r15d, r15d
mov qword [r11 - 0x268], r15
mov word [r11 - 0x278], r15w
call fcn.004551b8
mov r13, qword [rax + 0x18]
mov ebx, r15d
lea r12, [0x004c2dc0]
lea rbp, [0x004c1968]
sub rbp, 0x34
cmp ebx, 0x18
je 0x45e4bd
cmp ebx, 0x17
je 0x45e4bd
mov qword [rsp + 0x48], 7
mov qword [rsp + 0x40], r15
mov word [rsp + 0x30], r15w
xor eax, eax
or rcx, 0xffffffffffffffff
mov rdi, qword [r12]
repne scasw ax, word [rdi]
not rcx
lea r8, [rcx - 1]
mov rdx, qword [r12]
lea rcx, [rsp + 0x28]
call fcn.00404e54
nop
lea r8, [rsp + 0x78]
lea rdx, [rsp + 0x28]
mov rcx, r13
call fcn.00459794
mov dil, al
cmp qword [rsp + 0x48], 8
jb 0x45e353
mov rcx, qword [rsp + 0x30]
call fcn.00443d3c
mov qword [rsp + 0x48], 7
mov qword [rsp + 0x40], r15
mov word [rsp + 0x30], r15w
cmp dil, r15b
je 0x45e4bd
lea eax, [rbx - 0xd]
cmp eax, 9
ja 0x45e4ae
mov byte [rsp + 0x1b0], r15b
xor edx, edx
mov r8d, 0x103
lea rcx, [rsp + 0x1b1]
call fcn.00449860
cmp qword [rsp + 0x90], 0x32
jbe 0x45e3f8
mov r9d, 0x32
xor r8d, r8d
lea rdx, [rsp + 0x50]
lea rcx, [rsp + 0x78]
call fcn.0040d0cc
nop
or r9, 0xffffffffffffffff
xor r8d, r8d
mov rdx, rax
lea rcx, [rsp + 0x78]
call fcn.004020b0
nop
cmp qword [rsp + 0x70], 8
jb 0x45e3e4
mov rcx, qword [rsp + 0x58]
call fcn.00443d3c
mov qword [rsp + 0x70], 7
mov qword [rsp + 0x68], r15
mov word [rsp + 0x58], r15w
lea rcx, [rsp + 0x80]
cmp qword [rsp + 0x98], 8
cmovae rcx, qword [rsp + 0x80]
mov r9d, 0x104
lea r8, [rsp + 0x1b0]
mov edx, dword [rsp + 0x90]
call fcn.0045d0e0
movsxd rcx, eax
mov byte [rsp + rcx + 0x1b0], r15b
mov eax, dword [rbp]
mov byte [rsp + rax + 0x1b0], r15b
lea rax, [rsp + 0xa8]
mov qword [rsp + 0xa0], rax
mov r8d, 3
lea rdx, [rsp + 0x1b0]
lea rcx, [rsp + 0xa0]
call fcn.00411dd8
nop
xor eax, eax
or rcx, 0xffffffffffffffff
mov rdx, qword [rsp + 0xa0]
mov rdi, rdx
repne scasw ax, word [rdi]
not rcx
lea r8, [rcx - 1]
lea rcx, [rsp + 0x78]
call fcn.00404e54
nop
lea rax, [rsp + 0xa8]
mov rcx, qword [rsp + 0xa0]
cmp rcx, rax
je 0x45e4ae
call fcn.0044460c
lea r8, [rsp + 0x78]
mov edx, ebx
mov rcx, rsi
call fcn.004639d8
inc ebx
add rbp, 4
add r12, 8
cmp ebx, 0x1e
jl 0x45e2e3
cmp r14b, r15b
je 0x45e76e
mov ebx, 7
mov qword [rsp + 0x48], rbx
mov qword [rsp + 0x40], r15
mov word [rsp + 0x30], r15w
xor eax, eax
or rcx, 0xffffffffffffffff
mov rdx, qword [str.WRAPPER_LOG_FILE]
mov rdi, rdx
repne scasw ax, word [rdi]
not rcx
lea r8, [rcx - 1]
lea rcx, [rsp + 0x28]
call fcn.00404e54
nop
lea r8, [rsp + 0x78]
lea rdx, [rsp + 0x28]
mov rcx, r13
call fcn.00459794
mov dil, al
cmp qword [rsp + 0x48], 8
jb 0x45e53a
mov rcx, qword [rsp + 0x30]
call fcn.00443d3c
mov qword [rsp + 0x48], rbx
mov qword [rsp + 0x40], r15
mov word [rsp + 0x30], r15w
cmp dil, r15b
je 0x45e625
mov qword [rsp + 0x48], rbx
mov qword [rsp + 0x40], r15
mov word [rsp + 0x30], r15w
mov r8d, 3
lea rdx, [0x00494700]
lea rcx, [rsp + 0x28]
call fcn.00404e54
nop
lea rdx, [rsp + 0x28]
lea rcx, [rsp + 0x50]
call fcn.0046019c
nop
cmp qword [rsp + 0x48], 8
jb 0x45e59d
mov rcx, qword [rsp + 0x30]
call fcn.00443d3c
mov qword [rsp + 0x48], rbx
mov qword [rsp + 0x40], r15
mov word [rsp + 0x30], r15w
lea rdx, [rsp + 0x58]
cmp qword [rsp + 0x70], 8
cmovae rdx, qword [rsp + 0x58]
lea rcx, [rsp + 0x80]
cmp qword [rsp + 0x98], 8
cmovae rcx, qword [rsp + 0x80]
xor r8d, r8d
call qword [sym.imp.KERNEL32.dll_CopyFileW]
cmp eax, r15d
je 0x45e5f5
lea rdx, [rsp + 0x50]
mov rcx, rsi
call fcn.00463b10
jmp 0x45e603
lea rdx, [rsp + 0x78]
mov rcx, rsi
call fcn.00463a48
nop
cmp qword [rsp + 0x70], 8
jb 0x45e615
mov rcx, qword [rsp + 0x58]
call fcn.00443d3c
mov qword [rsp + 0x70], rbx
mov qword [rsp + 0x68], r15
mov word [rsp + 0x58], r15w
mov qword [rsp + 0x70], rbx
mov qword [rsp + 0x68], r15
mov word [rsp + 0x58], r15w
xor eax, eax
or rcx, 0xffffffffffffffff
mov rdx, qword [str.SETUP_DATA_FILE]
mov rdi, rdx
repne scasw ax, word [rdi]
not rcx
lea r8, [rcx - 1]
lea rcx, [rsp + 0x50]
call fcn.00404e54
nop
lea r8, [rsp + 0x78]
lea rdx, [rsp + 0x50]
mov rcx, r13
call fcn.00459794
mov dil, al
cmp qword [rsp + 0x70], 8
jb 0x45e681
mov rcx, qword [rsp + 0x58]
call fcn.00443d3c
mov qword [rsp + 0x70], rbx
mov qword [rsp + 0x68], r15
mov word [rsp + 0x58], r15w
cmp dil, r15b
je 0x45e773
mov qword [rsp + 0x70], rbx
mov qword [rsp + 0x68], r15
mov word [rsp + 0x58], r15w
mov r8d, 3
lea rdx, [0x004946f8]
lea rcx, [rsp + 0x50]
call fcn.00404e54
nop
lea rdx, [rsp + 0x50]
lea rcx, [rsp + 0x28]
call fcn.0046019c
nop
cmp qword [rsp + 0x70], 8
jb 0x45e6e4
mov rcx, qword [rsp + 0x58]
call fcn.00443d3c
mov qword [rsp + 0x70], rbx
mov qword [rsp + 0x68], r15
mov word [rsp + 0x58], r15w
lea rdx, [rsp + 0x30]
cmp qword [rsp + 0x48], 8
cmovae rdx, qword [rsp + 0x30]
lea rcx, [rsp + 0x80]
cmp qword [rsp + 0x98], 8
cmovae rcx, qword [rsp + 0x80]
xor r8d, r8d
call qword [sym.imp.KERNEL32.dll_CopyFileW]
cmp eax, r15d
je 0x45e73c
lea rdx, [rsp + 0x28]
mov rcx, rsi
call fcn.00463b10
jmp 0x45e74a
lea rdx, [rsp + 0x78]
mov rcx, rsi
call fcn.00463a48
nop
cmp qword [rsp + 0x48], 8
jb 0x45e75c
mov rcx, qword [rsp + 0x30]
call fcn.00443d3c
mov qword [rsp + 0x48], rbx
mov qword [rsp + 0x40], r15
mov word [rsp + 0x30], r15w
jmp 0x45e773
mov ebx, 7
cmp qword [rsp + 0x98], 8
jb 0x45e78b
mov rcx, qword [rsp + 0x80]
call fcn.00443d3c
mov qword [rsp + 0x98], rbx
mov qword [rsp + 0x90], r15
mov word [rsp + 0x80], r15w
mov al, 1
mov rcx, qword [rsp + 0x2c0]
xor rcx, rsp
call fcn.00443d60
lea r11, [rsp + 0x2d0]
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