Function at 0x1400422c0
Capabilities:
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 - 0x30]
sub rsp, 0x130
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 + 0x30], 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 + 0x34], 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 + 0x38], 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 + 0x3c], 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 + 0x40], 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 + 0x44], 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 + 0x48], 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 + 0x4c], 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 + 0x50], 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 + 0x54], 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 + 0x58], 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 + 0x5c], 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 + 0x60], 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 + 0x64], 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]
mov r15d, 0xe
shl ecx, 8
or ecx, eax
movzx eax, byte [rdx + 0x3d]
mov dword [rsp + 0x68], 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
mov dword [rsp + 0x6c], ecx
lea eax, [r15 - 0xd]
mov r11d, dword [rsp + rax*4 + 0x30]
lea rbx, [rsp + 0x30]
mov eax, r15d
lea rdi, [rsp + 0x30]
mov r10d, r11d
rol r10d, 0xe
mov esi, dword [rsp + rax*4 + 0x30]
mov eax, r11d
ror eax, 7
mov ecx, esi
xor r10d, eax
rol ecx, 0xf
mov eax, r11d
shr eax, 3
xor r10d, eax
mov eax, esi
rol eax, 0xd
xor ecx, eax
mov eax, esi
shr eax, 0xa
xor ecx, eax
lea eax, [r15 - 0xe]
add r10d, ecx
add r10d, dword [rsp + rax*4 + 0x30]
lea eax, [r15 - 5]
add r10d, dword [rsp + rax*4 + 0x30]
lea eax, [r15 + 2]
mov dword [rsp + rax*4 + 0x30], r10d
lea eax, [r15 - 0xc]
mov r8d, dword [rbx + rax*4]
lea rbx, [rbx + rax*4]
lea eax, [r15 + 1]
mov ecx, r8d
mov edx, dword [rsp + rax*4 + 0x30]
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, [r15 - 4]
add r9d, ecx
mov r8d, r10d
add r9d, dword [rsp + rax*4 + 0x30]
lea eax, [r15 + 3]
rol r8d, 0xf
add r11d, r9d
mov dword [rsp + rax*4 + 0x30], r11d
lea r9, [rsp + 0x30]
mov ebx, dword [rbx]
lea eax, [r15 - 0xb]
mov edx, dword [r9 + rax*4]
lea r9, [r9 + rax*4]
mov eax, r10d
mov ecx, edx
rol eax, 0xd
xor r8d, eax
rol ecx, 0xe
mov eax, edx
shr r10d, 0xa
ror eax, 7
xor r8d, r10d
xor ecx, eax
shr edx, 3
lea eax, [r15 - 3]
xor ecx, edx
add r8d, ecx
add r8d, dword [rsp + rax*4 + 0x30]
lea eax, [r15 + 4]
add ebx, r8d
mov dword [rsp + rax*4 + 0x30], ebx
lea eax, [r15 - 0xa]
lea rdi, [rdi + rax*4]
mov ecx, dword [rdi]
lea r8, [rsp + 0x30]
mov eax, ecx
mov r10d, ecx
ror eax, 7
shr ecx, 3
rol r10d, 0xe
xor r10d, eax
mov eax, r11d
rol eax, 0xd
xor r10d, ecx
mov ecx, r11d
shr r11d, 0xa
rol ecx, 0xf
xor ecx, eax
lea eax, [r15 - 2]
xor ecx, r11d
add r10d, ecx
add r10d, dword [rsp + rax*4 + 0x30]
lea eax, [r15 + 5]
add r10d, dword [r9]
lea r9d, [r15 + 6]
mov dword [rsp + rax*4 + 0x30], r10d
lea eax, [r15 - 9]
mov ecx, dword [r8 + rax*4]
lea r8, [r8 + 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, ebx
rol eax, 0xd
mov ecx, ebx
rol ecx, 0xf
xor ecx, eax
shr ebx, 0xa
xor ecx, ebx
lea eax, [r15 - 1]
add edx, ecx
add edx, dword [rsp + rax*4 + 0x30]
lea eax, [r15 - 8]
add edx, dword [rdi]
mov dword [rsp + r9*4 + 0x30], edx
mov edx, dword [rsp + rax*4 + 0x30]
mov eax, edx
mov ecx, edx
ror eax, 7
shr edx, 3
rol ecx, 0xe
xor ecx, eax
mov eax, r10d
xor ecx, edx
rol eax, 0xd
mov edx, r10d
shr r10d, 0xa
rol edx, 0xf
xor edx, eax
xor edx, r10d
lea eax, [rsi + rcx]
add edx, eax
lea eax, [r15 + 7]
add edx, dword [r8]
mov r15d, r9d
mov dword [rsp + rax*4 + 0x30], edx
lea eax, [r9 + 2]
cmp eax, 0x40
jb 0x140042521
mov eax, dword [r14 + 8]
lea r11, [0x1401169a0]
mov ecx, dword [r14 + 0x1c]
mov edi, eax
mov dword [rsp], eax
mov r13d, ecx
mov eax, dword [r14 + 0xc]
xor esi, esi
mov dword [rsp + 4], eax
mov r15d, eax
mov eax, dword [r14 + 0x10]
mov r12d, eax
mov dword [rsp + 8], eax
mov eax, dword [r14 + 0x14]
mov r9d, eax
mov dword [rsp + 0x14], ecx
mov ecx, dword [r14 + 0x20]
mov dword [rbp + 0x80], ecx
mov dword [rsp + 0xc], eax
mov eax, dword [r14 + 0x18]
mov dword [rsp + 0x18], ecx
mov ecx, dword [r14 + 0x24]
mov r8d, ecx
mov r14d, dword [rbp + 0x80]
mov dword [rsp + 0x10], eax
mov dword [rsp + 0x1c], ecx
mov qword [rsp + 0x20], 0x20
jmp 0x140042787
mov r8d, dword [rbp + 0x88]
mov ecx, eax
mov dword [rbp + 0x88], r13d
rol ecx, 7
lea rsi, [rsi + 8]
mov r10d, eax
mov edx, eax
ror r10d, 0xb
not edx
xor r10d, ecx
and edx, r14d
mov ecx, eax
mov ebx, r15d
ror ecx, 6
xor r10d, ecx
mov ecx, r13d
and ecx, eax
xor edx, ecx
mov ecx, edi
add r10d, edx
rol ecx, 0xa
add r10d, dword [rsi + r11 - 8]
mov edx, r15d
add r10d, dword [rsp + rsi + 0x28]
xor edx, r12d
add r10d, r8d
and edx, edi
add r9d, r10d
mov r11d, edi
ror r11d, 0xd
xor r11d, ecx
mov ecx, edi
ror ecx, 2
xor r11d, ecx
mov ecx, r15d
and ecx, r12d
xor edx, ecx
mov ecx, r9d
rol ecx, 7
add r11d, edx
add r11d, r10d
mov edx, r9d
not edx
mov r10d, r9d
ror r10d, 0xb
and edx, r13d
xor r10d, ecx
mov r8d, r11d
mov ecx, r9d
rol r8d, 0xa
ror ecx, 6
mov r13d, r9d
xor r10d, ecx
mov ecx, r9d
and ecx, eax
mov r9d, r15d
xor edx, ecx
mov r15d, r11d
add r10d, edx
lea rcx, [0x1401169a0]
add r10d, dword [rsi + rcx - 4]
mov edx, ebx
add r10d, dword [rsp + rsi + 0x2c]
xor edx, edi
add r10d, r14d
and edx, r11d
mov ecx, r11d
mov r14d, eax
ror ecx, 2
xor r8d, ecx
mov ecx, r11d
ror ecx, 0xd
lea eax, [r12 + r10]
mov r12d, edi
lea r11, [0x1401169a0]
and edi, ebx
xor ecx, r8d
xor edi, edx
add ecx, r10d
add edi, ecx
sub qword [rsp + 0x20], 1
jne 0x140042780
mov ecx, dword [rsp]
mov rbx, qword [rsp + 0x178]
add ecx, edi
mov dword [rbp + 0x80], r14d
mov r14, qword [rbp + 0x70]
mov dword [r14 + 8], ecx
mov ecx, dword [rsp + 4]
add ecx, r15d
mov dword [r14 + 0xc], ecx
mov ecx, dword [rsp + 8]
add ecx, r12d
mov dword [r14 + 0x10], ecx
mov ecx, dword [rsp + 0xc]
add ecx, r9d
mov dword [r14 + 0x14], ecx
mov ecx, dword [rsp + 0x10]
add ecx, eax
mov eax, dword [rsp + 0x14]
add eax, r13d
mov dword [r14 + 0x18], ecx
mov dword [r14 + 0x1c], eax
mov eax, dword [rsp + 0x18]
add eax, dword [rbp + 0x80]
mov dword [r14 + 0x20], eax
mov eax, dword [rbp + 0x88]
add eax, dword [rsp + 0x1c]
mov dword [r14 + 0x24], eax
add rsp, 0x130
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret