Function at 0x140069f60
Capabilities:
Check if file exists
Copy file

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r14
push r15
lea rbp, [rsp - 0x1f0]
sub rsp, 0x2f0
mov qword [rsp + 0x28], 0xfffffffffffffffe
mov rax, qword [0x1402a6808]
xor rax, rsp
mov qword [rbp + 0x1e0], rax
mov r15, r9
mov rax, rdx
mov r14, rcx
xor r12d, r12d
mov dword [rsp + 0x20], r12d
mov qword [rcx + 8], rdx
mov qword [rcx + 0x10], r8
mov r8d, 0x104
lea rdx, [rbp - 0x30]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
lea rcx, [rbp - 0x30]
call qword [sym.imp.SHLWAPI.dll_PathFindFileNameW]
mov r8, 0xffffffffffffffff
inc r8
cmp word [rax + r8*2], r12w
jne 0x140069fd1
lea rcx, [r14 + 0x40]
mov rdx, rax
call fcn.140006d60
mov qword [r14 + 0x200], r15
call fcn.14000c980
mov rcx, rax
lea rdx, [rbp - 0x70]
call fcn.140069a50
nop
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x40], xmm0
movdqa xmm1, xmmword [0x1401e3030]
movdqu xmmword [rsp + 0x40], xmm1
mov word [rsp + 0x30], r12w
mov r8d, InitCommonControls
lea rdx, str.functionList
lea rcx, [rsp + 0x30]
call fcn.140006d60
nop
lea r8, [rsp + 0x30]
lea rdx, [rbp - 0x70]
lea rcx, [rsp + 0x50]
call fcn.140027aa0
mov rdx, qword [rsp + 0x68]
cmp rdx, 8
jb 0x14006a08a
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14006a085
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14006a55d
call fcn.14017f5e4
movdqa xmm0, xmmword [0x1401e3030]
movdqu xmmword [rsp + 0x60], xmm0
mov word [rsp + 0x50], r12w
mov rdx, qword [rsp + 0x48]
cmp rdx, 8
jb 0x14006a0e0
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14006a0db
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14006a563
call fcn.14017f5e4
movdqa xmm0, xmmword [0x1401e3030]
movdqu xmmword [rsp + 0x40], xmm0
mov word [rsp + 0x30], r12w
call fcn.14000c980
mov rcx, rax
lea rdx, [rsp + 0x70]
call fcn.14003e700
nop
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x60], xmm0
movdqa xmm1, xmmword [0x1401e3030]
movdqu xmmword [rsp + 0x60], xmm1
mov word [rsp + 0x50], r12w
mov r8d, InitCommonControls
lea rdx, str.functionList
lea rcx, [rsp + 0x50]
call fcn.140006d60
nop
lea r8, [rsp + 0x50]
lea rdx, [rsp + 0x70]
lea rcx, [rsp + 0x30]
call fcn.140027aa0
mov rdx, qword [rsp + 0x48]
cmp rdx, 8
jb 0x14006a192
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14006a18d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14006a569
call fcn.14017f5e4
movdqa xmm0, xmmword [0x1401e3030]
movdqu xmmword [rsp + 0x40], xmm0
mov word [rsp + 0x30], r12w
mov rdx, qword [rsp + 0x68]
cmp rdx, 8
jb 0x14006a1e8
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14006a1e3
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14006a56f
call fcn.14017f5e4
movdqa xmm0, xmmword [0x1401e3030]
movdqu xmmword [rsp + 0x60], xmm0
mov word [rsp + 0x50], r12w
call fcn.14000c980
cmp byte [rax + 0x32e68], 0
jne 0x14006a287
lea rcx, [rbp - 0x70]
cmp qword [rbp - 0x58], 8
cmovae rcx, qword [rbp - 0x70]
call qword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
jne 0x14006a26a
lea rcx, [rsp + 0x70]
cmp qword [rbp - 0x78], 8
cmovae rcx, qword [rsp + 0x70]
call qword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x14006a494
lea rdx, [rbp - 0x70]
cmp qword [rbp - 0x58], 8
cmovae rdx, qword [rbp - 0x70]
lea rcx, [rsp + 0x70]
cmp qword [rbp - 0x78], 8
cmovae rcx, qword [rsp + 0x70]
mov r8d, 1
call qword [sym.imp.KERNEL32.dll_CopyFileW]
lea rcx, [r14 + 0x208]
mov r9, r15
lea r8, [rsp + 0x70]
lea rdx, [rbp - 0x70]
call fcn.140070a80
jmp 0x14006a494
call fcn.14000c980
nop
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x40], xmm0
lea rdi, [rax + 0x33130]
mov rsi, qword [rdi + 0x10]
cmp qword [rdi + 0x18], 8
jb 0x14006a2ab
mov rdi, qword [rdi]
cmp rsi, 8
jae 0x14006a2c4
movups xmm0, xmmword [rdi]
movups xmmword [rsp + 0x30], xmm0
mov qword [rsp + 0x48], 7
jmp 0x14006a307
mov rbx, rsi
or rbx, 7
movabs rax, 0x7ffffffffffffffe
cmp rbx, rax
cmova rbx, rax
lea rdx, [rbx + 1]
lea rcx, [rsp + 0x30]
call fcn.140006990
mov qword [rsp + 0x30], rax
lea r8, [rsi*2 + 2]
mov rdx, rdi
mov rcx, rax
call fcn.14019dbf0
mov qword [rsp + 0x48], rbx
mov qword [rsp + 0x40], rsi
mov ebx, 4
mov dword [rsp + 0x20], ebx
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x60], xmm0
movdqa xmm1, xmmword [0x1401e3030]
movdqu xmmword [rsp + 0x60], xmm1
mov word [rsp + 0x50], r12w
lea r8d, [rbx + 8]
lea rdx, str.functionList
lea rcx, [rsp + 0x50]
call fcn.140006d60
nop
lea r8, [rsp + 0x50]
lea rdx, [rsp + 0x30]
lea rcx, [rbp - 0x50]
call fcn.140027aa0
mov rdx, qword [rbp - 0x38]
cmp rdx, 8
jb 0x14006a39b
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14006a396
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14006a575
call fcn.14017f5e4
movdqa xmm0, xmmword [0x1401e3030]
movdqu xmmword [rbp - 0x40], xmm0
mov word [rbp - 0x50], r12w
mov rdx, qword [rsp + 0x68]
cmp rdx, 8
jb 0x14006a3ef
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14006a3ea
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14006a57b
call fcn.14017f5e4
movdqa xmm0, xmmword [0x1401e3030]
movdqu xmmword [rsp + 0x60], xmm0
mov word [rsp + 0x50], r12w
lea rcx, [rsp + 0x30]
cmp qword [rsp + 0x48], 8
cmovae rcx, qword [rsp + 0x30]
call qword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x14006a437
lea rcx, [r14 + 0x208]
mov r9, r15
lea r8, [rsp + 0x30]
lea rdx, [rsp + 0x30]
call fcn.140070a80
and ebx, 0xfffffffb
mov dword [rsp + 0x20], ebx
mov rdx, qword [rsp + 0x48]
cmp rdx, 8
jb 0x14006a480
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14006a47b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14006a581
call fcn.14017f5e4
movdqa xmm0, xmmword [0x1401e3030]
movdqu xmmword [rsp + 0x40], xmm0
mov word [rsp + 0x30], r12w
mov rdx, qword [rbp - 0x78]
cmp rdx, 8
jb 0x14006a4d5
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14006a4d0
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14006a587
call fcn.14017f5e4
movdqa xmm0, xmmword [0x1401e3030]
movdqu xmmword [rbp - 0x80], xmm0
mov word [rsp + 0x70], r12w
mov rdx, qword [rbp - 0x58]
cmp rdx, 8
jb 0x14006a524
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14006a51f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14006a557
call fcn.14017f5e4
movdqa xmm0, xmmword [0x1401e3030]
movdqu xmmword [rbp - 0x60], xmm0
mov word [rbp - 0x70], r12w
mov rcx, qword [rbp + 0x1e0]
xor rcx, rsp
call fcn.14017f700
add rsp, 0x2f0
pop r15
pop r14
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
call fcn.1401a10ac
nop
call fcn.1401a10ac
nop
call fcn.1401a10ac
nop
call fcn.1401a10ac
nop
call fcn.1401a10ac
nop
call fcn.1401a10ac
nop
call fcn.1401a10ac
nop
call fcn.1401a10ac
nop
call fcn.1401a10ac
int3