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

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 8], rcx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x27]
sub rsp, 0x100
mov r14, rcx
movzx eax, byte [rdx + 1]
movzx r8d, byte [rdx]
movzx ecx, byte [rdx + 4]
shl ecx, 8
shl r8d, 8
or r8d, eax
movzx eax, byte [rdx + 2]
shl r8d, 8
or r8d, eax
movzx eax, byte [rdx + 3]
shl r8d, 8
or r8d, eax
movzx eax, byte [rdx + 5]
or ecx, eax
mov dword [rsp], r8d
shl ecx, 8
movzx eax, byte [rdx + 6]
or ecx, eax
movzx eax, byte [rdx + 7]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdx + 9]
mov dword [rsp + 4], ecx
movzx ecx, byte [rdx + 8]
shl ecx, 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 + 0xd]
mov dword [rsp + 8], ecx
movzx ecx, byte [rdx + 0xc]
shl ecx, 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 + 0x11]
mov dword [rsp + 0xc], ecx
movzx ecx, byte [rdx + 0x10]
shl ecx, 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 + 0x15]
mov dword [rsp + 0x10], ecx
movzx ecx, byte [rdx + 0x14]
shl ecx, 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 + 0x19]
mov dword [rsp + 0x14], ecx
movzx ecx, byte [rdx + 0x18]
shl ecx, 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 + 0x18], 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 + 0x1c], 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 + 0x20], 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 + 0x24], 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 + 0x28], 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 + 0x2c], 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 + 0x35]
mov dword [rsp + 0x30], ecx
movzx ecx, byte [rdx + 0x34]
shl ecx, 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 + 0x39]
mov dword [rsp + 0x34], ecx
movzx ecx, byte [rdx + 0x38]
shl ecx, 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 + 0x3d]
mov dword [rsp + 0x38], ecx
movzx ecx, byte [rdx + 0x3c]
shl ecx, 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
xor r15d, r15d
mov dword [rsp + 0x3c], ecx
mov r13d, r15d
lea eax, [r13 + 1]
mov r10d, dword [rsp + rax*4]
lea rdi, [rsp]
lea eax, [r13 + 0xe]
mov ecx, r10d
mov esi, dword [rsp + rax*4]
lea rbx, [rsp]
rol ecx, 0xe
mov eax, esi
rol eax, 0xd
mov r11d, esi
rol r11d, 0xf
xor r11d, eax
mov eax, esi
shr eax, 0xa
xor r11d, eax
mov eax, r10d
ror eax, 7
xor ecx, eax
mov eax, r10d
shr eax, 3
xor ecx, eax
lea eax, [r13 + 9]
add r11d, ecx
add r11d, dword [rsp + rax*4]
mov eax, r13d
add r11d, dword [rsp + rax*4]
lea eax, [r13 + 0x10]
mov dword [rsp + rax*4], r11d
lea eax, [r13 + 2]
mov r8d, dword [rdi + rax*4]
lea rdi, [rdi + rax*4]
lea eax, [r13 + 0xf]
mov ecx, r8d
mov edx, dword [rsp + rax*4]
mov r9d, edx
mov eax, edx
rol r9d, 0xf
rol eax, 0xd
xor r9d, eax
rol ecx, 0xe
mov eax, r8d
shr edx, 0xa
ror eax, 7
xor r9d, edx
xor ecx, eax
shr r8d, 3
xor ecx, r8d
lea eax, [r13 + 0xa]
add r9d, ecx
lea r8, [rsp]
add r9d, dword [rsp + rax*4]
lea eax, [r13 + 0x11]
add r10d, r9d
mov r9d, r11d
mov dword [rsp + rax*4], r10d
lea eax, [r13 + 3]
mov edx, dword [rbx + rax*4]
lea rbx, [rbx + rax*4]
mov eax, r11d
rol r9d, 0xf
rol eax, 0xd
mov ecx, edx
xor r9d, eax
rol ecx, 0xe
mov eax, edx
shr r11d, 0xa
ror eax, 7
xor r9d, r11d
xor ecx, eax
shr edx, 3
lea eax, [r13 + 0xb]
xor ecx, edx
add r9d, ecx
add r9d, dword [rsp + rax*4]
lea eax, [r13 + 0x12]
add r9d, dword [rdi]
mov dword [rsp + rax*4], r9d
lea eax, [r13 + 4]
mov edx, dword [r8 + rax*4]
lea r8, [r8 + rax*4]
mov ecx, edx
mov eax, r10d
rol eax, 0xd
mov r11d, r10d
rol ecx, 0xe
rol r11d, 0xf
xor r11d, eax
shr r10d, 0xa
mov eax, edx
xor r11d, r10d
ror eax, 7
lea r10, [rsp]
xor ecx, eax
shr edx, 3
xor ecx, edx
lea eax, [r13 + 0xc]
add r11d, ecx
add r11d, dword [rsp + rax*4]
lea eax, [r13 + 0x13]
add r11d, dword [rbx]
mov dword [rsp + rax*4], r11d
lea eax, [r13 + 5]
mov ecx, dword [r10 + rax*4]
lea r10, [r10 + rax*4]
mov eax, ecx
mov edx, ecx
ror eax, 7
rol edx, 0xe
xor edx, eax
shr ecx, 3
xor edx, ecx
mov eax, r9d
rol eax, 0xd
mov ecx, r9d
rol ecx, 0xf
xor ecx, eax
shr r9d, 0xa
xor ecx, r9d
lea eax, [r13 + 0xd]
add edx, ecx
lea r9d, [r13 + 6]
add edx, dword [rsp + rax*4]
mov ecx, r11d
add edx, dword [r8]
lea eax, [r13 + 0x14]
mov dword [rsp + rax*4], edx
mov eax, r11d
mov r8d, dword [rsp + r9*4]
mov edx, r8d
rol eax, 0xd
rol edx, 0xe
rol ecx, 0xf
xor ecx, eax
shr r11d, 0xa
mov eax, r8d
xor ecx, r11d
ror eax, 7
xor edx, eax
shr r8d, 3
xor edx, r8d
lea eax, [rsi + rcx]
add edx, eax
lea eax, [r13 + 0x15]
add edx, dword [r10]
mov r13d, r9d
mov dword [rsp + rax*4], edx
lea eax, [r9 + 0x10]
cmp eax, 0x40
jb 0x140023e80
mov eax, dword [r14 + 0x50]
lea r8, [0x140074770]
mov r11d, dword [r14 + 0x54]
mov r10d, eax
mov ebx, dword [r14 + 0x58]
mov r12d, dword [r14 + 0x5c]
mov edi, dword [r14 + 0x64]
mov esi, dword [r14 + 0x68]
mov r13d, dword [r14 + 0x6c]
mov dword [rbp + 0x77], eax
mov eax, dword [r14 + 0x60]
mov r14d, 0x40
nop word [rax + rax]
mov r9d, eax
lea r15, [r15 + 4]
ror r9d, 0xb
mov ecx, eax
rol ecx, 7
mov edx, eax
xor r9d, ecx
not edx
and edx, esi
mov ecx, eax
ror ecx, 6
xor r9d, ecx
mov ecx, edi
and ecx, eax
xor edx, ecx
mov ecx, r10d
add r9d, edx
rol ecx, 0xa
add r9d, dword [r15 + r8 - 4]
mov edx, r11d
add r9d, dword [rsp + r15 - 4]
xor edx, r10d
add r9d, r13d
mov r8d, r10d
ror r8d, 0xd
and edx, ebx
xor r8d, ecx
mov r13d, esi
mov ecx, r10d
mov esi, edi
ror ecx, 2
mov edi, eax
xor r8d, ecx
lea eax, [r9 + r12]
mov ecx, r11d
mov r12d, ebx
and ecx, r10d
mov ebx, r11d
xor edx, ecx
mov r11d, r10d
add r8d, edx
lea r10d, [r8 + r9]
lea r8, [0x140074770]
sub r14, 1
jne 0x1400240a0
mov r14, qword [rbp + 0x67]
mov ecx, dword [rbp + 0x77]
add ecx, r10d
add dword [r14 + 0x58], ebx
add dword [r14 + 0x54], r11d
add dword [r14 + 0x5c], r12d
add dword [r14 + 0x60], eax
add dword [r14 + 0x64], edi
add dword [r14 + 0x68], esi
add dword [r14 + 0x6c], r13d
mov rbx, qword [rsp + 0x148]
mov dword [r14 + 0x50], ecx
add rsp, 0x100
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret