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

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x130
mov rax, qword [0x1800a40f0]
xor rax, rsp
mov qword [rsp + 0x120], rax
mov eax, dword [rcx + 8]
mov esi, eax
mov r13d, dword [rcx + 0x10]
mov edi, dword [rcx + 0xc]
mov ebp, dword [rcx + 0x18]
mov r15d, dword [rcx + 0x1c]
mov r12d, dword [rcx + 0x20]
mov qword [rsp + 0x10], rcx
mov dword [rsp + 0xc], eax
mov eax, dword [rcx + 0x14]
mov dword [rsp], eax
mov eax, dword [rcx + 0x24]
movzx ecx, byte [rdx]
shl ecx, 8
mov dword [rsp + 8], eax
movzx eax, byte [rdx + 1]
or ecx, eax
mov dword [rsp + 4], r13d
shl ecx, 8
movzx eax, byte [rdx + 2]
or ecx, eax
movzx eax, byte [rdx + 3]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdx + 5]
mov dword [rsp + 0x20], 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 + 0x24], 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 + 0x28], 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 + 0x2c], 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 + 0x30], 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
mov dword [rsp + 0x34], ecx
movzx ecx, byte [rdx + 0x19]
movzx eax, byte [rdx + 0x18]
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
movzx eax, byte [rdx + 0x1d]
mov dword [rsp + 0x38], ecx
movzx ecx, byte [rdx + 0x1c]
shl ecx, 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 + 0x21]
mov dword [rsp + 0x3c], ecx
movzx ecx, byte [rdx + 0x20]
shl ecx, 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 + 0x25]
mov dword [rsp + 0x40], ecx
movzx ecx, byte [rdx + 0x24]
shl ecx, 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 + 0x29]
mov dword [rsp + 0x44], ecx
movzx ecx, byte [rdx + 0x28]
shl ecx, 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 + 0x2d]
mov dword [rsp + 0x48], ecx
movzx ecx, byte [rdx + 0x2c]
shl ecx, 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 + 0x31]
mov dword [rsp + 0x4c], ecx
movzx ecx, byte [rdx + 0x30]
shl ecx, 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 + 0x50], ecx
movzx ecx, byte [rdx + 0x35]
shl eax, 8
or ecx, eax
shl ecx, 8
movzx eax, byte [rdx + 0x36]
mov r13d, 8
or ecx, eax
movzx eax, byte [rdx + 0x37]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdx + 0x38]
mov dword [rsp + 0x54], ecx
movzx ecx, byte [rdx + 0x39]
shl eax, 8
or ecx, eax
movzx eax, byte [rdx + 0x3a]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdx + 0x3b]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdx + 0x3c]
mov dword [rsp + 0x58], ecx
movzx ecx, byte [rdx + 0x3d]
shl eax, 8
or ecx, eax
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 + 0x20]
mov dword [rsp + 0x5c], ecx
nop dword [rax]
mov r11d, dword [rax + 4]
mov r10d, r11d
mov ebx, dword [rax + 0x38]
mov ecx, r11d
ror ecx, 7
mov edx, ebx
rol edx, 0xf
rol r10d, 0xe
xor r10d, ecx
mov ecx, r11d
shr ecx, 3
xor r10d, ecx
mov ecx, ebx
rol ecx, 0xd
xor edx, ecx
mov ecx, ebx
shr ecx, 0xa
xor edx, ecx
add r10d, edx
add r10d, dword [rax + 0x24]
add r10d, dword [rax]
mov dword [rax + 0x40], r10d
mov edx, dword [rax + 8]
mov r9d, edx
mov r8d, dword [rax + 0x3c]
mov ecx, edx
shr edx, 3
ror ecx, 7
rol r9d, 0xe
xor r9d, ecx
mov ecx, r8d
xor r9d, edx
rol ecx, 0xd
mov edx, r8d
shr r8d, 0xa
rol edx, 0xf
xor edx, ecx
xor edx, r8d
add r9d, edx
add r9d, dword [rax + 0x28]
add r11d, r9d
mov dword [rax + 0x44], r11d
mov edx, dword [rax + 0xc]
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 r10d, edx
add r10d, r8d
add r10d, dword [rax + 0x2c]
add r10d, dword [rax + 8]
mov dword [rax + 0x48], r10d
mov edx, dword [rax + 0x10]
mov r8d, edx
mov ecx, edx
rol r8d, 0xe
shr edx, 3
ror ecx, 7
xor r8d, ecx
mov ecx, r11d
xor r8d, edx
rol ecx, 0xd
mov edx, r11d
shr r11d, 0xa
rol edx, 0xf
xor edx, ecx
xor r11d, edx
add r11d, r8d
add r11d, dword [rax + 0x30]
add r11d, dword [rax + 0xc]
mov dword [rax + 0x4c], r11d
mov r8d, dword [rax + 0x14]
mov edx, r8d
lea rax, [rax + 0x18]
rol edx, 0xe
mov r9d, r10d
rol r9d, 0xf
mov ecx, r10d
rol ecx, 0xd
xor r9d, ecx
shr r10d, 0xa
mov ecx, r8d
xor r9d, r10d
ror ecx, 7
xor edx, ecx
shr r8d, 3
xor edx, r8d
add r9d, edx
add r9d, dword [rax + 0x1c]
add r9d, dword [rax - 8]
mov dword [rax + 0x38], r9d
mov edx, dword [rax]
mov r8d, edx
mov ecx, edx
rol r8d, 0xe
shr edx, 3
ror ecx, 7
xor r8d, ecx
mov ecx, r11d
xor r8d, edx
rol ecx, 0xd
mov edx, r11d
shr r11d, 0xa
rol edx, 0xf
xor edx, ecx
xor edx, r11d
lea ecx, [rbx + r8]
add edx, ecx
add edx, dword [rax - 4]
mov dword [rax + 0x3c], edx
sub r13, 1
jne 0x18004dda0
mov r13d, dword [rsp + 4]
lea rcx, [0x180089df0]
mov r14d, dword [rsp]
xor r10d, r10d
mov r9d, edi
mov eax, ebp
rol eax, 7
mov r8d, ebp
ror r8d, 0xb
mov edx, esi
xor r8d, eax
ror edx, 0xd
mov eax, ebp
mov ebx, r15d
ror eax, 6
xor r8d, eax
mov eax, r15d
xor eax, r12d
and eax, ebp
xor eax, r12d
add r8d, eax
mov eax, esi
add r8d, dword [r10 + rcx]
mov ecx, edi
add r8d, dword [rsp + r10 + 0x20]
or ecx, esi
add r8d, dword [rsp + 8]
and ecx, r13d
rol eax, 0xa
xor edx, eax
mov dword [rsp + 8], r15d
mov eax, esi
ror eax, 2
lea r11d, [r14 + r8]
xor edx, eax
mov r14d, r9d
mov eax, edi
mov edi, ecx
and eax, esi
mov ecx, esi
or edi, eax
lea eax, [r8 + rdx]
mov r8d, r11d
add edi, eax
ror r8d, 0xb
or ecx, edi
mov eax, r11d
rol eax, 7
and ecx, r9d
xor r8d, eax
mov edx, edi
ror edx, 0xd
mov eax, r11d
ror eax, 6
xor r8d, eax
mov eax, r15d
xor eax, ebp
and eax, r11d
xor eax, r15d
mov r15d, r11d
add r8d, eax
lea rax, [0x180089df0]
add r8d, dword [r10 + rax + 4]
mov eax, edi
add r8d, dword [rsp + r10 + 0x24]
add r10, 8
rol eax, 0xa
add r8d, r12d
xor edx, eax
mov r12d, ebp
mov eax, edi
ror eax, 2
xor edx, eax
lea ebp, [r8 + r13]
mov eax, esi
add edx, r8d
and eax, edi
mov r13d, esi
or ecx, eax
add edx, ecx
lea rcx, [0x180089df0]
mov esi, edx
cmp r10, 0x100
jl 0x18004df30
mov r14, qword [rsp + 0x10]
mov eax, dword [rsp + 0xc]
add eax, edx
mov dword [rsp], r9d
mov dword [r14 + 8], eax
mov eax, r9d
add dword [r14 + 0xc], edi
add dword [r14 + 0x10], r13d
add dword [r14 + 0x14], eax
mov eax, r12d
add dword [r14 + 0x18], ebp
add dword [r14 + 0x1c], r11d
add dword [r14 + 0x20], eax
add dword [r14 + 0x24], ebx
xor eax, eax
mov rcx, qword [rsp + 0x120]
xor rcx, rsp
call fcn.180050590
lea r11, [rsp + 0x130]
mov rbx, qword [r11 + 0x38]
mov rbp, qword [r11 + 0x40]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret