Function at 0x1401a61c0
Capabilities:
Encode data using base64

Disassembly:
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
push rbp
sub rsp, 0x268
mov r11, rcx
mov r14, rdx
mov rbx, r9
mov rax, qword [0x140294fc0]
mov rdi, r14
xor rax, rsp
mov rdx, qword [r11 + 0x7398]
mov rsi, qword [r11 + 0x73b8]
lea r13, [r14 + r8]
mov qword [rsp + 0x258], rax
add rsi, rdx
mov r15, qword [rsp + 0x2d0]
mov qword [rsp + 0x1c8], rdx
mov r10, qword [r11 + 0x72c8]
mov r12, qword [r11 + 0x72d0]
mov r9, qword [r11 + 0x72d8]
cmp dword [rsp + 0x2d8], 0
jne 0x1401a629e
sub rsi, rdx
sub r13, rdi
cmp rsi, r13
ja 0x1401a625b
test rdi, rdi
je 0x1401a6253
mov rcx, rdi
mov r8, rsi
call fcn.1401bb6d0
add rdi, rsi
mov r15, rdi
sub r15, r14
jmp 0x1401a6262
mov r15, 0xffffffffffffffba
mov rcx, qword [rsp + 0x258]
mov qword [rsp + 0x258], 0
xor rcx, rsp
cmp rcx, qword [0x140294fc0]
jne 0x1401a6299
mov rax, r15
add rsp, 0x268
pop rbp
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
ret
call fcn.1401c41f0
mov eax, dword [rsp + 0x2d8]
mov ebp, 4
cmp eax, 4
cmovle ebp, eax
mov eax, dword [r11 + 0x683c]
mov qword [rsp + 0x228], rax
mov eax, dword [r11 + 0x6840]
mov qword [rsp + 0x230], rax
mov eax, dword [r11 + 0x6844]
mov qword [rsp + 0x238], rax
mov rax, r14
sub rax, r10
mov dword [rsp + 0x1c0], ebp
mov dword [r11 + 0x7324], 1
mov qword [rsp + 0x240], r10
mov qword [rsp + 0x250], rax
mov qword [rsp + 0x248], r9
cmp r15, 1
jb 0x1401a7c26
mov qword [rsp + 0x1e8], rbx
lea rax, [rbx + 8]
mov qword [rsp + 0x1f0], rax
cmp r15, 8
jae 0x1401a63f9
movzx ebp, byte [rbx]
lea rax, [r15 - 2]
mov qword [rsp + 0x1e0], rbx
mov qword [rsp + 0x1d0], rbp
cmp rax, 5
ja 0x1401a63b7
mov edx, eax
lea rcx, [0x140000000]
movzx eax, byte [rcx + rdx + 0x24edd0]
lea rax, [rcx + rax + 0x1a636d]
jmp rax
movzx ebp, byte [r15 + rbx - 1]
test ebp, ebp
jne 0x1401a63d5
mov dword [rsp + 0x1d8], 0
mov r15, 0xffffffffffffffec
jmp 0x1401a6443
bsr ebx, ebp
mov rax, r15
test ebp, ebp
cmovne ebp, ebx
neg rax
add rax, 8
neg ebp
shl eax, 3
lea ebp, [rax + rbp + 8]
mov dword [rsp + 0x1d8], ebp
jmp 0x1401a6443
lea rax, [rbx + r15 - 8]
mov qword [rsp + 0x1e0], rax
mov rbp, qword [rax]
movzx eax, byte [r15 + rbx - 1]
mov qword [rsp + 0x1d0], rbp
test eax, eax
jne 0x1401a642f
mov dword [rsp + 0x1d8], 0
mov r15, 0xffffffffffffffff
jmp 0x1401a6443
xor ebx, ebx
bsr eax, eax
cmovne ebx, eax
neg ebx
add ebx, 8
mov dword [rsp + 0x1d8], ebx
cmp r15, 0xffffffffffffff88
jbe 0x1401a6455
mov r15, 0xffffffffffffffec
jmp 0x1401a6262
mov rbx, qword [r11]
lea rdx, [0x140000000]
mov qword [rsp + 0x40], rbx
mov r15d, dword [rsp + 0x1d8]
mov eax, dword [rbx + 4]
mov ecx, eax
neg ecx
mov rbx, qword [rsp + 0x1d0]
sub ecx, r15d
mov rbp, rbx
shr rbp, cl
mov edx, dword [rdx + rax*4 + 0x24e3a0]
add eax, r15d
and rbp, rdx
mov dword [rsp + 0x1d8], eax
mov qword [rsp + 0x1f8], rbp
cmp eax, 0x40
ja 0x1401a650c
mov rbp, qword [rsp + 0x1e0]
cmp rbp, qword [rsp + 0x1f0]
jae 0x1401a78f8
mov r15, qword [rsp + 0x1e8]
cmp rbp, r15
je 0x1401a650c
mov ebx, eax
mov rdx, rbp
shr ebx, 3
sub rdx, r15
mov ecx, ebx
neg rcx
add rcx, rbp
cmp rcx, r15
cmovb ebx, edx
sub rbp, rbx
shl ebx, 3
sub eax, ebx
mov dword [rsp + 0x1d8], eax
mov rax, qword [rbp]
mov qword [rsp + 0x1d0], rax
mov qword [rsp + 0x1e0], rbp
mov rbx, qword [rsp + 0x1d0]
mov r15, qword [r11 + 0x10]
lea rdx, [0x140000000]
mov rax, qword [rsp + 0x40]
mov rbp, rbx
add rax, 8
mov qword [rsp + 0x200], rax
mov eax, dword [r15 + 4]
mov ecx, eax
neg ecx
mov qword [rsp + 0x48], r15
mov r15d, dword [rsp + 0x1d8]
sub ecx, r15d
shr rbp, cl
mov edx, dword [rdx + rax*4 + 0x24e3a0]
add eax, r15d
and rbp, rdx
mov dword [rsp + 0x1d8], eax
mov qword [rsp + 0x208], rbp
cmp eax, 0x40
ja 0x1401a65ce
mov rbp, qword [rsp + 0x1e0]
cmp rbp, qword [rsp + 0x1f0]
jae 0x1401a792b
mov r15, qword [rsp + 0x1e8]
cmp rbp, r15
je 0x1401a65ce
mov ebx, eax
mov rdx, rbp
shr ebx, 3
sub rdx, r15
mov ecx, ebx
neg rcx
add rcx, rbp
cmp rcx, r15
cmovb ebx, edx
sub rbp, rbx
shl ebx, 3
sub eax, ebx
mov dword [rsp + 0x1d8], eax
mov rax, qword [rbp]
mov qword [rsp + 0x1d0], rax
mov qword [rsp + 0x1e0], rbp
mov rbx, qword [rsp + 0x1d0]
mov rax, qword [rsp + 0x48]
lea rdx, [0x140000000]
add rax, 8
mov qword [rsp + 0x210], rax
mov rax, qword [r11 + 8]
mov r15d, dword [rsp + 0x1d8]
mov ebp, dword [rax + 4]
mov ecx, ebp
neg ecx
sub ecx, r15d
shr rbx, cl
mov edx, dword [rdx + rbp*4 + 0x24e3a0]
add ebp, r15d
and rbx, rdx
mov dword [rsp + 0x1d8], ebp
mov qword [rsp + 0x218], rbx
cmp ebp, 0x40
ja 0x1401a6688
mov rbx, qword [rsp + 0x1e0]
cmp rbx, qword [rsp + 0x1f0]
jae 0x1401a795e
mov r15, qword [rsp + 0x1e8]
cmp rbx, r15
je 0x1401a6688
mov qword [rsp + 0x40], rax
mov eax, ebp
shr eax, 3
mov rdx, rbx
mov ecx, eax
sub rdx, r15
neg rcx
add rcx, rbx
cmp rcx, r15
cmovb eax, edx
sub rbx, rax
mov qword [rsp + 0x1e0], rbx
shl eax, 3
sub ebp, eax
mov rbx, qword [rbx]
mov dword [rsp + 0x1d8], ebp
mov qword [rsp + 0x1d0], rbx
mov rax, qword [rsp + 0x40]
mov r15d, dword [rsp + 0x1d8]
add rax, 8
xor ebx, ebx
mov qword [rsp + 0x220], rax
mov qword [rsp + 0x40], rbx
cmp r15d, 0x40
ja 0x1401a6bfe
mov rbp, qword [rsp + 0x1e0]
cmp rbp, qword [rsp + 0x1f0]
jae 0x1401a79ed
mov rdx, qword [rsp + 0x1e8]
cmp rbp, rdx
je 0x1401a671f
mov eax, r15d
shr eax, 3
mov ecx, eax
mov qword [rsp + 0x168], rbx
mov rbx, rbp
neg rcx
sub rbx, rdx
add rcx, rbp
cmp rcx, rdx
cmovb eax, ebx
sub rbp, rax
mov qword [rsp + 0x1e0], rbp
shl eax, 3
sub r15d, eax
mov rbp, qword [rbp]
mov dword [rsp + 0x1d8], r15d
mov qword [rsp + 0x1d0], rbp
mov rbx, qword [rsp + 0x168]
mov qword [rsp + 0x190], r11
movsxd rax, dword [rsp + 0x1c0]
mov r11, qword [rsp + 0x40]
mov qword [rsp + 0x1a0], r12
mov qword [rsp + 0x188], r10
mov qword [rsp + 0x1a8], rdi
mov qword [rsp + 0x1b0], r13
mov qword [rsp + 0x198], r14
mov qword [rsp + 0x1b8], r8
cmp rbx, rax
jge 0x1401a6bc4
mov rdi, qword [rsp + 0x218]
mov r10, qword [rsp + 0x220]
mov r13, qword [rsp + 0x208]
mov r12, qword [rsp + 0x210]
mov rbp, qword [rsp + 0x1f8]
mov rdx, qword [rsp + 0x200]
mov r10, qword [r10 + rdi*8]
mov rdi, qword [r12 + r13*8]
mov rdx, qword [rdx + rbp*8]
mov rbp, rdx
mov qword [rsp + 0x60], rdi
shr rdi, 0x10
mov qword [rsp + 0x50], r10
shr rbp, 0x10
shr r10, 0x10
movzx edi, dil
mov qword [rsp + 0x40], rdx
movzx ebp, bpl
movzx r10d, r10b
cmp edi, 1
jg 0x1401a68ac
shr rdx, 0x20
mov edx, edx
test edi, edi
jne 0x1401a681c
test edx, edx
je 0x1401a67f7
mov r12, qword [rsp + 0x228]
jmp 0x1401a6900
mov r12, qword [rsp + 0x230]
mov rcx, qword [rsp + 0x228]
mov qword [rsp + 0x230], rcx
mov qword [rsp + 0x228], r12
jmp 0x1401a6900
mov ecx, r15d
inc r15d
test edx, edx
mov dword [rsp + 0x1d8], r15d
mov r15d, 0
mov r12, qword [rsp + 0x1d0]
sete r15b
shl r12, cl
add r15d, dword [rsp + 0x64]
shr r12, 0x3f
add r15, r12
mov rcx, qword [rsp + 0x228]
cmp r15, 3
jne 0x1401a686f
mov r12, rcx
xor r13d, r13d
dec r12
sete r13b
lea r12, [r13 + rcx - 1]
jmp 0x1401a688a
xor r13d, r13d
mov r12, qword [rsp + r15*8 + 0x228]
test r12, r12
sete r13b
add r12, r13
cmp r15, 1
je 0x1401a689a
mov r13, qword [rsp + 0x230]
mov qword [rsp + 0x238], r13
mov qword [rsp + 0x230], rcx
mov qword [rsp + 0x228], r12
jmp 0x1401a6900
mov ecx, r15d
add r15d, edi
mov rdx, qword [rsp + 0x1d0]
shl rdx, cl
mov ecx, edi
neg ecx
shr rdx, cl
mov r13, qword [rsp + 0x230]
mov r14, qword [rsp + 0x228]
mov r12d, dword [rsp + 0x64]
add r12, rdx
mov edx, dword [rsp + 0x44]
mov dword [rsp + 0x1d8], r15d
mov qword [rsp + 0x238], r13
mov qword [rsp + 0x230], r14
mov qword [rsp + 0x228], r12
mov r13d, dword [rsp + 0x54]
test r10d, r10d
jle 0x1401a6936
mov r14d, dword [rsp + 0x1d8]
mov ecx, r14d
mov r15, qword [rsp + 0x1d0]
add r14d, r10d
shl r15, cl
mov ecx, r10d
neg ecx
shr r15, cl
mov dword [rsp + 0x1d8], r14d
add r13, r15
add edi, r10d
add edi, ebp
cmp dil, 0x1f
jae 0x1401a694b
mov r15d, dword [rsp + 0x1d8]
jmp 0x1401a69c6
mov r15d, dword [rsp + 0x1d8]
cmp r15d, 0x40
ja 0x1401a69c6
mov r14, qword [rsp + 0x1e0]
cmp r14, qword [rsp + 0x1f0]
jae 0x1401a798a
mov rdi, qword [rsp + 0x1e8]
cmp r14, rdi
je 0x1401a69c6
mov r10d, r15d
mov rcx, r14
shr r10d, 3
sub rcx, rdi
mov r8d, r10d
neg r8
add r8, r14
cmp r8, rdi
cmovb r10d, ecx
sub r14, r10
shl r10d, 3
sub r15d, r10d
mov dword [rsp + 0x1d8], r15d
mov rdi, qword [r14]
mov qword [rsp + 0x1e0], r14
mov qword [rsp + 0x1d0], rdi
mov r15d, dword [rsp + 0x1d8]
test ebp, ebp
jle 0x1401a7c5e
mov r10, qword [rsp + 0x1d0]
mov ecx, r15d
mov rdi, r10
add r15d, ebp
shl rdi, cl
mov ecx, ebp
neg ecx
shr rdi, cl
mov dword [rsp + 0x1d8], r15d
add rdx, rdi
mov r15d, dword [rsp + 0x1d8]
mov rdi, qword [rsp + 0x250]
add rdi, rdx
mov ecx, r15d
cmp r12, rdi
movzx r8d, byte [rsp + 0x43]
mov rbp, qword [rsp + 0x240]
mov qword [rsp + r11 + 0xb0], rdx
lea r14, [r13 + rdi]
mov qword [rsp + 0x250], r14
mov r14, r10
mov rdx, rdi
cmova rbp, qword [rsp + 0x248]
neg rcx
sub rcx, r8
sub rdx, r12
add rdx, rbp
shr r14, cl
lea rcx, [0x140000000]
mov qword [rsp + r11 + 0xb8], r13
mov qword [rsp + r11 + 0xc0], r12
mov qword [rsp + r11 + 0xc8], rdx
mov ecx, dword [rcx + r8*4 + 0x24e3a0]
and r14, rcx
add r15d, r8d
movzx ecx, word [rsp + 0x40]
add rcx, r14
mov r14, r10
mov qword [rsp + 0x1f8], rcx
mov ecx, r15d
movzx r8d, byte [rsp + 0x53]
neg rcx
sub rcx, r8
shr r14, cl
lea rcx, [0x140000000]
mov ecx, dword [rcx + r8*4 + 0x24e3a0]
and r14, rcx
add r15d, r8d
movzx ecx, word [rsp + 0x50]
lea r8, [0x140000000]
add rcx, r14
mov qword [rsp + 0x218], rcx
mov ecx, r15d
movzx r14d, byte [rsp + 0x63]
neg rcx
sub rcx, r14
shr r10, cl
mov ecx, dword [r8 + r14*4 + 0x24e3a0]
and r10, rcx
add r15d, r14d
movzx r14d, word [rsp + 0x60]
add r14, r10
mov dword [rsp + 0x1d8], r15d
mov qword [rsp + 0x208], r14
prefetcht0 byte [rdx]
inc rbx
add r11, 0x20
cmp r15d, 0x40
prefetcht0 byte [r13 + rdx - 1]
ja 0x1401a6b8a
mov r12, qword [rsp + 0x1e0]
cmp r12, qword [rsp + 0x1f0]
jae 0x1401a79bf
mov rdi, qword [rsp + 0x1e8]
cmp r12, rdi
je 0x1401a6764
mov r10d, r15d
mov rdx, r12
shr r10d, 3
sub rdx, rdi
mov ebp, r10d
neg rbp
add rbp, r12
cmp rbp, rdi
cmovb r10d, edx
sub r12, r10
shl r10d, 3
sub r15d, r10d
mov qword [rsp + 0x1e0], r12
mov rdi, qword [r12]
mov dword [rsp + 0x1d8], r15d
mov qword [rsp + 0x1d0], rdi
jmp 0x1401a6764
mov r12, qword [rsp + 0x1a0]
mov r10, qword [rsp + 0x188]
mov rdi, qword [rsp + 0x1a8]
mov r13, qword [rsp + 0x1b0]
mov r11, qword [rsp + 0x190]
mov r14, qword [rsp + 0x198]
mov r8, qword [rsp + 0x1b8]
jmp 0x1401a6c06
mov r12, qword [rsp + 0x1a0]
mov r10, qword [rsp + 0x188]
mov rdi, qword [rsp + 0x1a8]
mov r13, qword [rsp + 0x1b0]
mov r11, qword [rsp + 0x190]
mov r14, qword [rsp + 0x198]
mov r8, qword [rsp + 0x1b8]
jmp 0x1401a6c0f
movsxd rax, dword [rsp + 0x1c0]
cmp rbx, rax
jl 0x1401a6449
cmp r15d, 0x40
ja 0x1401a7563
mov rbp, qword [rsp + 0x1e0]
cmp rbp, qword [rsp + 0x1f0]
jae 0x1401a7b46
mov rdx, qword [rsp + 0x1e8]
cmp rbp, rdx
je 0x1401a6c8b
mov eax, r15d
shr eax, 3
mov ecx, eax
mov qword [rsp + 0x168], rbx
mov rbx, rbp
neg rcx
sub rbx, rdx
add rcx, rbp
cmp rcx, rdx
cmovb eax, ebx
sub rbp, rax
mov qword [rsp + 0x1e0], rbp
shl eax, 3
sub r15d, eax
mov rbp, qword [rbp]
mov dword [rsp + 0x1d8], r15d
mov qword [rsp + 0x1d0], rbp
mov rbx, qword [rsp + 0x168]
mov rax, r9
lea rbp, [r14 + r8 - 0x20]
movsxd rdx, dword [rsp + 0x2d8]
sub rax, r10
mov qword [rsp + 0x178], rdx
mov qword [rsp + 0x88], rax
mov qword [rsp + 0x168], rbx
mov qword [rsp + 0x150], r9
mov qword [rsp + 0x1a0], r12
mov qword [rsp + 0x188], r10
mov qword [rsp + 0x1a8], rdi
mov qword [rsp + 0x1b0], r13
mov qword [rsp + 0x190], r11
mov qword [rsp + 0x198], r14
mov qword [rsp + 0x1b8], r8
mov rax, qword [rsp + 0x168]
cmp rax, qword [rsp + 0x178]
jge 0x1401a751e
mov rax, qword [rsp + 0x218]
mov rdx, qword [rsp + 0x220]
mov r9, qword [rsp + 0x208]
mov rdi, qword [rsp + 0x210]
mov rbx, qword [rsp + 0x1f8]
mov r13, qword [rsp + 0x200]
mov rdx, qword [rdx + rax*8]
mov rax, qword [rdi + r9*8]
mov r13, qword [r13 + rbx*8]
mov rbx, r13
mov qword [rsp + 0x180], rax
shr rax, 0x10
mov qword [rsp + 0x170], rdx
shr rbx, 0x10
shr rdx, 0x10
movzx eax, al
mov qword [rsp + 0x160], r13
movzx ebx, bl
movzx edx, dl
cmp eax, 1
jg 0x1401a6e55
shr r13, 0x20
mov r13d, r13d
test eax, eax
jne 0x1401a6dc4
test r13d, r13d
je 0x1401a6d9f
mov rdi, qword [rsp + 0x228]
jmp 0x1401a6eaf
mov rdi, qword [rsp + 0x230]
mov rcx, qword [rsp + 0x228]
mov qword [rsp + 0x230], rcx
mov qword [rsp + 0x228], rdi
jmp 0x1401a6eaf
mov ecx, r15d
inc r15d
test r13d, r13d
mov dword [rsp + 0x1d8], r15d
mov r15d, 0
mov rdi, qword [rsp + 0x1d0]
sete r15b
shl rdi, cl
add r15d, dword [rsp + 0x184]
shr rdi, 0x3f
add r15, rdi
mov r9, qword [rsp + 0x228]
cmp r15, 3
jne 0x1401a6e1a
mov rcx, r9
xor edi, edi
dec rcx
sete dil
lea rdi, [rdi + r9 - 1]
jmp 0x1401a6e33
xor ecx, ecx
mov rdi, qword [rsp + r15*8 + 0x228]
test rdi, rdi
sete cl
add rdi, rcx
cmp r15, 1
je 0x1401a6e43
mov rcx, qword [rsp + 0x230]
mov qword [rsp + 0x238], rcx
mov qword [rsp + 0x230], r9
mov qword [rsp + 0x228], rdi
jmp 0x1401a6eaf
mov ecx, r15d
add r15d, eax
mov r9, qword [rsp + 0x1d0]
shl r9, cl
mov ecx, eax
neg ecx
shr r9, cl
mov r10, qword [rsp + 0x230]
mov r11, qword [rsp + 0x228]
mov edi, dword [rsp + 0x184]
add rdi, r9
mov r13d, dword [rsp + 0x164]
mov dword [rsp + 0x1d8], r15d
mov qword [rsp + 0x238], r10
mov qword [rsp + 0x230], r11
mov qword [rsp + 0x228], rdi
mov r12d, dword [rsp + 0x174]
test edx, edx
jle 0x1401a6ee6
mov r9d, dword [rsp + 0x1d8]
mov ecx, r9d
mov r10, qword [rsp + 0x1d0]
add r9d, edx
shl r10, cl
mov ecx, edx
neg ecx
shr r10, cl
mov dword [rsp + 0x1d8], r9d
add r12, r10
add eax, edx
add eax, ebx
cmp al, 0x1f
jae 0x1401a6ef7
mov edx, dword [rsp + 0x1d8]
jmp 0x1401a6f6e
mov edx, dword [rsp + 0x1d8]
cmp edx, 0x40
ja 0x1401a6f6e
mov rax, qword [rsp + 0x1e0]
cmp rax, qword [rsp + 0x1f0]
jae 0x1401a7a1b
mov r11, qword [rsp + 0x1e8]
cmp rax, r11
je 0x1401a6f6e
mov r14d, edx
mov r9, rax
shr r14d, 3
sub r9, r11
mov r10d, r14d
neg r10
add r10, rax
cmp r10, r11
cmovb r14d, r9d
sub rax, r14
shl r14d, 3
mov qword [rsp + 0x1e0], rax
sub edx, r14d
mov dword [rsp + 0x1d8], edx
mov rax, qword [rax]
mov qword [rsp + 0x1d0], rax
mov edx, dword [rsp + 0x1d8]
test ebx, ebx
jle 0x1401a7c51
mov rax, qword [rsp + 0x1d0]
mov ecx, edx
mov r9, rax
add edx, ebx
shl r9, cl
mov ecx, ebx
neg ecx
shr r9, cl
mov dword [rsp + 0x1d8], edx
add r13, r9
mov edx, dword [rsp + 0x1d8]
mov r9, r13
lea r10, [0x140000000]
add r9, qword [rsp + 0x250]
cmp rdi, r9
mov rbx, r9
mov ecx, edx
mov r14, qword [rsp + 0x240]
movzx r15d, byte [rsp + 0x163]
cmova r14, qword [rsp + 0x248]
neg rcx
sub rbx, rdi
sub rcx, r15
add rbx, r14
mov r14, rax
mov r11d, dword [r10 + r15*4 + 0x24e3a0]
add edx, r15d
shr r14, cl
add r9, r12
and r14, r11
mov ecx, edx
mov r10, rax
mov qword [rsp + 0x250], r9
neg rcx
movzx r9d, word [rsp + 0x160]
add r9, r14
lea r14, [0x140000000]
mov qword [rsp + 0x1f8], r9
movzx r9d, byte [rsp + 0x173]
sub rcx, r9
shr r10, cl
mov r14d, dword [r14 + r9*4 + 0x24e3a0]
and r10, r14
add edx, r9d
movzx r14d, word [rsp + 0x170]
mov ecx, edx
add r14, r10
neg rcx
mov qword [rsp + 0x218], r14
lea r14, [0x140000000]
movzx r9d, byte [rsp + 0x183]
sub rcx, r9
mov r10, qword [rsp + 0x1a8]
shr rax, cl
mov r14d, dword [r14 + r9*4 + 0x24e3a0]
and rax, r14
add edx, r9d
mov dword [rsp + 0x1d8], edx
mov r14, qword [rsp + 0x168]
movzx edx, word [rsp + 0x180]
add rdx, rax
mov eax, r14d
and eax, 3
mov qword [rsp + 0x208], rdx
shl rax, 5
mov r9, qword [rsp + rax + 0xb0]
mov r8, qword [rsp + rax + 0xb8]
mov rdx, qword [rsp + rax + 0xc0]
mov rcx, qword [rsp + rax + 0xc8]
mov qword [rsp + 0x140], rdx
neg rdx
mov qword [rsp + 0x158], rcx
lea rcx, [r10 + r9]
mov rax, qword [rsp + 0x1c8]
lea r15, [r9 + r8]
mov qword [rsp + 0x130], r9
add r9, rax
add rdx, rcx
cmp r9, rsi
ja 0x1401a7386
lea r11, [r10 + r15]
cmp r11, rbp
ja 0x1401a7386
vmovups xmm0, xmmword [rax]
vmovups xmmword [r10], xmm0
mov r10, qword [rsp + 0x130]
cmp r10, 0x10
jbe 0x1401a71bd
mov r11, r10
mov rax, qword [rsp + 0x1c8]
mov qword [rsp + 0x70], rax
lea r10, [r11 - 0x10]
mov qword [rsp + 0x68], r10
mov r10, qword [rsp + 0x1a8]
vmovups xmm0, xmmword [rax + 0x10]
vmovups xmmword [r10 + 0x10], xmm0
add r11, r10
mov qword [rsp + 0x60], r11
cmp qword [rsp + 0x68], 0x10
jle 0x1401a71bd
add qword [rsp + 0x70], 0x20
mov qword [rsp + 0x50], r15
mov qword [rsp + 0x58], rsi
lea r10, [r10 + 0x20]
mov r11, qword [rsp + 0x70]
mov r15, qword [rsp + 0x60]
vmovups xmm0, xmmword [r11]
vmovups xmmword [r10], xmm0
lea rax, [r11 + 0x10]
vmovups xmm0, xmmword [rax]
lea rsi, [r10 + 0x10]
vmovups xmmword [rsi], xmm0
add r10, 0x20
add r11, 0x20
cmp r10, r15
jb 0x1401a718c
mov r15, qword [rsp + 0x50]
mov rsi, qword [rsp + 0x58]
mov qword [rsp + 0x1c8], r9
mov r9, rcx
sub r9, qword [rsp + 0x188]
mov r10, qword [rsp + 0x140]
cmp r10, r9
jbe 0x1401a7225
mov r9, rcx
sub r9, qword [rsp + 0x1a0]
cmp r10, r9
ja 0x1401a7219
add rdx, qword [rsp + 0x88]
mov qword [rsp + 0x138], r8
lea r9, [r8 + rdx]
cmp r9, qword [rsp + 0x150]
ja 0x1401a7a4e
call fcn.140218be0
jmp 0x1401a7409
mov r15, 0xffffffffffffffec
jmp 0x1401a7409
mov qword [rsp + 0x138], r8
cmp r10, 0x10
jae 0x1401a733c
cmp r10, 8
jae 0x1401a728a
lea r11, [0x140000000]
movsxd r9, dword [r11 + r10*4 + 0x24eda0]
mov r11b, byte [rdx]
mov byte [rcx], r11b
mov r11b, byte [rdx + 1]
mov byte [rcx + 1], r11b
mov r11b, byte [rdx + 2]
mov byte [rcx + 2], r11b
mov r11b, byte [rdx + 3]
mov byte [rcx + 3], r11b
lea r11, [0x140000000]
mov r10d, dword [r11 + r10*4 + 0x24ed80]
add r10, rdx
mov edx, dword [r10]
mov dword [rcx + 4], edx
mov rdx, r10
sub rdx, r9
jmp 0x1401a7290
mov r9, qword [rdx]
mov qword [rcx], r9
lea r9, [rdx + 8]
mov qword [rsp + 0x78], r9
lea r10, [rcx + 8]
mov qword [rsp + 0x80], r10
cmp r8, 8
jbe 0x1401a7409
mov r11, r10
lea r9, [r8 - 8]
sub r11, qword [rsp + 0x78]
lea r10, [r8 + rcx]
cmp r11, 0x10
jge 0x1401a7ac4
lea r9, [r8 - 1]
cmp r9, 0xc
jle 0x1401a7a95
mov r9, qword [rsp + 0x78]
lea r10, [r8 - 1]
sar r10, 2
shr r10, 0x3d
sub r9, qword [rsp + 0x80]
mov r11, r9
neg r11
lea r10, [r8 + r10 - 1]
and r10, 0xfffffffffffffff8
cmp r11, r10
mov r11d, 0
setg r11b
cmp r9, r10
mov r9d, 0
setg r9b
or r11d, r9d
je 0x1401a7a95
mov r8, r10
mov rcx, qword [rsp + 0x80]
mov rdx, qword [rsp + 0x78]
call fcn.1401bb6d0
jmp 0x1401a7409
vmovups xmm0, xmmword [rdx]
vmovups xmmword [rcx], xmm0
lea r9, [r8 + rcx]
cmp r8, 0x10
jle 0x1401a7409
add rcx, 0x10
add rdx, 0x10
vmovups xmm0, xmmword [rdx]
vmovups xmmword [rcx], xmm0
lea r10, [rdx + 0x10]
vmovups xmm0, xmmword [r10]
lea r11, [rcx + 0x10]
vmovups xmmword [r11], xmm0
add rcx, 0x20
add rdx, 0x20
cmp rcx, r9
jb 0x1401a735a
jmp 0x1401a7409
mov rax, qword [rsp + 0x158]
mov qword [rsp + 0x148], rax
mov qword [rsp + 0x138], r8
mov r15, rsp
lea r8, [rsp + 0x90]
vmovups xmm0, xmmword [r8 + 0xa0]
lea r9, [rsp + 0x1c8]
vmovups xmm1, xmmword [r8 + 0xb0]
vmovups xmmword [r8], xmm0
vmovups xmmword [r8 + 0x10], xmm1
mov qword [r15 + 0x20], rsi
mov rax, qword [r8 + 0xf8]
mov qword [r15 + 0x28], rax
mov r10, qword [r8 + 0x110]
mov qword [r15 + 0x30], r10
mov r11, qword [r8 + 0xc0]
mov qword [r15 + 0x38], r11
mov rcx, qword [r8 + 0x118]
mov rdx, qword [r8 + 0x120]
call fcn.1401a1d10
mov r15, rax
cmp r15, 0xffffffffffffff88
ja 0x1401a6262
prefetcht0 byte [rbx]
and r14d, 3
add qword [rsp + 0x1a8], r15
shl r14, 5
inc qword [rsp + 0x168]
prefetcht0 byte [rbx + r12 - 1]
mov r15d, dword [rsp + 0x1d8]
mov qword [rsp + r14 + 0xb0], r13
mov qword [rsp + r14 + 0xb8], r12
mov qword [rsp + r14 + 0xc0], rdi
mov qword [rsp + r14 + 0xc8], rbx
cmp r15d, 0x40
ja 0x1401a74cc
mov r9, qword [rsp + 0x1e0]
cmp r9, qword [rsp + 0x1f0]
jae 0x1401a7b19
mov rbx, qword [rsp + 0x1e8]
cmp r9, rbx
je 0x1401a6cf6
mov edi, r15d
mov rax, r9
shr edi, 3
sub rax, rbx
mov edx, edi
neg rdx
add rdx, r9
cmp rdx, rbx
cmovb edi, eax
sub r9, rdi
shl edi, 3
sub r15d, edi
mov qword [rsp + 0x1e0], r9
mov rbx, qword [r9]
mov dword [rsp + 0x1d8], r15d
mov qword [rsp + 0x1d0], rbx
jmp 0x1401a6cf6
mov rdx, qword [rsp + 0x178]
mov rbx, qword [rsp + 0x168]
mov r9, qword [rsp + 0x150]
mov r12, qword [rsp + 0x1a0]
mov r10, qword [rsp + 0x188]
mov rdi, qword [rsp + 0x1a8]
mov r13, qword [rsp + 0x1b0]
mov r11, qword [rsp + 0x190]
mov r14, qword [rsp + 0x198]
mov r8, qword [rsp + 0x1b8]
jmp 0x1401a756b
mov rbx, rax
mov r9, qword [rsp + 0x150]
mov r12, qword [rsp + 0x1a0]
mov r10, qword [rsp + 0x188]
mov rdi, qword [rsp + 0x1a8]
mov r13, qword [rsp + 0x1b0]
mov r11, qword [rsp + 0x190]
mov r14, qword [rsp + 0x198]
mov r8, qword [rsp + 0x1b8]
jmp 0x1401a7574
movsxd rdx, dword [rsp + 0x2d8]
cmp rbx, rdx
jl 0x1401a6449
sub ebx, dword [rsp + 0x1c0]
cmp ebx, dword [rsp + 0x2d8]
jge 0x1401a78c1
mov rax, r9
lea rbp, [r14 + r8 - 0x20]
sub rax, r10
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x130], rbp
mov qword [rsp + 0x150], r9
mov qword [rsp + 0x188], r10
mov qword [rsp + 0x190], r11
mov qword [rsp + 0x198], r14
mov eax, ebx
and eax, 3
mov r9, qword [rsp + 0x1c8]
shl rax, 5
mov r10, qword [rsp + rax + 0xb0]
mov r8, qword [rsp + rax + 0xb8]
mov rdx, qword [rsp + rax + 0xc0]
mov qword [rsp + 0x80], rdx
lea r14, [rdi + r10]
neg rdx
lea r15, [r10 + r8]
mov qword [rsp + 0x70], r10
add r10, r9
add rdx, r14
mov r11, qword [rsp + rax + 0xc8]
cmp r10, rsi
ja 0x1401a7835
lea rbp, [rdi + r15]
cmp rbp, qword [rsp + 0x130]
ja 0x1401a7835
vmovups xmm0, xmmword [r9]
vmovups xmmword [rdi], xmm0
mov rbp, qword [rsp + 0x70]
cmp rbp, 0x10
jbe 0x1401a7690
mov r9, qword [rsp + 0x1c8]
lea rax, [rbp - 0x10]
add rbp, rdi
lea r11, [r9 + 0x10]
vmovups xmm0, xmmword [r11]
vmovups xmmword [rdi + 0x10], xmm0
cmp rax, 0x10
jle 0x1401a7690
add r9, 0x20
lea r11, [rdi + 0x20]
vmovups xmm0, xmmword [r9]
vmovups xmmword [r11], xmm0
lea rax, [r9 + 0x10]
vmovups xmm0, xmmword [rax]
lea rcx, [r11 + 0x10]
vmovups xmmword [rcx], xmm0
add r11, 0x20
add r9, 0x20
cmp r11, rbp
jb 0x1401a7669
mov rbp, r14
sub rbp, qword [rsp + 0x188]
mov r9, qword [rsp + 0x80]
mov qword [rsp + 0x1c8], r10
cmp r9, rbp
jbe 0x1401a76f0
mov rbp, r14
sub rbp, r12
cmp r9, rbp
ja 0x1401a76e4
add rdx, qword [rsp + 0x48]
mov qword [rsp + 0x78], r8
lea rbp, [r8 + rdx]
cmp rbp, qword [rsp + 0x150]
ja 0x1401a7b74
mov rcx, r14
call fcn.140218be0
jmp 0x1401a7895
mov r15, 0xffffffffffffffec
jmp 0x1401a7895
mov qword [rsp + 0x78], r8
cmp r9, 0x10
jae 0x1401a77ec
cmp r9, 8
jae 0x1401a7753
lea r10, [0x140000000]
mov r11b, byte [rdx]
mov byte [r14], r11b
movsxd rbp, dword [r10 + r9*4 + 0x24eda0]
mov r10b, byte [rdx + 1]
mov byte [r14 + 1], r10b
mov r10b, byte [rdx + 2]
mov byte [r14 + 2], r10b
mov r10b, byte [rdx + 3]
mov byte [r14 + 3], r10b
lea r10, [0x140000000]
mov r10d, dword [r10 + r9*4 + 0x24ed80]
add r10, rdx
mov rdx, r10
sub rdx, rbp
mov r9d, dword [r10]
mov dword [r14 + 4], r9d
jmp 0x1401a7759
mov rbp, qword [rdx]
mov qword [r14], rbp
lea rbp, [rdx + 8]
mov qword [rsp + 0x40], rbp
lea rcx, [r14 + 8]
cmp r8, 8
jbe 0x1401a7895
mov r9, rcx
lea r10, [r8 - 8]
sub r9, qword [rsp + 0x40]
lea rbp, [r8 + r14]
cmp r9, 0x10
jge 0x1401a7bd9
lea rbp, [r8 - 1]
cmp rbp, 0xc
jle 0x1401a7baa
mov r10, qword [rsp + 0x40]
lea rbp, [r8 - 1]
sar rbp, 2
sub r10, rcx
shr rbp, 0x3d
mov r9, r10
neg r9
lea r11, [r8 + rbp - 1]
xor ebp, ebp
and r11, 0xfffffffffffffff8
cmp r9, r11
setg bpl
cmp r10, r11
mov r10d, 0
setg r10b
or ebp, r10d
je 0x1401a7baa
mov rdx, qword [rsp + 0x40]
mov r8, r11
call fcn.1401bb6d0
jmp 0x1401a7895
vmovups xmm0, xmmword [rdx]
vmovups xmmword [r14], xmm0
lea rbp, [r8 + r14]
cmp r8, 0x10
jle 0x1401a7895
add r14, 0x10
add rdx, 0x10
vmovups xmm0, xmmword [rdx]
vmovups xmmword [r14], xmm0
lea r9, [rdx + 0x10]
vmovups xmm0, xmmword [r9]
lea r10, [r14 + 0x10]
vmovups xmmword [r10], xmm0
add r14, 0x20
add rdx, 0x20
cmp r14, rbp
jb 0x1401a780b
jmp 0x1401a7895
mov qword [rsp + 0x88], r11
mov qword [rsp + 0x78], r8
mov r10, rsp
lea r8, [rsp + 0x50]
vmovups xmm0, xmmword [r8 + 0x20]
lea r9, [rsp + 0x1c8]
vmovups xmm1, xmmword [r8 + 0x30]
mov rcx, rdi
vmovups xmmword [r8], xmm0
mov rdx, r13
vmovups xmmword [r8 + 0x10], xmm1
mov qword [r10 + 0x20], rsi
mov rax, qword [r8 + 0x138]
mov qword [r10 + 0x28], rax
mov qword [r10 + 0x30], r12
mov rbp, qword [r8 + 0x100]
mov qword [r10 + 0x38], rbp
call fcn.1401a1d10
mov r15, rax
cmp r15, 0xffffffffffffff88
ja 0x1401a6262
inc ebx
add rdi, r15
cmp ebx, dword [rsp + 0x2d8]
jl 0x1401a75c0
mov r11, qword [rsp + 0x190]
mov r14, qword [rsp + 0x198]
mov eax, dword [rsp + 0x228]
mov ebx, dword [rsp + 0x230]
mov ebp, dword [rsp + 0x238]
mov dword [r11 + 0x683c], eax
mov dword [r11 + 0x6840], ebx
mov dword [r11 + 0x6844], ebp
mov rdx, qword [rsp + 0x1c8]
jmp 0x1401a6235
mov ebx, eax
and eax, 7
shr ebx, 3
sub rbp, rbx
mov dword [rsp + 0x1d8], eax
mov qword [rsp + 0x1e0], rbp
mov rax, qword [rbp]
mov qword [rsp + 0x1d0], rax
mov rbx, qword [rsp + 0x1d0]
jmp 0x1401a650c
mov ebx, eax
and eax, 7
shr ebx, 3
sub rbp, rbx
mov dword [rsp + 0x1d8], eax
mov qword [rsp + 0x1e0], rbp
mov rax, qword [rbp]
mov qword [rsp + 0x1d0], rax
mov rbx, qword [rsp + 0x1d0]
jmp 0x1401a65ce
mov r15d, ebp
and ebp, 7
shr r15d, 3
sub rbx, r15
mov qword [rsp + 0x1e0], rbx
mov dword [rsp + 0x1d8], ebp
mov rbx, qword [rbx]
mov qword [rsp + 0x1d0], rbx
jmp 0x1401a6688
mov edi, r15d
and r15d, 7
shr edi, 3
sub r14, rdi
mov dword [rsp + 0x1d8], r15d
mov qword [rsp + 0x1e0], r14
mov r15d, dword [rsp + 0x1d8]
mov rcx, qword [r14]
mov qword [rsp + 0x1d0], rcx
jmp 0x1401a69c6
mov edx, r15d
and r15d, 7
shr edx, 3
sub r12, rdx
mov qword [rsp + 0x1e0], r12
mov dword [rsp + 0x1d8], r15d
mov rbp, qword [r12]
mov qword [rsp + 0x1d0], rbp
jmp 0x1401a6764
mov eax, r15d
and r15d, 7
shr eax, 3
sub rbp, rax
mov qword [rsp + 0x1e0], rbp
mov dword [rsp + 0x1d8], r15d
mov rbp, qword [rbp]
mov qword [rsp + 0x1d0], rbp
jmp 0x1401a671f
mov r9d, edx
and edx, 7
shr r9d, 3
sub rax, r9
mov qword [rsp + 0x1e0], rax
mov dword [rsp + 0x1d8], edx
mov edx, dword [rsp + 0x1d8]
mov rax, qword [rax]
mov qword [rsp + 0x1d0], rax
jmp 0x1401a6f6e
mov r8, qword [rsp + 0x150]
sub r8, rdx
mov qword [rsp + 0x40], r8
mov qword [rsp + 0x48], rcx
call fcn.140218be0
mov rcx, qword [rsp + 0x48]
mov rdx, qword [rsp + 0x40]
add rcx, rdx
mov r8, qword [rsp + 0x138]
mov r10, qword [rsp + 0x140]
sub r8, rdx
mov rdx, qword [rsp + 0x188]
jmp 0x1401a722d
xor r10d, r10d
lea r9, [r8 - 1]
sar r9, 2
shr r9, 0x3d
lea r9, [r9 + r8 - 1]
sar r9, 3
mov r11, qword [rdx + r10*8 + 8]
mov qword [rcx + r10*8 + 8], r11
inc r10
cmp r10, r9
jl 0x1401a7aad
jmp 0x1401a7409
mov r11, qword [rsp + 0x78]
vmovups xmm0, xmmword [r11]
mov r11, qword [rsp + 0x80]
vmovups xmmword [r11], xmm0
cmp r9, 0x10
jle 0x1401a7409
add rcx, 0x18
add rdx, 0x18
vmovups xmm0, xmmword [rdx]
vmovups xmmword [rcx], xmm0
lea r9, [rdx + 0x10]
vmovups xmm0, xmmword [r9]
lea r11, [rcx + 0x10]
vmovups xmmword [r11], xmm0
add rcx, 0x20
add rdx, 0x20
cmp rcx, r10
jb 0x1401a7aed
jmp 0x1401a7409
mov eax, r15d
and r15d, 7
shr eax, 3
sub r9, rax
mov qword [rsp + 0x1e0], r9
mov dword [rsp + 0x1d8], r15d
mov rdx, qword [r9]
mov qword [rsp + 0x1d0], rdx
jmp 0x1401a6cf6
mov eax, r15d
and r15d, 7
shr eax, 3
sub rbp, rax
mov qword [rsp + 0x1e0], rbp
mov dword [rsp + 0x1d8], r15d
mov rbp, qword [rbp]
mov qword [rsp + 0x1d0], rbp
jmp 0x1401a6c8b
mov rbp, qword [rsp + 0x150]
mov rcx, r14
sub rbp, rdx
mov r8, rbp
call fcn.140218be0
mov r8, qword [rsp + 0x78]
add r14, rbp
mov rdx, qword [rsp + 0x188]
sub r8, rbp
mov r9, qword [rsp + 0x80]
jmp 0x1401a76f5
xor r9d, r9d
lea rbp, [r8 - 1]
sar rbp, 2
shr rbp, 0x3d
lea rbp, [rbp + r8 - 1]
sar rbp, 3
mov r10, qword [rdx + r9*8 + 8]
mov qword [r14 + r9*8 + 8], r10
inc r9
cmp r9, rbp
jl 0x1401a7bc2
jmp 0x1401a7895
mov r9, qword [rsp + 0x40]
vmovups xmm0, xmmword [r9]
vmovups xmmword [rcx], xmm0
cmp r10, 0x10
jle 0x1401a7895
add r14, 0x18
add rdx, 0x18
vmovups xmm0, xmmword [rdx]
vmovups xmmword [r14], xmm0
lea r9, [rdx + 0x10]
vmovups xmm0, xmmword [r9]
lea r10, [r14 + 0x10]
vmovups xmmword [r10], xmm0
add r14, 0x20
add rdx, 0x20
cmp r14, rbp
jb 0x1401a7bf9
jmp 0x1401a7895
vpxor xmm0, xmm0, xmm0
vmovdqu xmmword [rsp + 0x1d0], xmm0
vmovdqu xmmword [rsp + 0x1e0], xmm0
vmovq qword [rsp + 0x1f0], xmm0
mov r15, 0xffffffffffffffb8
jmp 0x1401a6443
mov rax, qword [rsp + 0x1d0]
jmp 0x1401a6fa0
mov r10, qword [rsp + 0x1d0]
jmp 0x1401a69fc