Function at 0x473940
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x50e9fe
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x210
push ebx
push esi
mov esi, dword [ebp + 8]
mov ecx, esi
push edi
call fcn.004d94a0
mov ecx, esi
call fcn.004d9940
mov ebx, dword [esi + 0x120]
mov edi, dword [esi + 0x11c]
mov dword [ebp - 0x10], ebx
cmp edi, ebx
jne 0x4739e7
push 5
mov ecx, esi
call fcn.00472660
test al, al
jne 0x4739df
push 0
push 0xfffffffffffffffc
lea eax, [ebp - 0x12c]
mov ecx, esi
push eax
call fcn.004e0a50
mov esi, eax
mov dword [ebp - 4], 0
push str.No_OpEntryPoint_instruction_was_found._This_is_only_allowed_if_the_Linkage_capability_is_being_used.
push esi
call fcn.00432f90
mov esi, dword [esi + 0xe8]
lea ecx, [ebp - 0x12c]
add esp, 8
call fcn.00461de0
pop edi
mov eax, esi
pop esi
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret
cmp edi, ebx
je 0x473b95
mov ebx, dword [edi]
lea edx, [esi + 0x150]
movzx eax, bl
xor eax, 0x811c9dc5
mov dword [ebp + 8], 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, edx
push eax
lea eax, [ebp + 8]
push eax
lea eax, [ebp - 0x3c]
push eax
call fcn.0045c060
mov eax, dword [eax + 4]
test eax, eax
jne 0x473a4a
mov eax, dword [esi + 0x154]
cmp eax, dword [esi + 0x154]
jne 0x473b52
mov eax, dword [esi]
push dword [eax]
call fcn.0046fe40
add esp, 4
test al, al
je 0x473a9a
push edi
lea eax, [ebp - 0x34]
push eax
lea ecx, [esi + 0x148]
call fcn.00440610
mov ecx, dword [ebp - 0x2c]
cmp byte [ecx + 0xd], 0
jne 0x473a8e
mov eax, dword [edi]
cmp eax, dword [ecx + 0x10]
jb 0x473a8e
mov eax, dword [esi + 0x148]
jmp 0x473a96
mov ecx, dword [esi + 0x148]
mov eax, ecx
cmp ecx, eax
jne 0x473aa5
add edi, 4
cmp edi, dword [ebp - 0x10]
jmp 0x4739e1
push dword [edi]
mov ecx, esi
call fcn.004dab90
push eax
push 0xfffffffffffffffc
lea eax, [ebp - 0x21c]
mov ecx, esi
push eax
call fcn.004e0a50
mov edi, eax
push 0
push 0x121a
lea eax, [ebp - 0x28]
mov dword [ebp - 4], 2
push eax
mov ecx, esi
call fcn.004dd300
cmp dword [eax + 0x14], 0x10
mov ecx, dword [eax + 0x10]
mov byte [ebp - 4], 3
jb 0x473ae9
mov eax, dword [eax]
push ecx
push eax
push edi
call fcn.004333b0
push str.Entry_points_may_not_have_a_call_graph_with_cycles.
push edi
call fcn.00432f90
mov edx, dword [ebp - 0x14]
add esp, 0x14
mov esi, dword [edi + 0xe8]
cmp edx, 0x10
jb 0x473b35
mov ecx, dword [ebp - 0x28]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x473b2b
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x473ba8
push edx
push ecx
call fcn.004e5ccb
add esp, 8
mov dword [ebp - 0x18], 0
lea ecx, [ebp - 0x21c]
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
jmp 0x4739c7
push ebx
mov ecx, esi
call fcn.004dab90
push eax
push 0xfffffffffffffffc
lea eax, [ebp - 0x12c]
mov ecx, esi
push eax
call fcn.004e0a50
mov esi, eax
push str.A_function__
push esi
mov dword [ebp - 4], 1
call fcn.00432f90
add esp, 8
mov ecx, esi
push dword [edi]
call fcn.0045d450
push str.__may_not_be_targeted_by_both_an_OpEntryPoint_instruction_and_an_OpFunctionCall_instruction.
jmp 0x4739b2
mov ecx, dword [ebp - 0xc]
xor eax, eax
pop edi
pop esi
pop ebx
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret
call fcn.004ea5cf
int3