Function at 0x14000e510
Capabilities:
Hash data with crc32

Disassembly:
push rbp
push r14
push rsi
push rdi
push rbx
sub rsp, 0x40
lea rbp, [rsp + 0x40]
mov qword [rbp - 8], 0xfffffffffffffffe
mov rsi, r8
mov rdi, rdx
mov rbx, rcx
lea rax, [rcx + 0x100]
mov qword [rbp - 0x20], rax
lea rax, [rcx + 0x2b0]
mov qword [rbp - 0x18], rax
add rcx, 8
mov r8d, 0x3f8
xor edx, edx
call sub.VCRUNTIME140.dll_memset
mov qword [rbp - 0x10], rbx
mov qword [rbx], rdi
mov rcx, rsi
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
mov rdi, rax
inc rdi
mov rdx, qword [0x140071dc0]
mov rcx, rdi
call qword [0x14006d288]
mov rbx, rax
mov r14, qword [rbp - 0x10]
mov rax, qword [0x140071db0]
test rax, rax
je 0x14000e626
mov ecx, dword [rax + 0x3f58]
movsx rdx, word [rax + 0x60f0]
cmp dword [rax + rdx*8 + 0x60f4], ecx
jne 0x14000e5c7
lea rdx, [rax + rdx*8]
add rdx, 0x60f4
cmp rdi, 0xffffffffffffffff
je 0x14000e61a
add rax, 0x60e8
inc word [rdx + 4]
jmp 0x14000e624
inc edx
movsxd rdx, edx
imul r8, rdx, 0x2aaaaaab
mov r9, r8
shr r9, 0x3f
shr r8, 0x20
add r8d, r9d
add r8d, r8d
lea r8d, [r8 + r8*2]
sub edx, r8d
mov word [rax + 0x60f0], dx
movsxd r8, edx
lea rdx, [rax + r8*8]
add rdx, 0x60f4
mov dword [rax + r8*8 + 0x60f4], ecx
mov dword [rax + r8*8 + 0x60f8], 0
cmp rdi, 0xffffffffffffffff
jne 0x14000e5bb
inc word [rdx + 6]
add rax, 0x60ec
inc dword [rax]
mov rcx, rbx
mov rdx, rsi
mov r8, rdi
call sub.VCRUNTIME140.dll_memcpy
mov qword [r14 + 8], rbx
mov rcx, rsi
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
inc eax
mov dword [r14 + 0x80], eax
movzx eax, byte [rsi]
test al, al
je 0x14000e6a6
add rsi, 2
mov edx, 0xffffffff
lea r8, [0x140059570]
mov ecx, 0xffffffff
jmp 0x14000e689
movzx r9d, r9b
movzx r10d, cl
shr ecx, 8
xor r10d, r9d
xor ecx, dword [r8 + r10*4]
inc rsi
test al, al
je 0x14000e6a2
mov r9d, eax
movzx eax, byte [rsi - 1]
cmp r9b, 0x23
jne 0x14000e670
cmp al, 0x23
jne 0x14000e670
cmp byte [rsi], 0x23
cmove ecx, edx
jmp 0x14000e670
not ecx
jmp 0x14000e6a8
xor ecx, ecx
lea rdx, [r14 + 0x10]
mov dword [r14 + 0x10], ecx
mov rcx, qword [rbp - 0x20]
call fcn.140008060
mov r8, qword [rbp - 0x10]
mov rax, qword [r8 + 0x108]
movsxd rcx, dword [r8 + 0x100]
mov eax, dword [rax + rcx*4 - 4]
movzx ecx, al
mov esi, eax
not esi
shr esi, 8
xor rcx, 0xdc
lea rax, [0x140059570]
xor esi, dword [rax + rcx*4]
movzx ecx, sil
shr esi, 8
xor ecx, 0x4d
xor esi, dword [rax + rcx*4]
movzx ecx, sil
shr esi, 8
xor ecx, 0x4f
xor esi, dword [rax + rcx*4]
movzx ecx, sil
shr esi, 8
xor ecx, 0x56
xor esi, dword [rax + rcx*4]
movzx ecx, sil
shr esi, 8
xor ecx, 0x45
xor esi, dword [rax + rcx*4]
mov rdx, qword [r8]
not esi
cmp dword [rdx + 0x404c], esi
mov rax, r8
jne 0x14000e74b
lea r8, str.MOVE
mov ecx, esi
mov edx, 0xb
xor r9d, r9d
call fcn.14000f6c0
mov rax, qword [rbp - 0x10]
mov rdx, qword [rax]
mov dword [rax + 0x84], esi
vmovaps xmm0, xmmword [0x14005a760]
vmovups xmmword [rax + 0x9c], xmm0
mov word [rax + 0xdc], 0xffff
mov dword [rax + 0xe0], 0xffffffff
movzx ecx, byte [rax + 0xeb]
shl ecx, 0x18
mov dword [rax + 0xe8], ecx
vbroadcastss xmm0, dword [0x140059004]
vmovups xmmword [rax + 0xec], xmm0
movabs rcx, 0xbf800000ffffffff
mov qword [rax + 0x270], rcx
movabs rcx, 0xffffffff3f800000
mov qword [rax + 0x2a0], rcx
mov rcx, qword [rbp - 0x18]
mov qword [rax + 0x2a8], rcx
add rdx, 0x3d40
mov qword [rax + 0x2e8], rdx
mov rcx, qword [rax + 8]
mov qword [rax + 0x2f0], rcx
vmovups xmmword [rax + 0x3e0], xmm0
add rsp, 0x40
pop rbx
pop rdi
pop rsi
pop r14
pop rbp
ret