Function at 0x4a89f0
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
mov eax, dword fs:[0]
push 0xffffffffffffffff
push 0x515211
push eax
mov dword fs:[0], esp
sub esp, 0x258
push ebx
push esi
mov esi, dword [ebp + 0xc]
push edi
cmp word [esi + 0x1e], 0x36
jne 0x4a8fbd
push dword [esi + 0x28]
mov edi, dword [ebp + 8]
mov ecx, edi
call fcn.004e4ae0
mov ebx, eax
mov ecx, edi
test ebx, ebx
jne 0x4a8a95
push esi
push 0xffffffffffffffff
lea eax, [ebp - 0x174]
push eax
call fcn.004e4840
mov esi, eax
push str.Internal_error:_missing_function_id
push esi
mov dword [ebp - 4], ebx
call fcn.00433f60
mov ebx, dword [ebp + 0xc]
add esp, 8
push dword [ebx + 0x28]
mov ecx, esi
call fcn.0045f530
push 0x52090c
push esi
call fcn.00433f60
mov esi, dword [esi + 0xe8]
lea ecx, [ebp - 0x174]
add esp, 8
call fcn.00463850
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
push dword [esi + 0x28]
call fcn.004de5f0
mov ecx, dword [eax]
mov eax, dword [eax + 4]
cmp ecx, eax
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x14], ecx
je 0x4a8fbd
mov edx, dword [ecx]
lea esi, [edi + 0x274]
movzx eax, dl
xor eax, 0x811c9dc5
mov dword [ebp - 0x10], edx
imul ecx, eax, 0x1000193
mov eax, edx
shr eax, 8
movzx eax, al
mov dword [ebp - 0x48], edx
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
mov ecx, esi
push eax
lea eax, [ebp - 0x48]
push eax
lea eax, [ebp - 0x84]
push eax
call fcn.0045db70
mov ecx, dword [eax + 4]
test ecx, ecx
jne 0x4a8b16
mov ecx, dword [esi + 4]
xor esi, esi
lea eax, [ecx + 0xc]
cmp ecx, dword [edi + 0x278]
cmovne esi, eax
test esi, esi
je 0x4a8c06
cmp dword [esi + 4], 0
je 0x4a8e1b
mov esi, dword [esi]
mov esi, dword [esi]
cmp byte [esi + 0xd], 0
jne 0x4a8c06
xor eax, eax
mov dword [ebp - 0x18], 0xf
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x1c], eax
mov byte [ebp - 0x2c], al
lea eax, [ebp - 0x2c]
mov dword [ebp - 4], 2
push eax
push dword [esi + 0x10]
mov ecx, ebx
call fcn.00469990
test al, al
je 0x4a8c90
mov ecx, dword [ebp - 0x18]
mov dword [ebp - 4], 0xffffffff
cmp ecx, 0xf
jbe 0x4a8bb7
mov edx, dword [ebp - 0x2c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4a8bad
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4a8fd0
push ecx
push edx
call fcn.004e9693
add esp, 8
mov eax, dword [esi + 8]
cmp byte [eax + 0xd], 0
je 0x4a8be4
mov eax, dword [esi + 4]
cmp byte [eax + 0xd], 0
jne 0x4a8be0
lea esp, [esp]
cmp esi, dword [eax + 8]
jne 0x4a8be0
mov esi, eax
mov eax, dword [eax + 4]
cmp byte [eax + 0xd], 0
je 0x4a8bd0
mov esi, eax
jmp 0x4a8bfc
mov esi, eax
mov ecx, dword [esi]
cmp byte [ecx + 0xd], 0
jne 0x4a8bfc
mov edi, edi
mov eax, dword [ecx]
mov esi, ecx
mov ecx, eax
cmp byte [eax + 0xd], 0
je 0x4a8bf0
cmp byte [esi + 0xd], 0
je 0x4a8b44
xor eax, eax
mov dword [ebp - 0x30], 0xf
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x34], eax
mov byte [ebp - 0x44], al
lea eax, [ebp - 0x44]
mov dword [ebp - 4], 6
push eax
push dword [ebp - 0x10]
mov ecx, edi
call fcn.004e4ae0
push eax
push edi
mov ecx, ebx
call fcn.00468920
test al, al
je 0x4a8e4e
mov ecx, dword [ebp - 0x30]
mov dword [ebp - 4], 0xffffffff
cmp ecx, 0xf
jbe 0x4a8c82
mov edx, dword [ebp - 0x44]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4a8c78
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4a8fd0
push ecx
push edx
call fcn.004e9693
add esp, 8
mov ecx, dword [ebp - 0x14]
add ecx, 4
cmp ecx, dword [ebp - 0x4c]
jmp 0x4a8aa7
mov ebx, dword [ebp + 0xc]
lea eax, [ebp - 0x174]
push ebx
push 0xfffffffffffffff6
push eax
mov ecx, edi
call fcn.004e4840
mov esi, eax
push str.OpEntryPoint_Entry_Point__id_
push esi
mov byte [ebp - 4], 3
call fcn.00433f60
add esp, 8
lea eax, [ebp - 0x7c]
mov ecx, edi
push dword [ebp - 0x10]
push eax
call fcn.004e4b90
cmp dword [eax + 0x14], 0xf
mov ecx, dword [eax + 0x10]
mov byte [ebp - 4], 4
jbe 0x4a8cd5
mov eax, dword [eax]
push ecx
push eax
push esi
call fcn.00434480
push str.s_callgraph_contains_function__id_
push esi
call fcn.00433f60
add esp, 0x14
lea eax, [ebp - 0x64]
mov ecx, edi
push dword [ebx + 0x28]
push eax
call fcn.004e4b90
cmp dword [eax + 0x14], 0xf
mov ecx, dword [eax + 0x10]
mov byte [ebp - 4], 5
jbe 0x4a8d08
mov eax, dword [eax]
push ecx
push eax
push esi
call fcn.00434480
push str.__which_cannot_be_used_with_the_current_execution_model:_n
push esi
call fcn.00433f60
cmp dword [ebp - 0x18], 0xf
lea eax, [ebp - 0x2c]
push dword [ebp - 0x1c]
cmova eax, dword [ebp - 0x2c]
push eax
push esi
call fcn.00434480
mov ecx, dword [ebp - 0x50]
add esp, 0x20
mov esi, dword [esi + 0xe8]
cmp ecx, 0xf
jbe 0x4a8d6d
mov edx, dword [ebp - 0x64]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4a8d63
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4a8fd0
push ecx
push edx
call fcn.004e9693
add esp, 8
mov ecx, dword [ebp - 0x68]
mov dword [ebp - 0x54], 0
mov dword [ebp - 0x50], 0xf
mov byte [ebp - 0x64], 0
cmp ecx, 0xf
jbe 0x4a8db3
mov edx, dword [ebp - 0x7c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4a8da9
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4a8fd0
push ecx
push edx
call fcn.004e9693
add esp, 8
lea ecx, [ebp - 0x174]
mov dword [ebp - 0x6c], 0
mov dword [ebp - 0x68], 0xf
mov byte [ebp - 0x7c], 0
call fcn.00463850
mov ecx, dword [ebp - 0x18]
cmp ecx, 0xf
jbe 0x4a8a82
mov edx, dword [ebp - 0x2c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4a8dfe
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4a8fd0
push ecx
push edx
call fcn.004e9693
add esp, 8
mov eax, esi
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret
mov ebx, dword [ebp + 0xc]
lea eax, [ebp - 0x174]
push ebx
push 0xffffffffffffffff
push eax
mov ecx, edi
call fcn.004e4840
mov esi, eax
push str.Internal_error:_empty_execution_models_for_function_id
push esi
mov dword [ebp - 4], 1
call fcn.00433f60
add esp, 8
push dword [ebp - 0x10]
jmp 0x4a8a5c
mov ebx, dword [ebp + 0xc]
lea eax, [ebp - 0x264]
push ebx
push 0xfffffffffffffff6
push eax
mov ecx, edi
call fcn.004e4840
mov esi, eax
push str.OpEntryPoint_Entry_Point__id_
push esi
mov byte [ebp - 4], 7
call fcn.00433f60
add esp, 8
lea eax, [ebp - 0x64]
mov ecx, edi
push dword [ebp - 0x10]
push eax
call fcn.004e4b90
cmp dword [eax + 0x14], 0xf
mov ecx, dword [eax + 0x10]
mov byte [ebp - 4], 8
jbe 0x4a8e93
mov eax, dword [eax]
push ecx
push eax
push esi
call fcn.00434480
push str.s_callgraph_contains_function__id_
push esi
call fcn.00433f60
add esp, 0x14
lea eax, [ebp - 0x7c]
mov ecx, edi
push dword [ebx + 0x28]
push eax
call fcn.004e4b90
cmp dword [eax + 0x14], 0xf
mov ecx, dword [eax + 0x10]
mov byte [ebp - 4], 9
jbe 0x4a8ec6
mov eax, dword [eax]
push ecx
push eax
push esi
call fcn.00434480
push str.__which_cannot_be_used_with_the_current_execution_modes:_n
push esi
call fcn.00433f60
cmp dword [ebp - 0x30], 0xf
lea eax, [ebp - 0x44]
push dword [ebp - 0x34]
cmova eax, dword [ebp - 0x44]
push eax
push esi
call fcn.00434480
mov ecx, dword [ebp - 0x68]
add esp, 0x20
mov esi, dword [esi + 0xe8]
cmp ecx, 0xf
jbe 0x4a8f2b
mov edx, dword [ebp - 0x7c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4a8f21
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4a8fd5
push ecx
push edx
call fcn.004e9693
add esp, 8
mov ecx, dword [ebp - 0x50]
mov dword [ebp - 0x6c], 0
mov dword [ebp - 0x68], 0xf
mov byte [ebp - 0x7c], 0
cmp ecx, 0xf
jbe 0x4a8f6d
mov edx, dword [ebp - 0x64]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4a8f63
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4a8fd5
push ecx
push edx
call fcn.004e9693
add esp, 8
lea ecx, [ebp - 0x264]
mov dword [ebp - 0x54], 0
mov dword [ebp - 0x50], 0xf
mov byte [ebp - 0x64], 0
call fcn.00463850
mov ecx, dword [ebp - 0x30]
cmp ecx, 0xf
jbe 0x4a8a82
mov edx, dword [ebp - 0x44]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4a8dfe
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4a8fd5
jmp 0x4a8dfe
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.004ee89f
call fcn.004ee89f
int3