Function at 0x4e8530
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x52b939
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x2c0
push ebx
push esi
mov dword [ebp - 0x2c], 0
push edi
mov edi, dword [ebp + 0xc]
mov esi, dword [edi + 0x10]
mov edx, dword [edi + 0xc]
sub esi, edx
sar esi, 4
test esi, esi
je 0x4e91e1
mov eax, dword [edi]
mov edi, 1
movzx ecx, word [edx]
cmp esi, edi
mov esi, dword [ebp + 0xc]
mov eax, dword [eax + ecx*4]
mov dword [ebp - 0x28], eax
jbe 0x4e8a02
mov ecx, 0x10
mov dword [ebp - 0x1c], ecx
movzx ecx, word [edx + ecx]
mov eax, dword [esi]
mov dword [ebp - 0x18], edi
mov ebx, dword [eax + ecx*4]
mov ecx, dword [ebp + 8]
cmp ebx, dword [esi + 0x28]
je 0x4e89d1
push ebx
call fcn.004eebd0
mov esi, eax
test esi, esi
je 0x4e8922
movzx ecx, word [esi + 0x1e]
push ecx
call fcn.00479da0
add esp, 4
test eax, eax
je 0x4e8922
movzx eax, word [esi + 0x1e]
cmp eax, 0x13
je 0x4e88eb
mov ecx, 0x1e
cmp cx, ax
jne 0x4e8655
movzx eax, bl
xor eax, 0x811c9dc5
mov edx, dword [ebp + 8]
imul ecx, eax, 0x1000193
mov eax, ebx
shr eax, 8
movzx eax, al
mov dword [ebp - 0x10], ebx
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
lea ecx, [edx + 0x1b4]
push eax
lea eax, [ebp - 0x10]
push eax
lea eax, [ebp - 0x24]
push eax
call fcn.00465c40
mov eax, dword [eax + 4]
test eax, eax
jne 0x4e864a
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x1b8]
mov ecx, dword [ebp + 8]
cmp eax, dword [ecx + 0x1b8]
jne 0x4e86cd
mov ebx, dword [ebp + 8]
mov eax, dword [ebx]
push dword [eax]
call fcn.0047ccb0
add esp, 4
test al, al
je 0x4e86a8
cmp word [esi + 0x1e], 0x1d
jne 0x4e86a8
mov ecx, dword [ebp + 0xc]
mov eax, dword [ecx + 0x10]
sub eax, dword [ecx + 0xc]
sar eax, 4
dec eax
cmp dword [ebp - 0x18], eax
jne 0x4e8858
mov esi, dword [ecx + 0x28]
mov ecx, ebx
push 2
push esi
call fcn.00482220
test al, al
jne 0x4e86a8
push 3
push esi
mov ecx, ebx
call fcn.00482220
test al, al
je 0x4e87dc
mov esi, dword [ebp + 0xc]
inc edi
mov ecx, dword [ebp - 0x1c]
add ecx, 0x10
mov dword [ebp - 0x1c], ecx
mov eax, dword [esi + 0x10]
mov edx, dword [esi + 0xc]
sub eax, edx
sar eax, 4
cmp edi, eax
jae 0x4e8a05
jmp 0x4e8591
mov edi, dword [ebp + 0xc]
lea eax, [ebp - 0x1dc]
push edi
push 0xfffffffffffffff6
push eax
mov edi, ecx
call fcn.004f5350
mov esi, eax
push str.Structure__id_
push esi
mov dword [ebp - 4], 4
call fcn.00438a80
add esp, 8
lea eax, [ebp - 0xc4]
mov ecx, edi
push ebx
push eax
call fcn.004f56a0
push eax
mov ecx, esi
mov byte [ebp - 4], 5
call fcn.0047d670
mov esi, eax
push str._contains_members_with_BuiltIn_decoration._Therefore_this
push esi
call fcn.00438a80
push str.structure_may_not_be_contained_as_a_member_of_another
push esi
call fcn.00438a80
push str.structure
push esi
call fcn.00438a80
push str.type._Structure__id_
push esi
call fcn.00438a80
mov eax, dword [ebp - 0x28]
add esp, 0x20
mov ecx, edi
push eax
lea eax, [ebp - 0xac]
push eax
call fcn.004f56a0
push eax
mov ecx, esi
mov byte [ebp - 4], 6
call fcn.0047d670
mov esi, eax
push str._contains_structure__id_
push esi
call fcn.00438a80
add esp, 8
lea eax, [ebp - 0x7c]
mov ecx, edi
push ebx
push eax
call fcn.004f56a0
push eax
mov ecx, esi
mov byte [ebp - 4], 7
call fcn.0047d670
mov esi, eax
push 0x5330bc
push esi
call fcn.00438a80
mov esi, dword [esi + 0xe8]
lea ecx, [ebp - 0x7c]
add esp, 8
call fcn.00401760
lea ecx, [ebp - 0xac]
call fcn.00401760
lea ecx, [ebp - 0xc4]
call fcn.00401760
lea ecx, [ebp - 0x1dc]
call fcn.0046b990
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, dword [ebp + 0xc]
lea eax, [ebp - 0x1dc]
push edi
push 0xfffffffffffffff6
push eax
mov ecx, ebx
call fcn.004f5350
mov esi, eax
push 0
push 0x1248
lea eax, [ebp - 0xac]
mov dword [ebp - 4], 0xb
push eax
mov ecx, ebx
call fcn.004f1460
push eax
mov ecx, esi
mov byte [ebp - 4], 0xc
call fcn.0047d670
mov ecx, dword [ebx]
mov esi, eax
lea eax, [ebp - 0xc4]
push dword [ecx]
push eax
call fcn.0047cd00
add esp, 8
push eax
mov ecx, esi
mov byte [ebp - 4], 0xd
call fcn.0047d670
mov esi, eax
push str.__OpTypeStruct_containing_an_OpTypeRuntimeArray
push esi
call fcn.00438a80
push str.must_be_decorated_with_Block_or_BufferBlock.
push esi
call fcn.00438a80
add esp, 0x10
jmp 0x4e88cf
push ecx
push 0xfffffffffffffff6
lea eax, [ebp - 0x1dc]
mov ecx, ebx
push eax
call fcn.004f5350
mov esi, eax
push 0
push 0x1248
lea eax, [ebp - 0xac]
mov dword [ebp - 4], 8
push eax
mov ecx, ebx
call fcn.004f1460
push eax
mov ecx, esi
mov byte [ebp - 4], 9
call fcn.0047d670
mov esi, eax
push 0x59cce4
push esi
call fcn.00438a80
mov ecx, dword [ebx]
lea eax, [ebp - 0xc4]
push dword [ecx]
push eax
call fcn.0047cd00
add esp, 0x10
push eax
mov ecx, esi
mov byte [ebp - 4], 0xa
call fcn.0047d670
mov esi, eax
push str.__OpTypeRuntimeArray_must_only_be_used_for_the_last_member_of_an_OpTypeStruct
push esi
call fcn.00438a80
add esp, 8
mov esi, dword [esi + 0xe8]
lea ecx, [ebp - 0xc4]
call fcn.00401760
lea ecx, [ebp - 0xac]
jmp 0x4e87b9
mov edi, dword [ebp + 0xc]
lea eax, [ebp - 0x1dc]
mov ecx, dword [ebp + 8]
push edi
push 0xfffffffffffffff6
push eax
call fcn.004f5350
mov esi, eax
push str.Structures_cannot_contain_a_void_type.
push esi
mov dword [ebp - 4], 3
call fcn.00438a80
mov esi, dword [esi + 0xe8]
add esp, 8
jmp 0x4e87be
mov edi, dword [ebp + 0xc]
lea eax, [ebp - 0x1dc]
mov ecx, dword [ebp + 8]
push edi
push 0xfffffffffffffff6
push eax
call fcn.004f5350
mov esi, eax
push str.OpTypeStruct_Member_Type__id_
push esi
mov dword [ebp - 4], 1
call fcn.00438a80
mov ecx, dword [ebp + 8]
lea eax, [ebp - 0x7c]
add esp, 8
push ebx
push eax
call fcn.004f56a0
cmp dword [eax + 0x14], 0xf
mov ecx, dword [eax + 0x10]
mov byte [ebp - 4], 2
jbe 0x4e896a
mov eax, dword [eax]
push ecx
push eax
push esi
call fcn.00438fa0
push str._is_not_a_type.
push esi
call fcn.00438a80
mov ecx, dword [ebp - 0x68]
add esp, 0x14
mov esi, dword [esi + 0xe8]
cmp ecx, 0xf
jbe 0x4e89ba
mov edx, dword [ebp - 0x7c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4e89b0
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4e91e6
push ecx
push edx
call fcn.004fa253
add esp, 8
mov dword [ebp - 0x6c], 0
mov dword [ebp - 0x68], 0xf
mov byte [ebp - 0x7c], 0
jmp 0x4e87be
push esi
push 0xfffffffffffffff6
lea eax, [ebp - 0x1dc]
push eax
call fcn.004f5350
mov esi, eax
push str.Structure_members_may_not_be_self_references
push esi
mov dword [ebp - 4], 0
call fcn.00438a80
mov esi, dword [esi + 0xe8]
add esp, 8
jmp 0x4e87be
mov ebx, dword [ebp + 8]
mov eax, dword [esi + 4]
mov edx, 2
mov ecx, dword [esi]
sub eax, ecx
sar eax, 2
mov byte [ebp - 0x11], 0
mov dword [ebp - 0x1c], edx
cmp eax, edx
jbe 0x4e8b9a
push dword [ecx + edx*4]
mov ecx, ebx
call fcn.004eebd0
mov dword [ebp - 0x18], eax
test eax, eax
je 0x4e8b81
mov ecx, 0x1e
cmp cx, word [eax + 0x1e]
jne 0x4e8b81
mov edi, dword [eax + 0x28]
lea esi, [ebx + 0x214]
lea eax, [ebp - 0x10]
mov dword [ebp - 0x10], edi
push eax
lea eax, [ebp - 0x58]
mov ecx, esi
push eax
call fcn.00446830
mov eax, dword [ebp - 0x50]
cmp byte [eax + 0xd], 0
jne 0x4e8ad6
cmp edi, dword [eax + 0x10]
jb 0x4e8ad6
cmp eax, dword [esi]
je 0x4e8ad6
mov esi, dword [eax + 0x14]
mov eax, dword [esi]
cmp eax, esi
je 0x4e8ad0
lea ecx, [ecx]
cmp dword [eax + 0x10], 2
je 0x4e8b7a
mov ecx, dword [eax + 8]
cmp byte [ecx + 0xd], 0
je 0x4e8ab4
mov ecx, dword [eax + 4]
cmp byte [ecx + 0xd], 0
jne 0x4e8ab0
lea esp, [esp]
cmp eax, dword [ecx + 8]
jne 0x4e8ab0
mov eax, ecx
mov ecx, dword [ecx + 4]
cmp byte [ecx + 0xd], 0
je 0x4e8aa0
mov eax, ecx
jmp 0x4e8acc
mov eax, ecx
mov edx, dword [eax]
cmp byte [edx + 0xd], 0
jne 0x4e8acc
mov edi, edi
mov ecx, dword [edx]
mov eax, edx
mov edx, ecx
cmp byte [ecx + 0xd], 0
je 0x4e8ac0
cmp eax, esi
jne 0x4e8a80
lea esi, [ebx + 0x214]
mov edi, dword [ebp - 0x18]
lea eax, [ebp - 0x10]
push eax
lea eax, [ebp - 0x88]
mov ecx, esi
push eax
mov edi, dword [edi + 0x28]
mov dword [ebp - 0x10], edi
call fcn.00446830
mov eax, dword [ebp - 0x80]
cmp byte [eax + 0xd], 0
jne 0x4e8b56
cmp edi, dword [eax + 0x10]
jb 0x4e8b56
cmp eax, dword [esi]
je 0x4e8b56
mov esi, dword [eax + 0x14]
mov eax, dword [esi]
cmp eax, esi
je 0x4e8b56
lea esp, [esp]
cmp dword [eax + 0x10], 3
je 0x4e8b7a
mov ecx, dword [eax + 8]
cmp byte [ecx + 0xd], 0
je 0x4e8b3c
mov ecx, dword [eax + 4]
cmp byte [ecx + 0xd], 0
jne 0x4e8b38
cmp eax, dword [ecx + 8]
jne 0x4e8b38
mov eax, ecx
mov ecx, dword [ecx + 4]
cmp byte [ecx + 0xd], 0
je 0x4e8b28
mov eax, ecx
jmp 0x4e8b52
mov eax, ecx
mov edx, dword [eax]
cmp byte [edx + 0xd], 0
jne 0x4e8b52
mov ecx, dword [edx]
mov eax, edx
mov edx, ecx
cmp byte [ecx + 0xd], 0
je 0x4e8b46
cmp eax, esi
jne 0x4e8b10
mov eax, dword [ebp - 0x18]
lea ecx, [ebx + 0x1f4]
mov eax, dword [eax + 0x28]
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
push eax
lea eax, [ebp - 0x24]
push eax
call fcn.004e6610
mov eax, dword [eax]
cmp byte [eax + 0xc], 0
je 0x4e8b7e
mov byte [ebp - 0x11], 1
mov esi, dword [ebp + 0xc]
mov eax, dword [esi + 4]
mov edx, dword [ebp - 0x1c]
mov ecx, dword [esi]
inc edx
sub eax, ecx
mov dword [ebp - 0x1c], edx
sar eax, 2
cmp edx, eax
jb 0x4e8a23
mov eax, dword [esi + 0x28]
lea ecx, [ebx + 0x1f4]
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
push eax
lea eax, [ebp - 0x24]
push eax
call fcn.004e6610
mov edi, dword [ebp + 0xc]
mov cl, byte [ebp - 0x11]
mov eax, dword [eax]
mov byte [eax + 0xc], cl
lea ecx, [ebx + 0x1f4]
mov eax, dword [edi + 0x28]
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
push eax
lea eax, [ebp - 0x24]
push eax
call fcn.004e6610
mov eax, dword [eax]
cmp byte [eax + 0xc], 0
je 0x4e8c31
mov esi, dword [edi + 0x28]
mov ecx, ebx
push 3
push esi
call fcn.00482220
test al, al
jne 0x4e8bfe
push 2
push esi
mov ecx, ebx
call fcn.00482220
test al, al
je 0x4e8c31
push edi
push 0xfffffffffffffff6
lea eax, [ebp - 0x1dc]
mov ecx, ebx
push eax
call fcn.004f5350
mov esi, eax
push str.rules:_A_Block_or_BufferBlock_cannot_be_nested_within_another_Block_or_BufferBlock.
push esi
mov dword [ebp - 4], 0xe
call fcn.00438a80
mov esi, dword [esi + 0xe8]
add esp, 8
jmp 0x4e87be
push 0xc
mov dword [ebp - 0x4c], 0
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x44], 0
call fcn.004fa223
add esp, 4
mov dword [eax], eax
mov dword [eax + 4], eax
mov dword [ebp - 0x48], eax
mov dword [ebp - 4], 0xf
mov dword [ebp - 0x40], 0
mov dword [ebp - 0x3c], 0
mov dword [ebp - 0x38], 0
push eax
push 0x10
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 0x10
mov dword [ebp - 0x34], 7
mov dword [ebp - 0x30], 8
mov dword [ebp - 0x4c], 0x3f800000
call fcn.004018e0
mov edi, dword [ebp - 0x28]
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x58]
mov dword [ebp - 4], 0x11
lea esi, [ebx + 0x214]
mov dword [ebp - 0x18], edi
push eax
mov ecx, esi
call fcn.00446830
mov eax, dword [ebp - 0x50]
cmp byte [eax + 0xd], 0
jne 0x4e8ccc
cmp edi, dword [eax + 0x10]
jae 0x4e8d53
cmp dword [esi + 4], 0x9249249
je 0x4e91eb
mov ebx, dword [esi]
mov dword [ebp - 0x24], esi
push 0x1c
mov byte [ebp - 4], 0x12
mov dword [ebp - 0x20], 0
call fcn.004fa223
mov edi, eax
mov dword [ebp - 0x20], edi
mov ecx, dword [ebp - 0x18]
lea esi, [edi + 0x14]
mov dword [edi + 0x10], ecx
mov dword [ebp - 0x10], esi
push 0x24
mov byte [ebp - 4], 0x13
mov dword [esi], 0
mov dword [esi + 4], 0
call fcn.004fa223
mov ecx, dword [ebp + 8]
add esp, 8
mov byte [ebp - 4], 0x11
mov dword [eax], eax
mov dword [eax + 4], eax
lea ecx, [ecx + 0x214]
mov dword [eax + 8], eax
mov word [eax + 0xc], 0x101
push edi
push dword [ebp - 0x54]
mov dword [esi], eax
push dword [ebp - 0x58]
mov dword [edi], ebx
mov dword [edi + 4], ebx
mov dword [edi + 8], ebx
mov word [edi + 0xc], 0
call fcn.00455920
mov esi, dword [eax + 0x14]
mov esi, dword [esi]
cmp byte [esi + 0xd], 0
jne 0x4e8f2a
mov eax, dword [esi + 0x10]
lea ecx, [ebp - 0x74]
mov dword [ebp - 0x78], eax
lea eax, [esi + 0x14]
push eax
call fcn.0047dfe0
mov ebx, dword [esi + 0x20]
mov dword [ebp - 0x68], ebx
cmp dword [ebp - 0x78], 0xb
mov byte [ebp - 4], 0x14
jne 0x4e8ea2
cmp ebx, 0xffffffff
je 0x4e8ea2
movzx eax, bl
xor eax, 0x811c9dc5
mov dword [ebp - 0x10], 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
lea eax, [ebp - 0x10]
imul edi, ecx, 0x1000193
lea ecx, [ebp - 0x4c]
push edi
push eax
lea eax, [ebp - 0x84]
push eax
call fcn.00465c40
cmp dword [ebp - 0x80], 0
jne 0x4e8ea2
cmp dword [ebp - 0x44], 0x15555555
je 0x4e91f0
lea eax, [ebp - 0x48]
mov dword [ebp - 0x24], eax
push 0xc
mov byte [ebp - 4], 0x15
mov dword [ebp - 0x20], 0
call fcn.004fa223
mov dword [ebp - 0x1c], eax
add esp, 4
mov dword [ebp - 0x20], eax
add eax, 8
mov dword [ebp - 0x18], eax
mov dword [eax], ebx
mov ecx, dword [ebp - 0x44]
fld dword [ebp - 0x4c]
add ecx, 1
mov dword [ebp - 0x10], ecx
fild dword [ebp - 0x10]
mov byte [ebp - 4], 0x16
jns 0x4e8e3e
fadd dword [0x530074]
fstp dword [ebp - 0x10]
fld dword [ebp - 0x10]
mov eax, dword [ebp - 0x30]
fild dword [ebp - 0x30]
test eax, eax
jns 0x4e8e54
fadd dword [0x530074]
fstp dword [ebp - 0x10]
fdiv dword [ebp - 0x10]
fcompi st(1)
fstp st(0)
jbe 0x4e8e88
lea ecx, [ebp - 0x4c]
call fcn.00475f90
push edi
push dword [ebp - 0x18]
lea eax, [ebp - 0x54]
push eax
lea ecx, [ebp - 0x4c]
call fcn.00465c40
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov dword [ebp - 0x84], ecx
mov dword [ebp - 0x80], eax
jmp 0x4e8e8e
mov ecx, dword [ebp - 0x84]
push dword [ebp - 0x1c]
mov dword [ebp - 0x20], 0
push ecx
push edi
lea ecx, [ebp - 0x4c]
call fcn.00431350
mov ecx, dword [ebp - 0x74]
mov byte [ebp - 4], 0x11
test ecx, ecx
je 0x4e8ee4
mov eax, dword [ebp - 0x6c]
sub eax, ecx
sar eax, 2
lea edx, [eax*4]
mov eax, ecx
cmp edx, 0x1000
jb 0x4e8eda
mov ecx, dword [eax - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4e91e6
push edx
push ecx
call fcn.004fa253
add esp, 8
mov eax, dword [esi + 8]
cmp byte [eax + 0xd], 0
je 0x4e8f0a
mov eax, dword [esi + 4]
cmp byte [eax + 0xd], 0
jne 0x4e8f06
cmp esi, dword [eax + 8]
jne 0x4e8f06
mov esi, eax
mov eax, dword [eax + 4]
cmp byte [eax + 0xd], 0
je 0x4e8ef6
mov esi, eax
jmp 0x4e8f20
mov esi, eax
mov ecx, dword [esi]
cmp byte [ecx + 0xd], 0
jne 0x4e8f20
mov eax, dword [ecx]
mov esi, ecx
mov ecx, eax
cmp byte [eax + 0xd], 0
je 0x4e8f14
cmp byte [esi + 0xd], 0
je 0x4e8d62
mov esi, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x44]
mov eax, dword [esi + 0x10]
sub eax, dword [esi + 0xc]
sar eax, 4
dec eax
test ecx, ecx
jle 0x4e8ff4
cmp ecx, eax
je 0x4e8fd6
mov ecx, dword [ebp + 8]
lea eax, [ebp - 0x1dc]
push esi
push 0xfffffffffffffff6
push eax
call fcn.004f5350
mov esi, eax
push str.When_BuiltIn_decoration_is_applied_to_a_structure_type_member_
push esi
mov byte [ebp - 4], 0x17
call fcn.00438a80
push str.all_members_of_that_structure_type_must_also_be_decorated_with
push esi
call fcn.00438a80
push str.BuiltIn__No_allowed_mixing_of_built_in_variables_and
push esi
call fcn.00438a80
push str.non_built_in_variables_within_a_single_structure_._Structure_id
push esi
call fcn.00438a80
mov eax, dword [ebp - 0x28]
add esp, 0x20
mov ecx, esi
push eax
call fcn.00467600
push str._does_not_meet_this_requirement.
push esi
call fcn.00438a80
mov esi, dword [esi + 0xe8]
lea ecx, [ebp - 0x1dc]
add esp, 8
call fcn.0046b990
lea ecx, [ebp - 0x4c]
call fcn.004726f0
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 0x28]
mov edi, dword [ebp + 8]
mov dword [ebp + 0xc], eax
lea eax, [ebp + 0xc]
push eax
lea eax, [ebp - 0x54]
lea ecx, [edi + 0x1b4]
push eax
call fcn.00476110
jmp 0x4e8ff7
mov edi, dword [ebp + 8]
mov eax, dword [edi]
push dword [eax]
call fcn.0047ccb0
add esp, 4
test al, al
je 0x4e904c
mov eax, dword [edi + 4]
cmp byte [eax + 0x2c], 0
jne 0x4e904c
lea eax, [ebp - 0xec]
mov dword [ebp - 0xec], vtable.std::_Func_impl_no_alloc_class__lambda_728c1369949727ffaf27cd0f8076849f___bool__class_spvtools::val::Instruction_const__.0
mov dword [ebp - 0xe8], edi
mov dword [ebp - 0xc8], eax
push 1
push eax
mov dword [ebp - 0x2c], 1
mov ecx, edi
push dword [esi + 0x28]
mov byte [ebp - 4], 0x18
call fcn.004ee030
test al, al
je 0x4e904c
mov bl, 1
jmp 0x4e904e
xor bl, bl
test byte [ebp - 0x2c], 1
mov dword [ebp - 4], 0x11
je 0x4e9078
mov ecx, dword [ebp - 0xc8]
test ecx, ecx
je 0x4e9078
mov eax, dword [ecx]
mov edx, dword [eax + 0x10]
lea eax, [ebp - 0xec]
cmp ecx, eax
setne al
push eax
call edx
test bl, bl
je 0x4e91c4
push esi
push 0xfffffffffffffff6
lea eax, [ebp - 0x2cc]
mov ecx, edi
push eax
call fcn.004f5350
mov esi, eax
push 0
push 0x123b
lea eax, [ebp - 0x94]
mov byte [ebp - 4], 0x19
push eax
mov ecx, edi
call fcn.004f1460
cmp dword [eax + 0x14], 0xf
mov ecx, dword [eax + 0x10]
mov byte [ebp - 4], 0x1a
jbe 0x4e90bb
mov eax, dword [eax]
push ecx
push eax
push esi
call fcn.00438fa0
push 0x59cce4
push esi
call fcn.00438a80
mov eax, dword [edi]
push dword [eax]
lea eax, [ebp - 0x64]
push eax
call fcn.0047cd00
add esp, 0x1c
cmp dword [eax + 0x14], 0xf
mov ecx, dword [eax + 0x10]
mov byte [ebp - 4], 0x1b
jbe 0x4e90ed
mov eax, dword [eax]
push ecx
push eax
push esi
call fcn.00438fa0
push str.__OpTypeStruct_must_not_contain_an_opaque_type.
push esi
call fcn.00438a80
mov ecx, dword [ebp - 0x50]
add esp, 0x14
mov esi, dword [esi + 0xe8]
cmp ecx, 0xf
jbe 0x4e913d
mov edx, dword [ebp - 0x64]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4e9133
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4e91fa
push ecx
push edx
call fcn.004fa253
add esp, 8
mov ecx, dword [ebp - 0x80]
mov dword [ebp - 0x54], 0
mov dword [ebp - 0x50], 0xf
mov byte [ebp - 0x64], 0
cmp ecx, 0xf
jbe 0x4e9186
mov edx, dword [ebp - 0x94]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4e917c
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4e91fa
push ecx
push edx
call fcn.004fa253
add esp, 8
lea ecx, [ebp - 0x2cc]
mov dword [ebp - 0x84], 0
mov dword [ebp - 0x80], 0xf
mov byte [ebp - 0x94], 0
call fcn.0046b990
lea ecx, [ebp - 0x4c]
call fcn.004726f0
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
lea ecx, [ebp - 0x4c]
xor esi, esi
call fcn.004726f0
mov ecx, dword [ebp - 0xc]
mov eax, esi
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret
call fcn.0046b360
call fcn.004ff45f
call fcn.004563c0
push str.unordered_map_set_too_long
call fcn.004f7e11
call fcn.004ff45f
int3