Function at 0x428440
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x70
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp + 8]
mov dword [esp + 0x68], eax
mov dword [esp + 0x64], ecx
mov dword [esp + 0x60], 0xf7f733c0
mov dword [esp + 0x5c], 0x1000193
mov dword [esp + 0x54], 0
mov dword [esp + 0x50], 0xf7f733c0
mov eax, dword [esp + 0x64]
mov dword [esp + 0x4c], eax
mov dword [esp + 0x48], 0xa28fbcb2
mov eax, dword [esp + 0x48]
mov ecx, eax
sub ecx, 0x6b6ca333
mov dword [esp + 0x44], eax
mov dword [esp + 0x40], ecx
jg 0x428586
jmp 0x4284ac
mov eax, dword [esp + 0x44]
sub eax, 0xb48b1094
mov dword [esp + 0x3c], eax
jg 0x4284dc
jmp 0x4284c4
mov eax, dword [esp + 0x44]
sub eax, 0xa28fbcb2
mov dword [esp + 0x38], eax
je 0x4285a4
jmp 0x42859f
mov eax, dword [esp + 0x44]
sub eax, 0x115c603c
mov dword [esp + 0x34], eax
jg 0x42850c
jmp 0x4284f4
mov eax, dword [esp + 0x44]
sub eax, 0xb48b1095
mov dword [esp + 0x30], eax
je 0x428770
jmp 0x42859f
mov eax, dword [esp + 0x44]
add eax, 0xdca51575
mov dword [esp + 0x2c], eax
jg 0x42853d
jmp 0x428525
mov eax, dword [esp + 0x44]
sub eax, 0x115c603d
mov dword [esp + 0x28], eax
je 0x42875a
jmp 0x42859f
mov eax, dword [esp + 0x44]
sub eax, 0x235aea8c
mov dword [esp + 0x24], eax
je 0x4287c9
jmp 0x428555
mov eax, dword [esp + 0x44]
sub eax, 0x3fd9085b
mov dword [esp + 0x20], eax
je 0x4287d5
jmp 0x42856d
mov eax, dword [esp + 0x44]
add eax, 0xb5077d6d
mov dword [esp + 0x1c], eax
je 0x4285c4
jmp 0x42859f
mov eax, dword [esp + 0x44]
add eax, 0x94935ccc
mov dword [esp + 0x18], eax
je 0x4287bc
jmp 0x42859f
jmp 0x428816
mov eax, 0x5ae734
mov eax, dword [eax]
mov ecx, 0x4af88293
cmp dword [esp + 0x68], 0
cmovne eax, ecx
mov dword [esp + 0x48], eax
jmp 0x428816
mov eax, dword [esp + 0x4c]
mov ecx, eax
inc ecx
mov dword [esp + 0x4c], ecx
movzx eax, byte [eax]
mov ecx, dword [esp + 0x50]
mov edx, dword [esp + 0x54]
mov esi, edx
not esi
mov edi, ecx
not edi
and edi, 0x350294d0
and esi, 0x3a0c5801
mov ebx, ecx
and ebx, 0x8004000a
mov dword [esp + 0x14], eax
mov eax, 0x4374c8
mov eax, edx
and eax, 0x1122084
add esi, eax
add edi, ebx
xor edi, 0x8004000a
xor esi, 0x1122084
mov eax, edx
xor eax, 0x3b1e7885
mov ebx, ecx
xor ebx, 0xb50694da
and ebx, ecx
and eax, edx
mov ecx, dword [esp + 0x14]
not ecx
and ecx, 0x1f2987e0
mov edx, dword [esp + 0x14]
and edx, 0x1f
add ecx, edx
mov edx, ecx
xor edx, 0xe0d6781f
xor ecx, 0xaa2f133a
and ecx, edx
mov edx, dword [esp + 0x14]
and edx, 0x25
mov dword [esp + 0x10], eax
mov eax, esi
mov dword [esp + 0xc], ecx
mov ecx, dword [esp + 0x10]
and eax, ecx
mov ecx, edi
and ecx, ebx
mov dword [esp + 8], eax
mov eax, dword [esp + 0x10]
xor esi, eax
xor edi, ebx
or ecx, edi
mov edi, dword [esp + 8]
or edi, esi
mov esi, dword [esp + 0xc]
and esi, edx
mov ebx, dword [esp + 0xc]
xor ebx, edx
or esi, ebx
mov edx, 0x437288
mov edx, edi
not edx
mov ebx, 0x437258
mov ebx, ecx
not ebx
and ebx, 0x113f1bc0
and edx, 0x93f961fb
and ecx, 0xeec0e43f
and edi, 0x6c069e04
mov eax, esi
not eax
and eax, 0x113f1bc0
and esi, 0xeec0e43f
add edx, edi
add ebx, ecx
add eax, esi
xor ebx, eax
push ecx
mov ecx, 0x2fa69359
xor ecx, 0x87418a27
xor edx, ecx
pop ecx
mov dword [esp + 0x54], edx
mov dword [esp + 0x50], ebx
mov eax, 0x1000193
mov dword [esp + 4], eax
mov eax, ebx
mov ecx, dword [esp + 4]
mov dword [esp], edx
mul ecx
mov ecx, dword [esp]
imul esi, ecx, 0x1000193
add edx, esi
mov dword [esp + 0x50], eax
mov dword [esp + 0x54], edx
mov esi, eax
not esi
mov edi, edx
not edi
mov ebx, edi
and ebx, 0xb908a703
mov ecx, esi
and ecx, 0x5fa47885
and edx, 0x46f758fc
and eax, 0xa05b877a
add ecx, eax
add ebx, edx
xor ebx, 0xb908a703
xor ecx, 0xa05b877a
or ecx, esi
or ebx, edi
not ebx
not ecx
mov dword [esp + 0x50], ecx
mov dword [esp + 0x54], ebx
mov dword [esp + 0x48], 0x115c603d
jmp 0x428816
mov eax, 0x7a9cf663
pushfd
sub eax, 0xc611e5ce
popfd
mov dword [esp + 0x48], eax
jmp 0x428816
mov eax, 0x6b6ca334
mov ecx, dword [esp + 0x68]
sub ecx, 0x289d62f9
sub ecx, 0x421717cf
sub ecx, 0xd7629d07
sub ecx, 0xf5ac08bd
add ecx, 0xffffffff
sub ecx, 0xa53f743
sub ecx, 0x45bd3fd8
add ecx, 0x421717cf
sub ecx, 0xba42c028
mov dword [esp + 0x68], ecx
mov dword [esp + 0x48], eax
jmp 0x428816
mov dword [esp + 0x48], 0xa28fbcb2
jmp 0x428816
mov eax, dword [esp + 0x50]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov eax, 0
mov ecx, dword [esp + 0x68]
mov edx, eax
sub edx, 0xe67829e8
add ecx, edx
add ecx, 0x70f24527
add ecx, 0xffffffff
sub ecx, 0x70f24527
mov edx, eax
sub edx, ecx
mov ecx, eax
sub ecx, 0xe67829e8
add edx, ecx
sub eax, edx
mov dword [esp + 0x68], eax
mov dword [esp + 0x48], 0xb48b1095
jmp 0x42848d