Function at 0x140083fa0
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 [0x1402a98a8]
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.14002d200
nop
mov r8, rbx
mov rdx, rdi
lea rcx, [rbp - 0x71]
call fcn.140030020
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.14002e0d0
nop
mov rax, qword [rsp + 0x30]
cmp qword [rsp + 0x28], rax
je 0x1400844f7
call fcn.14000c990
nop
mov qword [rbp - 0x49], rsi
mov qword [rbp - 0x41], rsi
lea rdi, [rax + 0x33138]
mov rsi, qword [rdi + 0x10]
cmp qword [rdi + 0x18], 8
jb 0x14008405e
mov rdi, qword [rdi]
movabs rax, 0x7ffffffffffffffe
cmp rsi, 8
jae 0x14008407f
movups xmm0, xmmword [rdi]
movups xmmword [rbp - 0x59], xmm0
mov qword [rbp - 0x41], 7
jmp 0x1400840b5
mov rbx, rsi
or rbx, 7
cmp rbx, rax
cmova rbx, rax
lea rdx, [rbx + 1]
lea rcx, [rbp - 0x59]
call fcn.1400069a0
mov qword [rbp - 0x59], rax
lea r8, [rsi*2 + 2]
mov rdx, rdi
mov rcx, rax
call fcn.14019f8d0
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 [0x1401e5030]
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 0x1400840e4
mov rdx, r14
lea rcx, [rbp - 0x19]
call fcn.140006d70
nop
lea r8, [rbp - 0x19]
lea rdx, [rbp - 0x59]
lea rcx, [rbp - 0x39]
call fcn.140027b00
mov rdx, qword [rbp - 0x21]
cmp rdx, 8
jb 0x14008414c
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x39]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140084147
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140084599
call fcn.1401812c4
movdqa xmm0, xmmword [0x1401e5030]
movdqu xmmword [rbp - 0x29], xmm0
mov word [rbp - 0x39], si
mov rdx, qword [rbp - 1]
cmp rdx, 8
jb 0x14008419d
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x19]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140084198
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14008459f
call fcn.1401812c4
movdqa xmm0, xmmword [0x1401e5030]
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 0x1400841dc
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, [0x1401e62c8]
lea rcx, [rbp - 0x59]
call fcn.140006aa0
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 0x1400844a0
mov r15, rsi
nop word [rax + rax]
sub rax, rcx
sar rax, 5
cmp rax, r14
jbe 0x1400845c3
add rcx, r15
cmp qword [rcx + 0x18], 8
jb 0x14008423d
mov rcx, qword [rcx]
call qword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x140084480
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 0x14008427c
movups xmm0, xmmword [rdi]
movups xmmword [rbp - 0x39], xmm0
mov qword [rbp - 0x21], 7
jmp 0x1400842bc
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.1400069a0
mov qword [rbp - 0x39], rax
lea r8, [rsi*2 + 2]
mov rdx, rdi
mov rcx, rax
call fcn.14019f8d0
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 0x1400845b7
add rcx, r15
cmp qword [rcx + 0x18], 8
jb 0x1400842e7
mov rcx, qword [rcx]
call qword [sym.imp.SHLWAPI.dll_PathFindFileNameW]
mov r8, 0xffffffffffffffff
inc r8
cmp word [rax + r8*2], 0
jne 0x1400842f4
mov rdx, rax
lea rcx, [rbp - 0x39]
call fcn.140006aa0
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 0x1400845b1
add rcx, r15
cmp qword [rcx + 0x18], 8
jb 0x140084340
mov rcx, qword [rcx]
xor r8d, r8d
call qword [sym.imp.KERNEL32.dll_CopyFileW]
test eax, eax
je 0x14008442e
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 0x140084380
lea rcx, [rbp - 0x19]
call fcn.140006d70
nop
mov rdx, qword [r12 + 8]
cmp qword [r12 + 0x10], rdx
je 0x1400843cf
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 0x1400843dc
lea r8, [rbp - 0x19]
mov rcx, r12
call fcn.140001d70
nop
mov rdx, qword [rbp - 1]
cmp rdx, 8
jb 0x14008441c
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x19]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140084417
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400845a5
call fcn.1401812c4
mov qword [rbp - 9], rsi
mov qword [rbp - 1], 7
mov word [rbp - 0x19], si
jmp 0x140084430
xor esi, esi
mov rdx, qword [rbp - 0x21]
cmp rdx, 8
jb 0x140084470
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x39]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14008446b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400845ab
call fcn.1401812c4
mov qword [rbp - 0x29], rsi
mov qword [rbp - 0x21], 7
mov word [rbp - 0x39], si
inc r14
add r15, 0x20
cmp r14, r13
jae 0x14008449b
mov rax, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x28]
jmp 0x140084220
mov ebx, 3
and ebx, 0xfffffffd
mov dword [rsp + 0x20], ebx
mov rdx, qword [rbp - 0x41]
cmp rdx, 8
jb 0x1400844e7
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x59]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400844e2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400845bd
call fcn.1401812c4
mov qword [rbp - 0x49], rsi
mov qword [rbp - 0x41], 7
mov word [rbp - 0x59], si
mov rbx, qword [rsp + 0x28]
test rbx, rbx
je 0x140084567
mov rdi, qword [rsp + 0x30]
cmp rbx, rdi
je 0x140084526
nop dword [rax + rax]
mov rcx, rbx
call fcn.1400068d0
add rbx, 0x20
cmp rbx, rdi
jne 0x140084510
mov rbx, qword [rsp + 0x28]
mov rdx, qword [rbp - 0x79]
sub rdx, rbx
and rdx, 0xffffffffffffffe0
mov rax, rbx
cmp rdx, 0x1000
jb 0x140084552
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140084593
mov rcx, rbx
call fcn.1401812c4
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x28], xmm0
mov qword [rbp - 0x79], rsi
lea rcx, [rbp - 0x71]
call fcn.14002d530
mov rax, r12
mov rcx, qword [rbp + 7]
xor rcx, rsp
call fcn.1401813e0
add rsp, 0xc8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
call fcn.1401a2d8c
nop
call fcn.1401a2d8c
nop
call fcn.1401a2d8c
nop
call fcn.1401a2d8c
nop
call fcn.1401a2d8c
nop
call fcn.14001cfb0
int3
call fcn.14001cfb0
nop
call fcn.1401a2d8c
nop
call fcn.14001cfb0
int3