Function at 0x43a8f0
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0xfc
mov eax, dword [0x4c0180]
xor eax, esp
mov dword [esp + 0xf8], eax
mov eax, dword [ebp + 8]
push ebx
push esi
push edi
mov esi, dword [eax]
lea eax, [ecx + 0xc8]
mov dword [esp + 0x10], ecx
mov dword [esp + 0x18], eax
mov esi, dword [esi]
cmp byte [esi + 0xd], 0
jne 0x43aa8c
lea edi, [ecx + 0xc4]
mov dword [esp + 0x14], edi
nop word [eax + eax]
mov ebx, dword [esi + 0x10]
movzx eax, bl
xor eax, 0x811c9dc5
mov dword [esp + 0x1c], ebx
imul ecx, eax, 0x1000193
mov eax, ebx
shr eax, 8
movzx eax, al
xor ecx, eax
mov eax, ebx
imul ecx, ecx, 0x1000193
shr eax, 0x10
movzx eax, al
xor ecx, eax
mov eax, ebx
imul ecx, ecx, 0x1000193
shr eax, 0x18
xor ecx, eax
imul eax, ecx, 0x1000193
mov ecx, edi
push eax
lea eax, [esp + 0x20]
push eax
lea eax, [esp + 0x28]
push eax
call fcn.00418fa0
mov eax, dword [eax + 4]
test eax, eax
jne 0x43a99e
mov eax, dword [edi + 4]
mov ecx, dword [esp + 0x18]
cmp eax, dword [ecx]
je 0x43aa38
mov eax, dword [esp + 0x10]
lea ecx, [esp + 0x28]
push ebx
push ecx
lea ecx, [eax + 0x88]
call fcn.00438270
mov edx, dword [esp + 0x38]
add edx, 0xfffffff0
mov edi, dword [eax]
or eax, 0xffffffff
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x43a9dd
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [esp + 0x34]
or eax, 0xffffffff
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x43a9f9
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [esp + 0x30]
or eax, 0xffffffff
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x43aa15
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
test edi, 0x100
jne 0x43aa34
mov ecx, dword [esp + 0x10]
or edi, 0x100
push edi
push ebx
lea ecx, [ecx + 0x88]
call fcn.00447250
mov edi, dword [esp + 0x14]
mov eax, dword [esi + 8]
cmp byte [eax + 0xd], 0
je 0x43aa64
mov eax, dword [esi + 4]
cmp byte [eax + 0xd], 0
jne 0x43aa60
nop word [eax + eax]
cmp esi, dword [eax + 8]
jne 0x43aa60
mov esi, eax
mov eax, dword [eax + 4]
cmp byte [eax + 0xd], 0
je 0x43aa50
mov esi, eax
jmp 0x43aa7c
mov esi, eax
mov ecx, dword [esi]
cmp byte [ecx + 0xd], 0
jne 0x43aa7c
nop
mov eax, dword [ecx]
mov esi, ecx
mov ecx, eax
cmp byte [eax + 0xd], 0
je 0x43aa70
cmp byte [esi + 0xd], 0
je 0x43a940
mov ecx, dword [esp + 0x10]
jmp 0x43aa90
mov dword [esp + 0x18], eax
mov eax, dword [ebp + 0xc]
mov esi, dword [eax]
mov esi, dword [esi]
cmp byte [esi + 0xd], 0
jne 0x43abf6
lea edi, [ecx + 0xc4]
mov dword [esp + 0x14], edi
nop dword [eax + eax]
mov ebx, dword [esi + 0x10]
movzx eax, bl
xor eax, 0x811c9dc5
mov dword [esp + 0x1c], ebx
imul ecx, eax, 0x1000193
mov eax, ebx
shr eax, 8
movzx eax, al
xor ecx, eax
mov eax, ebx
imul ecx, ecx, 0x1000193
shr eax, 0x10
movzx eax, al
xor ecx, eax
mov eax, ebx
imul ecx, ecx, 0x1000193
shr eax, 0x18
xor ecx, eax
imul eax, ecx, 0x1000193
mov ecx, edi
push eax
lea eax, [esp + 0x20]
push eax
lea eax, [esp + 0x28]
push eax
call fcn.00418fa0
mov eax, dword [eax + 4]
test eax, eax
jne 0x43ab0e
mov eax, dword [edi + 4]
mov ecx, dword [esp + 0x18]
cmp eax, dword [ecx]
je 0x43aba8
mov eax, dword [esp + 0x10]
lea ecx, [esp + 0x28]
push ebx
push ecx
lea ecx, [eax + 0x88]
call fcn.00438270
mov edx, dword [esp + 0x38]
add edx, 0xfffffff0
mov edi, dword [eax]
or eax, 0xffffffff
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x43ab4d
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [esp + 0x34]
or eax, 0xffffffff
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x43ab69
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [esp + 0x30]
or eax, 0xffffffff
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x43ab85
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
test edi, 0x100
je 0x43aba4
mov ecx, dword [esp + 0x10]
xor edi, 0x100
push edi
push ebx
lea ecx, [ecx + 0x88]
call fcn.00447250
mov edi, dword [esp + 0x14]
mov eax, dword [esi + 8]
cmp byte [eax + 0xd], 0
je 0x43abd4
mov eax, dword [esi + 4]
cmp byte [eax + 0xd], 0
jne 0x43abd0
nop word [eax + eax]
cmp esi, dword [eax + 8]
jne 0x43abd0
mov esi, eax
mov eax, dword [eax + 4]
cmp byte [eax + 0xd], 0
je 0x43abc0
mov esi, eax
jmp 0x43abec
mov esi, eax
mov ecx, dword [esi]
cmp byte [ecx + 0xd], 0
jne 0x43abec
nop
mov eax, dword [ecx]
mov esi, ecx
mov ecx, eax
cmp byte [eax + 0xd], 0
je 0x43abe0
cmp byte [esi + 0xd], 0
je 0x43aab0
mov ecx, dword [esp + 0x104]
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.00470c0a
mov esp, ebp
pop ebp
ret 8