Function at 0x10073fd0
Capabilities:
Hash data with crc32

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x24
mov eax, dword [ebp + 0x14]
mov ecx, dword [ebp + 0x10]
mov edx, dword [ebp + 0xc]
mov esi, dword [ebp + 8]
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x14], ecx
mov dword [ebp - 0x18], edx
mov dword [ebp - 0x1c], esi
cmp dword [ebp - 0x10], 0
je 0x10074009
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x30], eax
jmp 0x100740d6
mov al, 1
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
mov esi, ecx
sub esi, 0x979e690e
sub esi, 1
add esi, 0x979e690e
imul ecx, esi
and ecx, 1
cmp ecx, 0
sete ah
cmp edx, 0xa
setl bl
mov bh, ah
xor bh, 1
mov cl, bl
xor cl, 1
xor al, 0
mov ch, bh
and ch, 0
and ah, al
mov dl, cl
and dl, 0
and bl, al
or ch, ah
or dl, bl
xor ch, dl
or bh, cl
xor bh, 1
or al, 0
and bh, al
or ch, bh
test ch, 1
jne 0x1007407f
jmp 0x100743ec
mov eax, 0
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
sub eax, 1
mov esi, ecx
add esi, eax
imul ecx, esi
and ecx, 1
cmp ecx, 0
sete bl
cmp edx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x100740c9
jmp 0x100743ec
mov eax, 0xedb88320
mov dword [ebp - 0x30], eax
jmp 0x100740d6
mov eax, dword [ebp - 0x30]
mov ecx, 0xffffffff
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x14]
mov edx, eax
xor edx, 0xffffffff
and edx, 0x155e7573
mov esi, ecx
xor esi, 0x155e7573
and eax, esi
xor ecx, 0xffffffff
and ecx, 0x155e7573
and esi, 0xffffffff
or edx, eax
or ecx, esi
xor edx, ecx
mov dword [ebp - 0x14], edx
mov eax, 0
mov ecx, dword [ebp - 0x18]
mov edx, eax
sub edx, ecx
mov esi, eax
sub esi, 0xffffffff
add edx, esi
sub eax, edx
mov dword [ebp - 0x18], eax
cmp ecx, 0
jbe 0x100743ac
mov eax, dword [0x101537c8]
mov ecx, dword [0x101537c4]
mov edx, eax
sub edx, 0x7682f8f1
sub edx, 1
add edx, 0x7682f8f1
imul eax, edx
and eax, 1
cmp eax, 0
sete bl
cmp ecx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x10074191
jmp 0x100743f1
mov eax, 0xffffffff
mov ecx, dword [ebp - 0x24]
mov edx, ecx
add edx, 1
mov dword [ebp - 0x24], edx
movzx ecx, byte [ecx]
mov edx, dword [ebp - 0x14]
mov esi, eax
xor esi, 0xff
mov edi, edx
xor edi, esi
and edi, edx
mov edx, ecx
xor edx, 0xffffffff
and edx, 0xc743216a
xor eax, 0xc743216a
and ecx, eax
mov esi, edi
xor esi, 0xffffffff
and esi, 0xc743216a
and edi, eax
or edx, ecx
or esi, edi
xor edx, esi
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x2c], 8
mov eax, dword [0x101537c8]
mov ecx, dword [0x101537c4]
mov edx, eax
add edx, 0xed59edc4
sub edx, 1
sub edx, 0xed59edc4
imul eax, edx
and eax, 1
cmp eax, 0
sete bl
cmp ecx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x1007423a
jmp 0x100743f1
jmp 0x1007423f
cmp dword [ebp - 0x2c], 0
jle 0x1007436b
mov eax, 0xffffffff
mov ecx, dword [ebp - 0x28]
xor ecx, 0xffffffff
mov edx, eax
xor edx, 1
xor eax, 0x247e86f6
or ecx, edx
or eax, 0x247e86f6
xor ecx, 0xffffffff
and ecx, eax
cmp ecx, 0
je 0x10074343
mov eax, dword [0x101537c8]
mov ecx, dword [0x101537c4]
mov edx, eax
sub edx, 0xab8f97c2
sub edx, 1
add edx, 0xab8f97c2
imul eax, edx
and eax, 1
cmp eax, 0
sete bl
cmp ecx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x100742cf
jmp 0x1007446a
mov eax, dword [ebp - 0x28]
shr eax, 1
mov ecx, dword [ebp - 0x20]
mov edx, eax
xor edx, 0xffffffff
mov esi, ecx
and esi, edx
xor ecx, 0xffffffff
and eax, ecx
or esi, eax
mov dword [ebp - 0x28], esi
mov eax, dword [0x101537c8]
mov ecx, dword [0x101537c4]
mov edx, eax
sub edx, 0xa429b014
sub edx, 1
add edx, 0xa429b014
imul eax, edx
and eax, 1
cmp eax, 0
sete bl
cmp ecx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x1007433e
jmp 0x1007446a
jmp 0x1007434c
mov eax, dword [ebp - 0x28]
shr eax, 1
mov dword [ebp - 0x28], eax
jmp 0x10074351
mov eax, dword [ebp - 0x2c]
add eax, 0x720e05ac
add eax, 0xffffffff
sub eax, 0x720e05ac
mov dword [ebp - 0x2c], eax
jmp 0x1007423f
mov eax, 0xffffffff
mov ecx, dword [ebp - 0x14]
shr ecx, 8
mov edx, dword [ebp - 0x28]
mov esi, ecx
xor esi, 0xffffffff
and esi, 0x1f231e65
xor eax, 0x1f231e65
and ecx, eax
mov edi, edx
xor edi, 0xffffffff
and edi, 0x1f231e65
and edx, eax
or esi, ecx
or edi, edx
xor esi, edi
mov dword [ebp - 0x14], esi
jmp 0x1007411d
mov eax, 0xffffffff
mov ecx, dword [ebp - 0x14]
mov edx, ecx
xor edx, 0xffffffff
and edx, 0xa08f1942
mov esi, eax
xor esi, 0xa08f1942
and ecx, esi
xor eax, 0xffffffff
and eax, 0xa08f1942
and esi, 0xffffffff
or edx, ecx
or eax, esi
xor edx, eax
mov eax, edx
add esp, 0x24
pop esi
pop edi
pop ebx
pop ebp
ret
jmp 0x1007407f
mov eax, 0xffffffff
mov ecx, dword [ebp - 0x24]
mov edx, ecx
add edx, 1
mov dword [ebp - 0x24], edx
movzx ecx, byte [ecx]
mov edx, dword [ebp - 0x14]
xor edx, 0xffffffff
mov esi, eax
xor esi, 0xff
mov edi, eax
xor edi, 0xff3ed631
or edx, esi
or edi, 0xff3ed631
xor edx, 0xffffffff
and edx, edi
mov esi, ecx
xor esi, 0xffffffff
and esi, 0xc28ba489
xor eax, 0xc28ba489
and ecx, eax
mov edi, edx
xor edi, 0xffffffff
and edi, 0xc28ba489
and edx, eax
or esi, ecx
or edi, edx
xor esi, edi
mov dword [ebp - 0x28], esi
mov dword [ebp - 0x2c], 8
jmp 0x10074191
mov eax, 0xffffffff
mov ecx, dword [ebp - 0x28]
shr ecx, 1
mov edx, dword [ebp - 0x20]
mov esi, ecx
xor esi, 0xffffffff
and esi, 0x1ecbb90
xor eax, 0x1ecbb90
and ecx, eax
mov edi, edx
xor edi, 0xffffffff
and edi, 0x1ecbb90
and edx, eax
or esi, ecx
or edi, edx
xor esi, edi
mov dword [ebp - 0x28], esi
jmp 0x100742cf