Function at 0x18014e150
Capabilities:
Hash data with crc32

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x38
not r8d
mov r15d, 0x68a8ec00
mov r9d, 0xac154bd6
mov r11d, 0xdbbc40a9
mov r13d, 0x2539b6f4
mov r12d, 0x6dfd75cf
mov esi, 0x1919a620
mov r10d, 0x31e1d2a0
mov r14d, 0x45a67933
jmp 0x18014e1c0
mov eax, dword [0x180314d18]
lea edi, [rax - 1]
imul edi, eax
test dil, 1
mov r15d, 0xc9b8f721
mov eax, 0x31f27c5f
cmove r15d, eax
cmp dword [0x180314d1c], 0xa
cmovl r15d, eax
nop
cmp r15d, 0x19b31559
jle 0x18014e230
cmp r15d, 0x31f27c5e
jle 0x18014e320
cmp r15d, 0x4fa5da3c
jg 0x18014e3dd
cmp r15d, 0x31f27c5f
je 0x18014e594
cmp r15d, 0x45a67933
je 0x18014e5d6
cmp r15d, 0x4f3e0cb4
jne 0x18014e1c0
mov eax, dword [0x180314d18]
lea edi, [rax - 1]
imul edi, eax
test dil, 1
mov r15d, 0xcc3a28b5
cmove r15d, r10d
cmp dword [0x180314d1c], 0xa
cmovl r15d, r10d
jmp 0x18014e1c0
cmp r15d, 0xcc3a28b4
jg 0x18014e390
cmp r15d, 0xac154bd5
jle 0x18014e402
cmp r15d, 0xac154bd6
je 0x18014e629
cmp r15d, 0xb9ed805e
je 0x18014e194
cmp r15d, 0xc9b8f721
jne 0x18014e1c0
mov eax, dword [rsp + 4]
mov eax, dword [rsp + 4]
mov eax, dword [rsp + 4]
mov eax, dword [rsp + 4]
mov eax, dword [rsp + 4]
mov eax, dword [rsp + 4]
mov eax, dword [rsp + 4]
mov eax, dword [rsp + 4]
mov eax, dword [rsp + 4]
mov eax, dword [rsp + 4]
mov eax, dword [rsp + 4]
mov eax, dword [rsp + 4]
mov eax, dword [rsp + 4]
mov eax, dword [rsp + 4]
mov eax, dword [rsp + 4]
mov eax, dword [rsp + 4]
mov eax, dword [rsp + 4]
mov eax, dword [rsp + 4]
mov eax, dword [rsp + 4]
mov eax, dword [rsp + 4]
mov eax, dword [rsp + 4]
mov eax, dword [rsp + 4]
mov eax, dword [rsp + 4]
mov eax, dword [rsp + 4]
mov eax, dword [rsp + 4]
mov eax, dword [rsp + 4]
mov eax, dword [rsp + 4]
mov eax, dword [rsp + 4]
mov eax, dword [rsp + 4]
mov eax, dword [rsp + 4]
mov eax, dword [rsp + 4]
mov eax, dword [rsp + 4]
mov eax, dword [rsp + 4]
mov eax, dword [rsp + 4]
mov eax, dword [rsp + 4]
mov eax, dword [rsp + 4]
mov eax, dword [rsp + 4]
mov eax, dword [rsp + 4]
mov eax, dword [rsp + 4]
mov eax, dword [rsp + 4]
mov r15d, 0x31f27c5f
jmp 0x18014e1c0
cmp r15d, 0x2bd683b2
jle 0x18014e469
cmp r15d, 0x2bd683b3
je 0x18014e688
cmp r15d, 0x2f512f23
je 0x18014e6b2
cmp r15d, 0x31e1d2a0
jne 0x18014e1c0
mov eax, dword [rsp + 4]
not eax
mov dword [rsp + 0x24], eax
mov eax, dword [0x180314d18]
lea edi, [rax - 1]
imul edi, eax
test dil, 1
mov r15d, 0xcc3a28b5
cmove r15d, r13d
cmp dword [0x180314d1c], 0xa
cmovl r15d, r13d
jmp 0x18014e1c0
cmp r15d, 0xdbbc40a8
jle 0x18014e4c5
cmp r15d, 0xdbbc40a9
je 0x18014e6cc
cmp r15d, 0xe8a8f237
je 0x18014e71e
cmp r15d, 0x1919a620
jne 0x18014e1c0
cmp byte [rsp + 0x17], 0
mov r15d, 0x86aa5973
mov eax, 0xe8a8f237
cmovne r15d, eax
jmp 0x18014e1c0
cmp r15d, 0x68a8ec00
je 0x18014e748
cmp r15d, 0x6dfd75cf
jne 0x18014e7e0
mov r15d, 0x4f3e0cb4
jmp 0x18014e1c0
cmp r15d, 0x86aa5973
je 0x18014e780
cmp r15d, 0xaa41c35c
jne 0x18014e1c0
mov eax, dword [rsp + 4]
mov eax, dword [rsp + 4]
mov eax, dword [rsp + 4]
mov eax, dword [rsp + 4]
mov eax, dword [rsp + 4]
mov eax, dword [rsp + 4]
mov eax, dword [rsp + 4]
mov eax, dword [rsp + 4]
mov eax, dword [rsp + 4]
mov eax, dword [rsp + 4]
mov eax, dword [rsp + 4]
mov eax, dword [rsp + 4]
mov eax, dword [rsp + 4]
mov eax, dword [rsp + 4]
mov rax, qword [rsp + 0x18]
mov rax, qword [rsp + 0x18]
mov r15d, 0xac154bd6
jmp 0x18014e1c0
cmp r15d, 0x19b3155a
je 0x18014e7c2
cmp r15d, 0x2539b6f4
jne 0x18014e1c0
mov eax, dword [0x180314d18]
lea edi, [rax - 1]
imul edi, eax
and edi, 1
sete al
cmp dword [0x180314d1c], 9
setg bpl
xor al, bpl
mov ebx, eax
xor bl, 1
and dil, bpl
or dil, bl
xor dil, al
mov r15d, 0xb9ed805e
mov eax, 0x4fa5da3d
cmovne r15d, eax
jmp 0x18014e1c0
cmp r15d, 0xcc3a28b5
je 0x18014e7cd
cmp r15d, 0xcdb2fdad
jne 0x18014e1c0
mov rax, qword [rsp + 8]
mov rax, qword [rsp + 8]
mov rax, qword [rsp + 8]
mov rax, qword [rsp + 8]
mov rax, qword [rsp + 8]
mov rax, qword [rsp + 8]
mov rax, qword [rsp + 8]
mov rax, qword [rsp + 8]
mov rax, qword [rsp + 8]
mov rax, qword [rsp + 8]
mov rax, qword [rsp + 8]
mov rax, qword [rsp + 8]
mov rax, qword [rsp + 8]
mov rax, qword [rsp + 8]
mov rax, qword [rsp + 8]
mov rax, qword [rsp + 8]
mov rax, qword [rsp + 8]
mov rax, qword [rsp + 8]
mov rax, qword [rsp + 8]
mov rax, qword [rsp + 8]
mov rax, qword [rsp + 8]
mov rax, qword [rsp + 8]
mov rax, qword [rsp + 8]
mov rax, qword [rsp + 8]
mov rax, qword [rsp + 8]
mov rax, qword [rsp + 8]
mov rax, qword [rsp + 8]
mov rax, qword [rsp + 8]
mov rax, qword [rsp + 8]
mov rax, qword [rsp + 8]
mov rax, qword [rsp + 8]
mov rax, qword [rsp + 8]
mov rax, qword [rsp + 8]
mov rax, qword [rsp + 8]
mov r15d, 0xdbbc40a9
jmp 0x18014e1c0
mov eax, dword [rsp + 4]
mov eax, dword [rsp + 4]
mov eax, dword [rsp + 4]
mov eax, dword [rsp + 4]
mov eax, dword [rsp + 4]
mov eax, dword [rsp + 4]
mov eax, dword [0x180314d18]
lea edi, [rax - 1]
imul edi, eax
test dil, 1
mov r15d, 0xc9b8f721
cmove r15d, r12d
cmp dword [0x180314d1c], 0xa
cmovl r15d, r12d
jmp 0x18014e1c0
mov rdi, qword [rsp + 8]
add rdi, 0xffffffffffffffff
mov qword [rsp + 0x28], rdi
cmp qword [rsp + 8], 0
setne byte [rsp + 0x17]
mov edi, dword [0x180314d18]
lea ebx, [rdi - 1]
imul ebx, edi
test bl, 1
sete bl
mov r15d, 0x2bd683b3
cmove r15d, esi
cmp dword [0x180314d1c], 9
mov eax, 0x2bd683b3
cmovg r15d, eax
setg al
xor al, bl
cmove r15d, esi
jmp 0x18014e1c0
mov eax, dword [rsp + 4]
shr eax, 8
mov edi, dword [rsp + 4]
mov rbx, qword [rsp + 0x18]
add rbx, 1
mov qword [rsp + 0x30], rbx
mov rbx, qword [rsp + 0x18]
movzx ebx, byte [rbx]
mov ebp, edi
xor ebp, ebx
and ebp, edi
not edi
and edi, ebx
movzx ebx, bpl
xor ebx, edi
lea rdi, [0x1802ffc30]
xor eax, dword [rdi + rbx*4]
mov dword [rsp + 0x20], eax
mov eax, dword [0x180314d18]
lea edi, [rax - 1]
imul edi, eax
test dil, 1
mov r15d, 0xaa41c35c
mov eax, 0x2f512f23
jmp 0x18014e1af
mov eax, dword [0x180314d18]
lea edi, [rax - 1]
imul edi, eax
test dil, 1
mov r15d, 0xcdb2fdad
cmove r15d, r11d
cmp dword [0x180314d1c], 0xa
cmovl r15d, r11d
jmp 0x18014e1c0
mov rdx, qword [rsp + 0x28]
mov rcx, qword [rsp + 0x30]
mov r8d, dword [rsp + 0x20]
mov r15d, 0x68a8ec00
jmp 0x18014e1c0
mov rax, qword [rsp + 8]
mov rax, qword [rsp + 8]
mov rax, qword [rsp + 8]
mov rax, qword [rsp + 8]
mov rax, qword [rsp + 8]
mov rax, qword [rsp + 8]
mov rax, qword [rsp + 8]
mov rax, qword [rsp + 8]
mov rax, qword [rsp + 8]
mov rax, qword [rsp + 8]
mov eax, dword [0x180314d18]
lea edi, [rax - 1]
imul edi, eax
test dil, 1
mov r15d, 0xcdb2fdad
mov eax, 0x19b3155a
jmp 0x18014e1af
mov eax, dword [0x180314d18]
lea edi, [rax - 1]
imul edi, eax
test dil, 1
mov r15d, 0xaa41c35c
cmove r15d, r9d
cmp dword [0x180314d1c], 0xa
cmovl r15d, r9d
jmp 0x18014e1c0
mov qword [rsp + 8], rdx
mov qword [rsp + 0x18], rcx
mov dword [rsp + 4], r8d
mov edi, dword [0x180314d18]
lea ebx, [rdi - 1]
imul ebx, edi
test bl, 1
mov r15d, 0x2bd683b3
cmove r15d, r14d
cmp dword [0x180314d1c], 0xa
cmovl r15d, r14d
jmp 0x18014e1c0
mov eax, dword [0x180314d18]
lea edi, [rax - 1]
imul edi, eax
and edi, 1
sete al
cmp dword [0x180314d1c], 9
setg bpl
xor al, bpl
mov ebx, eax
xor bl, 1
and dil, bpl
or dil, bl
xor dil, al
mov r15d, 0xb9ed805e
mov eax, 0x4f3e0cb4
cmovne r15d, eax
jmp 0x18014e1c0
mov r15d, 0x45a67933
jmp 0x18014e1c0
mov eax, dword [rsp + 4]
mov eax, dword [rsp + 4]
mov r15d, 0x31e1d2a0
jmp 0x18014e1c0
cmp r15d, 0x4fa5da3d
jne 0x18014e1c0
mov eax, dword [rsp + 0x24]
add rsp, 0x38
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret