Function at 0x140083010
Capabilities:
Check if file exists
Copy file
Create directory

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x17]
sub rsp, 0xc8
mov qword [rbp - 0x69], 0xfffffffffffffffe
mov rax, qword [0x1402a6808]
xor rax, rsp
mov qword [rbp + 7], rax
mov rdi, r9
mov r14, r8
mov r12, rdx
mov qword [rbp - 0x61], rdx
mov rbx, qword [rbp + 0x7f]
xor esi, esi
mov dword [rsp + 0x20], esi
mov rax, qword [rcx]
mov rdx, qword [rax + 0x18]
lea rcx, [rbp - 0x71]
call fcn.14002d260
nop
mov r8, rbx
mov rdx, rdi
lea rcx, [rbp - 0x71]
call fcn.14002ff00
mov qword [r12], rsi
mov qword [r12 + 8], rsi
mov qword [r12 + 0x10], rsi
mov dword [rsp + 0x20], 1
lea rdx, [rsp + 0x28]
lea rcx, [rbp - 0x71]
call fcn.14002e0a0
nop
mov rax, qword [rsp + 0x30]
cmp qword [rsp + 0x28], rax
je 0x140083567
call fcn.14000c980
nop
mov qword [rbp - 0x49], rsi
mov qword [rbp - 0x41], rsi
lea rdi, [rax + 0x33130]
mov rsi, qword [rdi + 0x10]
cmp qword [rdi + 0x18], 8
jb 0x1400830ce
mov rdi, qword [rdi]
movabs rax, 0x7ffffffffffffffe
cmp rsi, 8
jae 0x1400830ef
movups xmm0, xmmword [rdi]
movups xmmword [rbp - 0x59], xmm0
mov qword [rbp - 0x41], 7
jmp 0x140083125
mov rbx, rsi
or rbx, 7
cmp rbx, rax
cmova rbx, rax
lea rdx, [rbx + 1]
lea rcx, [rbp - 0x59]
call fcn.140006990
mov qword [rbp - 0x59], rax
lea r8, [rsi*2 + 2]
mov rdx, rdi
mov rcx, rax
call fcn.14019dbf0
mov qword [rbp - 0x41], rbx
mov qword [rbp - 0x49], rsi
mov ebx, 3
mov dword [rsp + 0x20], ebx
xorps xmm0, xmm0
movdqu xmmword [rbp - 9], xmm0
movdqa xmm1, xmmword [0x1401e3030]
movdqu xmmword [rbp - 9], xmm1
xor esi, esi
mov word [rbp - 0x19], si
mov r8, 0xffffffffffffffff
inc r8
cmp word [r14 + r8*2], si
jne 0x140083154
mov rdx, r14
lea rcx, [rbp - 0x19]
call fcn.140006d60
nop
lea r8, [rbp - 0x19]
lea rdx, [rbp - 0x59]
lea rcx, [rbp - 0x39]
call fcn.140027aa0
mov rdx, qword [rbp - 0x21]
cmp rdx, 8
jb 0x1400831bc
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x39]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400831b7
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140083609
call fcn.14017f5e4
movdqa xmm0, xmmword [0x1401e3030]
movdqu xmmword [rbp - 0x29], xmm0
mov word [rbp - 0x39], si
mov rdx, qword [rbp - 1]
cmp rdx, 8
jb 0x14008320d
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x19]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140083208
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14008360f
call fcn.14017f5e4
movdqa xmm0, xmmword [0x1401e3030]
movdqu xmmword [rbp - 9], xmm0
mov word [rbp - 0x19], si
lea rcx, [rbp - 0x59]
cmp qword [rbp - 0x41], 8
cmovae rcx, qword [rbp - 0x59]
call qword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
jne 0x14008324c
lea rcx, [rbp - 0x59]
cmp qword [rbp - 0x41], 8
cmovae rcx, qword [rbp - 0x59]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_CreateDirectoryW]
mov r8d, 1
lea rdx, [0x1401e42c8]
lea rcx, [rbp - 0x59]
call fcn.140006a90
mov rax, qword [rsp + 0x30]
mov r13, rax
mov rcx, qword [rsp + 0x28]
sub r13, rcx
sar r13, 5
mov r14, rsi
test r13, r13
je 0x140083510
mov r15, rsi
nop word [rax + rax]
sub rax, rcx
sar rax, 5
cmp rax, r14
jbe 0x140083633
add rcx, r15
cmp qword [rcx + 0x18], 8
jb 0x1400832ad
mov rcx, qword [rcx]
call qword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x1400834f0
mov qword [rbp - 0x29], rsi
mov qword [rbp - 0x21], rsi
mov rsi, qword [rbp - 0x49]
lea rdi, [rbp - 0x59]
cmp qword [rbp - 0x41], 8
cmovae rdi, qword [rbp - 0x59]
cmp rsi, 8
jae 0x1400832ec
movups xmm0, xmmword [rdi]
movups xmmword [rbp - 0x39], xmm0
mov qword [rbp - 0x21], 7
jmp 0x14008332c
mov rbx, rsi
or rbx, 7
movabs rax, 0x7ffffffffffffffe
cmp rbx, rax
cmova rbx, rax
lea rdx, [rbx + 1]
lea rcx, [rbp - 0x39]
call fcn.140006990
mov qword [rbp - 0x39], rax
lea r8, [rsi*2 + 2]
mov rdx, rdi
mov rcx, rax
call fcn.14019dbf0
mov qword [rbp - 0x21], rbx
mov qword [rbp - 0x29], rsi
mov rax, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x28]
sub rax, rcx
sar rax, 5
cmp rax, r14
jbe 0x140083627
add rcx, r15
cmp qword [rcx + 0x18], 8
jb 0x140083357
mov rcx, qword [rcx]
call qword [sym.imp.SHLWAPI.dll_PathFindFileNameW]
mov r8, 0xffffffffffffffff
inc r8
cmp word [rax + r8*2], 0
jne 0x140083364
mov rdx, rax
lea rcx, [rbp - 0x39]
call fcn.140006a90
lea rdx, [rbp - 0x39]
cmp qword [rbp - 0x21], 8
cmovae rdx, qword [rbp - 0x39]
mov rax, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x28]
sub rax, rcx
sar rax, 5
cmp rax, r14
jbe 0x140083621
add rcx, r15
cmp qword [rcx + 0x18], 8
jb 0x1400833b0
mov rcx, qword [rcx]
xor r8d, r8d
call qword [sym.imp.KERNEL32.dll_CopyFileW]
test eax, eax
je 0x14008349e
lea rdx, [rbp - 0x39]
cmp qword [rbp - 0x21], 8
cmovae rdx, qword [rbp - 0x39]
xor esi, esi
mov qword [rbp - 9], rsi
mov qword [rbp - 1], rsi
mov qword [rbp - 9], rsi
mov qword [rbp - 1], 7
mov word [rbp - 0x19], si
mov r8, 0xffffffffffffffff
inc r8
cmp word [rdx + r8*2], si
jne 0x1400833f0
lea rcx, [rbp - 0x19]
call fcn.140006d60
nop
mov rdx, qword [r12 + 8]
cmp qword [r12 + 0x10], rdx
je 0x14008343f
mov qword [rdx + 0x10], rsi
mov qword [rdx + 0x18], rsi
movups xmm0, xmmword [rbp - 0x19]
movups xmmword [rdx], xmm0
movups xmm1, xmmword [rbp - 9]
movups xmmword [rdx + 0x10], xmm1
mov qword [rbp - 9], rsi
mov qword [rbp - 1], 7
mov word [rbp - 0x19], si
add qword [r12 + 8], 0x20
jmp 0x14008344c
lea r8, [rbp - 0x19]
mov rcx, r12
call fcn.140001d60
nop
mov rdx, qword [rbp - 1]
cmp rdx, 8
jb 0x14008348c
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x19]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140083487
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140083615
call fcn.14017f5e4
mov qword [rbp - 9], rsi
mov qword [rbp - 1], 7
mov word [rbp - 0x19], si
jmp 0x1400834a0
xor esi, esi
mov rdx, qword [rbp - 0x21]
cmp rdx, 8
jb 0x1400834e0
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x39]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400834db
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14008361b
call fcn.14017f5e4
mov qword [rbp - 0x29], rsi
mov qword [rbp - 0x21], 7
mov word [rbp - 0x39], si
inc r14
add r15, 0x20
cmp r14, r13
jae 0x14008350b
mov rax, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x28]
jmp 0x140083290
mov ebx, 3
and ebx, 0xfffffffd
mov dword [rsp + 0x20], ebx
mov rdx, qword [rbp - 0x41]
cmp rdx, 8
jb 0x140083557
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x59]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140083552
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14008362d
call fcn.14017f5e4
mov qword [rbp - 0x49], rsi
mov qword [rbp - 0x41], 7
mov word [rbp - 0x59], si
mov rbx, qword [rsp + 0x28]
test rbx, rbx
je 0x1400835d7
mov rdi, qword [rsp + 0x30]
cmp rbx, rdi
je 0x140083596
nop dword [rax + rax]
mov rcx, rbx
call fcn.1400068c0
add rbx, 0x20
cmp rbx, rdi
jne 0x140083580
mov rbx, qword [rsp + 0x28]
mov rdx, qword [rbp - 0x79]
sub rdx, rbx
and rdx, 0xffffffffffffffe0
mov rax, rbx
cmp rdx, 0x1000
jb 0x1400835c2
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140083603
mov rcx, rbx
call fcn.14017f5e4
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x28], xmm0
mov qword [rbp - 0x79], rsi
lea rcx, [rbp - 0x71]
call fcn.14002d4d0
mov rax, r12
mov rcx, qword [rbp + 7]
xor rcx, rsp
call fcn.14017f700
add rsp, 0xc8
pop r15
pop r14
pop r13
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.14001cf70
int3
call fcn.14001cf70
nop
call fcn.1401a10ac
nop
call fcn.14001cf70
int3