Function at 0x1401b2080
Capabilities:
Move file

Disassembly:
mov qword [rsp + 0x18], r8
mov dword [rsp + 0x10], edx
mov qword [rsp + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
mov rbp, rsp
sub rsp, 0x68
mov r13, r8
mov r12, rcx
xor r15d, r15d
mov r10, qword [rcx + 0x10]
mov r9, rcx
mov r11, qword [rcx + 0x18]
cmp r11, 8
jb 0x1401b20be
mov r9, qword [rcx]
test r10, r10
je 0x1401b266b
lea rcx, [r10 - 1]
mov rax, 0xffffffffffffffff
cmp rcx, rax
cmovb rax, rcx
lea rcx, [r9 + rax*2]
cmp word [rcx], 0x5c
je 0x1401b20f6
cmp rcx, r9
je 0x1401b266b
sub rcx, 2
cmp word [rcx], 0x5c
jne 0x1401b20e3
sub rcx, r9
sar rcx, 1
cmp rcx, 0xffffffffffffffff
je 0x1401b266b
xorps xmm0, xmm0
movups xmmword [rbp - 0x30], xmm0
mov qword [rbp - 0x20], r15
mov qword [rbp - 0x18], r15
lea rbx, [rcx + 1]
cmp r10, rbx
cmovb rbx, r10
mov r14, r12
cmp r11, 8
jb 0x1401b212d
mov r14, qword [r12]
movabs rsi, 0x7ffffffffffffffe
cmp rbx, rsi
ja 0x1401b2687
mov qword [rbp - 0x18], 7
cmp rbx, 8
jae 0x1401b216c
mov qword [rbp - 0x20], rbx
add rbx, rbx
mov r8, rbx
mov rdx, r14
lea rcx, [rbp - 0x30]
call fcn.1401e82d0
mov word [rbp + rbx - 0x30], r15w
jmp 0x1401b21cf
mov rsi, rbx
or rsi, 7
movabs rdx, 0x7ffffffffffffffe
cmp rsi, rdx
jbe 0x1401b2187
mov rsi, rdx
jmp 0x1401b2193
mov eax, 0xa
cmp rsi, rax
cmovb rsi, rax
lea rdx, [rsi + 1]
lea rcx, [rbp - 0x30]
call fcn.140178570
mov rdi, rax
mov qword [rbp - 0x30], rax
mov qword [rbp - 0x20], rbx
mov qword [rbp - 0x18], rsi
add rbx, rbx
mov r8, rbx
mov rdx, r14
mov rcx, rax
call fcn.1401e82d0
mov word [rbx + rdi], r15w
movabs rsi, 0x7ffffffffffffffe
call fcn.1401fe390
mov ebx, eax
lea rax, [rbp - 0x30]
btr eax, 0x1f
add ebx, eax
mov qword [rbp - 0x38], r15
lea rcx, [rbp - 0x38]
call qword [0x1405e8b98]
add ebx, dword [rbp - 0x38]
mov ecx, ebx
call fcn.1401fe378
mov dword [rbp + 0x60], r15d
cmp dword [rbp + 0x50], 0
je 0x1401b2582
call fcn.1401fe390
mov ecx, eax
mov eax, 0x55555556
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
sub ecx, eax
jne 0x1401b234c
call fcn.1401fe390
mov r12d, eax
mov eax, 0x66666667
imul r12d
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
add eax, eax
sub r12d, eax
add r12w, 0x30
mov r14, qword [rbp - 0x20]
mov rsi, qword [rbp - 0x18]
cmp r14, rsi
jae 0x1401b2263
cmp rsi, 8
jmp 0x1401b2498
movabs rdx, 0x7ffffffffffffffe
mov rax, rdx
sub rax, r14
cmp rax, 1
jb 0x1401b2693
lea r13, [r14 + 1]
mov rbx, r13
or rbx, 7
cmp rbx, rdx
jbe 0x1401b2292
mov rbx, rdx
jmp 0x1401b22b3
mov rcx, rsi
shr rcx, 1
mov rax, rdx
sub rax, rcx
cmp rsi, rax
jbe 0x1401b22a8
mov rbx, rdx
jmp 0x1401b22b3
lea rax, [rcx + rsi]
cmp rbx, rax
cmovb rbx, rax
lea rdx, [rbx + 1]
lea rcx, [rbp - 0x30]
call fcn.140178570
mov rdi, rax
mov qword [rbp - 0x20], r13
mov qword [rbp - 0x18], rbx
add r14, r14
mov r8, r14
mov rcx, rax
cmp rsi, 8
jb 0x1401b232f
mov rbx, qword [rbp - 0x30]
mov rdx, rbx
call fcn.1401e82d0
mov word [r14 + rdi], r12w
mov word [r14 + rdi + 2], r15w
lea rdx, [rsi*2 + 2]
cmp rdx, 0x1000
jb 0x1401b231e
add rdx, 0x27
mov rcx, qword [rbx - 8]
sub rbx, rcx
lea rax, [rbx - 8]
cmp rax, 0x1f
ja 0x1401b268d
mov rbx, rcx
mov rcx, rbx
call fcn.140194698
mov qword [rbp - 0x30], rdi
jmp 0x1401b255a
lea rdx, [rbp - 0x30]
call fcn.1401e82d0
mov word [r14 + rdi], r12w
mov word [r14 + rdi + 2], r15w
mov qword [rbp - 0x30], rdi
jmp 0x1401b255a
cmp ecx, 1
jne 0x1401b2462
call fcn.1401fe390
mov r12d, eax
mov eax, 0x4ec4ec4f
imul r12d
sar edx, 3
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x1a
sub r12d, eax
add r12w, 0x41
mov r14, qword [rbp - 0x20]
mov rdi, qword [rbp - 0x18]
cmp r14, rdi
jb 0x1401b2494
mov rax, rsi
sub rax, r14
cmp rax, 1
jb 0x1401b2693
lea r13, [r14 + 1]
mov rbx, r13
or rbx, 7
cmp rbx, rsi
jbe 0x1401b23b0
mov rbx, rsi
jmp 0x1401b23d1
mov rcx, rdi
shr rcx, 1
mov rax, rsi
sub rax, rcx
cmp rdi, rax
jbe 0x1401b23c6
mov rbx, rsi
jmp 0x1401b23d1
lea rax, [rcx + rdi]
cmp rbx, rax
cmovb rbx, rax
lea rdx, [rbx + 1]
lea rcx, [rbp - 0x30]
call fcn.140178570
mov rsi, rax
mov qword [rbp - 0x20], r13
mov qword [rbp - 0x18], rbx
add r14, r14
mov r8, r14
mov rcx, rax
cmp rdi, 8
jb 0x1401b2449
mov rbx, qword [rbp - 0x30]
mov rdx, rbx
call fcn.1401e82d0
mov word [r14 + rsi], r12w
mov word [r14 + rsi + 2], r15w
lea rdx, [rdi*2 + 2]
cmp rdx, 0x1000
jb 0x1401b243c
add rdx, 0x27
mov rcx, qword [rbx - 8]
sub rbx, rcx
lea rax, [rbx - 8]
cmp rax, 0x1f
ja 0x1401b268d
mov rbx, rcx
mov rcx, rbx
call fcn.140194698
jmp 0x1401b2556
lea rdx, [rbp - 0x30]
call fcn.1401e82d0
mov word [r14 + rsi], r12w
mov word [r14 + rsi + 2], r15w
jmp 0x1401b2556
call fcn.1401fe390
mov r12d, eax
mov eax, 0x4ec4ec4f
imul r12d
sar edx, 3
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x1a
sub r12d, eax
add r12w, 0x61
mov r14, qword [rbp - 0x20]
mov rdi, qword [rbp - 0x18]
cmp r14, rdi
jae 0x1401b24b9
cmp rdi, 8
lea rax, [r14 + 1]
mov qword [rbp - 0x20], rax
lea rax, [rbp - 0x30]
cmovae rax, qword [rbp - 0x30]
mov word [rax + r14*2], r12w
mov word [rax + r14*2 + 2], r15w
jmp 0x1401b255a
mov rax, rsi
sub rax, r14
cmp rax, 1
jb 0x1401b2693
lea r13, [r14 + 1]
mov rbx, r13
or rbx, 7
cmp rbx, rsi
jbe 0x1401b24de
mov rbx, rsi
jmp 0x1401b24ff
mov rcx, rdi
shr rcx, 1
mov rax, rsi
sub rax, rcx
cmp rdi, rax
jbe 0x1401b24f4
mov rbx, rsi
jmp 0x1401b24ff
lea rax, [rdi + rcx]
cmp rbx, rax
cmovb rbx, rax
lea rdx, [rbx + 1]
lea rcx, [rbp - 0x30]
call fcn.140178570
mov rsi, rax
mov qword [rbp - 0x20], r13
mov qword [rbp - 0x18], rbx
add r14, r14
mov r8, r14
mov rcx, rax
cmp rdi, 8
jb 0x1401b2542
mov rbx, qword [rbp - 0x30]
mov rdx, rbx
call fcn.1401e82d0
mov word [rsi + r14], r12w
mov word [rsi + r14 + 2], r15w
jmp 0x1401b240f
lea rdx, [rbp - 0x30]
call fcn.1401e82d0
mov word [rsi + r14], r12w
mov word [rsi + r14 + 2], r15w
mov qword [rbp - 0x30], rsi
mov r14d, dword [rbp + 0x60]
inc r14d
mov dword [rbp + 0x60], r14d
cmp r14d, dword [rbp + 0x50]
je 0x1401b257a
movabs rsi, 0x7ffffffffffffffe
jmp 0x1401b2206
mov r12, qword [rbp + 0x48]
mov r13, qword [rbp + 0x58]
mov rcx, qword [rbp - 0x20]
mov rdx, qword [rbp - 0x18]
mov rax, rdx
sub rax, rcx
cmp rax, 4
jb 0x1401b25c1
lea rax, [rcx + 4]
mov qword [rbp - 0x20], rax
lea rax, [rbp - 0x30]
cmp rdx, 8
cmovae rax, qword [rbp - 0x30]
movabs rdx, 0x6c006c0064002e
mov qword [rax + rcx*2], rdx
mov word [rax + rcx*2 + 8], r15w
jmp 0x1401b25e4
mov qword [rsp + 0x20], 4
lea r9, [0x1405e48f8]
movzx r8d, byte [rbp + 0x48]
mov edx, 4
lea rcx, [rbp - 0x30]
call fcn.140186290
lea rdx, [rbp - 0x30]
cmp qword [rbp - 0x18], 8
cmovae rdx, qword [rbp - 0x30]
mov rcx, r12
cmp qword [r12 + 0x18], 8
jb 0x1401b2601
mov rcx, qword [r12]
call fcn.1401f7e04
test eax, eax
je 0x1401b261d
call fcn.1401f58c0
mov ecx, dword [rax]
mov dword [r13], ecx
mov r15d, 0xd
jmp 0x1401b262a
lea rdx, [rbp - 0x30]
mov rcx, r12
call fcn.1401afc10
nop
mov rdx, qword [rbp - 0x18]
cmp rdx, 8
jb 0x1401b2666
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1401b2661
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1401b2681
call fcn.140194698
mov eax, r15d
jmp 0x1401b2670
mov eax, 2
add rsp, 0x68
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
call fcn.1401f6690
int3
call fcn.140178420
nop
call fcn.1401f6690
nop
call fcn.140178420
int3