Function at 0x1800ea880
Capabilities:
Encode data using xor
Hash data using murmur3

Disassembly:
test r8d, r8d
jle 0x1800eaecc
mov r11, rsp
push rbp
sub rsp, 0x170
mov rax, qword [0x1801eab50]
xor rax, rsp
mov qword [rsp + 0x140], rax
mov qword [r11 + 0x10], rbx
xor eax, eax
mov qword [r11 + 0x18], rsi
mov rbp, rcx
mov qword [r11 + 0x20], rdi
mov qword [r11 - 0x10], r12
mov qword [r11 - 0x18], r13
mov qword [r11 - 0x20], r14
mov qword [r11 - 0x28], r15
mov dword [rsp + 0x20], r8d
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x28], rcx
mov dword [rsp], eax
nop dword [rax]
shl eax, 6
cdqe
add rdx, rax
movzx eax, byte [rdx + 1]
movzx ecx, byte [rdx]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdx + 2]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdx + 3]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdx + 5]
mov dword [rsp + 0x40], ecx
movzx ecx, byte [rdx + 4]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdx + 6]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdx + 7]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdx + 8]
mov dword [rsp + 0x44], ecx
movzx ecx, byte [rdx + 9]
shl eax, 8
or ecx, eax
movzx eax, byte [rdx + 0xa]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdx + 0xb]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdx + 0xc]
mov dword [rsp + 0x48], ecx
movzx ecx, byte [rdx + 0xd]
shl eax, 8
or ecx, eax
movzx eax, byte [rdx + 0xe]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdx + 0xf]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdx + 0x10]
mov dword [rsp + 0x4c], ecx
movzx ecx, byte [rdx + 0x11]
shl eax, 8
or ecx, eax
movzx eax, byte [rdx + 0x12]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdx + 0x13]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdx + 0x14]
mov dword [rsp + 0x50], ecx
movzx ecx, byte [rdx + 0x15]
shl eax, 8
or ecx, eax
movzx eax, byte [rdx + 0x16]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdx + 0x17]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdx + 0x18]
mov dword [rsp + 0x54], ecx
movzx ecx, byte [rdx + 0x19]
shl eax, 8
or ecx, eax
movzx eax, byte [rdx + 0x1a]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdx + 0x1b]
shl ecx, 8
or ecx, eax
mov dword [rsp + 0x58], ecx
movzx ecx, byte [rdx + 0x1d]
movzx eax, byte [rdx + 0x1c]
movzx ebx, byte [rdx + 0x39]
shl eax, 8
or ecx, eax
movzx eax, byte [rdx + 0x1e]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdx + 0x1f]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdx + 0x20]
mov dword [rsp + 0x5c], ecx
movzx ecx, byte [rdx + 0x21]
shl eax, 8
or ecx, eax
movzx eax, byte [rdx + 0x22]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdx + 0x23]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdx + 0x24]
mov dword [rsp + 0x60], ecx
movzx ecx, byte [rdx + 0x25]
shl eax, 8
or ecx, eax
movzx eax, byte [rdx + 0x26]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdx + 0x27]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdx + 0x28]
mov dword [rsp + 0x64], ecx
movzx ecx, byte [rdx + 0x29]
shl eax, 8
or ecx, eax
movzx eax, byte [rdx + 0x2a]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdx + 0x2b]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdx + 0x2c]
mov dword [rsp + 0x68], ecx
movzx ecx, byte [rdx + 0x2d]
shl eax, 8
or ecx, eax
movzx eax, byte [rdx + 0x2e]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdx + 0x2f]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdx + 0x30]
mov dword [rsp + 0x6c], ecx
movzx ecx, byte [rdx + 0x31]
shl eax, 8
or ecx, eax
movzx eax, byte [rdx + 0x32]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdx + 0x33]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdx + 0x34]
mov dword [rsp + 0x70], ecx
movzx ecx, byte [rdx + 0x35]
shl eax, 8
or ecx, eax
movzx eax, byte [rdx + 0x36]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdx + 0x37]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdx + 0x38]
shl eax, 8
or ebx, eax
mov dword [rsp + 0x74], ecx
shl ebx, 8
movzx eax, byte [rdx + 0x3a]
mov r14d, 8
movzx ecx, byte [rdx + 0x3d]
or ebx, eax
movzx eax, byte [rdx + 0x3b]
shl ebx, 8
or ebx, eax
movzx eax, byte [rdx + 0x3c]
shl eax, 8
or ecx, eax
mov dword [rsp + 0x78], ebx
movzx eax, byte [rdx + 0x3e]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdx + 0x3f]
shl ecx, 8
or ecx, eax
lea rax, [rsp + 0x78]
mov dword [rsp + 0x7c], ecx
mov r11d, dword [rax - 0x34]
mov r10d, ebx
rol r10d, 0xf
mov edx, r11d
rol edx, 0xe
mov ecx, ebx
rol ecx, 0xd
mov esi, ebx
xor r10d, ecx
mov ecx, ebx
shr ecx, 0xa
xor r10d, ecx
mov ecx, r11d
ror ecx, 7
xor edx, ecx
mov ecx, r11d
shr ecx, 3
xor edx, ecx
add r10d, edx
add r10d, dword [rax - 0x38]
add r10d, dword [rax - 0x14]
mov dword [rax + 8], r10d
mov edi, dword [rax - 0x30]
mov r9d, edi
mov r8d, dword [rax + 4]
mov ecx, edi
ror ecx, 7
mov edx, r8d
rol r9d, 0xe
xor r9d, ecx
rol edx, 0xf
mov ecx, edi
shr ecx, 3
xor r9d, ecx
mov ecx, r8d
rol ecx, 0xd
xor edx, ecx
shr r8d, 0xa
xor edx, r8d
mov ecx, r10d
add r9d, edx
rol ecx, 0xd
add r9d, dword [rax - 0x10]
add r11d, r9d
mov r9d, r10d
shr r10d, 0xa
rol r9d, 0xf
xor r9d, ecx
mov dword [rax + 0xc], r11d
mov ebx, dword [rax - 0x2c]
xor r9d, r10d
mov ecx, ebx
mov edx, ebx
ror ecx, 7
rol edx, 0xe
xor edx, ecx
mov ecx, ebx
shr ecx, 3
xor edx, ecx
add r9d, edx
mov edx, r11d
add r9d, dword [rax - 0xc]
add r9d, edi
rol edx, 0xf
mov dword [rax + 0x10], r9d
mov edi, dword [rax - 0x28]
mov r10d, edi
rol r10d, 0xe
mov ecx, edi
ror ecx, 7
xor r10d, ecx
mov ecx, edi
shr ecx, 3
xor r10d, ecx
mov ecx, r11d
rol ecx, 0xd
xor edx, ecx
shr r11d, 0xa
xor edx, r11d
add r10d, edx
add r10d, dword [rax - 8]
add r10d, ebx
mov ebx, r9d
rol ebx, 0xf
mov ecx, r9d
rol ecx, 0xd
mov dword [rax + 0x14], r10d
xor ebx, ecx
mov r11d, dword [rax - 0x24]
lea rax, [rax + 0x18]
shr r9d, 0xa
mov ecx, r11d
ror ecx, 7
xor ebx, r9d
mov edx, r11d
rol edx, 0xe
xor edx, ecx
mov ecx, r11d
shr ecx, 3
xor edx, ecx
add ebx, edx
add ebx, dword [rax - 0x1c]
add ebx, edi
mov dword [rax], ebx
mov edx, dword [rax - 0x38]
mov r8d, edx
mov ecx, edx
rol r8d, 0xe
shr edx, 3
ror ecx, 7
xor r8d, ecx
mov ecx, r10d
xor r8d, edx
rol ecx, 0xd
mov edx, r10d
shr r10d, 0xa
rol edx, 0xf
xor edx, ecx
xor edx, r10d
lea ecx, [rsi + r8]
add edx, ecx
add edx, r11d
mov dword [rax + 4], edx
sub r14, 1
jne 0x1800eab22
mov eax, dword [rbp + 0x8c]
xor edi, edi
mov r11d, dword [rbp + 0x88]
mov esi, eax
mov dword [rsp + 4], eax
mov eax, dword [rbp + 0x90]
mov r14d, eax
mov dword [rsp + 8], eax
mov eax, dword [rbp + 0x94]
mov r9d, eax
mov dword [rsp + 0xc], eax
mov eax, dword [rbp + 0x98]
mov ebx, eax
mov dword [rsp + 0x10], eax
mov eax, dword [rbp + 0x9c]
mov r15d, eax
mov dword [rsp + 0x14], eax
mov eax, dword [rbp + 0xa0]
mov r12d, eax
mov dword [rsp + 0x18], eax
mov eax, dword [rbp + 0xa4]
mov r13d, eax
mov dword [rsp + 0x1c], eax
lea rbp, [0x1801e55a0]
nop word [rax + rax]
mov r8d, ebx
mov eax, ebx
rol eax, 7
mov ecx, ebx
ror r8d, 0xb
not ecx
xor r8d, eax
and ecx, r12d
mov eax, ebx
mov r10d, r11d
ror eax, 6
xor r8d, eax
ror r10d, 0xd
mov eax, r15d
and eax, ebx
xor ecx, eax
mov eax, r11d
add r8d, ecx
rol eax, 0xa
add r8d, dword [rdi + rbp]
xor r10d, eax
add r8d, dword [rsp + rdi + 0x40]
mov eax, r11d
ror eax, 2
add r8d, r13d
xor r10d, eax
add r9d, r8d
mov ecx, esi
mov eax, esi
and eax, r14d
xor ecx, r14d
and ecx, r11d
mov r13d, r15d
xor ecx, eax
mov eax, r9d
rol eax, 7
add r10d, ecx
add r10d, r8d
mov ecx, r9d
not ecx
mov r8d, r9d
ror r8d, 0xb
and ecx, r15d
xor r8d, eax
mov edx, r10d
ror edx, 0xd
mov eax, r9d
ror eax, 6
mov r15d, r9d
xor r8d, eax
mov eax, r9d
and eax, ebx
mov r9d, esi
xor ecx, eax
mov eax, r10d
add r8d, ecx
rol eax, 0xa
add r8d, dword [rdi + rbp + 4]
xor edx, eax
add r8d, dword [rsp + rdi + 0x44]
mov ecx, esi
xor ecx, r11d
add r8d, r12d
and ecx, r10d
mov eax, r10d
ror eax, 2
mov r12d, ebx
xor edx, eax
add rdi, 8
mov eax, esi
lea ebx, [r14 + r8]
and eax, r11d
mov r14d, r11d
xor ecx, eax
mov esi, r10d
add edx, ecx
lea r11d, [rdx + r8]
cmp rdi, 0x100
jl 0x1800ead10
mov rbp, qword [rsp + 0x28]
mov eax, dword [rsp + 4]
mov rdx, qword [rsp + 0x30]
add eax, r10d
add dword [rbp + 0x88], r11d
mov dword [rbp + 0x8c], eax
mov eax, dword [rsp + 8]
add eax, r14d
mov dword [rbp + 0x90], eax
mov eax, dword [rsp + 0xc]
add eax, r9d
mov dword [rbp + 0x94], eax
mov eax, dword [rsp + 0x10]
add eax, ebx
mov dword [rbp + 0x98], eax
mov eax, dword [rsp + 0x14]
add eax, r15d
mov dword [rbp + 0x9c], eax
mov eax, dword [rsp + 0x18]
add eax, r12d
mov dword [rbp + 0xa0], eax
mov eax, dword [rsp + 0x1c]
add eax, r13d
mov dword [rbp + 0xa4], eax
mov eax, dword [rsp]
inc eax
mov dword [rsp], eax
cmp eax, dword [rsp + 0x20]
jl 0x1800ea8e0
mov r15, qword [rsp + 0x150]
mov r14, qword [rsp + 0x158]
mov r13, qword [rsp + 0x160]
mov r12, qword [rsp + 0x168]
mov rdi, qword [rsp + 0x198]
mov rsi, qword [rsp + 0x190]
mov rbx, qword [rsp + 0x188]
mov rcx, qword [rsp + 0x140]
xor rcx, rsp
call fcn.18015fd80
add rsp, 0x170
pop rbp
ret