Function at 0x14004d730
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov rax, rsp
mov dword [rax + 0x20], r9d
mov dword [rax + 0x18], r8d
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x108]
sub rsp, 0x1c8
movaps xmmword [rax - 0x58], xmm6
movaps xmmword [rax - 0x68], xmm7
movaps xmmword [rax - 0x78], xmm8
movaps xmmword [rax - 0x88], xmm9
movaps xmmword [rax - 0x98], xmm10
movaps xmmword [rax - 0xa8], xmm11
movaps xmmword [rax - 0xb8], xmm12
movaps xmmword [rax - 0xc8], xmm13
movaps xmmword [rax - 0xd8], xmm14
movaps xmmword [rax - 0xe8], xmm15
mov rax, qword [0x1401ef0c0]
xor rax, rsp
mov qword [rbp + 0x18], rax
mov esi, r9d
mov r14d, r8d
mov rdi, rdx
mov qword [rsp + 0x70], rdx
mov r13, rcx
xor r12d, r12d
mov dword [rbp - 0x74], r12d
xorps xmm13, xmm13
mov r9, qword [0x140273d10]
cmp qword [r9 + 0x38], r12
jne 0x14004d7df
xorps xmm15, xmm15
xorps xmm0, xmm0
movss dword [rbp - 0x70], xmm0
jmp 0x14004d842
mov r8, qword [r9 + 0x38]
mov rdx, qword [r9 + 0x30]
dec rdx
add rdx, r8
mov rcx, rdx
shr rcx, 1
mov rax, qword [r9 + 0x28]
dec rax
and rcx, rax
and edx, 1
mov rax, qword [r9 + 0x20]
mov rcx, qword [rax + rcx*8]
movss xmm0, dword [rcx + rdx*8 + 4]
movss dword [rbp - 0x70], xmm0
movss xmm15, dword [rcx + rdx*8]
lea rax, [r8 - 1]
mov qword [r9 + 0x38], rax
test rax, rax
jne 0x14004d82a
mov qword [r9 + 0x30], r12
movss dword [0x140272ac8], xmm15
movss dword [0x140272acc], xmm0
mov r9, qword [0x140273d10]
movaps xmm11, xmm0
addss xmm11, dword [r9 + 4]
movaps xmm12, xmm15
addss xmm12, dword [r9]
cvttss2si eax, dword [r9 + 0x238]
add eax, 0xffffffd5
mov ecx, 0x12c
cmp eax, ecx
cmovl ecx, eax
movd xmm6, ecx
cvtdq2ps xmm6, xmm6
movss dword [rbp - 0x78], xmm6
mov rdx, r13
lea rcx, [rbp - 0x20]
call fcn.140039b40
mov rcx, qword [rax]
mov rbx, qword [rcx + 0x10]
lea rcx, [rbp - 0x20]
call fcn.140008d70
movss xmm14, dword [0x1401cb110]
test rbx, rbx
je 0x14004d960
mov rax, qword [0x140273d10]
movss xmm0, dword [rax + 0x2f0]
mulss xmm0, xmm14
cvttss2si eax, xmm0
mov word [rsp + 0x40], 0xc8c8
mov byte [rsp + 0x42], 0xc8
mov byte [rsp + 0x43], al
movaps xmm1, xmm11
subss xmm1, dword [0x1401cafa0]
movaps xmm0, xmm12
addss xmm0, xmm13
movss dword [rbp - 0x80], xmm0
movss dword [rbp - 0x7c], xmm1
mov rdx, r13
lea rcx, [rbp - 0x40]
call fcn.140039b40
nop
mov rdx, qword [rax]
cmp qword [rdx + 0x18], 0xf
jbe 0x14004d906
mov rdx, qword [rdx]
xorps xmm0, xmm0
movups xmmword [rbp - 0x60], xmm0
mov qword [rbp - 0x50], r12
mov qword [rbp - 0x48], r12
mov r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp byte [rdx + r8], 0
jne 0x14004d920
lea rcx, [rbp - 0x60]
call fcn.140009150
mov dword [rsp + 0x20], r12d
xor r9d, r9d
mov r8d, dword [rsp + 0x40]
lea rdx, [rbp - 0x80]
lea rcx, [rbp - 0x60]
call fcn.140082420
nop
lea rcx, [rbp - 0x40]
call fcn.140008d70
addss xmm11, dword [0x1401cafe4]
mov rax, qword [0x140272c18]
test rax, rax
jne 0x14004d987
lea ecx, [rax + 8]
call fcn.14015d780
mov qword [rsp + 0x48], rax
mov qword [rax], r12
mov dword [rax + 4], r12d
mov qword [0x140272c18], rax
movaps xmm1, xmm6
addss xmm1, xmm13
movss xmm2, dword [rax]
mov rcx, qword [0x140273d10]
comiss xmm2, xmm12
jbe 0x14004da02
movss xmm3, dword [rax + 4]
comiss xmm3, xmm11
jbe 0x14004da02
movaps xmm0, xmm12
addss xmm0, xmm1
comiss xmm0, xmm2
jbe 0x14004da02
movaps xmm0, xmm11
addss xmm0, dword [0x1401cafc4]
comiss xmm0, xmm3
jbe 0x14004da02
movss xmm0, dword [rcx + 0x234]
movss xmm1, dword [rcx + 0x230]
comiss xmm2, xmm1
jbe 0x14004da02
comiss xmm3, xmm0
jbe 0x14004da02
addss xmm1, dword [rcx + 0x238]
comiss xmm1, xmm2
jbe 0x14004da02
addss xmm0, dword [rcx + 0x23c]
comiss xmm0, xmm3
mov byte [rsp + 0x60], 1
ja 0x14004da07
mov byte [rsp + 0x60], 0
movss xmm0, dword [rcx + 0x2f0]
mulss xmm0, xmm14
cvttss2si ebx, xmm0
mov rax, qword [0x1402718d8]
mov rax, qword [rax + 0x48b8]
lea r8, str.Foreground
mov edx, 1
mov rcx, qword [rax]
call fcn.1400561d0
mov r10, rax
movzx ecx, bl
movd xmm1, ecx
cvtdq2ps xmm1, xmm1
divss xmm1, xmm14
mov dword [rsp + 0x48], 0x3d909091
mov dword [rsp + 0x4c], 0x3d909091
mov dword [rsp + 0x50], 0x3d909091
movss dword [rsp + 0x54], xmm1
lea rcx, [rsp + 0x48]
call fcn.140053cc0
movaps xmm1, xmm11
addss xmm1, dword [0x1401cafa8]
movss dword [rsp + 0x40], xmm1
movaps xmm0, xmm6
addss xmm0, xmm12
movss dword [rsp + 0x68], xmm0
movss dword [rsp + 0x6c], xmm1
movss dword [rbp - 0x80], xmm12
movss dword [rbp - 0x7c], xmm11
mov dword [rsp + 0x28], r12d
movss dword [rsp + 0x20], xmm13
mov r9d, eax
lea r8, [rsp + 0x68]
lea rdx, [rbp - 0x80]
mov rcx, r10
call fcn.140073900
movd xmm3, r14d
cvtdq2ps xmm3, xmm3
movss dword [rbp - 0x80], xmm3
movd xmm1, esi
cvtdq2ps xmm1, xmm1
subss xmm1, xmm3
movss dword [rbp - 0x68], xmm1
movaps xmm2, xmm6
subss xmm2, xmm13
movss dword [rbp - 0x6c], xmm2
movd xmm0, dword [rdi]
cvtdq2ps xmm0, xmm0
subss xmm0, xmm3
divss xmm0, xmm1
mulss xmm0, xmm2
addss xmm0, xmm13
cvttss2si edx, xmm0
mov rax, qword [0x140273d10]
movss xmm3, dword [rax + 0x2f0]
movaps xmm1, xmm3
mulss xmm1, dword [0x1401caeec]
mov rcx, qword [0x1402723e8]
movzx eax, byte [rcx + 3]
movd xmm2, eax
cvtdq2ps xmm2, xmm2
movaps xmm0, xmm2
mulss xmm0, xmm1
cvttss2si ebx, xmm0
movzx r14d, byte [rcx]
movzx esi, byte [rcx + 1]
movzx edi, byte [rcx + 2]
mulss xmm3, xmm2
cvttss2si r15d, xmm3
movd xmm10, edx
cvtdq2ps xmm10, xmm10
mov rax, qword [0x1402718d8]
mov rax, qword [rax + 0x48b8]
lea r8, str.Foreground
mov edx, 1
mov rcx, qword [rax]
call fcn.1400561d0
mov r11, rax
movzx ecx, bl
movd xmm6, ecx
cvtdq2ps xmm6, xmm6
divss xmm6, xmm14
movd xmm9, edi
cvtdq2ps xmm9, xmm9
divss xmm9, xmm14
movd xmm8, esi
cvtdq2ps xmm8, xmm8
divss xmm8, xmm14
movd xmm7, r14d
cvtdq2ps xmm7, xmm7
divss xmm7, xmm14
movss dword [rsp + 0x48], xmm7
movss dword [rsp + 0x4c], xmm8
movss dword [rsp + 0x50], xmm9
movss dword [rsp + 0x54], xmm6
lea rcx, [rsp + 0x48]
call fcn.140053cc0
mov r10d, eax
movss dword [rsp + 0x48], xmm7
movss dword [rsp + 0x4c], xmm8
movss dword [rsp + 0x50], xmm9
movss dword [rsp + 0x54], xmm6
lea rcx, [rsp + 0x48]
call fcn.140053cc0
mov r9d, eax
movzx ecx, r15b
movd xmm6, ecx
cvtdq2ps xmm6, xmm6
divss xmm6, xmm14
movss dword [rsp + 0x48], xmm7
movss dword [rsp + 0x4c], xmm8
movss dword [rsp + 0x50], xmm9
movss dword [rsp + 0x54], xmm6
lea rcx, [rsp + 0x48]
call fcn.140053cc0
mov r8d, eax
movss dword [rsp + 0x48], xmm7
movss dword [rsp + 0x4c], xmm8
movss dword [rsp + 0x50], xmm9
movss dword [rsp + 0x54], xmm6
lea rcx, [rsp + 0x48]
call fcn.140053cc0
movaps xmm0, xmm12
addss xmm0, xmm10
movss dword [rsp + 0x58], xmm0
movss xmm7, dword [rsp + 0x40]
movss dword [rsp + 0x5c], xmm7
movss dword [rsp + 0x48], xmm12
movss dword [rsp + 0x4c], xmm11
mov dword [rsp + 0x30], r10d
mov dword [rsp + 0x28], r9d
mov dword [rsp + 0x20], r8d
mov r9d, eax
lea r8, [rsp + 0x58]
lea rdx, [rsp + 0x48]
mov rcx, r11
call fcn.140073ab0
mov rax, qword [0x140273d10]
movss xmm0, dword [rax + 0x2f0]
mulss xmm0, xmm14
cvttss2si ebx, xmm0
mov rax, qword [0x1402718d8]
mov rax, qword [rax + 0x48b8]
lea r8, str.Foreground
mov edx, 1
mov rcx, qword [rax]
call fcn.1400561d0
mov r10, rax
movzx ecx, bl
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
divss xmm0, xmm14
mov dword [rsp + 0x48], 0x3d909091
mov dword [rsp + 0x4c], 0x3d909091
mov dword [rsp + 0x50], 0x3d909091
movss dword [rsp + 0x54], xmm0
lea rcx, [rsp + 0x48]
call fcn.140053cc0
movss xmm9, dword [rsp + 0x68]
movss dword [rsp + 0x48], xmm9
movss dword [rsp + 0x4c], xmm7
movss dword [rsp + 0x68], xmm12
movss dword [rsp + 0x6c], xmm11
movss xmm0, dword [0x1401caf0c]
movss dword [rsp + 0x30], xmm0
movss dword [rsp + 0x20], xmm13
mov r9d, eax
lea r8, [rsp + 0x48]
lea rdx, [rsp + 0x68]
mov rcx, r10
call fcn.1400737f0
mov rax, qword [0x140273d10]
movss xmm0, dword [rax + 0x2f0]
mulss xmm0, xmm14
cvttss2si eax, xmm0
mov word [rsp + 0x58], 0xc8c8
mov byte [rsp + 0x5a], 0xc8
mov byte [rsp + 0x5b], al
movaps xmm6, xmm11
addss xmm6, dword [0x1401caf5c]
addss xmm10, xmm12
movss dword [rsp + 0x48], xmm10
movss dword [rsp + 0x4c], xmm6
mov r8d, dword [rsp + 0x58]
movss xmm1, dword [0x1401cafa0]
lea rcx, [rsp + 0x48]
call fcn.140082cc0
mov rax, qword [0x140273d10]
movss xmm0, dword [rax + 0x2f0]
mulss xmm0, xmm14
cvttss2si eax, xmm0
mov word [rsp + 0x58], 0x7878
mov byte [rsp + 0x5a], 0x78
mov byte [rsp + 0x5b], al
movss dword [rsp + 0x48], xmm10
movss dword [rsp + 0x4c], xmm6
mov r8d, dword [rsp + 0x58]
movss xmm1, dword [0x1401caf40]
lea rcx, [rsp + 0x48]
call fcn.140082cc0
mov r14, qword [rsp + 0x70]
mov rdx, qword [rbp + 0x130]
cmp qword [rdx + 0x18], 0xf
jbe 0x14004de33
mov rdx, qword [rdx]
mov r8d, dword [r14]
lea rcx, [rbp - 8]
call fcn.14004e7a0
mov rax, qword [0x140273d10]
movss xmm0, dword [rax + 0x2f0]
mulss xmm0, xmm14
cvttss2si eax, xmm0
mov word [rsp + 0x58], 0x9696
mov byte [rsp + 0x5a], 0x96
mov byte [rsp + 0x5b], al
xorps xmm0, xmm0
movups xmmword [rbp - 0x60], xmm0
mov qword [rbp - 0x50], r12
mov qword [rbp - 0x48], r12
lea rax, [rbp - 8]
mov rbx, 0xffffffffffffffff
mov r8, rbx
inc r8
cmp byte [rax + r8], 0
jne 0x14004de84
lea rdx, [rbp - 8]
lea rcx, [rbp - 0x60]
call fcn.140009150
xor r8d, r8d
lea rdx, [rbp - 0x60]
lea rcx, [rsp + 0x70]
call fcn.140082310
movss xmm1, dword [rbp - 0x78]
subss xmm1, dword [rax]
movaps xmm0, xmm11
subss xmm0, dword [0x1401cb008]
addss xmm1, xmm12
movss dword [rsp + 0x48], xmm1
movss dword [rsp + 0x4c], xmm0
xorps xmm0, xmm0
movups xmmword [rbp - 0x40], xmm0
mov qword [rbp - 0x30], r12
mov qword [rbp - 0x28], r12
lea rax, [rbp - 8]
inc rbx
cmp byte [rax + rbx], 0
jne 0x14004dee5
mov r8, rbx
lea rdx, [rbp - 8]
lea rcx, [rbp - 0x40]
call fcn.140009150
mov dword [rsp + 0x20], r12d
xor r9d, r9d
mov r8d, dword [rsp + 0x58]
lea rdx, [rsp + 0x48]
lea rcx, [rbp - 0x40]
call fcn.140082420
mov eax, dword [r14]
dec eax
movzx r15d, byte [rbp + 0x140]
mov esi, dword [rbp + 0x120]
cmp eax, esi
jl 0x14004e149
test r15b, r15b
je 0x14004e149
mov rax, qword [0x140273d10]
movss xmm0, dword [rax + 0x2f0]
mulss xmm0, xmm14
cvttss2si ebx, xmm0
movaps xmm8, xmm11
subss xmm8, dword [0x1401cb1f4]
movaps xmm7, xmm12
subss xmm7, dword [0x1401caf5c]
movaps xmm6, xmm12
movss xmm10, dword [0x1401cafa8]
subss xmm6, xmm10
mov rax, qword [0x1402718d8]
mov rax, qword [rax + 0x48b8]
lea r8, str.Foreground
mov edx, 1
mov rcx, qword [rax]
call fcn.1400561d0
mov r10, rax
movzx ecx, bl
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
divss xmm0, xmm14
mov dword [rsp + 0x48], 0x3ec8c8c9
mov dword [rsp + 0x4c], 0x3ec8c8c9
mov dword [rsp + 0x50], 0x3ec8c8c9
movss dword [rsp + 0x54], xmm0
lea rcx, [rsp + 0x48]
call fcn.140053cc0
movss dword [rsp + 0x48], xmm7
movss dword [rsp + 0x4c], xmm8
movss dword [rsp + 0x68], xmm6
movss dword [rsp + 0x6c], xmm8
movss xmm0, dword [0x1401caf0c]
movss dword [rsp + 0x20], xmm0
mov r9d, eax
lea r8, [rsp + 0x48]
lea rdx, [rsp + 0x68]
mov rcx, r10
call fcn.140073690
mov rbx, qword [0x140272c18]
test rbx, rbx
jne 0x14004e043
lea ecx, [rbx + 8]
call fcn.14015d780
mov rbx, rax
mov qword [rsp + 0x48], rax
mov qword [rax], r12
mov dword [rax + 4], r12d
mov qword [0x140272c18], rax
movaps xmm0, xmm11
subss xmm0, xmm13
movaps xmm1, xmm12
movss xmm2, dword [0x1401cafd0]
subss xmm1, xmm2
movss xmm4, dword [rbx]
comiss xmm4, xmm1
jbe 0x14004e161
movss xmm3, dword [rbx + 4]
comiss xmm3, xmm0
jbe 0x14004e16f
addss xmm1, xmm2
comiss xmm1, xmm4
jbe 0x14004e16f
addss xmm0, xmm10
comiss xmm0, xmm3
jbe 0x14004e16f
mov ecx, 1
call fcn.14007bd70
xor r8d, r8d
xor edx, edx
mov ecx, eax
call fcn.14005ee80
test al, al
je 0x14004e16f
mov edi, dword [r14]
movd xmm6, edi
cvtdq2ps xmm6, xmm6
movaps xmm0, xmm6
call fcn.140189a9c
ucomiss xmm6, xmm0
jp 0x14004e0fc
jne 0x14004e0fc
lea edx, [rdi - 1]
mov dword [rsp + 0x58], edx
lea rcx, [rbp + 0x120]
lea rax, [rsp + 0x58]
cmp edx, esi
cmovge rcx, rax
lea rax, [rbp + 0x128]
mov edi, dword [rbp + 0x128]
cmp edi, edx
cmovge rax, rcx
mov eax, dword [rax]
mov dword [r14], eax
jmp 0x14004e175
movd xmm6, edi
cvtdq2pd xmm6, xmm6
movaps xmm0, xmm6
call fcn.1401871ec
subsd xmm6, xmm0
cvttsd2si eax, xmm6
sub edi, eax
lea edx, [rdi - 1]
mov dword [rsp + 0x58], edx
lea rcx, [rbp + 0x120]
lea rax, [rsp + 0x58]
cmp edx, esi
cmovge rcx, rax
lea rax, [rbp + 0x128]
mov edi, dword [rbp + 0x128]
cmp edi, edx
cmovge rax, rcx
mov eax, dword [rax]
mov dword [r14], eax
jmp 0x14004e175
mov rbx, qword [0x140272c18]
movss xmm10, dword [0x1401cafa8]
mov edi, dword [rbp + 0x128]
jmp 0x14004e17b
movss xmm7, dword [rsp + 0x40]
mov edi, dword [rbp + 0x128]
jmp 0x14004e17b
mov edi, dword [rbp + 0x128]
movss xmm7, dword [rsp + 0x40]
mov eax, dword [r14]
inc eax
cmp eax, edi
jg 0x14004e42b
test r15b, r15b
je 0x14004e42b
mov rax, qword [0x140273d10]
movss xmm0, dword [rax + 0x2f0]
mulss xmm0, xmm14
cvttss2si ebx, xmm0
movaps xmm8, xmm7
subss xmm8, dword [0x1401cafa0]
movaps xmm7, xmm9
addss xmm7, xmm10
movaps xmm6, xmm9
addss xmm6, dword [0x1401caf5c]
mov rax, qword [0x1402718d8]
mov rax, qword [rax + 0x48b8]
lea r8, str.Foreground
mov edx, 1
mov rcx, qword [rax]
call fcn.1400561d0
mov r10, rax
movzx ecx, bl
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
divss xmm0, xmm14
mov dword [rsp + 0x70], 0x3ec8c8c9
mov dword [rsp + 0x74], 0x3ec8c8c9
mov dword [rsp + 0x78], 0x3ec8c8c9
movss dword [rsp + 0x7c], xmm0
lea rcx, [rsp + 0x70]
call fcn.140053cc0
movss dword [rsp + 0x48], xmm7
movss dword [rsp + 0x4c], xmm8
movss dword [rsp + 0x68], xmm6
movss dword [rsp + 0x6c], xmm8
movss xmm0, dword [0x1401caf0c]
movss dword [rsp + 0x20], xmm0
mov r9d, eax
lea r8, [rsp + 0x48]
lea rdx, [rsp + 0x68]
mov rcx, r10
call fcn.140073690
mov rax, qword [0x140273d10]
movss xmm0, dword [rax + 0x2f0]
mulss xmm0, xmm14
cvttss2si ebx, xmm0
movss xmm8, dword [rsp + 0x40]
movaps xmm7, xmm8
subss xmm7, dword [0x1401caf5c]
movaps xmm6, xmm9
addss xmm6, dword [0x1401caf88]
subss xmm8, xmm10
mov rax, qword [0x1402718d8]
mov rax, qword [rax + 0x48b8]
lea r8, str.Foreground
mov edx, 1
mov rcx, qword [rax]
call fcn.1400561d0
mov r10, rax
movzx ecx, bl
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
divss xmm0, xmm14
mov dword [rsp + 0x70], 0x3ec8c8c9
mov dword [rsp + 0x74], 0x3ec8c8c9
mov dword [rsp + 0x78], 0x3ec8c8c9
movss dword [rsp + 0x7c], xmm0
lea rcx, [rsp + 0x70]
call fcn.140053cc0
movss dword [rsp + 0x48], xmm6
movss dword [rsp + 0x4c], xmm7
movss dword [rsp + 0x68], xmm6
movss dword [rsp + 0x6c], xmm8
movss xmm0, dword [0x1401caf0c]
movss dword [rsp + 0x20], xmm0
mov r9d, eax
lea r8, [rsp + 0x48]
lea rdx, [rsp + 0x68]
mov rcx, r10
call fcn.140073690
mov rbx, qword [0x140272c18]
test rbx, rbx
jne 0x14004e362
lea ecx, [rbx + 8]
call fcn.14015d780
mov rbx, rax
mov qword [rsp + 0x70], rax
mov qword [rax], r12
mov dword [rax + 4], r12d
mov qword [0x140272c18], rax
addss xmm11, xmm13
movss xmm1, dword [rbx]
comiss xmm1, xmm9
jbe 0x14004e42b
movss xmm0, dword [rbx + 4]
comiss xmm0, xmm11
jbe 0x14004e42b
addss xmm9, dword [0x1401cafd0]
comiss xmm9, xmm1
jbe 0x14004e42b
addss xmm11, xmm10
comiss xmm11, xmm0
jbe 0x14004e42b
mov ecx, 1
call fcn.14007bd70
xor r8d, r8d
xor edx, edx
mov ecx, eax
call fcn.14005ee80
test al, al
je 0x14004e42b
mov r15d, dword [r14]
movd xmm6, r15d
cvtdq2ps xmm6, xmm6
movaps xmm0, xmm6
call fcn.140189a9c
ucomiss xmm6, xmm0
jp 0x14004e3e0
jne 0x14004e3e0
lea edx, [r15 + 1]
jmp 0x14004e403
movd xmm6, r15d
cvtdq2pd xmm6, xmm6
movaps xmm0, xmm6
call fcn.1401871ec
subsd xmm6, xmm0
andps xmm6, xmmword [0x1401cb8f0]
cvttsd2si edx, xmm6
add edx, r15d
lea rcx, [rbp + 0x120]
cmp edx, esi
lea rax, [rsp + 0x58]
cmovge rcx, rax
lea rax, [rbp + 0x128]
cmp edi, edx
cmovge rax, rcx
mov dword [rsp + 0x58], edx
mov eax, dword [rax]
mov dword [r14], eax
mov r15, qword [0x140273d10]
mov qword [rsp + 0x48], r15
mov r10, qword [r15 + 0x260]
test r10, r10
jne 0x14004e54a
movabs rdi, 0xcbf29ce484222325
movabs rsi, 0x100000001b3
cmp byte [rsp + 0x60], r10b
je 0x14004e4eb
test rbx, rbx
jne 0x14004e48d
lea ecx, [rbx + 8]
call fcn.14015d780
mov qword [rsp + 0x70], rax
mov qword [rax], r12
mov dword [rax + 4], r12d
mov qword [0x140272c18], rax
mov r15, qword [0x140273d10]
mov ecx, 1
call fcn.14007bd70
xor r8d, r8d
xor edx, edx
mov ecx, eax
call fcn.14005ee80
test al, al
je 0x14004e4eb
mov r9, qword [r13 + 0x10]
mov r8, r13
cmp qword [r13 + 0x18], 0xf
jbe 0x14004e4b9
mov r8, qword [r13]
mov rcx, rdi
mov rdx, r12
test r9, r9
je 0x14004e4e4
nop dword [rax]
nop dword [rax + rax]
movzx eax, byte [rdx + r8]
xor rcx, rax
imul rcx, rsi
inc rdx
cmp rdx, r9
jb 0x14004e4d0
mov qword [r15 + 0x260], rcx
lea r15, [r13 + 0x10]
lea rbx, [r13 + 0x18]
mov rdx, r13
lea rcx, [rbp - 0x20]
call fcn.140039b40
nop
mov rax, qword [rax]
cmp qword [rax + 0x10], 0
je 0x14004e69f
mov rdx, r13
lea rcx, [rbp - 0x40]
call fcn.140039b40
nop
mov r14d, 1
mov dword [rbp - 0x74], r14d
mov rdx, qword [rax]
lea rcx, [rbp - 0x60]
call fcn.140008b60
xor r8d, r8d
mov rdx, rax
lea rcx, [rbp - 0x80]
call fcn.140082310
movss xmm0, dword [rax + 4]
jmp 0x14004e6a7
lea r15, [r13 + 0x10]
mov r9, qword [r15]
mov r8, r13
lea r11, [r13 + 0x18]
cmp qword [r11], 0xf
jbe 0x14004e562
mov r8, qword [r13]
movabs rdi, 0xcbf29ce484222325
mov rcx, rdi
mov rdx, r12
movabs rsi, 0x100000001b3
test r9, r9
je 0x14004e595
movzx eax, byte [r8 + rdx]
xor rcx, rax
imul rcx, rsi
inc rdx
cmp rdx, r9
jb 0x14004e581
cmp r10, rcx
jne 0x14004e4ef
test rbx, rbx
jne 0x14004e5d1
lea ecx, [rbx + 8]
call fcn.14015d780
mov rbx, rax
mov qword [rsp + 0x70], rax
mov qword [rax], r12
mov dword [rax + 4], r12d
mov qword [0x140272c18], rax
mov rax, qword [0x140273d10]
mov qword [rsp + 0x48], rax
lea r11, [r13 + 0x18]
mov ecx, 1
call fcn.14007bd70
mov ecx, eax
call fcn.14005ee00
test al, al
je 0x14004e68b
cvttss2si eax, dword [rbp - 0x78]
mov dword [rsp + 0x68], eax
mov dword [rsp + 0x58], r12d
test rbx, rbx
jne 0x14004e61b
lea ecx, [rbx + 8]
call fcn.14015d780
mov rbx, rax
mov qword [rsp + 0x70], rax
mov qword [rax], r12
mov dword [rax + 4], r12d
mov qword [0x140272c18], rax
movss xmm0, dword [rbx]
subss xmm0, xmm12
cvttss2si edx, xmm0
mov dword [rsp + 0x40], edx
mov eax, edx
shr eax, 0x1f
lea rcx, [rsp + 0x58]
lea r8, [rsp + 0x40]
test al, al
cmove rcx, r8
lea rax, [rsp + 0x68]
cvttss2si r8d, dword [rbp - 0x78]
cmp r8d, edx
cmovge rax, rcx
movd xmm0, dword [rax]
cvtdq2pd xmm0, xmm0
call fcn.14018a9a8
cvttsd2si eax, xmm0
movd xmm1, eax
cvtdq2ps xmm1, xmm1
subss xmm1, xmm13
divss xmm1, dword [rbp - 0x6c]
mulss xmm1, dword [rbp - 0x68]
addss xmm1, dword [rbp - 0x80]
cvttss2si eax, xmm1
mov dword [r14], eax
jmp 0x14004e4ef
mov rax, qword [rsp + 0x48]
mov qword [rax + 0x260], r12
mov rbx, r11
jmp 0x14004e4f3
movaps xmm0, xmm13
mov r14d, dword [rbp - 0x74]
addss xmm0, xmm10
addss xmm0, dword [0x1401cafe0]
movss xmm1, dword [rbp - 0x70]
addss xmm1, xmm0
addss xmm15, xmm13
movss dword [rsp + 0x48], xmm15
movss dword [rsp + 0x4c], xmm1
lea rcx, [rsp + 0x48]
call fcn.1400399f0
nop
test r14b, 1
je 0x14004e6ea
lea rcx, [rbp - 0x40]
call fcn.140008d70
nop
lea rcx, [rbp - 0x20]
call fcn.140008d70
mov rcx, qword [r15]
cmp qword [rbx], 0xf
jbe 0x14004e700
mov r13, qword [r13]
test rcx, rcx
je 0x14004e724
nop word [rax + rax]
movzx eax, byte [r12 + r13]
xor rdi, rax
imul rdi, rsi
inc r12
cmp r12, rcx
jb 0x14004e710
mov rax, qword [0x140273d10]
cmp qword [rax + 0x260], rdi
sete al
mov rcx, qword [rbp + 0x18]
xor rcx, rsp
call fcn.14015d760
lea r11, [rsp + 0x1c8]
movaps xmm6, xmmword [r11 - 0x18]
movaps xmm7, xmmword [r11 - 0x28]
movaps xmm8, xmmword [r11 - 0x38]
movaps xmm9, xmmword [r11 - 0x48]
movaps xmm10, xmmword [r11 - 0x58]
movaps xmm11, xmmword [r11 - 0x68]
movaps xmm12, xmmword [r11 - 0x78]
movaps xmm13, xmmword [r11 - 0x88]
movaps xmm14, xmmword [r11 - 0x98]
movaps xmm15, xmmword [r11 - 0xa8]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret