Function at 0x140004240
Capabilities:
Hash data with crc32

Disassembly:
push r15
push r14
push rsi
push rdi
push rbp
push rbx
not r8d
test rdx, rdx
je 0x14000437d
add rdx, 0xffffffffffffffff
add rcx, 2
lea r9, section..rdata
mov eax, r8d
jmp 0x140004350
mov r10d, eax
shr r10d, 8
mov ebx, eax
not ebx
movzx r11d, al
mov edi, eax
xor edi, 0xb1
and edi, r11d
or ebx, edi
or ebx, 0xbd342600
and edi, 0x4e
and ebx, 0xbd3426b1
or ebx, edi
mov edi, ebx
xor edi, 0x42cbd94e
mov ebp, esi
or ebp, edi
and edi, 0x422e3062
and ebx, 0xbd10069d
or ebx, edi
xor ebx, esi
xor ebx, 0xff3e36f3
and ebx, ebp
xor eax, esi
and eax, r11d
mov ebp, ebx
and ebp, 0x773006b8
xor ebp, eax
and eax, ebx
and ebx, 0x880e3047
or ebx, 0x66900798
xor ebp, ebx
mov ebx, ebp
and ebx, 0xff3e37ff
xor ebx, eax
xor rbx, 0x66100798
xor ebp, 0x98
and ebp, eax
or rbp, rbx
mov eax, dword [r9 + rbp*4]
mov ebp, r10d
not ebp
and ebp, eax
not eax
and eax, r10d
mov ebx, eax
and ebx, 0x870769
or ebx, 0x8530a810
and eax, 0x78f896
xor eax, ebx
mov ebx, eax
xor ebx, 0xc7b7af79
mov edi, ebp
xor edi, 0xbd78f896
and edi, ebx
xor ebp, 0x870769
xor eax, 0x38485086
and eax, ebp
or eax, edi
add rcx, 1
add rdx, 0xffffffffffffffff
jae 0x1400045ca
movzx esi, byte [rcx - 2]
cmp esi, 0x23
jne 0x140004270
cmp rdx, 2
jb 0x140004270
cmp byte [rcx - 1], 0x23
jne 0x140004270
cmp byte [rcx], 0x23
cmove eax, r8d
jmp 0x140004270
mov dl, byte [rcx]
test dl, dl
je 0x1400045c7
add rcx, 2
lea r9, section..rdata
mov eax, r8d
jmp 0x1400045a8
movzx r11d, dl
mov r10d, eax
shr r10d, 8
mov ebx, eax
and ebx, 0x24
movzx esi, al
mov edi, ebx
xor edi, 0x1102024
or edi, esi
mov esi, r11d
xor esi, 0x3c6890db
mov r14d, r11d
and r14d, 0xffffffdb
or esi, r14d
mov edx, edi
or edx, 0x36f1f802
xor edx, 0xfeffffdb
mov ebp, eax
and ebp, 2
or ebp, edx
and eax, 0x20
lea r15d, [rbx + 0x8992dd9]
mov edx, ebx
xor edx, 0xf766d226
and edx, ebp
not ebp
and ebp, r15d
or ebp, edx
xor ebx, 0xc1972a24
mov edx, edi
xor edx, 0x1102024
mov r15d, edx
or edx, ebx
and ebx, 0x41112a04
or ebx, eax
and r15d, 0x5e
and edi, 0xa1
or edi, r15d
xor edi, ebx
xor edi, 0x41112aff
and edi, edx
or edi, ebp
lea eax, [rsi + 0x2004500]
mov edx, esi
xor edx, 0x28205177
and edx, eax
mov eax, esi
or eax, 0xd65fc788
mov ebx, r11d
xor ebx, 0x88
and ebx, r14d
mov ebp, eax
and ebp, 0xf4364798
and esi, 0x1067
or esi, ebp
xor esi, edx
xor esi, 0xf5b67fff
not eax
and eax, edx
or eax, esi
and r11d, 0xffffff88
or r11d, 0xa201450
xor r11d, ebx
mov edx, r11d
xor edx, 0xde7fd7d8
xor r11d, 0x21802827
and r11d, eax
not eax
and eax, edx
or r11d, eax
xor r11d, edi
mov r11d, dword [r9 + r11*4]
mov r14d, r10d
xor r14d, 0x59e97a10
mov edx, r10d
and edx, 0xe97a10
mov esi, r14d
or esi, edx
not edx
mov edi, esi
mov ebp, r10d
mov eax, edx
mov ebx, r10d
and r10d, 0x200010
and edx, 0x84d97a24
or edx, r10d
xor edx, esi
not esi
and edi, 0x9dc755c
and esi, 0x238aa3
or esi, edi
and ebp, 0x804010
and eax, 0xa24c3404
add eax, ebp
add eax, 0x400002a0
and ebx, 0x210a00
xor ebx, eax
mov eax, ebx
xor eax, 0x4d9043f8
xor ebx, 0x6fbc07
and ebx, esi
not esi
and esi, eax
or ebx, esi
xor edx, 0x222685db
or edx, r14d
mov eax, edx
xor eax, ebx
not eax
not edx
and edx, ebx
or edx, eax
mov ebp, r11d
xor ebp, 0xa61685ef
mov eax, r11d
or eax, 0x23fabfbf
mov ebx, r11d
xor ebx, 0x7a13c5af
and ebx, ebp
mov ebp, edx
and ebp, 0xdc054040
or ebp, 0x338bcb4
and edx, 0x23fabfbf
xor edx, ebp
mov ebp, edx
xor ebp, 0xdf3dfcf4
mov edi, eax
and edi, 0xc5e2f20c
and r11d, 0x18050040
or r11d, edi
xor r11d, ebx
xor r11d, 0x59e3f20c
xor eax, 0x7bfbffbf
and eax, ebx
or eax, r11d
xor edx, 0x20c2030b
and edx, eax
not eax
and eax, ebp
or eax, edx
movzx edx, byte [rcx - 1]
add rcx, 1
test dl, dl
je 0x1400045ca
cmp dl, 0x23
jne 0x1400043a0
cmp byte [rcx - 1], 0x23
jne 0x1400043a0
cmp byte [rcx], 0x23
cmove eax, r8d
jmp 0x1400043a0
mov eax, r8d
not eax
pop rbx
pop rbp
pop rdi
pop rsi
pop r14
pop r15
ret