Function at 0x1400eb030
Capabilities:
Hash data with crc32

Disassembly:
push r14
push rsi
push rdi
push rbx
sub rsp, 0x28
test rdx, rdx
je 0x1400eb0d1
mov rsi, rdx
mov edi, ecx
mov ebx, r8d
cmp dword [0x14031ae98], 0
je 0x1400eb05d
cmp r8d, 0x40
jae 0x1400eb174
not edi
test rbx, rbx
je 0x1400eb0a6
mov eax, esi
and eax, 3
test rax, rax
je 0x1400eb0a6
lea rax, [rsi + 1]
lea r8, [0x1402c0ea0]
mov rdx, rbx
movzx ebx, byte [rsi]
inc rsi
movzx ecx, dil
xor ecx, ebx
shr edi, 8
xor edi, dword [r8 + rcx*4]
lea rbx, [rdx - 1]
cmp rdx, 1
je 0x1400eb0a6
mov ecx, eax
and ecx, 3
inc rax
test rcx, rcx
jne 0x1400eb079
cmp rbx, 0x20
jae 0x1400eb1a1
cmp rbx, 4
jae 0x1400eb0f8
mov eax, edi
test rbx, rbx
jne 0x1400eb14d
not eax
mov edi, eax
mov eax, edi
add rsp, 0x28
pop rbx
pop rdi
pop rsi
pop r14
ret
test r8d, r8d
jne 0x1400eb37c
lea rcx, [0x14031aea0]
lea rdx, [0x140292b60]
xor edi, edi
xor r8d, r8d
xor r9d, r9d
call qword [sym.imp.KERNEL32.dll_InitOnceExecuteOnce]
jmp 0x1400eb0c5
mov r8d, 0xff
lea rdx, [0x1402c0ea0]
xor edi, dword [rsi]
add rsi, 4
mov ecx, edi
and ecx, r8d
mov eax, edi
shr eax, 8
and eax, r8d
mov eax, dword [rdx + rax*4 + 0x800]
xor eax, dword [rdx + rcx*4 + 0xc00]
mov ecx, edi
shr ecx, 0x10
and ecx, r8d
xor eax, dword [rdx + rcx*4 + 0x400]
shr edi, 0x18
xor eax, dword [rdx + rdi*4]
add rbx, 0xfffffffffffffffc
mov edi, eax
cmp rbx, 3
jbe 0x1400eb0b8
jmp 0x1400eb105
xor ecx, ecx
lea r8, [0x1402c0ea0]
movzx edi, byte [rsi + rcx]
movzx edx, al
xor edx, edi
shr eax, 8
xor eax, dword [r8 + rdx*4]
inc rcx
cmp rbx, rcx
je 0x1400eb0c1
jmp 0x1400eb156
mov r14d, ebx
and r14d, 0xfffffff0
not edi
mov rcx, rsi
mov rdx, r14
mov r8d, edi
call fcn.1400eb390
mov edi, eax
not edi
and rbx, 0xf
je 0x1400eb0c5
add rsi, r14
jmp 0x1400eb05d
mov r8d, 0xff
lea r9, [0x1402c0ea0]
xor edi, dword [rsi]
mov eax, edi
and eax, r8d
mov edx, edi
shr edx, 8
and edx, r8d
mov ecx, dword [r9 + rdx*4 + 0x800]
xor ecx, dword [r9 + rax*4 + 0xc00]
mov eax, edi
shr eax, 0x10
and eax, r8d
xor ecx, dword [r9 + rax*4 + 0x400]
shr edi, 0x18
xor ecx, dword [r9 + rdi*4]
xor ecx, dword [rsi + 4]
mov eax, ecx
and eax, r8d
mov edx, ecx
shr edx, 8
and edx, r8d
mov edi, dword [r9 + rdx*4 + 0x800]
xor edi, dword [r9 + rax*4 + 0xc00]
mov eax, ecx
shr eax, 0x10
and eax, r8d
xor edi, dword [r9 + rax*4 + 0x400]
shr ecx, 0x18
xor edi, dword [r9 + rcx*4]
xor edi, dword [rsi + 8]
mov eax, edi
and eax, r8d
mov ecx, edi
shr ecx, 8
and ecx, r8d
mov edx, dword [r9 + rcx*4 + 0x800]
xor edx, dword [r9 + rax*4 + 0xc00]
mov eax, edi
shr eax, 0x10
and eax, r8d
xor edx, dword [r9 + rax*4 + 0x400]
shr edi, 0x18
xor edx, dword [r9 + rdi*4]
xor edx, dword [rsi + 0xc]
mov eax, edx
and eax, r8d
mov ecx, edx
shr ecx, 8
and ecx, r8d
mov edi, dword [r9 + rcx*4 + 0x800]
xor edi, dword [r9 + rax*4 + 0xc00]
mov eax, edx
shr eax, 0x10
and eax, r8d
xor edi, dword [r9 + rax*4 + 0x400]
shr edx, 0x18
xor edi, dword [r9 + rdx*4]
xor edi, dword [rsi + 0x10]
mov eax, edi
and eax, r8d
mov ecx, edi
shr ecx, 8
and ecx, r8d
mov edx, dword [r9 + rcx*4 + 0x800]
xor edx, dword [r9 + rax*4 + 0xc00]
mov eax, edi
shr eax, 0x10
and eax, r8d
xor edx, dword [r9 + rax*4 + 0x400]
shr edi, 0x18
xor edx, dword [r9 + rdi*4]
xor edx, dword [rsi + 0x14]
mov eax, edx
and eax, r8d
mov ecx, edx
shr ecx, 8
and ecx, r8d
mov edi, dword [r9 + rcx*4 + 0x800]
xor edi, dword [r9 + rax*4 + 0xc00]
mov eax, edx
shr eax, 0x10
and eax, r8d
xor edi, dword [r9 + rax*4 + 0x400]
shr edx, 0x18
xor edi, dword [r9 + rdx*4]
xor edi, dword [rsi + 0x18]
mov eax, edi
and eax, r8d
mov ecx, edi
shr ecx, 8
and ecx, r8d
mov edx, dword [r9 + rcx*4 + 0x800]
xor edx, dword [r9 + rax*4 + 0xc00]
mov eax, edi
shr eax, 0x10
and eax, r8d
xor edx, dword [r9 + rax*4 + 0x400]
shr edi, 0x18
xor edx, dword [r9 + rdi*4]
xor edx, dword [rsi + 0x1c]
add rsi, 0x20
mov eax, edx
and eax, r8d
mov ecx, edx
shr ecx, 8
and ecx, r8d
mov edi, dword [r9 + rcx*4 + 0x800]
xor edi, dword [r9 + rax*4 + 0xc00]
mov eax, edx
shr eax, 0x10
and eax, r8d
xor edi, dword [r9 + rax*4 + 0x400]
shr edx, 0x18
xor edi, dword [r9 + rdx*4]
add rbx, 0xffffffffffffffe0
cmp rbx, 0x1f
jbe 0x1400eb0b0
jmp 0x1400eb1ae
xor edi, edi
jmp 0x1400eb0c5