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

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x118
mov esi, dword [rcx]
mov edi, dword [rcx + 4]
mov r11d, dword [rcx + 8]
mov r8d, dword [rcx + 0xc]
mov ebp, dword [rcx + 0x10]
mov ebx, dword [rcx + 0x14]
mov eax, dword [rcx + 0x18]
mov qword [rsp + 8], rcx
mov r9d, dword [rcx + 0x1c]
movups xmm0, xmmword [rdx]
movups xmm1, xmmword [rdx + 0x10]
movups xmm2, xmmword [rdx + 0x20]
movups xmm3, xmmword [rdx + 0x30]
movaps xmmword [rsp + 0x10], xmm0
movaps xmmword [rsp + 0x40], xmm3
movaps xmmword [rsp + 0x30], xmm2
movaps xmmword [rsp + 0x20], xmm1
mov ecx, 0x10
mov edx, dword [rsp + 0x10]
nop
mov r10d, dword [rsp + rcx*4 - 0x2c]
mov r14d, dword [rsp + rcx*4 + 8]
mov r15d, r14d
rol r15d, 0xf
mov r12d, r14d
rol r12d, 0xd
xor r12d, r15d
shr r14d, 0xa
xor r14d, r12d
add r14d, dword [rsp + rcx*4 - 0xc]
mov r15d, r10d
rol r15d, 0x19
mov r12d, r10d
rol r12d, 0xe
xor r12d, r15d
mov r15d, r10d
shr r15d, 3
xor r15d, r12d
add r15d, edx
add r15d, r14d
mov dword [rsp + rcx*4 + 0x10], r15d
inc rcx
mov edx, r10d
cmp rcx, 0x40
jne 0x14009da50
mov rdx, 0xfffffffffffffff8
mov r14d, ebp
rol r14d, 0x1a
mov r15d, ebp
rol r15d, 0x15
mov r10d, ebp
rol r10d, 7
xor r15d, r14d
xor r10d, r15d
add r10d, r9d
mov r9d, ebx
xor r9d, eax
and r9d, ebp
lea rcx, [0x1402070a0]
add r10d, dword [rcx + rdx*4 + 0x20]
xor r9d, eax
add r10d, dword [rsp + rdx*4 + 0x30]
add r10d, r9d
mov r9d, esi
rol r9d, 0x1e
mov r14d, esi
rol r14d, 0x13
xor r14d, r9d
mov r15d, esi
rol r15d, 0xa
xor r15d, r14d
mov r14d, edi
or r14d, esi
and r14d, r11d
mov r9d, edi
and r9d, esi
add r8d, r10d
mov r12d, r8d
rol r12d, 0x1a
or r9d, r14d
mov r13d, r8d
rol r13d, 0x15
add r9d, r15d
mov r15d, r8d
rol r15d, 7
xor r13d, r12d
mov r14d, ebx
xor r14d, ebp
and r14d, r8d
xor r14d, ebx
add r14d, eax
add r14d, dword [rcx + rdx*4 + 0x24]
xor r15d, r13d
add r14d, r15d
add r14d, dword [rsp + rdx*4 + 0x34]
add r9d, r10d
mov eax, r9d
rol eax, 0x1e
mov r10d, r9d
rol r10d, 0x13
mov r15d, r9d
rol r15d, 0xa
xor r10d, eax
xor r15d, r10d
mov r10d, r9d
or r10d, esi
and r10d, edi
mov eax, r9d
and eax, esi
or eax, r10d
add r11d, r14d
mov r10d, r11d
rol r10d, 0x1a
add eax, r15d
mov r15d, r11d
rol r15d, 0x15
add eax, r14d
mov r14d, r11d
rol r14d, 7
xor r15d, r10d
xor r14d, r15d
mov r10d, r8d
xor r10d, ebp
and r10d, r11d
xor r10d, ebp
add ebx, dword [rcx + rdx*4 + 0x28]
add ebx, dword [rsp + rdx*4 + 0x38]
add ebx, r10d
add ebx, r14d
mov r10d, eax
rol r10d, 0x1e
mov r14d, eax
rol r14d, 0x13
xor r14d, r10d
mov r10d, eax
rol r10d, 0xa
xor r10d, r14d
mov r14d, eax
or r14d, r9d
and r14d, esi
mov r15d, eax
and r15d, r9d
or r15d, r14d
add r15d, r10d
add edi, ebx
add r15d, ebx
mov r10d, edi
rol r10d, 0x1a
mov ebx, edi
rol ebx, 0x15
xor ebx, r10d
mov r10d, edi
rol r10d, 7
xor r10d, ebx
mov ebx, r11d
xor ebx, r8d
and ebx, edi
add ebp, dword [rcx + rdx*4 + 0x2c]
xor ebx, r8d
add ebp, dword [rsp + rdx*4 + 0x3c]
add ebp, ebx
add ebp, r10d
mov r10d, r15d
rol r10d, 0x1e
mov ebx, r15d
rol ebx, 0x13
xor ebx, r10d
mov r10d, r15d
rol r10d, 0xa
xor r10d, ebx
mov ebx, r15d
or ebx, eax
and ebx, r9d
mov r14d, r15d
and r14d, eax
or r14d, ebx
add r14d, r10d
add esi, ebp
add r14d, ebp
mov r10d, esi
rol r10d, 0x1a
mov ebx, esi
rol ebx, 0x15
xor ebx, r10d
mov r10d, esi
rol r10d, 7
xor r10d, ebx
mov ebx, edi
xor ebx, r11d
and ebx, esi
xor ebx, r11d
add r8d, dword [rcx + rdx*4 + 0x30]
add r8d, dword [rsp + rdx*4 + 0x40]
add r8d, ebx
mov ebx, r14d
rol ebx, 0x1e
mov ebp, r8d
mov r8d, r14d
rol r8d, 0x13
add ebp, r10d
mov r10d, r14d
rol r10d, 0xa
xor r8d, ebx
xor r10d, r8d
mov ebx, r14d
or ebx, r15d
and ebx, eax
mov r8d, r14d
and r8d, r15d
or r8d, ebx
add r11d, dword [rcx + rdx*4 + 0x34]
add r11d, dword [rsp + rdx*4 + 0x44]
add r9d, ebp
mov ebx, r9d
rol ebx, 0x1a
mov r12d, esi
mov r13d, r9d
rol r13d, 0x15
xor r13d, ebx
mov ebx, r9d
rol ebx, 7
xor r12d, edi
xor ebx, r13d
mov r13, rcx
mov ecx, dword [rcx + rdx*4 + 0x38]
add ecx, edi
and r12d, r9d
xor r12d, edi
add r12d, r11d
add r12d, ebx
add eax, r12d
mov r11d, eax
rol r11d, 0x1a
mov edi, dword [r13 + rdx*4 + 0x3c]
mov ebx, eax
rol ebx, 0x15
xor ebx, r11d
mov r11d, eax
rol r11d, 7
add edi, esi
xor r11d, ebx
mov r13d, r9d
xor r13d, esi
and r13d, eax
xor r13d, esi
add ecx, dword [rsp + rdx*4 + 0x48]
add edi, dword [rsp + rdx*4 + 0x4c]
add r13d, ecx
add r13d, r11d
lea ebx, [r15 + r13]
mov ecx, ebx
rol ecx, 0x1a
add r8d, r10d
mov r11d, ebx
rol r11d, 0x15
xor r11d, ecx
mov r10d, ebx
rol r10d, 7
add r8d, ebp
mov ecx, r8d
rol ecx, 0x1e
xor r10d, r11d
mov r11d, r8d
rol r11d, 0x13
xor r11d, ecx
mov ecx, r8d
rol ecx, 0xa
xor ecx, r11d
mov esi, r8d
or esi, r14d
and esi, r15d
mov r11d, r8d
and r11d, r14d
or r11d, esi
mov r15d, eax
xor r15d, r9d
and r15d, ebx
xor r15d, r9d
add r11d, ecx
add r11d, r12d
mov ecx, r11d
rol ecx, 0x1e
add r15d, edi
mov esi, r11d
rol esi, 0x13
xor esi, ecx
mov ecx, r11d
rol ecx, 0xa
xor ecx, esi
mov esi, r11d
or esi, r8d
and esi, r14d
mov edi, r11d
and edi, r8d
or edi, esi
add edi, ecx
add edi, r13d
mov ecx, edi
rol ecx, 0x1e
add r15d, r10d
mov r10d, edi
rol r10d, 0x13
xor r10d, ecx
mov ecx, edi
rol ecx, 0xa
xor ecx, r10d
mov r10d, edi
or r10d, r11d
and r10d, r8d
mov esi, edi
and esi, r11d
or esi, r10d
add esi, ecx
lea ebp, [r15 + r14]
add esi, r15d
add rdx, 8
cmp rdx, 0x38
jb 0x14009dab0
movd xmm0, r8d
movd xmm1, r11d
punpckldq xmm1, xmm0
movd xmm0, edi
movd xmm2, esi
punpckldq xmm2, xmm0
punpcklqdq xmm2, xmm1
mov rcx, qword [rsp + 8]
movdqu xmm0, xmmword [rcx]
paddd xmm0, xmm2
movdqu xmm1, xmmword [rcx + 0x10]
movdqu xmmword [rcx], xmm0
movd xmm0, r9d
movd xmm2, eax
punpckldq xmm2, xmm0
movd xmm0, ebx
movd xmm3, ebp
punpckldq xmm3, xmm0
punpcklqdq xmm3, xmm2
paddd xmm3, xmm1
movdqu xmmword [rcx + 0x10], xmm3
add rsp, 0x118
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret