Function at 0x1800b064c
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
push rbp
push rdi
push r12
push r14
push r15
lea rbp, [rsp - 0x37]
sub rsp, 0x90
mov r12d, 0xf
mov r14, r9
mov rbx, r8
mov rsi, rdx
cmp qword [r8 + 0x18], r12
jbe 0x1800b0682
mov r8, qword [r8]
mov edx, 0x84222325
xor r15d, r15d
jmp 0x1800b069a
movsx eax, al
xor eax, edx
imul edx, eax, 0x1b3
inc r8
mov al, byte [r8]
test al, al
jne 0x1800b068c
mov r8d, edx
lea rdx, [rbp - 0x11]
call fcn.1800b15bc
cmp qword [rbp - 1], r15
jne 0x1800b06c8
mov rdx, r14
mov rcx, rsi
call fcn.1800b23d0
mov edi, 0x1000
jmp 0x1800b0833
mov word [rbp + 0x77], 0x3309
lea r9, [rbp + 0x77]
mov r8d, r15d
mov eax, 0xa0a0a0a1
mul r8d
shr edx, 5
movsx eax, dl
imul ecx, eax, 0x33
mov al, r8b
inc r8d
sub al, cl
add al, 0x32
xor byte [r9], al
inc r9
cmp r8d, 2
jl 0x1800b06d5
xorps xmm0, xmm0
lea rax, [rbp + 0x77]
xorps xmm1, xmm1
or r8, 0xffffffffffffffff
movups xmmword [rbp + 0xf], xmm0
movdqu xmmword [rbp + 0x1f], xmm1
inc r8
cmp byte [rax + r8], r15b
jne 0x1800b0713
lea rdx, [rbp + 0x77]
lea rcx, [rbp + 0xf]
call fcn.180029790
lea r8, [rbp + 0xf]
lea rdx, [rbp - 0x11]
lea rcx, [rbp - 0x29]
call fcn.1800b2034
mov rdx, qword [rbp + 0x27]
mov edi, 0x1000
cmp rdx, r12
jbe 0x1800b0775
mov rcx, qword [rbp + 0xf]
inc rdx
mov rax, rcx
cmp rdx, rdi
jb 0x1800b0770
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800b08cc
call fcn.1800bf340
mov rax, qword [rbp - 0x21]
sub rax, qword [rbp - 0x29]
and rax, 0xffffffffffffffe0
cmp rax, 0x80
je 0x1800b0791
mov rdx, r14
jmp 0x1800b0822
lea rcx, [rbp - 0x39]
call fcn.1800b245c
mov rcx, qword [rbp - 0x29]
cmp qword [rcx + 0x18], r12
jbe 0x1800b07a7
mov rcx, qword [rcx]
call fcn.1800c0d9c
mov rcx, qword [rbp - 0x29]
xorps xmm1, xmm1
cvtsd2ss xmm1, xmm0
add rcx, 0x20
movss dword [rbp - 0x39], xmm1
cmp qword [rcx + 0x18], r12
jbe 0x1800b07c9
mov rcx, qword [rcx]
call fcn.1800c0d9c
mov rcx, qword [rbp - 0x29]
xorps xmm1, xmm1
cvtsd2ss xmm1, xmm0
add rcx, 0x40
movss dword [rbp - 0x35], xmm1
cmp qword [rcx + 0x18], r12
jbe 0x1800b07eb
mov rcx, qword [rcx]
call fcn.1800c0d9c
mov rcx, qword [rbp - 0x29]
xorps xmm1, xmm1
cvtsd2ss xmm1, xmm0
add rcx, 0x60
movss dword [rbp - 0x31], xmm1
cmp qword [rcx + 0x18], r12
jbe 0x1800b080d
mov rcx, qword [rcx]
call fcn.1800c0d9c
xorps xmm1, xmm1
lea rdx, [rbp - 0x39]
cvtsd2ss xmm1, xmm0
movss dword [rbp - 0x2d], xmm1
mov rcx, rsi
call fcn.1800b23d0
lea rcx, [rbp - 0x29]
call fcn.180030424
mov rdx, qword [rbp + 7]
cmp rdx, r12
jbe 0x1800b0865
mov rcx, qword [rbp - 0x11]
inc rdx
mov rax, rcx
cmp rdx, rdi
jb 0x1800b0860
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800b08cc
call fcn.1800bf340
mov rdx, qword [rbx + 0x18]
mov qword [rbp - 1], r15
mov qword [rbp + 7], r12
mov byte [rbp - 0x11], r15b
cmp rdx, r12
jbe 0x1800b08a2
mov rcx, qword [rbx]
inc rdx
cmp rdx, rdi
jb 0x1800b089d
mov r8, qword [rcx - 8]
add rdx, 0x27
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x1800b08cc
mov rcx, r8
call fcn.1800bf340
mov byte [rbx], r15b
lea r11, [rsp + 0x90]
mov qword [rbx + 0x18], r12
mov rax, rsi
mov rsi, qword [r11 + 0x38]
mov qword [rbx + 0x10], r15
mov rbx, qword [r11 + 0x30]
mov rsp, r11
pop r15
pop r14
pop r12
pop rdi
pop rbp
ret
call fcn.180089708
int3