Function at 0x14000dce0
Capabilities:
Encode data using xor

Disassembly:
push rbp
push rbx
push rdi
push r12
push r13
lea rbp, [rsp - 0x37]
sub rsp, 0xc0
mov r9, qword [0x1400694a0]
xor r13d, r13d
mov rdi, r9
movsxd rax, dword [r9 + 0x1ed0]
test eax, eax
jle 0x14000dd45
lea rdx, [rax - 1]
mov rax, qword [r9 + 0x1ed8]
lea r8, [rdx + rdx*2]
add rax, 8
shl r8, 4
add r8, rax
mov rbx, qword [r8]
test rbx, rbx
je 0x14000dd3b
test dword [rbx + 0xc], 0x8000000
jne 0x14000dfa5
sub r8, 0x30
sub rdx, 1
jns 0x14000dd26
mov r12, qword [r9 + 0x2088]
mov rbx, r13
mov qword [rbp + 0x6f], r12
test r12, r12
je 0x14000e2c5
mov qword [rsp + 0x100], rsi
mov qword [rsp + 0xb8], r14
mov r14d, r13d
movaps xmmword [rsp + 0xa0], xmm6
cmp dword [r9 + 0x1ef0], r13d
jle 0x14000df20
mov qword [rsp + 0xb0], r15
xorps xmm6, xmm6
mov r15, r13
mov r12d, 0x424
nop dword [rax + rax]
mov rax, qword [rdi + 0x1ef8]
mov rsi, qword [r15 + rax]
test rbx, rbx
je 0x14000ddba
cmp rsi, qword [rbx + 0x38]
je 0x14000df00
mov rax, qword [rdi + 0x2090]
test rax, rax
je 0x14000ddd0
cmp rsi, qword [rax + 0x38]
je 0x14000df00
mov rax, qword [rdi + 0x2088]
test rax, rax
je 0x14000dde6
cmp rsi, qword [rax + 0x38]
je 0x14000df00
mov r8, qword [rsi + 0x88]
test r8, r8
je 0x14000de2c
test rbx, rbx
je 0x14000de2c
movsxd rax, dword [r9 + 0x1cb8]
test eax, eax
jle 0x14000de2c
lea rcx, [rax - 1]
mov rax, qword [r9 + 0x1cc0]
lea rdx, [rax + rcx*8]
mov rax, qword [rdx]
cmp rax, r8
je 0x14000df00
cmp rax, rbx
je 0x14000de2c
sub rdx, 8
sub rcx, 1
jns 0x14000de11
mov dword [rbp - 0x59], 0xf4dcbabb
mov rcx, r13
mov dword [rbp - 0x55], 0xedf9f8ee
mov dword [rbp - 0x51], 0xc7ccd4cf
mov word [rbp - 0x4d], 0x100
nop word [rax + rax]
lea eax, [rcx - 0x68]
xor byte [rbp + rcx - 0x59], al
inc rcx
cmp rcx, 0xc
jb 0x14000de50
lea r8, [rbp - 0x59]
mov byte [rbp - 0x4c], r13b
mov edx, 1
mov rcx, rsi
call fcn.14000a2c0
mov rdx, qword [0x1400694a0]
test rbx, rbx
movss xmm0, dword [rdi + 0x20cc]
mov ecx, 0x414
cmovne rcx, r12
mov r11, rax
mulss xmm0, dword [rdx + 0x1638]
movups xmm1, xmmword [rcx + rdx + 0x1638]
lea rcx, [rbp - 0x49]
movups xmmword [rbp - 0x49], xmm1
shufps xmm1, xmm1, 0xff
mulss xmm1, xmm0
movss xmm0, dword [rsi + 8]
addss xmm0, dword [rsi + 0x10]
movss dword [rbp - 0x3d], xmm1
movss xmm1, dword [rsi + 0x14]
addss xmm1, dword [rsi + 0xc]
movss dword [rbp + 0x67], xmm0
movss dword [rbp + 0x6b], xmm1
call fcn.140007cc0
mov r9d, eax
mov dword [rsp + 0x28], r13d
lea rdx, [rsi + 8]
movss dword [rsp + 0x20], xmm6
lea r8, [rbp + 0x67]
mov rcx, r11
call fcn.1400324c0
mov r9, qword [0x1400694a0]
inc r14d
add r15, 8
cmp r14d, dword [rdi + 0x1ef0]
jl 0x14000dda0
mov r12, qword [rbp + 0x6f]
mov r15, qword [rsp + 0xb0]
mov r14, qword [rsp + 0xb8]
test r12, r12
je 0x14000e2b5
mov rsi, qword [rdi + 0x2088]
cmp byte [rsi + 0xcf], r13b
je 0x14000e2b5
mov rbx, qword [rsi + 0x3d8]
movaps xmmword [rsp + 0x90], xmm7
movaps xmmword [rsp + 0x80], xmm8
movaps xmmword [rsp + 0x70], xmm9
mov ecx, dword [rbx + 0x1d0]
sub ecx, 1
movaps xmmword [rsp + 0x60], xmm10
js 0x14000dfc4
mov r9, qword [rbx + 0x1d8]
movsxd rax, ecx
lea rdx, [r9 + rax*8]
mov r8, qword [rdx]
cmp byte [r8 + 0xcf], r13b
je 0x14000df97
cmp byte [r8 + 0xd6], r13b
je 0x14000dfb5
dec ecx
sub rdx, 8
sub rax, 1
jns 0x14000df82
jmp 0x14000dfc4
mov r12, qword [r9 + 0x2088]
mov qword [rbp + 0x6f], r12
jmp 0x14000dd5c
movsxd rcx, ecx
mov rcx, qword [r9 + rcx*8]
call fcn.14000dc80
mov rbx, rax
mov rbx, qword [rbx + 0x2f8]
xor r9d, r9d
mov rcx, rbx
mov rax, qword [rbx + 0x38]
movss xmm1, dword [rax + 0x28]
movss xmm0, dword [rax + 0x24]
movss xmm2, dword [rax + 0x20]
unpcklps xmm0, xmm1
movss xmm1, dword [rax + 0x1c]
movq r8, xmm0
unpcklps xmm1, xmm2
movq rdx, xmm1
call fcn.14002f850
mov rcx, qword [rsi + 0x3d0]
test byte [rcx + 0x429], 1
je 0x14000e0cb
mov rdx, qword [rsi + 0x3d8]
cmp rdx, rcx
je 0x14000e0cb
mov rax, qword [0x1400694a0]
movss xmm0, dword [rdi + 0x20cc]
movss xmm2, dword [rdx + 0x50]
movss xmm3, dword [rdx + 0x54]
mulss xmm0, dword [rax + 0x1638]
movups xmm1, xmmword [rax + 0x1a4c]
movss dword [rbp - 0x49], xmm2
addss xmm2, dword [rdx + 0x58]
movups xmmword [rbp - 0x39], xmm1
shufps xmm1, xmm1, 0xff
mulss xmm1, xmm0
movss xmm0, dword [rcx + 0x50]
movss dword [rbp - 0x59], xmm0
addss xmm0, dword [rcx + 0x58]
movss dword [rbp - 0x2d], xmm1
movss xmm1, dword [rcx + 0x54]
movss dword [rbp - 0x55], xmm1
addss xmm1, dword [rcx + 0x5c]
movss dword [rbp - 0x45], xmm3
lea rcx, [rbp - 0x39]
addss xmm3, dword [rdx + 0x5c]
movss dword [rbp - 0x51], xmm0
movss dword [rbp - 0x41], xmm2
movss dword [rbp - 0x4d], xmm1
movss dword [rbp - 0x3d], xmm3
call fcn.140007cc0
movss xmm0, dword [rdi + 0x1644]
lea r8, [rbp - 0x59]
mov r9d, eax
movss dword [rsp + 0x20], xmm0
lea rdx, [rbp - 0x49]
mov rcx, rbx
call fcn.1400373a0
movss xmm1, dword [rdi + 0x1a80]
mov rax, qword [rsi + 0x38]
movss xmm8, dword [rsi + 0x50]
movss xmm7, dword [rsi + 0x54]
movaps xmm9, xmm8
addss xmm8, dword [rsi + 0x58]
movss xmm0, dword [rax + 8]
subss xmm9, xmm1
movss xmm5, dword [rsi + 0x88]
movaps xmm6, xmm7
addss xmm7, dword [rsi + 0x5c]
movss xmm4, dword [rax + 0xc]
subss xmm6, xmm1
movaps xmm10, xmm5
addss xmm8, xmm1
comiss xmm0, xmm9
maxss xmm10, dword [rdi + 0x1644]
movaps xmm2, xmm0
addss xmm7, xmm1
addss xmm2, dword [rax + 0x10]
movaps xmm3, xmm4
addss xmm3, dword [rax + 0x14]
jb 0x14000e17a
comiss xmm4, xmm6
jb 0x14000e17a
comiss xmm8, xmm2
jb 0x14000e17a
comiss xmm7, xmm3
jb 0x14000e17a
xorps xmm1, xmmword [0x14005bf60]
movaps xmm10, xmm5
subss xmm1, dword [0x14005b91c]
movaps xmm0, xmm1
subss xmm9, xmm1
subss xmm6, xmm1
addss xmm0, xmm8
addss xmm1, xmm7
movaps xmm8, xmm0
movaps xmm7, xmm1
mov rax, qword [0x1400694a0]
lea rcx, [rbp - 0x39]
movss xmm0, dword [rdi + 0x209c]
movups xmm1, xmmword [rax + 0x1a3c]
mulss xmm0, dword [rax + 0x1638]
movups xmmword [rbp - 0x39], xmm1
shufps xmm1, xmm1, 0xff
mulss xmm1, xmm0
movss dword [rbp - 0x2d], xmm1
call fcn.140007cc0
mov edi, eax
test eax, 0xff000000
je 0x14000e265
test byte [rbx + 0x30], 1
lea r8, [rbp + 0x67]
mov dword [rsp + 0x20], 0xffffffff
lea rdx, [rbp + 0x6f]
movaps xmm3, xmm10
mov rcx, rbx
je 0x14000e1f8
movss xmm0, dword [0x14005b8d8]
subss xmm8, xmm0
subss xmm7, xmm0
addss xmm9, xmm0
addss xmm6, xmm0
jmp 0x14000e21a
subss xmm8, dword [0x14005b8d4]
subss xmm7, dword [0x14005b8d4]
addss xmm9, dword [0x14005b8d8]
addss xmm6, dword [0x14005b8d8]
movss dword [rbp + 0x67], xmm8
movss dword [rbp + 0x6b], xmm7
movss dword [rbp + 0x6f], xmm9
movss dword [rbp + 0x73], xmm6
call fcn.140031ce0
movss xmm0, dword [0x14005b950]
mov r9d, edi
mov r8d, dword [rbx + 0x78]
mov rcx, rbx
mov rdx, qword [rbx + 0x80]
movss dword [rsp + 0x28], xmm0
mov dword [rsp + 0x20], 1
call fcn.14002fc60
mov dword [rbx + 0x78], r13d
mov eax, dword [rbx + 0x58]
movaps xmm10, xmmword [rsp + 0x60]
sub eax, 1
movaps xmm9, xmmword [rsp + 0x70]
movaps xmm8, xmmword [rsp + 0x80]
movaps xmm7, xmmword [rsp + 0x90]
mov dword [rbx + 0x58], eax
jne 0x14000e297
mov rax, qword [rbx + 0x38]
add rax, 0x1c
jmp 0x14000e2a3
dec eax
cdqe
shl rax, 4
add rax, qword [rbx + 0x60]
movups xmm0, xmmword [rax]
mov rcx, rbx
movups xmmword [rbx + 0x88], xmm0
call fcn.14002f670
mov rsi, qword [rsp + 0x100]
movaps xmm6, xmmword [rsp + 0xa0]
add rsp, 0xc0
pop r13
pop r12
pop rdi
pop rbx
pop rbp
ret