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

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x48
mov eax, dword [rcx]
mov ebx, dword [rcx + 4]
mov r9d, dword [rcx + 8]
mov dword [rsp + 0xc], eax
mov eax, dword [rcx + 0xc]
mov r10, rdx
mov qword [rsp + 0x90], rcx
mov dword [rsp + 8], eax
mov rax, r8
shl rax, 6
add rax, rdx
mov qword [rsp + 0x38], rax
test r8, r8
je 0x1401f8177
nop word [rax + rax]
mov esi, dword [rsp + 8]
mov r15d, dword [r10]
mov edx, ebx
mov edi, dword [rsp + 0xc]
mov ecx, dword [r10 + 4]
xor edx, r9d
mov eax, esi
mov r11d, dword [r10 + 8]
mov r8d, dword [r10 + 0xc]
mov dword [rsp + 0x34], r15d
xor eax, r9d
mov dword [rsp + 0x10], ecx
add ecx, esi
and eax, ebx
mov dword [rsp + 0x14], r11d
xor eax, esi
mov dword [rsp + 0x18], r8d
mov esi, dword [r10 + 0x34]
add eax, r15d
add eax, edi
mov edi, dword [r10 + 0x2c]
rol eax, 3
and edx, eax
mov ebp, eax
mov r12d, eax
mov dword [rsp + 0x30], edi
xor edx, r9d
xor ebp, ebx
add edx, ecx
lea ecx, [r11 + r9]
mov r11d, ebp
mov ebp, dword [r10 + 0x10]
rol edx, 7
and r11d, edx
xor r12d, edx
mov r13d, edx
mov dword [rsp + 0x1c], ebp
xor r11d, ebx
add r11d, ecx
lea ecx, [r8 + rbx]
mov r8d, r12d
mov r12d, dword [r10 + 0x14]
rol r11d, 0xb
and r8d, r11d
xor r13d, r11d
mov dword [rsp + 0x20], r12d
xor r8d, eax
add eax, ebp
mov ebp, dword [r10 + 0x1c]
add r8d, ecx
mov ecx, r13d
mov r13d, dword [r10 + 0x18]
ror r8d, 0xd
mov dword [rsp + 0x28], ebp
and ecx, r8d
mov dword [rsp + 0x24], r13d
xor ecx, edx
add edx, r12d
mov r12d, dword [r10 + 0x24]
add ecx, eax
mov eax, r11d
rol ecx, 3
xor eax, r8d
mov dword [rsp + 0x2c], r12d
and eax, ecx
xor eax, r11d
add eax, edx
mov edx, r8d
add r11d, r13d
mov r13d, dword [r10 + 0x20]
rol eax, 7
xor edx, ecx
and edx, eax
xor edx, r8d
add r8d, ebp
mov ebp, dword [r10 + 0x28]
add edx, r11d
mov r11d, ecx
rol edx, 0xb
xor r11d, eax
and r11d, edx
xor r11d, ecx
add ecx, r13d
add r11d, r8d
mov r8d, eax
ror r11d, 0xd
xor r8d, edx
and r8d, r11d
xor r8d, eax
add eax, r12d
mov r12d, dword [r10 + 0x30]
add r8d, ecx
mov ecx, edx
rol r8d, 3
xor ecx, r11d
and ecx, r8d
xor ecx, edx
add edx, ebp
add ecx, eax
mov eax, r11d
rol ecx, 7
xor eax, r8d
and eax, ecx
xor eax, r11d
add eax, edx
mov edx, r8d
rol eax, 0xb
add r11d, edi
xor edx, ecx
mov edi, dword [r10 + 0x38]
and edx, eax
add r10, 0x40
xor edx, r8d
add r8d, r12d
add edx, r11d
mov r11d, ecx
xor r11d, eax
ror edx, 0xd
mov r14d, r11d
mov r11d, dword [r10 - 4]
and r14d, edx
xor r14d, ecx
add ecx, esi
add r14d, r8d
mov r8d, eax
rol r14d, 3
xor r8d, edx
and r8d, r14d
xor r8d, eax
add eax, edi
add r8d, ecx
mov ecx, edx
rol r8d, 7
xor ecx, r14d
and ecx, r8d
xor ecx, edx
add ecx, eax
lea eax, [rdx + r11]
mov edx, r14d
rol ecx, 0xb
xor edx, r8d
and edx, ecx
xor edx, r14d
lea r14d, [r15 + r14 + 0x5a827999]
mov r15d, r8d
add edx, eax
mov eax, r8d
ror edx, 0xd
or eax, ecx
and eax, edx
and r15d, ecx
or eax, r15d
mov r15d, ecx
add eax, r14d
mov r14d, dword [rsp + 0x1c]
and r15d, edx
rol eax, 3
lea r14d, [r14 + r8 + 0x5a827999]
mov r8d, ecx
or r8d, edx
and r8d, eax
or r8d, r15d
mov r15d, edx
add r8d, r14d
lea r14d, [r13 + rcx + 0x5a827999]
mov ecx, edx
and r15d, eax
rol r8d, 5
or ecx, eax
and ecx, r8d
or ecx, r15d
mov r15d, eax
add ecx, r14d
lea r14d, [r12 + rdx + 0x5a827999]
mov edx, eax
and r15d, r8d
rol ecx, 9
or edx, r8d
and edx, ecx
or edx, r15d
mov r15d, r8d
add edx, r14d
mov r14d, dword [rsp + 0x10]
and r15d, ecx
rol edx, 0xd
lea r14d, [r14 + rax + 0x5a827999]
mov eax, r8d
or eax, ecx
and eax, edx
or eax, r15d
mov r15d, ecx
add eax, r14d
mov r14d, dword [rsp + 0x20]
and r15d, edx
rol eax, 3
lea r14d, [r14 + r8 + 0x5a827999]
mov r8d, ecx
or r8d, edx
and r8d, eax
or r8d, r15d
mov r15d, dword [rsp + 0x2c]
add r8d, r14d
lea r14d, [r15 + rcx + 0x5a827999]
mov ecx, edx
rol r8d, 5
mov r15d, edx
or ecx, eax
and r15d, eax
and ecx, r8d
or ecx, r15d
mov r15d, eax
add ecx, r14d
lea r14d, [rsi + rdx + 0x5a827999]
mov edx, eax
and r15d, r8d
rol ecx, 9
or edx, r8d
and edx, ecx
or edx, r15d
mov r15d, r8d
add edx, r14d
mov r14d, dword [rsp + 0x14]
and r15d, ecx
rol edx, 0xd
lea r14d, [r14 + rax + 0x5a827999]
mov eax, r8d
or eax, ecx
and eax, edx
or eax, r15d
mov r15d, dword [rsp + 0x24]
add eax, r14d
lea r14d, [r15 + r8 + 0x5a827999]
mov r8d, ecx
rol eax, 3
mov r15d, ecx
or r8d, edx
and r15d, edx
and r8d, eax
or r8d, r15d
mov r15d, edx
add r8d, r14d
lea r14d, [rbp + rcx + 0x5a827999]
mov ecx, edx
and r15d, eax
rol r8d, 5
or ecx, eax
and ecx, r8d
or ecx, r15d
mov r15d, eax
add ecx, r14d
lea r14d, [rdi + rdx + 0x5a827999]
mov edx, eax
rol ecx, 9
or edx, r8d
and r15d, r8d
and edx, ecx
or edx, r15d
mov r15d, dword [rsp + 0x18]
add edx, r14d
lea r14d, [r15 + rax + 0x5a827999]
mov eax, r8d
rol edx, 0xd
mov r15d, r8d
or eax, ecx
and r15d, ecx
and eax, edx
or eax, r15d
mov r15d, dword [rsp + 0x28]
add eax, r14d
lea r14d, [r15 + r8 + 0x5a827999]
mov r8d, ecx
rol eax, 3
mov r15d, ecx
or r8d, edx
and r15d, edx
and r8d, eax
or r8d, r15d
mov r15d, edx
add r8d, r14d
mov r14d, dword [rsp + 0x30]
and r15d, eax
rol r8d, 5
lea r14d, [r14 + rcx + 0x5a827999]
mov ecx, edx
lea r13d, [r13 + r8 + 0x6ed9eba1]
or ecx, eax
and ecx, r8d
or ecx, r15d
mov r15d, eax
add ecx, r14d
lea r14d, [r11 + rdx + 0x5a827999]
mov edx, eax
and r15d, r8d
rol ecx, 9
or edx, r8d
and edx, ecx
or edx, r15d
mov r15d, dword [rsp + 0x34]
add edx, r14d
lea r14d, [r15 + rax + 0x6ed9eba1]
mov eax, r8d
rol edx, 0xd
mov r8d, ecx
xor eax, ecx
lea r12d, [r12 + rdx + 0x6ed9eba1]
mov r15d, dword [rsp + 0x14]
xor eax, edx
add eax, r14d
xor r8d, edx
mov r14d, dword [rsp + 0x10]
rol eax, 3
xor r8d, eax
add r8d, r13d
mov r13d, dword [rsp + 0x1c]
rol r8d, 9
lea r13d, [r13 + rcx + 0x6ed9eba1]
mov ecx, edx
mov edx, eax
xor ecx, eax
xor edx, r8d
lea ebp, [rbp + r8 + 0x6ed9eba1]
xor ecx, r8d
add ecx, r13d
mov r13d, dword [rsp + 0x24]
rol ecx, 0xb
xor edx, ecx
add edx, r12d
lea r12d, [r15 + rax + 0x6ed9eba1]
mov eax, r8d
mov r8d, ecx
rol edx, 0xf
xor eax, ecx
mov r15d, dword [rsp + 0x18]
xor eax, edx
xor r8d, edx
lea edi, [rdi + rdx + 0x6ed9eba1]
add eax, r12d
rol eax, 3
xor r8d, eax
add r8d, ebp
lea ebp, [r13 + rcx + 0x6ed9eba1]
mov ecx, edx
mov edx, eax
rol r8d, 9
xor ecx, eax
mov r13d, dword [rsp + 0x2c]
xor ecx, r8d
xor edx, r8d
add ecx, ebp
rol ecx, 0xb
xor edx, ecx
add edx, edi
lea edi, [r14 + rax + 0x6ed9eba1]
mov eax, r8d
mov r14d, dword [rsp + 0x20]
rol edx, 0xf
xor eax, ecx
xor eax, edx
lea esi, [rsi + rdx + 0x6ed9eba1]
add eax, edi
lea edi, [r13 + r8 + 0x6ed9eba1]
mov r8d, ecx
rol eax, 3
xor r8d, edx
xor r8d, eax
add r8d, edi
lea edi, [r14 + rcx + 0x6ed9eba1]
mov ecx, edx
mov edx, eax
rol r8d, 9
xor ecx, eax
mov r14d, dword [rsp + 0x30]
xor ecx, r8d
xor edx, r8d
add ecx, edi
rol ecx, 0xb
xor edx, ecx
add edx, esi
lea esi, [r15 + rax + 0x6ed9eba1]
mov eax, r8d
mov r15d, dword [rsp + 0x28]
rol edx, 0xf
xor eax, ecx
xor eax, edx
lea r11d, [r11 + rdx + 0x6ed9eba1]
add eax, esi
lea esi, [r14 + r8 + 0x6ed9eba1]
mov r8d, ecx
rol eax, 3
xor r8d, edx
add dword [rsp + 0xc], eax
mov edi, dword [rsp + 0xc]
xor r8d, eax
add r8d, esi
lea esi, [r15 + rcx + 0x6ed9eba1]
mov ecx, edx
mov edx, eax
rol r8d, 9
xor ecx, eax
movd xmm0, edi
xor ecx, r8d
xor edx, r8d
add ecx, esi
rol ecx, 0xb
xor edx, ecx
add edx, r11d
mov eax, edx
rol eax, 0xf
add ebx, eax
add r9d, ecx
add dword [rsp + 8], r8d
mov esi, dword [rsp + 8]
movd xmm1, r9d
movd xmm3, ebx
mov rax, qword [rsp + 0x90]
movd xmm2, esi
punpckldq xmm0, xmm3
punpckldq xmm1, xmm2
punpcklqdq xmm0, xmm1
movups xmmword [rax], xmm0
cmp qword [rsp + 0x38], r10
jne 0x1401f7bd0
add rsp, 0x48
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret