Function at 0x14000ba50
Capabilities:
Copy file

Disassembly:
mov rax, rsp
push rbp
push rdi
push r14
lea rbp, [rax - 0x58]
sub rsp, 0x140
mov qword [rsp + 0x38], 0xfffffffffffffffe
mov qword [rax + 0x18], rbx
mov qword [rax + 0x20], rsi
movaps xmmword [rax - 0x28], xmm6
movaps xmmword [rax - 0x38], xmm7
mov rax, qword [0x14009d080]
xor rax, rsp
mov qword [rbp + 0x10], rax
mov rsi, rdx
mov rbx, rcx
xor r14d, r14d
mov edi, r14d
mov dword [rsp + 0x20], r14d
lea rax, [rbp - 0x60]
mov qword [rsp + 0x28], rax
mov qword [rbp - 0x48], r14
mov qword [rbp - 0x40], 0xf
mov byte [rbp - 0x58], dil
mov qword [rbp - 0x38], r14
mov qword [rbp - 0x30], r14
mov qword [rbp - 0x28], r14
mov qword [rbp - 0x20], r14
mov qword [rbp - 0x18], r14
lea ecx, [r14 + 0x10]
call fcn.14002d4d4
mov qword [rbp - 0x38], rax
xorps xmm0, xmm0
movups xmmword [rax], xmm0
lea rcx, [rbp - 0x38]
mov rax, qword [rbp - 0x38]
mov qword [rax], rcx
mov rdx, rbx
lea rcx, [rbp - 0x10]
call fcn.1400018c0
nop
lea rdx, [rbp - 0x10]
cmp qword [rbp + 8], 0x10
cmovae rdx, qword [rbp - 0x10]
lea rcx, [rbp - 0x60]
call fcn.14002a190
movzx ebx, al
mov r9, qword [rbp - 0x18]
test r9, r9
je 0x14000bb99
nop dword [rax]
mov r8, qword [rbp - 0x20]
dec r8
mov rcx, r14
mov rdx, qword [rbp - 0x38]
test rdx, rdx
je 0x14000bb3e
mov rdx, qword [rdx]
test rdx, rdx
je 0x14000bb3e
mov rcx, qword [rdx]
add r8, r9
mov rax, r14
test rcx, rcx
je 0x14000bb54
mov rdx, qword [rcx]
test rdx, rdx
je 0x14000bb54
mov rax, qword [rdx]
test rax, rax
mov rdx, r14
je 0x14000bb5f
mov rdx, qword [rax]
mov rcx, qword [rdx + 0x10]
dec rcx
mov rax, r8
shr rax, 1
and rcx, rax
and r8d, 1
mov rax, qword [rdx + 8]
mov rcx, qword [rax + rcx*8]
mov rax, qword [rcx + r8*8]
mov rcx, qword [rax]
test byte [rcx], 0x10
je 0x14000bb99
lea rcx, [rbp - 0x60]
call fcn.14002a490
mov r9, qword [rbp - 0x18]
test r9, r9
jne 0x14000bb20
test bl, bl
je 0x14000bf76
mov qword [rsp + 0x50], r14
mov eax, 0xf
mov qword [rsp + 0x58], rax
mov byte [rsp + 0x40], 0
mov qword [rbp - 0x70], r14
mov ecx, eax
mov qword [rbp - 0x68], rax
mov byte [rbp - 0x80], 0
test r9, r9
je 0x14000bedb
nop dword [rax]
lea rdx, [rbp - 0x58]
lea rcx, [rsp + 0x60]
call fcn.1400018c0
mov rbx, rax
or edi, 1
mov dword [rsp + 0x20], edi
mov r8d, 1
lea rdx, [0x140085214]
lea rcx, [rsp + 0x60]
call fcn.140001500
mov rdx, qword [rbp - 0x18]
mov r8, qword [rbp - 0x20]
dec r8
mov rcx, r14
mov rax, qword [rbp - 0x38]
test rax, rax
je 0x14000bc21
mov rax, qword [rax]
test rax, rax
je 0x14000bc21
mov rcx, qword [rax]
add r8, rdx
mov rax, r14
test rcx, rcx
je 0x14000bc37
mov rdx, qword [rcx]
test rdx, rdx
je 0x14000bc37
mov rax, qword [rdx]
test rax, rax
mov rdx, r14
je 0x14000bc42
mov rdx, qword [rax]
mov rcx, qword [rdx + 0x10]
dec rcx
mov rax, r8
shr rax, 1
and rcx, rax
and r8d, 1
mov rax, qword [rdx + 8]
mov rcx, qword [rax + rcx*8]
mov rax, qword [rcx + r8*8]
mov rdx, qword [rax]
add rdx, 0x2c
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rdx + r8], 0
jne 0x14000bc70
lea rcx, [rsp + 0x60]
call fcn.140001500
lea rax, [rsp + 0x40]
cmp rax, rbx
je 0x14000bcb8
lea rcx, [rsp + 0x40]
call fcn.140001130
movups xmm0, xmmword [rbx]
movups xmmword [rsp + 0x40], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rsp + 0x50], xmm1
mov qword [rbx + 0x10], r14
mov qword [rbx + 0x18], 0xf
mov byte [rbx], 0
and edi, 0xfffffffe
mov rdx, qword [rsp + 0x78]
cmp rdx, 0x10
jb 0x14000bcf8
inc rdx
mov rcx, qword [rsp + 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000bcf3
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000bffe
call fcn.14002d510
lea rdx, [0x14009dca8]
lea rcx, [rsp + 0x40]
call fcn.140010f80
mov r8, rax
cmp rax, 0xffffffffffffffff
je 0x14000bd70
lea rdx, [rax + 1]
mov rcx, qword [rsp + 0x50]
cmp rdx, rcx
jae 0x14000bd70
mov qword [rsp + 0x70], r14
mov qword [rsp + 0x78], 0xf
mov byte [rsp + 0x60], 0
ja 0x14000c004
mov rax, rcx
sub rax, r8
lea r8, [rax - 1]
sub rcx, rdx
cmp rcx, r8
cmovb r8, rcx
lea rax, [rsp + 0x40]
cmp qword [rsp + 0x58], 0x10
cmovae rax, qword [rsp + 0x40]
add rdx, rax
lea rcx, [rsp + 0x60]
call fcn.1400013b0
or edi, 6
jmp 0x14000bd86
mov qword [rsp + 0x70], r14
mov qword [rsp + 0x78], 0xf
mov byte [rsp + 0x60], 0
or edi, 2
mov r8, rsi
cmp qword [rsi + 0x18], 0x10
jb 0x14000bd93
mov r8, qword [rsi]
mov r9, qword [rsi + 0x10]
xor edx, edx
lea rcx, [rsp + 0x60]
call fcn.140001d70
movups xmm6, xmmword [rax]
movups xmm7, xmmword [rax + 0x10]
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
or edi, 8
mov dword [rsp + 0x20], edi
lea rcx, [rbp - 0x80]
call fcn.140001130
movups xmmword [rbp - 0x80], xmm6
movups xmmword [rbp - 0x70], xmm7
mov rdx, qword [rsp + 0x78]
cmp rdx, 0x10
jb 0x14000be0e
inc rdx
mov rcx, qword [rsp + 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000be09
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000c00a
call fcn.14002d510
lea rdx, [rbp - 0x80]
cmp qword [rbp - 0x68], 0x10
cmovae rdx, qword [rbp - 0x80]
lea rcx, [rsp + 0x40]
cmp qword [rsp + 0x58], 0x10
cmovae rcx, qword [rsp + 0x40]
xor r8d, r8d
call qword [sym.imp.KERNEL32.dll_CopyFileA]
lea rcx, [rbp - 0x60]
call fcn.14002a490
mov r8, qword [rbp - 0x18]
test r8, r8
je 0x14000bed2
nop dword [rax]
mov r9, qword [rbp - 0x20]
dec r9
mov rcx, r14
mov rax, qword [rbp - 0x38]
test rax, rax
je 0x14000be6e
mov rax, qword [rax]
test rax, rax
je 0x14000be6e
mov rcx, qword [rax]
add r9, r8
mov rax, r14
test rcx, rcx
je 0x14000be84
mov rdx, qword [rcx]
test rdx, rdx
je 0x14000be84
mov rax, qword [rdx]
test rax, rax
mov rdx, r14
je 0x14000be8f
mov rdx, qword [rax]
mov rcx, qword [rdx + 0x10]
dec rcx
mov rax, r9
shr rax, 1
and rcx, rax
and r9d, 1
mov rax, qword [rdx + 8]
mov rcx, qword [rax + rcx*8]
mov rax, qword [rcx + r9*8]
mov rcx, qword [rax]
test byte [rcx], 0x10
je 0x14000bec9
lea rcx, [rbp - 0x60]
call fcn.14002a490
mov r8, qword [rbp - 0x18]
test r8, r8
jne 0x14000be50
test r8, r8
jne 0x14000bbd0
mov rax, qword [rsp + 0x58]
mov rcx, qword [rbp - 0x68]
mov bl, 1
cmp rcx, 0x10
jb 0x14000bf1a
lea rdx, [rcx + 1]
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000bf10
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000bff8
call fcn.14002d510
mov rax, qword [rsp + 0x58]
mov qword [rbp - 0x70], r14
mov qword [rbp - 0x68], 0xf
mov byte [rbp - 0x80], 0
cmp rax, 0x10
jb 0x14000bf63
lea rdx, [rax + 1]
mov rcx, qword [rsp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000bf5e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000c010
call fcn.14002d510
mov qword [rsp + 0x50], r14
mov qword [rsp + 0x58], 0xf
mov byte [rsp + 0x40], 0
mov rdx, qword [rbp + 8]
cmp rdx, 0x10
jb 0x14000bfae
inc rdx
mov rcx, qword [rbp - 0x10]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000bfa8
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000bff2
call fcn.14002d510
nop
lea rcx, [rbp - 0x60]
call fcn.14002a380
lea rcx, [rbp - 0x60]
call fcn.14002a060
nop
movzx eax, bl
mov rcx, qword [rbp + 0x10]
xor rcx, rsp
call fcn.14002d4b0
lea r11, [rsp + 0x140]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
mov rsp, r11
pop r14
pop rdi
pop rbp
ret
call fcn.14004ecdc
nop
call fcn.14004ecdc
nop
call fcn.14004ecdc
int3
call fcn.1400019a0
int3
call fcn.14004ecdc
nop
call fcn.14004ecdc
int3