Function at 0x1800264b0
Capabilities:
Encode data using xor

Disassembly:
mov r11, rsp
push rbp
push rbx
push rsi
push r12
push r13
push r15
lea rbp, [r11 - 0x68]
sub rsp, 0x138
mov rax, qword [0x18008d020]
xor rax, rsp
mov qword [rbp - 0x78], rax
mov rax, qword [rbp + 0x90]
mov r12d, r9d
mov r15d, dword [rcx + 0xc]
mov r13, r8
mov rsi, qword [0x18008dc38]
mov rbx, rcx
mov qword [rsp + 0x48], rax
mov dword [rsp + 0x50], r9d
mov qword [rsp + 0x68], r8
mov qword [rsp + 0x58], rdx
test r15b, 0x42
jne 0x180026dd3
cmp dword [rcx + 0xa8], 0
jg 0x180026dd3
cmp dword [rcx + 0xac], 0
jg 0x180026dd3
movss xmm1, dword [rsi + 0x1778]
movss xmm0, dword [rcx + 0x60]
movaps xmm2, xmm1
mulss xmm1, dword [0x180082614]
mov qword [r11 + 0x20], rdi
xor edi, edi
mulss xmm2, dword [0x180082658]
mov qword [r11 - 0x38], r14
movaps xmmword [r11 - 0x48], xmm6
movaps xmmword [r11 - 0x68], xmm8
movaps xmmword [r11 - 0x78], xmm9
movaps xmmword [r11 - 0x88], xmm10
movaps xmmword [r11 - 0x98], xmm11
movss xmm11, dword [0x180082728]
movaps xmmword [r11 - 0xa8], xmm12
movaps xmm9, xmm11
movaps xmmword [r11 - 0xc8], xmm14
movaps xmm10, xmm11
movaps xmmword [r11 - 0xd8], xmm15
movaps xmm14, xmm11
movss xmm15, dword [0x18008264c]
movaps xmm12, xmm11
addss xmm0, xmm15
shr r15d, 0xf
and r15d, 4
movaps xmmword [r11 - 0x58], xmm7
cmp byte [0x1800824bf], dil
mov dword [rsp + 0x54], r15d
addss xmm0, xmm1
maxss xmm2, xmm0
cvttss2si eax, xmm2
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x180082638]
cvttss2si eax, xmm0
movd xmm6, eax
mov rax, qword [0x1800824b8]
cvtdq2ps xmm6, xmm6
mov qword [rsp + 0x38], rax
movss dword [rsp + 0x40], xmm6
je 0x180026764
cmp dword [0x18008d028], 2
jl 0x180026726
movdqa xmm2, xmmword [0x1800827d0]
mov eax, 5
movdqa xmm3, xmmword [0x1800827e0]
movdqa xmm1, xmm2
movdqa xmm4, xmmword [0x1800828e0]
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
movd xmm6, eax
mov eax, 0x1f
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
movd xmm5, eax
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1800827f0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
movd xmm0, dword [rsp + 0x38]
pshufd xmm2, xmm1, 0xd8
movdqa xmm1, xmm3
andps xmm2, xmmword [0x180082810]
packuswb xmm2, xmm2
paddb xmm2, xmmword [str.2222222222222222]
xorps xmm2, xmm0
punpckldq xmm1, xmm3
movd dword [rsp + 0x38], xmm2
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm3
psrad xmm1, xmm6
movss xmm6, dword [rsp + 0x40]
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1800827f0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
movd xmm0, dword [rsp + 0x3c]
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x180082810]
packuswb xmm2, xmm2
paddb xmm2, xmmword [str.2222222222222222]
xorps xmm2, xmm0
movd dword [rsp + 0x3c], xmm2
jmp 0x180026764
lea r9, [rsp + 0x38]
mov r8d, edi
nop
mov eax, 0x8d3dcb09
lea r9, [r9 + 1]
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x3a
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x32
xor byte [r9 - 1], al
cmp r8d, 8
jl 0x180026730
lea rcx, [rsp + 0x38]
call fcn.18002b3e0
mov r14d, edi
xorps xmm8, xmm8
test r12d, r12d
jle 0x180026a9e
lea r15, [0x18008dd64]
nop word [rax + rax]
movss xmm1, dword [rbx + 0x1c]
movss xmm0, dword [rbx + 0x18]
movaps xmm2, xmm1
addss xmm2, dword [rbx + 0x24]
movaps xmm3, xmm0
addss xmm3, dword [rbx + 0x20]
subss xmm2, xmm1
subss xmm3, xmm0
mulss xmm2, dword [r15]
mulss xmm3, dword [r15 - 4]
addss xmm2, xmm1
movaps xmm1, xmm6
mulss xmm1, dword [r15 + 4]
addss xmm3, xmm0
movaps xmm0, xmm6
mulss xmm0, dword [r15 + 8]
movss dword [rsp + 0x7c], xmm2
addss xmm1, xmm3
movss dword [rsp + 0x78], xmm3
addss xmm0, xmm2
comiss xmm3, xmm1
movss dword [rbp - 0x80], xmm1
movss dword [rbp - 0x7c], xmm0
jbe 0x180026805
movss dword [rsp + 0x78], xmm1
movss dword [rbp - 0x80], xmm3
comiss xmm2, xmm0
jbe 0x180026815
movss dword [rsp + 0x7c], xmm0
movss dword [rbp - 0x7c], xmm2
mov r8, qword [rbx + 0x1d8]
lea rcx, [rsp + 0x70]
mov eax, r14d
mov edx, 8
mov qword [rsp + 0x70], rax
movsxd rax, dword [rbx + 0x1d0]
mov r8d, dword [r8 + rax*4 - 4]
call fcn.18001f5a0
mov rcx, qword [0x18008dc38]
cmp dword [rcx + 0x1890], eax
jne 0x180026855
mov byte [rcx + 0x189c], 1
lea r9, [rsp + 0x30]
mov dword [rsp + 0x20], 0x20
lea r8, [rsp + 0x31]
mov edx, eax
lea rcx, [rsp + 0x78]
call fcn.18002aa60
movzx r13d, byte [rsp + 0x31]
movzx r12d, byte [rsp + 0x30]
test r13b, r13b
jne 0x180026889
test r12b, r12b
je 0x18002689a
mov eax, r14d
not eax
and eax, 1
add eax, 5
mov dword [rsi + 0x1a70], eax
cmp qword [rsi + 0x1870], rbx
jne 0x180026927
test r12b, r12b
je 0x180026a3e
cmp byte [rsi + 0x3b5], dil
je 0x180026927
test r14d, r14d
jne 0x180026927
mov rax, qword [rsp + 0x58]
lea rcx, [rsp + 0x60]
mov rdx, rbx
mov r8, qword [rax]
call fcn.180025e90
mov rdx, qword [0x18008dc38]
movss xmm14, dword [rax]
mov ecx, dword [rdx + 0x1890]
test ecx, ecx
movss xmm12, dword [rax + 4]
setne al
mov byte [rdx + 0x189d], al
test ecx, ecx
je 0x180026900
mov dword [rdx + 0x1898], edi
mov dword [rdx + 0x1890], edi
mov byte [rdx + 0x189e], dil
mov qword [rdx + 0x18a8], rdi
test r12b, r12b
je 0x180026a5c
mov ecx, 0x20
jmp 0x180026a67
test r12b, r12b
je 0x180026a3e
movss xmm2, dword [r15 - 4]
lea rcx, [rsp + 0x38]
movss xmm3, dword [r15]
mov rdx, rbx
movss xmm0, dword [rsi + 0x110]
subss xmm0, dword [rsi + 0x18a0]
movss xmm1, dword [rbx + 0x1c]
movss xmm6, dword [rbp - 0x80]
movaps xmm10, xmm1
subss xmm6, dword [rsp + 0x78]
addss xmm1, dword [rbx + 0x24]
movss xmm7, dword [rsi + 0x114]
subss xmm7, dword [rsi + 0x18a4]
mulss xmm6, xmm2
addss xmm6, xmm0
movss xmm0, dword [rbp - 0x7c]
subss xmm0, dword [rsp + 0x7c]
mulss xmm0, xmm3
addss xmm7, xmm0
movss xmm0, dword [rbx + 0x18]
movaps xmm9, xmm0
addss xmm0, dword [rbx + 0x20]
subss xmm9, xmm6
subss xmm10, xmm7
mulss xmm9, xmm2
mulss xmm10, xmm3
addss xmm9, xmm6
subss xmm6, xmm0
addss xmm10, xmm7
subss xmm7, xmm1
mulss xmm6, xmm2
mulss xmm7, xmm3
addss xmm6, xmm0
addss xmm7, xmm1
subss xmm6, xmm9
subss xmm7, xmm10
movaps xmm0, xmm6
unpcklps xmm0, xmm7
movq r8, xmm0
call fcn.180025e90
movss xmm0, dword [r15 - 4]
ucomiss xmm0, xmm8
movss xmm14, dword [rsp + 0x38]
jp 0x180026a17
jne 0x180026a17
movaps xmm0, xmm14
subss xmm0, xmm6
subss xmm9, xmm0
movss xmm0, dword [r15]
ucomiss xmm0, xmm8
movss xmm12, dword [rsp + 0x3c]
jp 0x180026a38
jne 0x180026a38
movaps xmm0, xmm12
subss xmm0, xmm7
subss xmm10, xmm0
movss xmm6, dword [rsp + 0x40]
test r14d, r14d
je 0x180026914
test r12b, r12b
jne 0x18002691d
test r13b, r13b
jne 0x180026a5c
mov r12, qword [rsp + 0x48]
jmp 0x180026a79
test r13b, r13b
mov ecx, edi
setne cl
add ecx, 0x1e
movaps xmm1, xmm15
call fcn.18001fa00
mov r12, qword [rsp + 0x48]
mov dword [r12], eax
add r12, 4
inc r14d
add r15, 0x18
mov qword [rsp + 0x48], r12
cmp r14d, dword [rsp + 0x50]
jl 0x180026790
mov r15d, dword [rsp + 0x54]
mov r13, qword [rsp + 0x68]
mov r14, qword [rsp + 0x130]
test r15d, r15d
je 0x180026cd0
movaps xmmword [rsp + 0xb0], xmm13
movss xmm13, dword [0x1800826dc]
movaps xmm3, xmm6
movss dword [rsp + 0x20], xmm13
mov r8d, edi
lea rcx, [rsp + 0x78]
mov rdx, rbx
call fcn.180026370
mov r8, qword [rbx + 0x1d8]
lea eax, [rdi + 4]
cdqe
lea rcx, [rsp + 0x68]
mov qword [rsp + 0x68], rax
mov edx, 8
movsxd rax, dword [rbx + 0x1d0]
mov r8d, dword [r8 + rax*4 - 4]
call fcn.18001f5a0
mov rcx, qword [0x18008dc38]
cmp dword [rcx + 0x1890], eax
jne 0x180026b1d
mov byte [rcx + 0x189c], 1
lea r9, [rsp + 0x31]
mov dword [rsp + 0x20], 0x20
lea r8, [rsp + 0x30]
mov edx, eax
lea rcx, [rsp + 0x78]
call fcn.18002aa60
cmp byte [rsp + 0x30], 0
movzx ecx, byte [rsp + 0x31]
je 0x180026b58
movss xmm0, dword [rsi + 0x188c]
comiss xmm0, dword [0x18008260c]
ja 0x180026b60
test cl, cl
je 0x180026cb3
mov eax, edi
and eax, 1
add eax, 3
mov dword [rsi + 0x1a70], eax
test cl, cl
je 0x180026cb3
mov dword [r13], edi
movaps xmm11, xmm8
movss xmm0, dword [rbx + 0x18]
movaps xmm12, xmm8
movss xmm1, dword [rbx + 0x1c]
movaps xmm6, xmm0
movaps xmm7, xmm1
test edi, edi
jne 0x180026ba8
movss xmm7, dword [rsi + 0x114]
subss xmm7, dword [rsi + 0x18a4]
jmp 0x180026c01
cmp edi, 1
jne 0x180026bc8
movss xmm6, dword [rsi + 0x110]
movaps xmm12, xmm15
subss xmm6, dword [rsi + 0x18a0]
addss xmm6, xmm13
jmp 0x180026c05
cmp edi, 2
jne 0x180026bec
movss xmm7, dword [rsi + 0x114]
movaps xmm12, xmm8
subss xmm7, dword [rsi + 0x18a4]
movaps xmm11, xmm15
addss xmm7, xmm13
jmp 0x180026c09
cmp edi, 3
jne 0x180026c09
movss xmm6, dword [rsi + 0x110]
subss xmm6, dword [rsi + 0x18a0]
movaps xmm12, xmm8
movaps xmm11, xmm8
movaps xmm9, xmm0
lea rcx, [rsp + 0x48]
addss xmm0, dword [rbx + 0x20]
subss xmm9, xmm6
movaps xmm10, xmm1
addss xmm1, dword [rbx + 0x24]
subss xmm10, xmm7
mov rdx, rbx
mulss xmm9, xmm12
mulss xmm10, xmm11
addss xmm9, xmm6
subss xmm6, xmm0
addss xmm10, xmm7
subss xmm7, xmm1
mulss xmm6, xmm12
mulss xmm7, xmm11
addss xmm6, xmm0
addss xmm7, xmm1
subss xmm6, xmm9
subss xmm7, xmm10
movaps xmm0, xmm6
unpcklps xmm0, xmm7
movq r8, xmm0
call fcn.180025e90
ucomiss xmm12, xmm8
movss xmm14, dword [rsp + 0x48]
jp 0x180026c91
jne 0x180026c91
movaps xmm0, xmm14
subss xmm0, xmm6
subss xmm9, xmm0
ucomiss xmm11, xmm8
movss xmm12, dword [rsp + 0x4c]
jp 0x180026cad
jne 0x180026cad
movaps xmm0, xmm12
subss xmm0, xmm7
subss xmm10, xmm0
movss xmm6, dword [rsp + 0x40]
inc edi
cmp edi, r15d
jl 0x180026ac1
movaps xmm13, xmmword [rsp + 0xb0]
movss xmm11, dword [0x180082728]
mov rax, qword [0x18008dc38]
movaps xmm15, xmmword [rsp + 0x90]
movaps xmm7, xmmword [rsp + 0x110]
movaps xmm6, xmmword [rsp + 0x120]
mov rcx, qword [rax + 0x1860]
mov rdi, qword [rsp + 0x188]
dec dword [rcx + 0x1d0]
ucomiss xmm14, xmm11
jp 0x180026d0d
je 0x180026d3c
test dword [rbx + 0xc], 0x100
mov rcx, qword [0x18008dc38]
movss dword [rbx + 0x28], xmm14
movss dword [rbx + 0x2c], xmm12
jne 0x180026d3c
comiss xmm8, dword [rcx + 0x2a10]
jb 0x180026d3c
mov eax, dword [rcx + 0x14]
mov dword [rcx + 0x2a10], eax
movaps xmm14, xmmword [rsp + 0xa0]
movaps xmm12, xmmword [rsp + 0xc0]
ucomiss xmm9, xmm11
movaps xmm11, xmmword [rsp + 0xd0]
jp 0x180026d5f
je 0x180026dae
test dword [rbx + 0xc], 0x100
mov rcx, qword [0x18008dc38]
cvttss2si eax, xmm9
movd xmm1, eax
cvtdq2ps xmm1, xmm1
cvttss2si eax, xmm10
movss dword [rbx + 0x10], xmm1
movss dword [rbx + 0x18], xmm1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbx + 0x14], xmm0
movss dword [rbx + 0x1c], xmm0
jne 0x180026dae
comiss xmm8, dword [rcx + 0x2a10]
jb 0x180026dae
mov eax, dword [rcx + 0x14]
mov dword [rcx + 0x2a10], eax
movsd xmm0, qword [rbx + 0x28]
movaps xmm10, xmmword [rsp + 0xe0]
movaps xmm9, xmmword [rsp + 0xf0]
movaps xmm8, xmmword [rsp + 0x100]
movsd qword [rbx + 0x20], xmm0
mov rcx, qword [rbp - 0x78]
xor rcx, rsp
call fcn.180042cf0
add rsp, 0x138
pop r15
pop r13
pop r12
pop rsi
pop rbx
pop rbp
ret