Function at 0x140103f70
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
mov qword [rax + 0x18], r8
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0xb0
movsxd r11, dword [r8 + 8]
lea rsi, [0x140000000]
mov r10, qword [r8]
mov rdi, rdx
movaps xmmword [rax - 0x48], xmm6
mov r15, rcx
movaps xmmword [rax - 0x68], xmm8
movsxd rdx, dword [rsi + r11*4 + 0x168f60]
mov r13, qword [r10 + r11*8 + 0x18]
movsxd rcx, dword [rsi + r11*4 + 0x168f70]
movaps xmmword [rax - 0x78], xmm9
mov r12, qword [r10 + rdx*8 + 0x18]
movsd xmm2, qword [r13 + 8]
movaps xmmword [rsp + 0x60], xmm10
movaps xmmword [rsp + 0x50], xmm11
movsd xmm9, qword [r12]
movsd xmm4, qword [r12 + 8]
movaps xmm10, xmm9
movaps xmm11, xmm4
movaps xmmword [rsp + 0x40], xmm12
movaps xmmword [rax - 0x58], xmm7
subsd xmm2, xmm4
mov rax, qword [r10 + rcx*8 + 0x18]
movsd xmm7, qword [r13]
subsd xmm7, xmm9
mov qword [rsp + 0x108], rax
mov qword [rsp + 0xf8], r13
movsd xmm8, qword [rax]
movaps xmm3, xmm2
movsd xmm1, qword [rax + 8]
subsd xmm10, xmm8
subsd xmm8, qword [r13]
subsd xmm11, xmm1
mulsd xmm3, xmm2
subsd xmm1, qword [r13 + 8]
movaps xmm0, xmm10
mulsd xmm0, xmm10
movaps xmm6, xmm11
mulsd xmm6, xmm11
movaps xmm5, xmm1
mulsd xmm5, xmm1
addsd xmm6, xmm0
movaps xmm0, xmm8
mulsd xmm0, xmm8
addsd xmm5, xmm0
movaps xmm0, xmm7
mulsd xmm0, xmm7
comisd xmm5, xmm6
addsd xmm3, xmm0
jbe 0x1401040a7
comisd xmm3, xmm6
jbe 0x1401040a7
mulsd xmm2, xmm1
movaps xmm12, xmm6
mov r14, r12
mov rbp, rax
mulsd xmm7, xmm8
mulsd xmm3, xmm5
addsd xmm2, xmm7
mulsd xmm2, xmm2
divsd xmm2, xmm3
jmp 0x140104107
comisd xmm3, xmm5
jbe 0x1401040d6
mulsd xmm2, xmm11
movaps xmm12, xmm5
mov r14, rax
mov rbp, r13
mulsd xmm7, xmm10
mov r11d, edx
mulsd xmm3, xmm6
addsd xmm2, xmm7
mulsd xmm2, xmm2
divsd xmm2, xmm3
jmp 0x140104107
movaps xmm0, xmm8
movaps xmm2, xmm1
mulsd xmm2, xmm11
movaps xmm12, xmm3
mov r14, r13
mov rbp, r12
mulsd xmm0, xmm10
mov r11d, ecx
addsd xmm2, xmm0
movaps xmm0, xmm5
mulsd xmm0, xmm6
mulsd xmm2, xmm2
divsd xmm2, xmm0
mov eax, dword [rdi + 0xc]
mov qword [rsp + 0xf0], rbx
movaps xmm7, xmmword [rsp + 0x90]
test eax, eax
jne 0x14010412c
cmp dword [rdi + 0x10], eax
jne 0x14010412c
cmp dword [rdi + 0x14], eax
je 0x1401041d0
cmp dword [rdi + 0x10], 0
mulsd xmm1, xmm10
mulsd xmm8, xmm11
subsd xmm1, xmm8
mulsd xmm1, qword [0x1401111e8]
je 0x140104157
comisd xmm1, xmmword [rdi + 0xa0]
ja 0x140104355
test eax, eax
je 0x14010417b
movsxd rax, dword [r15 + 0x142f8]
movsd xmm3, qword [r10 + rax*8]
comisd xmm1, xmm3
jbe 0x14010417b
xorps xmm0, xmm0
comisd xmm3, xmm0
ja 0x140104355
cmp dword [rdi + 0x14], 0
je 0x1401041d0
movaps xmm0, xmm4
movaps xmm1, xmm9
subsd xmm0, qword [r13 + 8]
subsd xmm1, qword [r13]
mulsd xmm4, xmm4
mulsd xmm9, xmm9
mulsd xmm0, xmm0
mulsd xmm1, xmm1
addsd xmm4, xmm9
addsd xmm0, xmm1
mulsd xmm4, qword [0x140112de0]
maxsd xmm5, xmm0
addsd xmm4, qword [0x140138790]
maxsd xmm6, xmm5
comisd xmm6, xmm4
ja 0x140104355
comisd xmm2, xmmword [rdi + 0x90]
jbe 0x140104383
movsxd rax, dword [r15 + 0x142e8]
cmp dword [r14 + rax*4 + 4], 1
jne 0x140104355
cmp dword [rbp + rax*4 + 4], 1
jne 0x140104355
mov rbx, qword [r15 + 0x14350]
movsxd rax, r11d
mov rcx, qword [r10 + rax*8 + 0x30]
and rcx, 0xfffffffffffffffc
cmp rcx, rbx
jne 0x140104355
mov r9d, r11d
mov r8, r10
nop
movsxd rax, r11d
mov rcx, qword [r8 + rax*8]
mov eax, ecx
and eax, 3
mov r8d, eax
xor r8, rcx
movsxd r11, dword [rsi + rax*4 + 0x168f60]
mov rdx, qword [r8 + r11*8 + 0x30]
mov ecx, edx
and rdx, 0xfffffffffffffffc
and ecx, 1
cmp rdx, rbx
je 0x140104220
mov rsi, qword [rdx + rcx*8 + 0x20]
lea r13, [0x140000000]
mov r11d, 5
mov eax, r11d
sub rax, rcx
mov r8, qword [rdx + rax*8]
nop dword [rax]
movsxd rax, r9d
mov rcx, qword [r10 + rax*8]
mov eax, ecx
and eax, 3
mov r10d, eax
xor r10, rcx
movsxd r9, dword [r13 + rax*4 + 0x168f70]
mov rcx, qword [r10 + r9*8 + 0x30]
mov edx, ecx
and rcx, 0xfffffffffffffffc
and edx, 1
cmp rcx, rbx
je 0x140104270
mov r9, qword [rcx + rdx*8 + 0x20]
movsd xmm0, qword [r8]
mov r13, qword [rsp + 0xf8]
mov eax, edx
sub r11, rax
ucomisd xmm0, qword [r9]
mov rax, qword [rcx + r11*8]
jp 0x1401042d1
jne 0x1401042d1
movsd xmm0, qword [r8 + 8]
ucomisd xmm0, qword [r9 + 8]
jp 0x1401042d1
je 0x1401042ee
movsd xmm0, qword [rsi]
ucomisd xmm0, qword [rax]
jp 0x140104355
jne 0x140104355
movsd xmm0, qword [rsi + 8]
ucomisd xmm0, qword [rax + 8]
jp 0x140104355
jne 0x140104355
mov r8, rsi
test r8, r8
je 0x140104355
movsd xmm0, qword [r14 + 8]
subsd xmm0, qword [r8 + 8]
movsd xmm4, qword [rbp]
subsd xmm4, qword [r8]
movsd xmm5, qword [r14]
subsd xmm5, qword [r8]
mulsd xmm0, xmm0
mulsd xmm4, xmm4
mulsd xmm5, xmm5
addsd xmm5, xmm0
movsd xmm0, qword [rbp + 8]
subsd xmm0, qword [r8 + 8]
mulsd xmm0, xmm0
addsd xmm4, xmm0
movaps xmm0, xmm4
mulsd xmm0, qword [0x1401387c8]
comisd xmm0, xmm5
jbe 0x140104355
mulsd xmm4, qword [0x140112ba8]
comisd xmm5, xmm4
ja 0x140104383
mov rax, qword [rsp + 0x108]
movaps xmm3, xmm12
mov r8, qword [rsp + 0x100]
mov rdx, rdi
mov qword [rsp + 0x30], rax
mov rcx, r15
mov qword [rsp + 0x28], r12
mov qword [rsp + 0x20], r13
call fcn.1400f4040
mov rbx, qword [rsp + 0xf0]
lea r11, [rsp + 0xb0]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
movaps xmm10, xmmword [r11 - 0x50]
movaps xmm11, xmmword [r11 - 0x60]
movaps xmm12, xmmword [r11 - 0x70]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret