Function at 0x433872
Capabilities:
Hash data with crc32

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x10
mov edx, dword [ebp + 0xc]
mov edi, dword [ebp + 0x10]
test edx, edx
je 0x4338bb
mov ebx, dword [ebp + 8]
cmp edi, 0x40
jb 0x4338cf
mov eax, dword [0x588f48]
test eax, eax
je 0x4338cf
mov esi, edi
not ebx
and esi, 0xfffffff0
push ebx
push esi
push edx
call fcn.00407ad8
add esp, 0xc
mov ebx, eax
sub edi, esi
je 0x433b5a
mov eax, dword [ebp + 0xc]
add eax, esi
mov edx, eax
jmp 0x4338d9
xor ebx, ebx
test edi, edi
jne 0x433b5c
call fcn.0045ffe4
jmp 0x433b5c
not ebx
test edi, edi
je 0x433b5a
lea eax, [edi - 0x20]
xor esi, esi
mov dword [ebp - 0x10], eax
lea eax, [edx + esi]
test al, 3
je 0x433908
movzx eax, byte [eax]
movzx ecx, bl
shr ebx, 8
inc esi
xor ecx, eax
mov eax, dword [ebp - 0x10]
xor ebx, dword [ecx*4 + 0x5330e4]
dec eax
cmp edi, esi
jne 0x4338de
jmp 0x433b5a
mov ecx, esi
mov esi, edi
sub esi, ecx
cmp esi, 0x20
jb 0x433ad6
mov dword [ebp - 0x14], ecx
mov ecx, edx
mov dword [ebp - 0x18], edi
xor ebx, dword [eax]
add esi, 0xffffffe0
movzx edx, bh
movzx edi, bl
mov edx, dword [edx*4 + 0x5338e4]
xor edx, dword [edi*4 + 0x533ce4]
mov edi, ebx
shr ebx, 0x18
shr edi, 0xe
and edi, 0x3fc
xor edx, dword [edi + 0x5334e4]
xor edx, dword [ebx*4 + 0x5330e4]
xor edx, dword [eax + 4]
movzx ebx, dh
movzx edi, dl
mov ebx, dword [ebx*4 + 0x5338e4]
xor ebx, dword [edi*4 + 0x533ce4]
mov edi, edx
shr edx, 0x18
shr edi, 0xe
and edi, 0x3fc
xor ebx, dword [edi + 0x5334e4]
xor ebx, dword [edx*4 + 0x5330e4]
xor ebx, dword [eax + 8]
movzx edx, bh
movzx edi, bl
mov edx, dword [edx*4 + 0x5338e4]
xor edx, dword [edi*4 + 0x533ce4]
mov edi, ebx
shr ebx, 0x18
shr edi, 0xe
and edi, 0x3fc
xor edx, dword [edi + 0x5334e4]
xor edx, dword [ebx*4 + 0x5330e4]
xor edx, dword [eax + 0xc]
movzx ebx, dh
movzx edi, dl
mov ebx, dword [ebx*4 + 0x5338e4]
xor ebx, dword [edi*4 + 0x533ce4]
mov edi, edx
shr edx, 0x18
shr edi, 0xe
and edi, 0x3fc
xor ebx, dword [edi + 0x5334e4]
xor ebx, dword [edx*4 + 0x5330e4]
xor ebx, dword [eax + 0x10]
movzx edx, bh
movzx edi, bl
mov edx, dword [edx*4 + 0x5338e4]
xor edx, dword [edi*4 + 0x533ce4]
mov edi, ebx
shr ebx, 0x18
shr edi, 0xe
and edi, 0x3fc
xor edx, dword [edi + 0x5334e4]
xor edx, dword [ebx*4 + 0x5330e4]
xor edx, dword [eax + 0x14]
movzx ebx, dh
movzx edi, dl
mov ebx, dword [ebx*4 + 0x5338e4]
xor ebx, dword [edi*4 + 0x533ce4]
mov edi, edx
shr edx, 0x18
shr edi, 0xe
and edi, 0x3fc
xor ebx, dword [edi + 0x5334e4]
xor ebx, dword [edx*4 + 0x5330e4]
xor ebx, dword [eax + 0x18]
movzx edx, bh
movzx edi, bl
mov edx, dword [edx*4 + 0x5338e4]
xor edx, dword [edi*4 + 0x533ce4]
mov edi, ebx
shr ebx, 0x18
shr edi, 0xe
and edi, 0x3fc
xor edx, dword [edi + 0x5334e4]
xor edx, dword [ebx*4 + 0x5330e4]
xor edx, dword [eax + 0x1c]
add eax, 0x20
movzx ebx, dh
movzx edi, dl
mov ebx, dword [ebx*4 + 0x5338e4]
xor ebx, dword [edi*4 + 0x533ce4]
mov edi, edx
shr edx, 0x18
shr edi, 0xe
and edi, 0x3fc
xor ebx, dword [edi + 0x5334e4]
xor ebx, dword [edx*4 + 0x5330e4]
cmp esi, 0x1f
ja 0x43391f
mov edi, dword [ebp - 0x10]
mov esi, dword [ebp - 0x18]
mov edx, dword [ebp - 0x14]
and edi, 0xffffffe0
add esi, 0xffffffe0
sub esi, edi
add ecx, edi
lea eax, [edx + ecx + 0x20]
sub esi, edx
cmp esi, 4
jb 0x433b40
lea ecx, [esi - 4]
mov edi, eax
mov dword [ebp - 0x14], ecx
shr ecx, 2
mov dword [ebp - 0x1c], ecx
xor ebx, dword [edi]
mov dword [ebp - 0x18], esi
add edi, 4
movzx ecx, bl
movzx edx, bh
mov dword [ebp - 0x10], ecx
mov edx, dword [edx*4 + 0x5338e4]
mov ecx, ebx
shr ebx, 0xe
mov esi, dword [ebp - 0x10]
and ebx, 0x3fc
shr ecx, 0x18
xor edx, dword [esi*4 + 0x533ce4]
mov esi, dword [ebp - 0x18]
xor edx, dword [ebx + 0x5334e4]
add esi, 0xfffffffc
mov ebx, edx
xor ebx, dword [ecx*4 + 0x5330e4]
cmp esi, 3
ja 0x433ae9
mov esi, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x1c]
lea eax, [eax + ecx*4 + 4]
and esi, 3
test esi, esi
je 0x433b5a
movzx ecx, byte [eax]
movzx edx, bl
shr ebx, 8
inc eax
xor edx, ecx
xor ebx, dword [edx*4 + 0x5330e4]
dec esi
jne 0x433b44
not ebx
mov eax, ebx
add esp, 0x10
pop esi
pop edi
pop ebx
pop ebp
ret