Function at 0x468c10
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x50d301
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0xf8
push esi
mov esi, dword [ebp + 8]
push edi
mov edi, ecx
mov dword [ebp - 0x10], esi
push esi
lea ecx, [ebp - 0x104]
mov dword [ebp - 0x20], edi
lea eax, [edi + 0x18]
mov dword [ebp - 0x18], eax
call fcn.0045b8b0
push eax
lea ecx, [ebp - 0xb0]
mov dword [ebp - 4], 0
mov dword [ebp - 0xb4], esi
call fcn.00466160
lea eax, [ebp - 0xb4]
mov byte [ebp - 4], 1
push eax
lea eax, [ebp - 0x28]
push eax
lea ecx, [edi + 0x18]
call fcn.00465c20
lea ecx, [ebp - 0xb0]
call fcn.00466a40
lea ecx, [ebp - 0x104]
mov dword [ebp - 4], 0xffffffff
call fcn.00466a40
cmp byte [ebp - 0x24], 0
je 0x468cb0
lea eax, [ebp - 0x10]
push eax
lea eax, [ebp - 0x30]
push eax
lea ecx, [edi + 0x44]
call fcn.0046a030
mov esi, dword [ebp + 0xc]
lea ecx, [ebp - 0x104]
push esi
mov dword [ebp - 0x10], esi
call fcn.0045b8b0
push eax
lea ecx, [ebp - 0xb0]
mov dword [ebp - 4], 2
mov dword [ebp - 0xb4], esi
call fcn.00466160
mov esi, dword [ebp - 0x18]
lea eax, [ebp - 0xb4]
push eax
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 3
push eax
mov ecx, esi
call fcn.00465c20
lea ecx, [ebp - 0xb0]
call fcn.00466a40
lea ecx, [ebp - 0x104]
mov dword [ebp - 4], 0xffffffff
call fcn.00466a40
cmp byte [ebp - 0x24], 0
je 0x468d27
lea eax, [ebp - 0x10]
push eax
lea eax, [ebp - 0x1c]
push eax
lea ecx, [edi + 0x44]
call fcn.0046a030
lea eax, [ebp + 8]
mov ecx, esi
push eax
call fcn.00469f80
mov edi, eax
mov ecx, esi
lea eax, [ebp + 0xc]
push eax
call fcn.00469f80
mov esi, dword [ebp - 0x20]
lea ecx, [edi + 0x38]
mov edx, dword [edi + 0x3c]
mov dword [ebp + 0xc], eax
mov dword [ebp - 0x18], edi
mov eax, dword [esi + 0x64]
mov dword [ebp - 0x10], eax
mov dword [ebp + 8], eax
cmp edx, dword [edi + 0x40]
je 0x468d64
mov dword [edx], eax
add dword [ecx + 4], 4
jmp 0x468d71
lea eax, [ebp + 8]
push eax
push edx
call fcn.00401fc0
mov eax, dword [ebp - 0x10]
mov edx, dword [eax + 0x48]
lea ecx, [eax + 0x44]
cmp edx, dword [eax + 0x4c]
je 0x468d84
mov dword [edx], edi
add dword [ecx + 4], 4
jmp 0x468d8e
lea eax, [ebp - 0x18]
push eax
push edx
call fcn.00401fc0
mov ecx, dword [ebp + 0xc]
mov eax, dword [esi + 0x64]
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x2c], ecx
lea edx, [ecx + 0x38]
mov dword [ebp + 8], eax
mov dword [ebp - 0x10], edx
mov edx, dword [ecx + 0x3c]
cmp edx, dword [ecx + 0x40]
je 0x468db3
mov dword [edx], eax
add dword [ecx + 0x3c], 4
jmp 0x468dc3
mov ecx, dword [ebp - 0x10]
lea eax, [ebp + 8]
push eax
push edx
call fcn.00401fc0
mov eax, dword [ebp - 0x18]
mov ecx, dword [eax + 0x48]
lea edx, [eax + 0x44]
cmp ecx, dword [eax + 0x4c]
mov dword [ebp + 8], ecx
mov ecx, dword [ebp + 0xc]
je 0x468ddf
mov eax, dword [ebp + 8]
mov dword [eax], ecx
add dword [edx + 4], 4
jmp 0x468df0
lea eax, [ebp - 0x2c]
mov ecx, edx
push eax
push dword [ebp + 8]
call fcn.00401fc0
mov ecx, dword [ebp + 0xc]
mov eax, dword [esi + 0x64]
sub esp, 0xc
or dword [eax + 0x28], 4
mov eax, esp
or dword [edi + 0x28], 8
or dword [ecx + 0x28], 0x20
mov ecx, dword [esi + 0x64]
push edi
push ecx
push 3
lea ecx, [ebp - 0x48]
mov dword [eax], 0
mov dword [eax + 4], 0
mov dword [eax + 8], 0
call fcn.00461320
mov ecx, dword [ebp - 0x20]
lea eax, [ebp - 0x48]
push eax
mov dword [ebp - 4], 4
call fcn.00466e90
mov edx, dword [ebp - 0x44]
mov dword [ebp - 0x10], eax
mov dword [ebp - 4], 0xffffffff
test edx, edx
je 0x468e90
mov ecx, dword [ebp - 0x3c]
mov eax, edx
sub ecx, edx
and ecx, 0xfffffffc
cmp ecx, 0x1000
jb 0x468e71
mov edx, dword [edx - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x46909a
push ecx
push edx
call fcn.004e5ccb
add esp, 8
mov dword [ebp - 0x44], 0
mov dword [ebp - 0x40], 0
mov dword [ebp - 0x3c], 0
sub esp, 0xc
lea ecx, [ebp - 0x60]
mov eax, esp
push 0
mov dword [eax], 0
mov dword [eax + 4], 0
mov dword [eax + 8], 0
mov eax, dword [ebp + 0xc]
push eax
push 2
call fcn.00461320
mov ecx, dword [ebp - 0x20]
lea eax, [ebp - 0x60]
push eax
mov dword [ebp - 4], 5
call fcn.00466e90
mov edx, dword [ebp - 0x5c]
mov dword [ebp - 0x18], eax
mov dword [ebp - 4], 0xffffffff
test edx, edx
je 0x468f22
mov ecx, dword [ebp - 0x54]
mov eax, edx
sub ecx, edx
and ecx, 0xfffffffc
cmp ecx, 0x1000
jb 0x468f03
mov edx, dword [edx - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x46909f
push ecx
push edx
call fcn.004e5ccb
add esp, 8
mov dword [ebp - 0x5c], 0
mov dword [ebp - 0x58], 0
mov dword [ebp - 0x54], 0
mov eax, dword [ebp - 0x10]
lea edx, [ebp - 0x28]
sub esp, 0xc
mov dword [ebp - 0x2c], eax
mov ecx, esp
lea eax, [ebp + 0xb]
push eax
push edx
lea eax, [ebp - 0x2c]
push eax
call fcn.004660f0
mov ecx, dword [ebp - 0x18]
call fcn.00461aa0
mov eax, dword [ebp - 0x18]
lea edx, [ebp - 0x14]
sub esp, 0xc
mov dword [ebp - 0x18], eax
mov ecx, esp
lea eax, [ebp + 0xb]
push eax
push edx
lea eax, [ebp - 0x18]
push eax
call fcn.004660f0
mov ecx, dword [ebp - 0x10]
call fcn.00461aa0
mov esi, dword [esi + 0x64]
lea eax, [ebp + 8]
mov dword [ebp + 8], edi
mov edi, dword [ebp - 0x20]
push eax
lea ecx, [edi + 0x1a8]
call fcn.00466c00
mov edx, dword [ebp + 0xc]
mov dword [eax], esi
movzx eax, dl
xor eax, 0x811c9dc5
mov dword [ebp + 8], edx
imul ecx, eax, 0x1000193
mov eax, edx
shr eax, 8
movzx eax, al
xor ecx, eax
mov eax, edx
imul ecx, ecx, 0x1000193
shr eax, 0x10
movzx eax, al
xor ecx, eax
mov eax, edx
imul ecx, ecx, 0x1000193
shr eax, 0x18
xor ecx, eax
imul eax, ecx, 0x1000193
lea ecx, [edi + 0x1c8]
push eax
lea eax, [ebp + 8]
push eax
lea eax, [ebp - 0x28]
push eax
call fcn.0045c130
mov eax, dword [eax + 4]
test eax, eax
jne 0x468fe6
mov eax, dword [edi + 0x1cc]
lea ecx, [edi + 0x1c8]
cmp eax, dword [edi + 0x1cc]
jne 0x469044
mov eax, dword [edi + 0x64]
mov dword [ebp - 0x10], eax
mov eax, dword [ebp + 0xc]
mov dword [ebp + 8], eax
lea eax, [ebp + 8]
push eax
call fcn.00466d40
mov esi, eax
mov ecx, dword [esi + 8]
mov edx, dword [esi]
sub ecx, edx
sar ecx, 2
cmp ecx, 1
jae 0x469025
push 1
mov ecx, esi
call fcn.00449b50
mov edx, dword [esi]
mov eax, dword [ebp - 0x10]
mov dword [edx], eax
lea eax, [edx + 4]
mov dword [esi + 4], eax
xor eax, eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
mov esp, ebp
pop ebp
ret 8
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x24], eax
lea eax, [ebp - 0x24]
push eax
call fcn.00466d40
mov edx, eax
mov esi, dword [edx + 4]
cmp esi, dword [edx + 8]
je 0x46907a
mov ecx, dword [edi + 0x64]
mov dword [esi], ecx
add dword [edx + 4], 4
xor eax, eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
mov esp, ebp
pop ebp
ret 8
lea eax, [edi + 0x64]
mov ecx, edx
push eax
push esi
call fcn.00401fc0
mov ecx, dword [ebp - 0xc]
xor eax, eax
pop edi
mov dword fs:[0], ecx
pop esi
mov esp, ebp
pop ebp
ret 8
call fcn.004ea5cf
call fcn.004ea5cf
int3