Function at 0x1800572e0
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
push rbp
push rsi
push rdi
push r13
push r14
push r15
lea rbp, [rax - 0x5f]
sub rsp, 0xe8
mov r8, qword [0x1800801d0]
mov rdi, rdx
movaps xmmword [rax - 0x58], xmm7
mov r13, rcx
movaps xmmword [rax - 0x78], xmm9
movaps xmmword [rax - 0x98], xmm11
mov rax, qword [r8 + 0x1a80]
movaps xmmword [rsp + 0x60], xmm13
mov byte [rax + 0x80], 1
mov r14, qword [r8 + 0x1a80]
cmp byte [r14 + 0x83], 0
jne 0x180057718
mov rsi, qword [0x1800801d0]
mov rdx, rcx
mov rcx, r14
xor r8d, r8d
call fcn.180033a10
movss xmm0, dword [0x180071428]
lea rcx, [rsp + 0x30]
mov r9b, 1
movss dword [rsp + 0x20], xmm0
xor r8d, r8d
mov rdx, r13
mov r15d, eax
call fcn.180030770
call fcn.180033950
movss xmm2, dword [rsi + 0x15a4]
xorps xmm13, xmm13
movss xmm1, dword [rsp + 0x30]
addss xmm2, xmm2
comiss xmm1, xmm13
movss xmm11, dword [r14 + 0xd0]
movaps xmm9, xmm0
addss xmm2, dword [rsp + 0x34]
movss xmm7, dword [r14 + 0xd4]
jbe 0x1800573be
addss xmm1, dword [rsi + 0x15b8]
jmp 0x1800573c1
xorps xmm1, xmm1
addss xmm1, xmm9
movss dword [rsp + 0x38], xmm11
addss xmm2, xmm7
movss dword [rbp - 0x7d], xmm7
lea rcx, [rsp + 0x38]
addss xmm1, xmm11
movss dword [rbp - 0x75], xmm2
movss dword [rbp - 0x79], xmm1
movss xmm1, dword [rsi + 0x15a4]
call fcn.180035b90
xor r8d, r8d
lea rcx, [rsp + 0x38]
mov edx, r15d
call fcn.1800358d0
test al, al
je 0x180057718
mov qword [rsp + 0x120], rbx
lea r9, [rbp + 0x7f]
mov qword [rsp + 0xe0], r12
lea r8, [rbp + 0x77]
movaps xmmword [rsp + 0xd0], xmm6
lea rcx, [rsp + 0x38]
movaps xmmword [rsp + 0xb0], xmm8
xor ebx, ebx
movaps xmmword [rsp + 0x90], xmm10
mov edx, r15d
movaps xmmword [rsp + 0x70], xmm12
mov dword [rsp + 0x20], ebx
call fcn.180056ad0
movzx r12d, al
test al, al
je 0x180057471
cmp byte [rdi], bl
sete cl
mov byte [rdi], cl
mov ecx, r15d
call fcn.1800360c0
movaps xmm8, xmm11
movss dword [rbp - 0x71], xmm11
movaps xmm10, xmm7
movss dword [rbp - 0x6d], xmm7
addss xmm8, xmm9
mov r8d, 1
addss xmm10, xmm9
mov edx, r15d
lea rcx, [rsp + 0x38]
movss dword [rbp - 0x69], xmm8
movss dword [rbp - 0x65], xmm10
call fcn.18003bb00
movss xmm12, dword [rsi + 0x15a8]
movzx eax, byte [rbp + 0x77]
cmp byte [rbp + 0x7f], bl
je 0x1800574ca
test al, al
je 0x1800574ca
mov ecx, 9
jmp 0x1800574d4
test al, al
mov ecx, ebx
setne cl
add ecx, 7
movss xmm6, dword [0x1800713bc]
movaps xmm1, xmm6
call fcn.1800337f0
mov rdx, qword [rbp - 0x69]
mov r9b, 1
mov rcx, qword [rbp - 0x71]
mov r8d, eax
movss dword [rsp + 0x20], xmm12
call fcn.18003b7f0
movaps xmm1, xmm6
mov ecx, 0x12
call fcn.1800337f0
test byte [r14 + 0x1b8], 0x40
mov r8d, eax
movaps xmm12, xmmword [rsp + 0x70]
je 0x180057597
divss xmm9, dword [0x180076e50]
mov dword [rsp + 0x28], 0xf
mov r9d, eax
lea r8, [rbp + 0x77]
lea rdx, [rbp + 0x7f]
movaps xmm1, xmm8
cvttss2si ecx, xmm9
movd xmm0, ecx
mov rcx, qword [r14 + 0x2b0]
cvtdq2ps xmm0, xmm0
maxss xmm6, xmm0
movaps xmm0, xmm6
subss xmm1, xmm6
addss xmm0, xmm11
subss xmm10, xmm6
addss xmm6, xmm7
movss dword [rbp + 0x77], xmm1
movss dword [rbp + 0x7f], xmm0
movss xmm0, dword [rsi + 0x15a8]
movss dword [rsp + 0x20], xmm0
movss dword [rbp + 0x7b], xmm10
movss dword [rbp + 0x83], xmm6
call fcn.1800439d0
jmp 0x1800575e6
cmp byte [rdi], bl
je 0x1800575e6
mov rcx, qword [r14 + 0x2b0]
movaps xmm0, xmm9
divss xmm0, dword [0x1800713dc]
cvttss2si eax, xmm0
movd xmm1, eax
cvtdq2ps xmm1, xmm1
maxss xmm6, xmm1
movaps xmm0, xmm6
movaps xmm1, xmm6
addss xmm0, xmm11
addss xmm1, xmm7
addss xmm6, xmm6
unpcklps xmm0, xmm1
subss xmm9, xmm6
movq rdx, xmm0
movaps xmm3, xmm9
call fcn.180048090
movaps xmm10, xmmword [rsp + 0x90]
movaps xmm6, xmmword [rsp + 0xd0]
cmp byte [rsi + 0x2fc8], bl
je 0x1800576c2
cmp byte [rdi], bl
je 0x180057666
cmp byte [0x18007693f], bl
mov eax, dword [str.iKi5i]
mov dword [rbp + 0x77], eax
je 0x180057660
movabs r8, 0x47ae147ae147ae15
nop dword [rax]
nop word [rax + rax]
mov rax, r8
mul rbx
mov rax, rbx
sub rax, rdx
shr rax, 1
add rax, rdx
shr rax, 5
movsx eax, al
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
add al, 0x32
xor byte [rbp + rbx + 0x77], al
inc rbx
cmp rbx, 4
jb 0x180057630
lea rdx, [rbp + 0x77]
jmp 0x1800576b5
cmp byte [0x180076943], bl
mov eax, dword [0x180076940]
mov dword [rbp + 0x7f], eax
je 0x1800576b1
movabs r8, 0x47ae147ae147ae15
mov rax, r8
mul rbx
mov rax, rbx
sub rax, rdx
shr rax, 1
add rax, rdx
shr rax, 5
movsx eax, al
imul ecx, eax, 0x32
movzx eax, bl
sub al, cl
add al, 0x32
xor byte [rbp + rbx + 0x7f], al
inc rbx
cmp rbx, 4
jb 0x180057681
lea rdx, [rbp + 0x7f]
xor r8d, r8d
lea rcx, [rsp + 0x38]
call fcn.180035d50
movss xmm0, dword [rsp + 0x30]
comiss xmm0, xmm13
mov rbx, qword [rsp + 0x120]
jbe 0x180057701
addss xmm8, dword [rsi + 0x15b8]
addss xmm7, dword [rsi + 0x15a4]
mov r9b, 1
xor r8d, r8d
mov rdx, r13
movaps xmm0, xmm8
unpcklps xmm0, xmm7
movq rcx, xmm0
call fcn.18003bda0
movaps xmm8, xmmword [rsp + 0xb0]
movzx eax, r12b
mov r12, qword [rsp + 0xe0]
jmp 0x18005771a
xor al, al
movaps xmm13, xmmword [rsp + 0x60]
lea r11, [rsp + 0xe8]
movaps xmm7, xmmword [r11 - 0x28]
movaps xmm9, xmmword [r11 - 0x48]
movaps xmm11, xmmword [r11 - 0x68]
mov rsp, r11
pop r15
pop r14
pop r13
pop rdi
pop rsi
pop rbp
ret