Function at 0x18000fcd0
Capabilities:
Copy file

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x10]
sub rsp, 0x110
mov rax, qword [0x1801eef68]
xor rax, rsp
mov qword [rbp + 8], rax
mov rax, qword [rbp + 0x70]
mov r14, rdx
mov rdi, qword [rbp + 0x80]
mov r13d, r8d
mov r15, qword [rbp + 0x78]
mov qword [rsp + 0x60], rax
imul eax, r8d, 0x56a
mov qword [rsp + 0x38], r9
mov dword [rsp + 0x58], r8d
mov qword [rsp + 0x68], rcx
mov qword [rsp + 0x48], rdi
mov dword [rsp + 0x30], eax
mov ebx, dword [rsp + 0x30]
cmp r8d, eax
ja 0x18000ffe8
mov eax, dword [rsp + 0x30]
xor r8d, r8d
mov r12d, dword [rsp + 0x30]
movabs rcx, 0x61006e00530065
mov rsi, qword [rsp + 0x48]
mov dword [rsp + 0x40], eax
lea edx, [r8 + 0x72]
lea r10d, [r8 + 0x45]
nop word [rax + rax]
cmp r13d, 0x6580
ja 0x18000ff7d
je 0x18000ff4d
cmp r13d, 0x2220
ja 0x18000fe3e
je 0x18000fe34
mov eax, r13d
sub eax, 0x70
je 0x18000fe0c
sub eax, 0x31
je 0x18000fdff
sub eax, 0x1f
je 0x18000fddb
cmp eax, 0x10
jne 0x18001021e
mov rdx, qword [rdi]
lea r8, [rsp + 0x48]
mov rax, qword [rdx + 0x50]
mov rcx, qword [rax]
mov rax, qword [r9]
sub rax, qword [rdx + 0x20]
mov edx, 0x22
mov qword [rsp + 0x48], rax
call fcn.180087aa0
jmp 0x18000ffea
mov r9d, 0xf9
mov r8, rdi
xor edx, edx
xor ecx, ecx
call fcn.180066890
test eax, eax
jns 0x180010202
mov eax, 0xffffffff
jmp 0x18000ffea
mov eax, dword [r15]
mov qword [rsp + 0x78], rax
jmp 0x18001021e
movsd xmm0, qword [str.multiOCULAR_O_]
movzx eax, word [0x1801e0210]
movsd qword [rbp - 0x30], xmm0
mov word [rbp - 0x28], ax
mov dword [rbp - 0x26], 0x6c0070
mov qword [rbp - 0x22], rcx
jmp 0x18001021e
mov word [rbp - 0x1a], r8w
jmp 0x18001021e
cmp r13d, 0x310e
je 0x18000febc
cmp r13d, 0x3a80
je 0x18000fe99
cmp r13d, 0x43d0
je 0x18000fe6f
cmp r13d, 0x617b
jne 0x18001021e
mov eax, dword [rsp + 0x40]
jmp 0x18000ffea
mov r8d, 1
lea rdx, [0x1801e0096]
lea rcx, [rbp - 0x30]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_wcsncat]
movabs rax, 0x74006f00680073
mov qword [rbp - 0x18], rax
jmp 0x180010202
cmp word [rdi + 0x14], 3
mov r12d, r8d
jne 0x180010236
mov rsi, qword [rdi + 8]
test rsi, rsi
jne 0x18001021e
lea eax, [rsi + 6]
jmp 0x18001023b
cmp qword [rdi + 0x138], 0
jne 0x18000fed1
cmp qword [rdi + 8], 0
jne 0x180010256
mov eax, dword [r15]
lea r8, [rsp + 0x40]
mov dword [rsp + 0x40], eax
xor r9d, r9d
mov eax, dword [r14]
mov edx, ILFree
mov dword [rsp + 0x50], eax
mov rcx, rdi
lea rax, [rsp + 0x50]
mov qword [rsp + 0x20], rax
call fcn.180029aa0
mov qword [rsp + 0x70], rax
mov rdi, rax
test rax, rax
je 0x18000fdf5
mov rax, qword [rsp + 0x38]
lea rdx, [rbp - 0x80]
movaps xmm0, xmmword [rsp + 0x70]
lea rcx, [rbp - 0x70]
mov r8, qword [rsp + 0x60]
movdqa xmmword [rbp - 0x80], xmm0
movups xmm1, xmmword [rax]
movaps xmmword [rbp - 0x70], xmm1
call qword [rsp + 0x68]
mov rcx, rdi
mov dword [rsp + 0x40], eax
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov rdi, qword [rsp + 0x48]
jmp 0x180010202
mov word [rbp - 0x10], r8w
lea rdx, [0x1801e006a]
mov r8d, 5
lea rcx, [rbp - 0x10]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_wcsncpy]
xor r8d, r8d
mov dword [rbp - 6], 0x72006f
mov word [rbp - 2], r8w
jmp 0x180010205
cmp r13d, 0xca90
ja 0x18001018d
je 0x180010168
cmp r13d, 0x7440
je 0x180010153
cmp r13d, 0x8730
je 0x180010112
cmp r13d, 0xa8e0
je 0x1800100ef
cmp r13d, 0xae00
jne 0x18001021e
mov r11d, 0x10c
nop word [rax + rax]
mov eax, r11d
sub eax, 0x10c
je 0x180010019
sub eax, 1
je 0x180010011
cmp eax, 1
jne 0x1800100da
mov eax, ebx
mov rcx, qword [rbp + 8]
xor rcx, rsp
call fcn.1800d7250
mov rbx, qword [rsp + 0x160]
add rsp, 0x110
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov ebx, r12d
jmp 0x1800100da
mov eax, dword [rdi + 0x10]
add rax, rsi
inc rsi
nop dword [rax]
nop word [rax + rax]
movzx ecx, byte [rax - 1]
mov r10, rax
dec rax
cmp rax, rsi
jbe 0x180010043
test cl, cl
je 0x180010030
test cl, cl
mov byte [r9], 0
movzx edx, r8w
mov r12d, r8d
cmove r10, rax
mov r8, r9
cmp rsi, r10
jae 0x1800100d7
mov r12d, r10d
sub r12d, esi
nop dword [rax]
nop word [rax + rax]
mov r9d, ILFree
mov eax, r9d
sub eax, 0x93
je 0x1800100bb
sub eax, 1
je 0x1800100aa
sub eax, 1
je 0x18001009e
cmp eax, 1
jne 0x1800100be
movzx edx, byte [rsi]
mov ecx, dword [r14]
shl dx, 8
shr dx, cl
jmp 0x1800100be
movzx eax, dx
shr ax, 8
or byte [r8], al
jmp 0x1800100be
cmp dword [r15], 0
lea rax, [r8 + 1]
cmove rax, r8
mov r8, rax
jmp 0x1800100be
mov byte [r8], dl
dec r9d
cmp r9d, 0x92
ja 0x180010076
inc rsi
cmp rsi, r10
jb 0x180010070
mov r9, qword [rsp + 0x38]
xor r8d, r8d
inc r11d
cmp r11d, 0x10f
jb 0x18000ffd0
jmp 0x1800101a8
mov r8d, 2
mov dword [rbp - 0x52], 0x72
lea rdx, [0x1801e00ca]
lea rcx, [rbp - 0x50]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_wcsncpy]
jmp 0x180010202
mov eax, dword [0x1801e0144]
lea rdx, [0x1801e017a]
mov dword [rbp - 2], eax
lea rcx, [rbp - 0x60]
movzx eax, word [0x1801e0148]
mov word [rbp + 4], r8w
mov word [rbp - 0x60], r8w
mov r8d, 5
mov word [rbp + 2], ax
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_wcsncat]
mov dword [rbp - 0x56], 0x500067
jmp 0x180010202
cmp word [rdi + 0x18], 0
mov eax, r8d
jl 0x180010160
movzx eax, byte [rsi]
mov dword [r14], eax
jmp 0x18001021e
mov word [rbp - 0x4c], r8w
lea rdx, [0x1801e0246]
mov r8d, 5
lea rcx, [rbp - 0x4c]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_wcsncpy]
mov dword [rbp - 0x42], 0x50
jmp 0x180010202
cmp r13d, 0xec40
je 0x1800101dd
cmp r13d, 0x10df0
je 0x1800101ba
cmp r13d, 0x12fa0
jne 0x18001021e
mov r8, rdi
mov edx, 0x8c
mov rcx, r9
call fcn.180011630
jmp 0x180010202
mov dword [rsp + 0x28], 1
lea rdx, [rbp - 0x30]
mov qword [rsp + 0x20], r8
lea rcx, [rbp - 0x60]
xor r8d, r8d
xor r9d, r9d
call qword [sym.imp.KERNEL32.dll_CopyFileExW]
jmp 0x180010202
mov r8d, 2
mov dword [rbp - 0x40], 0x640061
lea rdx, [0x1801e029e]
mov dword [rbp - 0x3c], PathYetAnotherMakeUniqueName
lea rcx, [rbp - 0x60]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_wcsncat]
xor r8d, r8d
mov r9, qword [rsp + 0x38]
mov r10d, 0x45
movabs rcx, 0x61006e00530065
lea edx, [r10 + 0x2d]
imul eax, dword [rsp + 0x58], 0x4d
add r13d, eax
cmp r13d, dword [rsp + 0x30]
jbe 0x18000fd70
jmp 0x18000ffe8
mov eax, ILRemoveLastID
lea r8, [rsp + 0x30]
mov dword [rsp + 0x30], eax
mov rdx, rdi
mov ecx, 0xc0
call fcn.180017ee0
jmp 0x18000ffea
mov edx, dword [r15]
xor r8d, r8d
mov rax, qword [rdi + 0x130]
mov rcx, rdi
add edx, dword [r14]
call qword [rax + 0x18]
test eax, eax
jne 0x18000fdf5
mov eax, dword [r14]
lea rdx, [rbp - 0x70]
add rax, qword [rdi + 8]
lea rcx, [rbp - 0x80]
mov r8, qword [rsp + 0x60]
mov qword [rsp + 0x70], rax
mov rax, qword [rsp + 0x38]
movaps xmm0, xmmword [rsp + 0x70]
movdqa xmmword [rbp - 0x70], xmm0
movups xmm1, xmmword [rax]
movaps xmmword [rbp - 0x80], xmm1
call qword [rsp + 0x68]
jmp 0x18000ffea