Function at 0x1008e390
Capabilities:
Hash data using fnv

Disassembly:
push ebp
lea ebp, [esp - 0x68]
sub esp, 0x68
push 0xffffffffffffffff
push 0x1019e46d
mov eax, dword fs:[0]
push eax
sub esp, 0x4c
push ebx
push esi
push edi
mov eax, dword [0x101df584]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
push 1
lea ecx, [ebp + 0x58]
mov dword [ebp + 0x58], 0
mov dword [ebp + 0x5c], 0
call fcn.1001d1e0
mov dword [eax], eax
mov dword [eax + 4], eax
mov dword [eax + 8], eax
mov word [eax + 0xc], 0x101
mov dword [ebp + 0x58], eax
push 0x14
mov dword [ebp - 4], 0
mov dword [ebp + 0x4c], 0
mov dword [ebp + 0x50], 0
call fcn.10196241
add esp, 4
mov dword [eax], eax
mov dword [eax + 4], eax
mov dword [eax + 8], eax
mov word [eax + 0xc], 0x101
mov dword [ebp + 0x4c], eax
cmp byte [ebp + 0x78], 0
mov byte [ebp - 4], 1
je 0x1008e8a1
push 0x10
mov dword [ebp + 0x18], 0
mov dword [ebp + 0x1c], 0
mov dword [ebp + 0x20], 0
call fcn.10196241
add esp, 4
mov dword [eax], eax
mov dword [eax + 4], eax
mov dword [ebp + 0x1c], eax
mov dword [ebp + 0x24], 0
mov dword [ebp + 0x28], 0
mov dword [ebp + 0x2c], 0
push eax
push 0x10
lea ecx, [ebp + 0x24]
mov byte [ebp - 4], 3
mov dword [ebp + 0x30], 7
mov dword [ebp + 0x34], 8
mov dword [ebp + 0x18], 0x3f800000
call fcn.100201b0
mov ecx, dword [ebp + 0x70]
xor esi, esi
mov byte [ebp - 4], 4
mov edx, dword [ecx + 4]
mov eax, edx
mov ecx, dword [ecx]
sub eax, ecx
sar eax, 3
test eax, eax
je 0x1008e5db
mov ebx, dword [ecx + esi*8]
mov eax, ebx
shr eax, 8
movzx ecx, al
movzx eax, bl
xor eax, 0x811c9dc5
mov dword [ebp + 8], ebx
imul eax, eax, 0x1000193
mov dword [ebp + 0xc], esi
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 + 8]
imul edi, ecx, 0x1000193
lea ecx, [ebp + 0x18]
push edi
push eax
lea eax, [ebp + 0x44]
push eax
call fcn.1008b430
cmp dword [ebp + 0x48], 0
jne 0x1008e5c3
cmp dword [ebp + 0x20], 0xfffffff
je 0x1008ec45
lea eax, [ebp + 0x1c]
mov dword [ebp + 0x38], eax
push 0x10
mov byte [ebp - 4], 5
mov dword [ebp + 0x3c], 0
call fcn.10196241
mov dword [ebp + 0x54], eax
add esp, 4
mov dword [ebp + 0x3c], eax
add eax, 8
mov dword [ebp + 0x60], eax
mov dword [eax], ebx
mov dword [eax + 4], esi
mov ecx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x34]
inc ecx
mov byte [ebp - 4], 6
movd xmm0, ecx
cvtdq2pd xmm0, xmm0
shr ecx, 0x1f
addsd xmm0, qword [ecx*8 + 0x101aa850]
cvtpd2ps xmm1, xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x101aa850]
cvtpd2ps xmm0, xmm0
divss xmm1, xmm0
comiss xmm1, dword [ebp + 0x18]
seta al
test al, al
je 0x1008e5a8
lea ecx, [ebp + 0x18]
call fcn.1008d410
push edi
push dword [ebp + 0x60]
lea eax, [ebp]
push eax
lea ecx, [ebp + 0x18]
call fcn.1008b430
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov dword [ebp + 0x44], ecx
mov dword [ebp + 0x48], eax
jmp 0x1008e5ab
mov ecx, dword [ebp + 0x44]
push dword [ebp + 0x54]
mov dword [ebp + 0x3c], 0
push ecx
push edi
lea ecx, [ebp + 0x18]
call fcn.1008d3b0
mov byte [ebp - 4], 4
mov edi, dword [ebp + 0x70]
inc esi
mov edx, dword [edi + 4]
mov eax, edx
mov ecx, dword [edi]
sub eax, ecx
sar eax, 3
cmp esi, eax
jb 0x1008e4a1
sub edx, ecx
xor ebx, ebx
sar edx, 3
mov dword [ebp + 0x60], ebx
test edx, edx
je 0x1008e895
xor edx, edx
nop
push dword [ecx + edx*8]
call sym.MNN.dll_public:_static_struct_MNN::Tensor::InsideDescribe::NativeInsideDescribe____cdecl_MNN::TensorUtils::getDescribe_class_MNN::Tensor_const__
mov edi, eax
mov dword [ebp + 0x54], 0
mov eax, 0x4ec4ec4f
mov dword [ebp + 0x48], edi
add esp, 4
mov ecx, dword [edi + 0x24]
sub ecx, dword [edi + 0x20]
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x1008e87a
mov dword [ebp + 0x64], 0
nop dword [eax + eax]
lea eax, [ebp + 0x60]
push eax
lea eax, [ebp - 0x4c]
push eax
lea ecx, [ebp + 0x4c]
call fcn.10001450
movq xmm0, qword [eax]
mov eax, dword [eax + 8]
movq qword [ebp - 0x2c], xmm0
cmp byte [eax + 0xd], 0
jne 0x1008e657
cmp ebx, dword [eax + 0x10]
jge 0x1008e6ad
cmp dword [ebp + 0x50], 0xccccccc
je 0x1008ec4f
mov esi, dword [ebp + 0x4c]
lea eax, [ebp + 0x4c]
mov dword [ebp - 0x1c], eax
push 0x14
mov byte [ebp - 4], 7
mov dword [ebp - 0x18], 0
call fcn.10196241
add esp, 4
mov byte [ebp - 4], 4
lea ecx, [ebp + 0x4c]
mov dword [ebp - 0x18], 0
mov dword [eax + 0x10], ebx
push eax
push dword [ebp - 0x28]
mov dword [eax], esi
push dword [ebp - 0x2c]
mov dword [eax + 4], esi
mov dword [eax + 8], esi
mov word [eax + 0xc], 0
call fcn.10001c30
mov esi, dword [edi + 0x20]
add esi, 0x2c
add esi, dword [ebp + 0x64]
movzx eax, byte [esi]
xor eax, 0x811c9dc5
imul ecx, eax, 0x1000193
movzx eax, byte [esi + 1]
xor ecx, eax
movzx eax, byte [esi + 2]
imul ecx, ecx, 0x1000193
xor ecx, eax
movzx eax, byte [esi + 3]
imul ecx, ecx, 0x1000193
xor ecx, eax
lea eax, [ebp + 0x38]
imul edi, ecx, 0x1000193
lea ecx, [ebp + 0x18]
push edi
push esi
push eax
call fcn.1008b430
mov eax, dword [ebp + 0x3c]
test eax, eax
jne 0x1008e7ca
cmp dword [ebp + 0x20], 0xfffffff
je 0x1008ec45
lea eax, [ebp + 0x1c]
mov dword [ebp + 8], eax
push 0x10
mov byte [ebp - 4], 8
mov dword [ebp + 0xc], 0
call fcn.10196241
mov ecx, dword [esi]
add esp, 4
mov dword [ebp + 0x40], eax
mov dword [ebp + 0xc], eax
add eax, 8
mov dword [ebp - 0x20], eax
mov dword [eax], ecx
mov dword [eax + 4], 0
mov ecx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x34]
inc ecx
mov byte [ebp - 4], 9
movd xmm0, ecx
cvtdq2pd xmm0, xmm0
shr ecx, 0x1f
addsd xmm0, qword [ecx*8 + 0x101aa850]
cvtpd2ps xmm1, xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x101aa850]
cvtpd2ps xmm0, xmm0
divss xmm1, xmm0
comiss xmm1, dword [ebp + 0x18]
seta al
test al, al
je 0x1008e7af
lea ecx, [ebp + 0x18]
call fcn.1008d410
push edi
push dword [ebp - 0x20]
lea eax, [ebp - 0x40]
push eax
lea ecx, [ebp + 0x18]
call fcn.1008b430
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov dword [ebp + 0x38], ecx
mov dword [ebp + 0x3c], eax
jmp 0x1008e7b2
mov ecx, dword [ebp + 0x38]
push dword [ebp + 0x40]
mov dword [ebp + 0xc], 0
push ecx
push edi
lea ecx, [ebp + 0x18]
call fcn.1008d3b0
mov byte [ebp - 4], 4
mov edi, dword [eax + 0xc]
lea ecx, [ebp + 0x58]
lea eax, [ebp + 0x40]
mov dword [ebp + 0x40], edi
push eax
lea eax, [ebp - 0x58]
push eax
call fcn.10001450
movq xmm0, qword [eax]
mov eax, dword [eax + 8]
movq qword [ebp - 0x38], xmm0
cmp byte [eax + 0xd], 0
jne 0x1008e7f7
cmp edi, dword [eax + 0x10]
jge 0x1008e84d
cmp dword [ebp + 0x5c], 0xccccccc
je 0x1008ec4f
mov esi, dword [ebp + 0x58]
lea eax, [ebp + 0x58]
mov dword [ebp], eax
push 0x14
mov byte [ebp - 4], 0xa
mov dword [ebp + 4], 0
call fcn.10196241
add esp, 4
mov byte [ebp - 4], 4
lea ecx, [ebp + 0x58]
mov dword [ebp + 4], 0
mov dword [eax + 0x10], edi
push eax
push dword [ebp - 0x34]
mov dword [eax], esi
push dword [ebp - 0x38]
mov dword [eax + 4], esi
mov dword [eax + 8], esi
mov word [eax + 0xc], 0
call fcn.10001c30
mov edi, dword [ebp + 0x48]
mov eax, 0x4ec4ec4f
mov esi, dword [ebp + 0x54]
add dword [ebp + 0x64], 0x34
inc esi
mov dword [ebp + 0x54], esi
mov ecx, dword [edi + 0x24]
sub ecx, dword [edi + 0x20]
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp esi, eax
jb 0x1008e630
mov edi, dword [ebp + 0x70]
inc ebx
mov edx, ebx
mov dword [ebp + 0x60], ebx
mov eax, dword [edi + 4]
mov ecx, dword [edi]
sub eax, ecx
sar eax, 3
cmp edx, eax
jb 0x1008e5f0
lea ecx, [ebp + 0x18]
mov byte [ebp - 4], 1
call fcn.1008d170
mov eax, dword [ebp + 0x74]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov dword [ebp + 0x64], eax
mov dword [ebp + 0x54], ecx
cmp ecx, eax
je 0x1008ea95
mov ebx, dword [ecx]
mov edx, 0xc
mov ecx, ebx
sub ecx, dword [ebx]
cmp dx, word [ecx]
jae 0x1008e9a0
movzx eax, word [ecx + 0xc]
lea edx, [ebx + eax]
test ax, ax
je 0x1008e99d
mov eax, dword [edx]
add eax, edx
je 0x1008e99d
movzx ecx, word [ecx + 0xc]
xor esi, esi
add ecx, ebx
mov dword [ebp + 0x60], esi
mov edi, dword [ecx]
add ecx, 4
add edi, ecx
mov ecx, ebx
call fcn.10008360
cmp dword [eax], esi
jbe 0x1008e99d
push edi
lea eax, [ebp - 0x58]
push eax
lea ecx, [ebp + 0x4c]
call fcn.10001450
mov ecx, dword [eax + 8]
movq xmm0, qword [eax]
movq qword [ebp - 0x38], xmm0
cmp byte [ecx + 0xd], 0
jne 0x1008e92c
mov eax, dword [edi]
cmp eax, dword [ecx + 0x10]
jge 0x1008e987
cmp dword [ebp + 0x50], 0xccccccc
je 0x1008ec4f
mov esi, dword [ebp + 0x4c]
lea eax, [ebp + 0x4c]
mov dword [ebp], eax
push 0x14
mov byte [ebp - 4], 0xb
mov dword [ebp + 4], 0
call fcn.10196241
mov ecx, dword [edi]
add esp, 4
mov byte [ebp - 4], 1
mov dword [ebp + 4], 0
mov dword [eax + 0x10], ecx
lea ecx, [ebp + 0x4c]
push eax
push dword [ebp - 0x34]
mov dword [eax], esi
push dword [ebp - 0x38]
mov dword [eax + 4], esi
mov dword [eax + 8], esi
mov word [eax + 0xc], 0
call fcn.10001c30
mov esi, dword [ebp + 0x60]
inc esi
mov ecx, ebx
mov dword [ebp + 0x60], esi
add edi, 4
call fcn.10008360
cmp esi, dword [eax]
jb 0x1008e906
mov eax, dword [ebp + 0x64]
mov ecx, ebx
mov edx, 4
sub ecx, dword [ebx]
cmp dx, word [ecx]
jae 0x1008ea8a
movzx eax, word [ecx + 4]
lea edx, [ebx + eax]
test ax, ax
je 0x1008ea87
mov eax, dword [edx]
add eax, edx
je 0x1008ea87
movzx ecx, word [ecx + 4]
xor esi, esi
add ecx, ebx
mov dword [ebp + 0x60], esi
mov edi, dword [ecx]
add ecx, 4
add edi, ecx
mov ecx, ebx
call fcn.10006680
cmp dword [eax], esi
jbe 0x1008ea87
nop dword [eax]
push edi
lea eax, [ebp - 0x4c]
push eax
lea ecx, [ebp + 0x58]
call fcn.10001450
mov ecx, dword [eax + 8]
movq xmm0, qword [eax]
movq qword [ebp - 0x2c], xmm0
cmp byte [ecx + 0xd], 0
jne 0x1008ea16
mov eax, dword [edi]
cmp eax, dword [ecx + 0x10]
jge 0x1008ea71
cmp dword [ebp + 0x5c], 0xccccccc
je 0x1008ec4f
mov esi, dword [ebp + 0x58]
lea eax, [ebp + 0x58]
mov dword [ebp - 0x1c], eax
push 0x14
mov byte [ebp - 4], 0xc
mov dword [ebp - 0x18], 0
call fcn.10196241
mov ecx, dword [edi]
add esp, 4
mov byte [ebp - 4], 1
mov dword [ebp - 0x18], 0
mov dword [eax + 0x10], ecx
lea ecx, [ebp + 0x58]
push eax
push dword [ebp - 0x28]
mov dword [eax], esi
push dword [ebp - 0x2c]
mov dword [eax + 4], esi
mov dword [eax + 8], esi
mov word [eax + 0xc], 0
call fcn.10001c30
mov esi, dword [ebp + 0x60]
inc esi
mov ecx, ebx
mov dword [ebp + 0x60], esi
add edi, 4
call fcn.10006680
cmp esi, dword [eax]
jb 0x1008e9f0
mov eax, dword [ebp + 0x64]
mov ecx, dword [ebp + 0x54]
add ecx, 4
jmp 0x1008e8ac
push 0x14
mov dword [ebp + 0x10], 0
mov dword [ebp + 0x14], 0
call fcn.10196241
mov dword [eax], eax
mov dword [eax + 4], eax
mov dword [eax + 8], eax
mov word [eax + 0xc], 0x101
mov dword [ebp + 0x10], eax
push 0x14
mov byte [ebp - 4], 0xd
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x10], 0
call fcn.10196241
mov dword [eax], eax
mov dword [eax + 4], eax
mov dword [eax + 8], eax
mov word [eax + 0xc], 0x101
mov dword [ebp - 0x14], eax
mov byte [ebp + 0x48], 0
lea ecx, [ebp - 0x14]
push dword [ebp + 0x48]
mov byte [ebp - 4], 0xe
push dword [eax]
mov eax, dword [ebp + 0x58]
push ecx
push eax
push dword [eax]
mov eax, dword [ebp + 0x4c]
push eax
push dword [eax]
lea eax, [ebp - 0x40]
push eax
call fcn.1008ce80
mov eax, dword [ebp + 0x10]
lea ecx, [ebp + 0x10]
mov byte [ebp + 0x48], 0
push dword [ebp + 0x48]
push dword [eax]
mov eax, dword [ebp + 0x4c]
push ecx
push eax
push dword [eax]
mov eax, dword [ebp + 0x58]
push eax
push dword [eax]
lea eax, [ebp - 0x40]
push eax
call fcn.1008ce80
mov esi, dword [ebp + 0x10]
add esp, 0x48
mov ebx, dword [ebp + 0x70]
mov esi, dword [esi]
cmp byte [esi + 0xd], 0
jne 0x1008eba2
mov ecx, dword [esi + 0x10]
mov eax, dword [ebx]
push dword [eax + ecx*8]
call sym.MNN.dll_public:_static_struct_MNN::Tensor::InsideDescribe::NativeInsideDescribe____cdecl_MNN::TensorUtils::getDescribe_class_MNN::Tensor_const__
add esp, 4
cmp dword [eax + 0x1c], 3
je 0x1008eb5e
mov dword [eax + 0x1c], 1
mov eax, dword [esi + 8]
cmp byte [eax + 0xd], 0
je 0x1008eb84
mov eax, dword [esi + 4]
cmp byte [eax + 0xd], 0
jne 0x1008eb80
cmp esi, dword [eax + 8]
jne 0x1008eb80
mov esi, eax
mov eax, dword [eax + 4]
cmp byte [eax + 0xd], 0
je 0x1008eb70
mov esi, eax
jmp 0x1008eb9c
mov esi, eax
mov ecx, dword [esi]
cmp byte [ecx + 0xd], 0
jne 0x1008eb9c
nop
mov eax, dword [ecx]
mov esi, ecx
mov ecx, eax
cmp byte [eax + 0xd], 0
je 0x1008eb90
cmp byte [esi + 0xd], 0
je 0x1008eb41
mov esi, dword [ebp - 0x14]
mov esi, dword [esi]
cmp byte [esi + 0xd], 0
jne 0x1008ec12
nop dword [eax]
mov ecx, dword [esi + 0x10]
mov eax, dword [ebx]
push dword [eax + ecx*8]
call sym.MNN.dll_public:_static_struct_MNN::Tensor::InsideDescribe::NativeInsideDescribe____cdecl_MNN::TensorUtils::getDescribe_class_MNN::Tensor_const__
add esp, 4
cmp dword [eax + 0x1c], 0
jne 0x1008ebcd
mov dword [eax + 0x1c], 2
mov eax, dword [esi + 8]
cmp byte [eax + 0xd], 0
je 0x1008ebf4
mov eax, dword [esi + 4]
cmp byte [eax + 0xd], 0
jne 0x1008ebf0
nop
cmp esi, dword [eax + 8]
jne 0x1008ebf0
mov esi, eax
mov eax, dword [eax + 4]
cmp byte [eax + 0xd], 0
je 0x1008ebe0
mov esi, eax
jmp 0x1008ec0c
mov esi, eax
mov ecx, dword [esi]
cmp byte [ecx + 0xd], 0
jne 0x1008ec0c
nop
mov eax, dword [ecx]
mov esi, ecx
mov ecx, eax
cmp byte [eax + 0xd], 0
je 0x1008ec00
cmp byte [esi + 0xd], 0
je 0x1008ebb0
lea ecx, [ebp - 0x14]
call fcn.100179d0
lea ecx, [ebp + 0x10]
call fcn.100179d0
lea ecx, [ebp + 0x4c]
call fcn.100179d0
lea ecx, [ebp + 0x58]
call fcn.100179d0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
lea esp, [ebp + 0x68]
pop ebp
ret
push str.unordered_map_set_too_long
call sub.MSVCP140.dll_void___cdecl_std::_Xlength_error_char_const__
call fcn.10001e60
int3