Function at 0x180137390
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x20], rsi
push rdi
push r14
push r15
sub rsp, 0x40
mov r14, rdx
mov rbp, rcx
mov rbx, 0xffffffffffffffff
inc rbx
cmp byte [rbx + rcx], 0
jne 0x1801373b5
xor r15d, r15d
mov esi, r15d
mov edi, r15d
test rbx, rbx
je 0x1801373f1
mov eax, r15d
nop
movsx ecx, byte [rax + rbp]
call fcn.180370a88
add eax, edi
inc esi
imul edi, eax, 0x401
mov eax, edi
shr eax, 6
xor edi, eax
mov eax, esi
cmp rax, rbx
jb 0x1801373d0
lea eax, [rdi + rdi*8]
mov qword [rsp + 0x70], r15
mov ecx, eax
mov dword [0x1805870f8], r15d
shr ecx, 0xb
xor ecx, eax
mov dword [0x1805870e8], 1
imul ebx, ecx, 0x8001
movabs rax, 0x35b9e0803292b641
mov qword [0x1805dd278], rax
mov dword [rsp + 0x70], ebx
mov rax, qword [rsp + 0x70]
mov qword [0x180587120], rax
call fcn.1801e4620
cmp dword [rax], r15d
je 0x180137af7
movabs rax, 0xc0296a2edf545e92
mov qword [rsp + 0x70], r15
mov qword [0x1805dd278], rax
mov dword [rsp + 0x70], ebx
mov rax, qword [rsp + 0x70]
mov qword [0x180587120], rax
mov dword [0x1805870f8], r15d
mov dword [0x1805870e8], 1
call fcn.1801e4620
cmp dword [rax], r15d
je 0x180137af7
movabs rax, 0x963d27a58df860ac
mov qword [rsp + 0x70], r15
mov qword [0x1805dd278], rax
mov dword [rsp + 0x70], ebx
mov rax, qword [rsp + 0x70]
mov qword [0x180587120], rax
mov dword [0x1805870f8], r15d
mov dword [0x1805870e8], 1
call fcn.1801e4620
movabs rax, 0x98a4eb5d89a0c952
mov qword [rsp + 0x70], r15
mov qword [0x1805dd278], rax
mov dword [rsp + 0x70], ebx
mov rax, qword [rsp + 0x70]
mov qword [0x180587120], rax
mov dword [0x1805870f8], r15d
mov dword [0x1805870e8], 1
call fcn.1801e4620
cmp dword [rax], r15d
je 0x180137af7
movss xmm0, dword [r14 + 0x10]
mov edx, ebx
movss xmm3, dword [r14 + 8]
movabs rcx, 0x9a294b2138abb884
movss xmm2, dword [r14]
subss xmm0, dword [0x1805685d8]
subss xmm3, dword [0x1805ab828]
subss xmm2, dword [0x1805ab82c]
mov dword [rsp + 0x38], r15d
mov dword [rsp + 0x30], 1
mov dword [rsp + 0x28], 1
movss dword [rsp + 0x20], xmm0
call fcn.18015c8b0
cmp byte [0x1805ab817], r15b
mov edi, eax
movabs rax, 0xea1c610a04db6bbb
mov qword [rsp + 0x70], r15
mov qword [0x1805dd278], rax
mov dword [0x1805870f8], r15d
mov qword [0x180587130], r15
mov dword [0x1805870e8], 3
mov dword [rsp + 0x70], edi
je 0x180137856
mov rcx, qword [rsp + 0x70]
mov qword [rsp + 0x70], r15
mov qword [0x180587120], rcx
mov dword [rsp + 0x70], 1
mov rcx, qword [rsp + 0x70]
mov qword [0x180587128], rcx
call fcn.1801e4620
mov qword [rsp + 0x70], r15
movabs rax, 0x44a0870b7e92d7c0
mov qword [0x1805dd278], rax
mov dword [rsp + 0x70], edi
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x70], r15
mov qword [0x180587120], rax
mov dword [rsp + 0x70], 0xff
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x70], r15
mov qword [0x180587128], rax
mov dword [rsp + 0x70], 1
mov rax, qword [rsp + 0x70]
mov qword [0x180587130], rax
mov dword [0x1805870f8], r15d
mov dword [0x1805870e8], 3
call fcn.1801e4620
movabs rax, 0x6faacd625d80caa
mov qword [rsp + 0x70], r15
mov qword [0x1805dd278], rax
mov dword [rsp + 0x70], edi
mov rax, qword [rsp + 0x70]
mov qword [0x180587120], rax
mov dword [0x1805870f8], r15d
mov dword [0x1805870e8], 1
call fcn.1801e4620
movabs rax, 0xf1ca12b18aef5298
mov qword [rsp + 0x70], r15
mov qword [0x1805dd278], rax
mov dword [rsp + 0x70], edi
mov rax, qword [rsp + 0x70]
mov qword [0x180587120], rax
mov dword [0x1805870f8], r15d
mov qword [0x180587128], r15
mov dword [0x1805870e8], 2
call fcn.1801e4620
movabs rax, 0x99bfdc94a603e541
mov qword [rsp + 0x70], r15
mov qword [0x1805dd278], rax
mov dword [rsp + 0x70], edi
mov rax, qword [rsp + 0x70]
mov qword [0x180587120], rax
mov dword [0x1805870f8], r15d
mov dword [0x1805870e8], 1
call fcn.1801e4620
mov qword [rsp + 0x70], r15
mov esi, dword [rax]
movabs rax, 0x38ce16c96bd11344
mov qword [0x1805dd278], rax
mov dword [rsp + 0x70], esi
mov rax, qword [rsp + 0x70]
mov qword [0x180587120], rax
mov dword [0x1805870f8], r15d
mov dword [0x1805870e8], 1
call fcn.1801e4620
cmp dword [rax], r15d
je 0x180137af7
mov qword [rsp + 0x70], r15
movabs rax, 0x3910051ccecdb00c
mov qword [0x1805dd278], rax
mov dword [rsp + 0x70], edi
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x70], r15
mov qword [0x180587120], rax
mov dword [rsp + 0x70], 1
mov rax, qword [rsp + 0x70]
mov qword [0x180587128], rax
mov dword [0x1805870f8], r15d
mov dword [0x1805870e8], 2
call fcn.1801e4620
movabs rax, 0xc7827959479dcc78
mov qword [rsp + 0x70], r15
mov qword [0x1805dd278], rax
mov dword [rsp + 0x70], edi
mov rax, qword [rsp + 0x70]
mov qword [0x180587120], rax
mov dword [0x1805870f8], r15d
mov dword [0x1805870e8], 1
call fcn.1801e4620
cmp dword [rax], r15d
je 0x180137af7
mov qword [rsp + 0x70], r15
movabs rax, 0xe05e81a888fa63c8
mov qword [0x1805dd278], rax
mov dword [rsp + 0x70], esi
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x70], r15
mov qword [0x180587120], rax
mov dword [rsp + 0x70], 1
mov rax, qword [rsp + 0x70]
mov qword [0x180587128], rax
mov dword [0x1805870f8], r15d
mov dword [0x1805870e8], 2
call fcn.1801e4620
movabs rax, 0xa1607996431332df
mov qword [rsp + 0x70], r15
mov dword [rsp + 0x70], esi
mov qword [0x1805dd278], rax
mov rax, qword [rsp + 0x70]
mov qword [0x180587120], rax
jmp 0x180137ae1
mov rax, qword [rsp + 0x70]
mov qword [0x180587120], rax
mov qword [0x180587128], r15
call fcn.1801e4620
movabs rax, 0x44a0870b7e92d7c0
mov qword [rsp + 0x70], r15
mov qword [0x1805dd278], rax
mov dword [rsp + 0x70], edi
mov rax, qword [rsp + 0x70]
mov qword [0x180587120], rax
mov dword [0x1805870f8], r15d
mov qword [0x180587128], r15
mov qword [0x180587130], r15
mov dword [0x1805870e8], 3
call fcn.1801e4620
movabs rax, 0x6faacd625d80caa
mov qword [rsp + 0x70], r15
mov qword [0x1805dd278], rax
mov dword [rsp + 0x70], edi
mov rax, qword [rsp + 0x70]
mov qword [0x180587120], rax
mov dword [0x1805870f8], r15d
mov dword [0x1805870e8], 1
call fcn.1801e4620
mov qword [rsp + 0x70], r15
movabs rax, 0xf1ca12b18aef5298
mov qword [0x1805dd278], rax
mov dword [rsp + 0x70], edi
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x70], r15
mov qword [0x180587120], rax
mov dword [rsp + 0x70], 1
mov rax, qword [rsp + 0x70]
mov qword [0x180587128], rax
mov dword [0x1805870f8], r15d
mov dword [0x1805870e8], 2
call fcn.1801e4620
movabs rax, 0x99bfdc94a603e541
mov qword [rsp + 0x70], r15
mov qword [0x1805dd278], rax
mov dword [rsp + 0x70], edi
mov rax, qword [rsp + 0x70]
mov qword [0x180587120], rax
mov dword [0x1805870f8], r15d
mov dword [0x1805870e8], 1
call fcn.1801e4620
mov qword [rsp + 0x70], r15
mov esi, dword [rax]
movabs rax, 0x38ce16c96bd11344
mov qword [0x1805dd278], rax
mov dword [rsp + 0x70], esi
mov rax, qword [rsp + 0x70]
mov qword [0x180587120], rax
mov dword [0x1805870f8], r15d
mov dword [0x1805870e8], 1
call fcn.1801e4620
cmp dword [rax], r15d
je 0x180137af7
mov qword [rsp + 0x70], r15
movabs rax, 0x3910051ccecdb00c
mov qword [0x1805dd278], rax
mov dword [rsp + 0x70], edi
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x70], r15
mov qword [0x180587120], rax
mov dword [rsp + 0x70], 1
mov rax, qword [rsp + 0x70]
mov qword [0x180587128], rax
mov dword [0x1805870f8], r15d
mov dword [0x1805870e8], 2
call fcn.1801e4620
movabs rax, 0xc7827959479dcc78
mov qword [rsp + 0x70], r15
mov qword [0x1805dd278], rax
mov dword [rsp + 0x70], edi
mov rax, qword [rsp + 0x70]
mov qword [0x180587120], rax
mov dword [0x1805870f8], r15d
mov dword [0x1805870e8], 1
call fcn.1801e4620
cmp dword [rax], r15d
je 0x180137af7
mov qword [rsp + 0x70], r15
movabs rax, 0xe05e81a888fa63c8
mov dword [rsp + 0x70], esi
mov qword [0x1805dd278], rax
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x70], r15
mov dword [rsp + 0x70], 1
mov rcx, qword [rsp + 0x70]
mov qword [0x180587128], rcx
mov dword [0x1805870f8], r15d
mov qword [0x180587120], rax
mov dword [0x1805870e8], 2
call fcn.1801e4620
mov qword [rsp + 0x70], r15
movabs rax, 0xa1607996431332df
mov dword [rsp + 0x70], esi
mov rcx, qword [rsp + 0x70]
mov qword [0x180587120], rcx
mov qword [0x1805dd278], rax
mov dword [0x1805870f8], r15d
mov dword [0x1805870e8], 1
call fcn.1801e4620
mov rbp, qword [rsp + 0x68]
mov eax, ebx
mov rbx, qword [rsp + 0x60]
mov rsi, qword [rsp + 0x78]
add rsp, 0x40
pop r15
pop r14
pop rdi
ret