Function at 0x140006560
Capabilities:
Copy file

Disassembly:
push rbx
push rdi
sub rsp, 0x8a8
mov rax, qword [0x1400213f8]
xor rax, rsp
mov qword [rsp + 0x880], rax
mov rdi, rcx
xor edx, edx
lea rcx, [rsp + 0x40]
mov r8d, 0x208
call sub.VCRUNTIME140.dll_memset
xor edx, edx
lea rcx, [rsp + 0x670]
mov r8d, 0x208
call sub.VCRUNTIME140.dll_memset
lea rax, [rsp + 0x670]
xor r8d, r8d
lea r9, [rsp + 0x40]
mov qword [rsp + 0x20], rax
xor edx, edx
mov rcx, rdi
call qword [sym.imp.api_ms_win_crt_filesystem_l1_1_0.dll__wsplitpath]
mov rbx, 0xffffffffffffffff
lea rdx, [0x1400227ec]
mov r8, rbx
nop word [rax + rax]
inc r8
cmp word [rdx + r8*2], 0
jne 0x1400065e0
mov rcx, rdi
mov qword [rsp + 0x890], r15
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__wcsnicmp]
test eax, eax
je 0x140006873
lea r15, [0x140022c7c]
mov r8, rbx
nop
inc r8
cmp word [r15 + r8*2], 0
jne 0x140006610
mov rdx, r15
mov rcx, rdi
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__wcsnicmp]
test eax, eax
je 0x140006873
mov qword [rsp + 0x8d8], r12
xor r9d, r9d
mov qword [rsp + 0x8a0], r13
xor r12d, r12d
mov qword [rsp + 0x30], r12
mov r13d, 1
mov dword [rsp + 0x28], 0x80
mov r8d, r13d
mov edx, 0x80000000
mov dword [rsp + 0x20], 3
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CreateFileW]
cmp rax, rbx
je 0x140006861
mov qword [rsp + 0x8c8], rbp
mov rcx, rax
mov qword [rsp + 0x8d0], rsi
mov qword [rsp + 0x898], r14
call qword [sym.imp.KERNEL32.dll_CloseHandle]
lea rcx, [rsp + 0x40]
mov r14d, r13d
call fcn.14000df40
mov rsi, rax
test rax, rax
je 0x140006728
inc rbx
cmp word [r15 + rbx*2], r12w
jne 0x1400066b0
mov r8, rbx
lea rcx, [rax + 0x410]
mov rdx, r15
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__wcsnicmp]
test eax, eax
jne 0x140006728
xor edx, edx
lea rax, [rsp + 0x40]
mov r9d, 0x770
mov qword [rsp + 0x20], rax
lea r8, [0x140018d88]
lea ecx, [rdx + 4]
call fcn.140003f90
cmp eax, 7
je 0x14000677a
lea r9, [rsi + 0x410]
mov qword [rsp + 0x20], rsi
lea r8, str._ls_ls
mov edx, 0x104
lea rcx, [rsp + 0x250]
mov r14d, r12d
call fcn.140002a20
jmp 0x1400067fb
lea rax, [rsp + 0x40]
mov r9, r15
lea r8, str._ls_ls
mov qword [rsp + 0x20], rax
mov edx, 0x104
lea rcx, [rsp + 0x460]
call fcn.140002a20
lea rcx, [rsp + 0x460]
mov word [rsp + 0x668], r12w
call fcn.140006350
test eax, eax
jne 0x1400067c4
lea rdx, [rsp + 0x460]
mov ecx, 0x76e
call fcn.140003f10
mov rbp, qword [rsp + 0x8c8]
mov rsi, qword [rsp + 0x8d0]
mov r14, qword [rsp + 0x898]
mov r12, qword [rsp + 0x8d8]
mov r13, qword [rsp + 0x8a0]
mov r15, qword [rsp + 0x890]
mov rcx, qword [rsp + 0x880]
xor rcx, rsp
call fcn.140016590
add rsp, 0x8a8
pop rdi
pop rbx
ret
lea rax, [0x140022e84]
mov edx, 0x104
mov qword [rsp + 0x28], rax
lea r9, [rsp + 0x460]
lea rax, [rsp + 0x40]
lea r8, str._ls_ls._ls
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0x250]
call fcn.140002a20
mov r8d, r14d
mov word [rsp + 0x458], r12w
lea rdx, [rsp + 0x250]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CopyFileW]
test eax, eax
jne 0x14000684d
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea r9, [rsp + 0x250]
mov r8, rdi
lea rdx, str.Copy_file___ls__to___ls__failed__error___lu_
mov dword [rsp + 0x20], eax
mov ecx, r13d
call fcn.140004430
lea rdx, [rsp + 0x250]
jmp 0x140006770
mov ecx, 0x76f
call fcn.140003f10
call fcn.14000c7f0
jmp 0x14000677a
mov rdx, rdi
mov ecx, 0x772
call fcn.140003f10
jmp 0x140006792
mov rdx, rdi
mov ecx, 0x771
call fcn.140003f10
jmp 0x1400067a2