Function at 0x100e6720
Capabilities:
Encode data using xor
Hash data using fnv
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xffffffe0
sub esp, 0xc0
mov esi, esp
mov dword [esi + 0x98], ebp
mov dword [esi + 0x1c], ecx
mov dword [esi + 0x9c], esp
mov dword [esi + 0xa8], 0xffffffff
lea eax, [esi + 0xa0]
mov dword [esi + 0xa4], 0x100e81d0
mov ecx, dword fs:[0]
mov dword [esi + 0xa0], ecx
mov dword fs:[0], eax
push dword [ebp + 8]
call fcn.100df220
mov eax, dword [0x10258d94]
mov ecx, dword [eax]
mov eax, dword [0x1025e68c]
test al, 1
je 0x100e6c67
mov ebx, dword [0x1025e688]
mov eax, dword [ebx + 4]
cmp byte [eax + ecx], 2
jne 0x100e6c51
mov eax, dword [0x10258d94]
mov ecx, dword [eax]
mov eax, dword [0x1025e664]
test al, 1
je 0x100e6d1f
mov ebx, dword [0x1025e660]
mov eax, dword [ebx + 4]
movss xmm0, dword [eax + ecx]
mov eax, dword [esi + 0x1c]
movss dword [eax + 0x14], xmm0
mov eax, dword [0x10258d58]
mov ecx, dword [eax + 0x1d8]
test ecx, ecx
je 0x100e67f9
mov eax, dword [ecx]
mov eax, dword [eax + 0x6e4]
mov dword [esi + 0xa8], 0xffffffff
call eax
fstp dword [esi + 0x8c]
movss xmm0, dword [esi + 0x8c]
jmp 0x100e6801
movss xmm0, dword [0x101afa10]
mov eax, dword [esi + 0x1c]
movss dword [eax + 0x18], xmm0
mov eax, dword [0x10258d94]
mov edi, dword [eax]
mov eax, dword [0x1025e6cc]
test al, 1
je 0x100e6e23
mov ebx, dword [0x1025e6c8]
mov dword [esi + 0xa8], 0xffffffff
mov eax, dword [ebx + 4]
mov edx, dword [eax + edi + 8]
mov ecx, dword [esi + 0x1c]
mov dword [ecx + 8], edx
movsd xmm0, qword [eax + edi]
movsd qword [ecx], xmm0
push ecx
mov edi, dword [ebp + 8]
push edi
call fcn.100e10c0
mov eax, dword [0x10258d54]
cmp byte [eax + 0x53c], 0
je 0x100e685f
or byte [edi + 0x32], 0x40
mov eax, dword [esi + 0x1c]
cmp byte [eax + 0x10], 0
je 0x100e697f
mov eax, dword [0x10258d60]
cmp dword [eax + 0x18], 0
je 0x100e68b7
mov eax, dword [0x10258d94]
mov ecx, dword [eax]
mov eax, dword [0x1025e6dc]
test al, 1
je 0x100e70ba
mov ebx, dword [0x1025e6d8]
mov eax, dword [ebx + 4]
movss xmm0, dword [eax + ecx]
ucomiss xmm0, dword [0x101a62c0]
mov ecx, dword [ebp + 8]
mov eax, dword [ecx + 0x30]
jbe 0x100e692e
or eax, 4
mov dword [ecx + 0x30], eax
jmp 0x100e6975
mov eax, dword [ebp + 8]
or byte [eax + 0x32], 0x40
mov eax, dword [0x10258d94]
mov edx, dword [eax]
mov eax, dword [0x1025e76c]
test al, 1
je 0x100e732f
mov ebx, dword [0x1025e768]
mov edi, edx
mov eax, dword [ebx + 4]
mov ecx, dword [0x10258d9c]
movss xmm0, dword [ecx + 0x20]
mulss xmm0, dword [0x101a7fc0]
mulss xmm0, dword [eax + edx]
mov eax, dword [0x1025e6dc]
test al, 1
je 0x100e7433
mov ebx, dword [0x1025e6d8]
minss xmm0, dword [0x101a6280]
mov eax, dword [ebx + 4]
ucomiss xmm0, dword [eax + edi]
jae 0x100e6936
mov eax, dword [ebp + 8]
and byte [eax + 0x30], 0xfb
mov eax, dword [0x10258d58]
and byte [eax + 0x1d4], 0xfd
jmp 0x100e6975
and eax, 0xfffffffb
mov dword [ecx + 0x30], eax
jmp 0x100e6975
mov eax, dword [0x10258da8]
xor ecx, ecx
cmp dword [eax + 0x4d28], 7
setge cl
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x30]
and eax, 0xfffffffb
lea eax, [eax + ecx*4]
mov dword [edx + 0x30], eax
mov eax, dword [0x10258d58]
movzx ecx, byte [eax + 0x1d4]
test cl, 1
jne 0x100e696c
and cl, 0xfd
jmp 0x100e696f
or cl, 2
mov byte [eax + 0x1d4], cl
mov dword [esi + 0xa8], 0xffffffff
mov edi, dword [esi + 0x1c]
mov ecx, edi
mov ebx, dword [ebp + 8]
push ebx
call fcn.100e25b0
mov byte [esi + 0xc], al
mov ecx, edi
push ebx
call fcn.100e3f10
cmp byte [esi + 0xc], 0
jne 0x100e6b9f
mov bh, al
mov eax, dword [0x10258d54]
push dword [eax + 0x490]
push dword [eax + 0x48c]
call fcn.10087190
add esp, 8
test al, al
je 0x100e6b11
mov eax, dword [ebp + 8]
test byte [eax + 0x30], 2
jne 0x100e6b11
mov byte [esi + 0xc], bh
mov eax, dword [0x10258d94]
mov ecx, dword [eax]
mov eax, dword [0x10258ee0]
test al, 1
je 0x100e75d5
mov ebx, dword [0x10258edc]
mov eax, dword [ebx + 4]
test byte [eax + ecx], 1
mov bh, byte [esi + 0xc]
je 0x100e6b11
mov eax, dword [ebp + 8]
movss xmm1, dword [eax + 0x24]
xorps xmm0, xmm0
ucomiss xmm1, xmm0
jne 0x100e6a21
jp 0x100e6a21
movss xmm1, dword [eax + 0x28]
ucomiss xmm1, xmm0
jne 0x100e6a21
jnp 0x100e6b11
mov eax, dword [0x10258d54]
mov eax, dword [eax + 0x494]
test eax, eax
je 0x100e6a6f
cvtsi2ss xmm2, eax
mov eax, dword [esi + 0x1c]
movss xmm0, dword [eax]
movss xmm1, dword [eax + 4]
mulss xmm1, xmm1
mulss xmm0, xmm0
addss xmm0, xmm1
movss xmm1, dword [eax + 8]
mulss xmm1, xmm1
addss xmm1, xmm0
xorps xmm0, xmm0
cvtss2sd xmm0, xmm1
xorps xmm1, xmm1
ucomisd xmm0, xmm1
jb 0x100e6a79
sqrtsd xmm0, xmm0
jmp 0x100e6aa1
mov eax, dword [esi + 0x1c]
movss xmm0, dword [eax + 0x18]
jmp 0x100e6ac2
sub esp, 8
movsd qword [esp], xmm0
movss dword [esi + 8], xmm2
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrt
movss xmm2, dword [esi + 8]
add esp, 8
fstp qword [esi + 0x90]
movsd xmm0, qword [esi + 0x90]
cvtsd2ss xmm0, xmm0
ucomiss xmm0, xmm2
jb 0x100e6ac7
mov eax, dword [0x10258d54]
xorps xmm0, xmm0
cvtsi2ss xmm0, dword [eax + 0x494]
mov eax, dword [esi + 0x1c]
movss dword [eax + 0x18], xmm0
movss dword [eax + 0x14], xmm0
mov eax, dword [0x10258d94]
mov edx, dword [eax]
mov eax, dword [0x1025e6cc]
test al, 1
je 0x100e7a40
mov ebx, dword [0x1025e6c8]
mov dword [esi + 0xa8], 0xffffffff
mov eax, dword [ebx + 4]
mov ecx, dword [eax + edx + 8]
mov dword [esi + 0x68], ecx
movsd xmm0, qword [eax + edx]
movsd qword [esi + 0x60], xmm0
lea eax, [esi + 0x60]
mov ecx, dword [esi + 0x1c]
push eax
push dword [ebp + 8]
call fcn.100e0e90
mov bh, byte [esi + 0xc]
test bh, bh
jne 0x100e6b9f
mov eax, dword [0x10258d54]
cmp byte [eax + 0x481], 0
je 0x100e6b8a
mov eax, dword [ebp + 8]
test byte [eax + 0x30], 2
mov dword [esi + 0xa8], 0xffffffff
je 0x100e6b8a
mov eax, dword [0x10258d58]
mov ecx, dword [eax + 0x114]
mov eax, dword [ecx]
call dword [eax + 0x34]
test eax, eax
jne 0x100e6b8a
mov eax, dword [0x10258d94]
mov ecx, dword [eax]
mov eax, dword [0x10258ee0]
test al, 1
je 0x100e7b47
mov ebx, dword [0x10258edc]
mov eax, dword [ebx + 4]
mov eax, dword [eax + ecx]
mov edx, dword [ebp + 8]
mov ecx, dword [edx + 0x30]
and ecx, 0xfffffffd
and eax, 1
lea eax, [ecx + eax*2]
mov dword [edx + 0x30], eax
mov dword [esi + 0xa8], 0xffffffff
mov dword [esi + 0xa8], 0xffffffff
mov ecx, dword [esi + 0x1c]
push dword [ebp + 8]
call fcn.100e1320
mov eax, dword [ebp + 8]
and dword [eax + 0x30], 0xfffff9e7
mov eax, dword [0x10258d54]
cmp byte [eax + 0x488], 0
je 0x100e6c0f
mov eax, dword [0x10258d94]
mov ecx, dword [eax]
mov eax, dword [0x1025e68c]
test al, 1
je 0x100e6f31
mov ebx, dword [0x1025e688]
mov eax, dword [ebx + 4]
cmp byte [eax + ecx], 2
jne 0x100e6c0f
mov ecx, dword [ebp + 8]
movss xmm1, dword [ecx + 0x24]
xorps xmm0, xmm0
ucomiss xmm1, xmm0
jne 0x100e6bec
jnp 0x100e6bfe
xor eax, eax
ucomiss xmm0, xmm1
setbe al
lea eax, [eax*8 + 8]
or dword [ecx + 0x30], eax
movss xmm1, dword [ecx + 0x28]
ucomiss xmm1, xmm0
jne 0x100e6c0a
jnp 0x100e6c51
ucomiss xmm0, xmm1
jmp 0x100e6c40
mov ecx, dword [ebp + 8]
movss xmm1, dword [ecx + 0x24]
xorps xmm0, xmm0
ucomiss xmm1, xmm0
jne 0x100e6c21
jnp 0x100e6c31
setbe al
movzx eax, al
lea eax, [eax*8 + 8]
or dword [ecx + 0x30], eax
movss xmm1, dword [ecx + 0x28]
ucomiss xmm1, xmm0
jne 0x100e6c3d
jnp 0x100e6c51
ucomiss xmm1, xmm0
seta al
movzx eax, al
shl eax, 9
add eax, 0x200
or dword [ecx + 0x30], eax
mov eax, dword [esi + 0xa0]
mov dword fs:[0], eax
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret 4
mov dword [esi + 0x18], ecx
or eax, 1
mov dword [0x1025e68c], eax
mov eax, dword [0x10258d5c]
mov dword [esi + 0x14], eax
mov eax, 0x5bf71388
mov ecx, 0x15942bd
mov dword [esi + 0x44], ecx
mov dword [esi + 0x40], eax
mov ecx, 0x59a5a07e
mov eax, 0xfbd986da
mov edx, 0xfbd986da
mov dword [esi + 0x4c], edx
mov dword [esi + 0x48], ecx
mov ecx, 0x34ba4ce5
mov edx, 0x780d27cb
mov dword [esi + 0x24], edx
mov dword [esi + 0x20], ecx
mov ecx, 0x59a5c50e
mov dword [esi + 0x2c], eax
mov dword [esi + 0x28], ecx
lea eax, [esi + 0x20]
xor ecx, ecx
movaps xmm0, xmmword [esi + 0x40]
xorps xmm0, xmmword [eax]
movaps xmmword [esi + 0x40], xmm0
mov dword [esi + 0xa8], 0
lea eax, [esi + 0x40]
lea ecx, [esi + 0x60]
mov dword [esi + 8], ecx
push eax
call fcn.10015240
mov eax, dword [esi + 0x70]
mov dword [esi + 0xc], eax
cmp dword [esi + 0x74], 0x10
jb 0x100e6cf5
mov eax, dword [esi + 0x60]
mov dword [esi + 8], eax
cmp dword [esi + 0xc], 0
je 0x100e6f27
mov eax, dword [esi + 0xc]
mov ecx, eax
and ecx, 3
mov dword [esi + 0x10], ecx
cmp eax, 4
jae 0x100e6fe9
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100e7033
mov dword [esi + 0x18], ecx
or eax, 1
mov dword [0x1025e664], eax
mov eax, dword [0x10258d5c]
mov dword [esi + 0x14], eax
mov eax, 0x47db0ea6
mov ecx, 0x196177ae
mov dword [esi + 0x24], ecx
mov dword [esi + 0x20], eax
mov eax, 0x74d7a077
mov ecx, 0x9d86ebe4
mov dword [esi + 0x2c], ecx
mov dword [esi + 0x28], eax
mov eax, 0xfee2bd9b
mov ecx, 0x8d085742
mov dword [esi + 0x34], ecx
mov dword [esi + 0x30], eax
mov ecx, 0xc187afec
mov eax, 0x53f5da20
mov edx, 0x53f5da20
mov dword [esi + 0x3c], edx
mov dword [esi + 0x38], ecx
mov ecx, 0x34ba4ce5
mov edx, 0x780d27cb
mov dword [esi + 0x64], edx
mov dword [esi + 0x60], ecx
mov ecx, 0x59a5c50e
mov edx, 0xfbd986da
mov dword [esi + 0x6c], edx
mov dword [esi + 0x68], ecx
mov ecx, 0x8683f0f7
mov edx, 0xe86d2731
mov dword [esi + 0x74], edx
mov dword [esi + 0x70], ecx
mov ecx, 0xc187af88
mov dword [esi + 0x7c], eax
mov dword [esi + 0x78], ecx
lea eax, [esi + 0x60]
xor ecx, ecx
movaps xmm0, xmmword [esi + 0x20]
xorps xmm0, xmmword [eax]
movaps xmmword [esi + 0x20], xmm0
movaps xmm0, xmmword [esi + 0x30]
xorps xmm0, xmmword [eax + 0x10]
movaps xmmword [esi + 0x30], xmm0
mov dword [esi + 0xa8], 2
lea eax, [esi + 0x20]
lea ecx, [esi + 0x40]
mov dword [esi + 8], ecx
push eax
call fcn.10015240
mov eax, dword [esi + 0x50]
mov dword [esi + 0xc], eax
cmp dword [esi + 0x54], 0x10
jb 0x100e6df9
mov eax, dword [esi + 0x40]
mov dword [esi + 8], eax
cmp dword [esi + 0xc], 0
je 0x100e7172
mov eax, dword [esi + 0xc]
mov ecx, eax
and ecx, 3
mov dword [esi + 0x10], ecx
cmp eax, 4
jae 0x100e7183
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100e71cd
mov dword [esi + 0x18], edi
or eax, 1
mov dword [0x1025e6cc], eax
mov eax, dword [0x10258d5c]
mov dword [esi + 0x14], eax
mov eax, 0x47db0ea6
mov ecx, 0x196177ae
mov dword [esi + 0x24], ecx
mov dword [esi + 0x20], eax
mov eax, 0x74d7a077
mov ecx, 0x8d86ebe4
mov dword [esi + 0x2c], ecx
mov dword [esi + 0x28], eax
mov eax, 0xe3d59392
mov ecx, 0x810e485d
mov dword [esi + 0x34], ecx
mov dword [esi + 0x30], eax
mov eax, 0xf1dcd6fc
mov ecx, 0x53f5da7d
mov dword [esi + 0x3c], ecx
mov dword [esi + 0x38], eax
mov eax, 0x34ba4ce5
mov ecx, 0x780d27cb
mov dword [esi + 0x64], ecx
mov dword [esi + 0x60], eax
mov eax, 0x59a5c50e
mov ecx, 0xfbd986da
mov dword [esi + 0x6c], ecx
mov dword [esi + 0x68], eax
mov eax, 0x8683f0f7
mov ecx, 0xe86d2731
mov dword [esi + 0x74], ecx
mov dword [esi + 0x70], eax
mov eax, 0xc187af88
mov ecx, 0x53f5da20
mov dword [esi + 0x7c], ecx
mov dword [esi + 0x78], eax
lea eax, [esi + 0x60]
xor ecx, ecx
movaps xmm0, xmmword [esi + 0x20]
xorps xmm0, xmmword [eax]
movaps xmmword [esi + 0x20], xmm0
movaps xmm0, xmmword [esi + 0x30]
xorps xmm0, xmmword [eax + 0x10]
movaps xmmword [esi + 0x30], xmm0
mov dword [esi + 0xa8], 4
lea eax, [esi + 0x20]
lea ecx, [esi + 0x40]
mov dword [esi + 8], ecx
push eax
call fcn.10015240
mov eax, dword [esi + 0x50]
mov dword [esi + 0xc], eax
cmp dword [esi + 0x54], 0x10
jb 0x100e6efd
mov eax, dword [esi + 0x40]
mov dword [esi + 8], eax
cmp dword [esi + 0xc], 0
je 0x100e7179
mov eax, dword [esi + 0xc]
mov ecx, eax
and ecx, 3
mov dword [esi + 0x10], ecx
cmp eax, 4
jae 0x100e7254
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100e729e
mov ecx, 0x811c9dc5
jmp 0x100e7050
mov dword [esi + 0x14], ecx
or eax, 1
mov dword [0x1025e68c], eax
mov eax, dword [0x10258d5c]
mov dword [esi + 0x10], eax
mov eax, 0x5bf71388
mov ecx, 0x15942bd
mov dword [esi + 0x44], ecx
mov dword [esi + 0x40], eax
mov ecx, 0x59a5a07e
mov eax, 0xfbd986da
mov edx, 0xfbd986da
mov dword [esi + 0x4c], edx
mov dword [esi + 0x48], ecx
mov ecx, 0x34ba4ce5
mov edx, 0x780d27cb
mov dword [esi + 0x24], edx
mov dword [esi + 0x20], ecx
mov ecx, 0x59a5c50e
mov dword [esi + 0x2c], eax
mov dword [esi + 0x28], ecx
lea eax, [esi + 0x20]
xor ecx, ecx
movaps xmm0, xmmword [esi + 0x40]
xorps xmm0, xmmword [eax]
movaps xmmword [esi + 0x40], xmm0
mov dword [esi + 0xa8], 0x12
lea eax, [esi + 0x40]
lea ecx, [esi + 0x60]
mov dword [esi + 0xc], ecx
push eax
call fcn.10015240
mov eax, dword [esi + 0x70]
mov dword [esi + 0x1c], eax
cmp dword [esi + 0x74], 0x10
jb 0x100e6fbf
mov eax, dword [esi + 0x60]
mov dword [esi + 0xc], eax
cmp dword [esi + 0x1c], 0
je 0x100e74f3
mov eax, dword [esi + 0x1c]
mov ecx, eax
and ecx, 3
mov dword [esi + 8], ecx
cmp eax, 4
jae 0x100e74fa
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100e7544
mov edi, dword [esi + 0xc]
and edi, 0xfffffffc
mov ecx, 0x811c9dc5
xor edx, edx
mov eax, dword [esi + 8]
movzx ebx, byte [eax + edx]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 1]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 2]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 3]
xor ebx, ecx
imul ecx, ebx, 0x1000193
add edx, 4
cmp edi, edx
jne 0x100e6ff9
cmp dword [esi + 0x10], 0
je 0x100e7050
add edx, dword [esi + 8]
xor edi, edi
movzx ebx, byte [edx + edi]
xor ebx, ecx
imul ecx, ebx, 0x1000193
inc edi
cmp dword [esi + 0x10], edi
jne 0x100e703e
mov edx, dword [esi + 0x14]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov ebx, dword [eax + ecx*8 + 4]
cmp ebx, dword [edx + 4]
je 0x100e7dfd
add ecx, ecx
mov edi, dword [eax + ecx*4]
mov eax, dword [esi + 0xc]
cmp eax, dword [ebx + 0x18]
jne 0x100e7094
cmp dword [ebx + 0x1c], 0x10
jb 0x100e707e
mov eax, dword [ebx + 8]
jmp 0x100e7081
lea eax, [ebx + 8]
push dword [esi + 0xc]
push eax
push dword [esi + 8]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100e70a1
cmp ebx, edi
je 0x100e7dfd
mov ebx, dword [ebx + 4]
jmp 0x100e706b
add ebx, 0x20
lea ecx, [esi + 0x60]
call fcn.10014f60
mov dword [0x1025e688], ebx
mov ecx, dword [esi + 0x18]
jmp 0x100e678f
mov dword [esi + 0x18], ecx
or eax, 1
mov dword [0x1025e6dc], eax
mov eax, dword [0x10258d5c]
mov dword [esi + 0x14], eax
mov eax, 0x58dc1388
mov ecx, 0x136e528f
mov dword [esi + 0x44], ecx
mov dword [esi + 0x40], eax
mov eax, 0x2ccaa84f
mov ecx, 0xfbd9f2b4
mov dword [esi + 0x4c], ecx
mov dword [esi + 0x48], eax
mov eax, 0x34ba4ce5
mov ecx, 0x780d27cb
mov dword [esi + 0x24], ecx
mov dword [esi + 0x20], eax
mov eax, 0x59a5c50e
mov ecx, 0xfbd986da
mov dword [esi + 0x2c], ecx
mov dword [esi + 0x28], eax
lea eax, [esi + 0x20]
xor ecx, ecx
movaps xmm0, xmmword [esi + 0x40]
xorps xmm0, xmmword [eax]
movaps xmmword [esi + 0x40], xmm0
mov dword [esi + 0xa8], 6
lea eax, [esi + 0x40]
lea ecx, [esi + 0x60]
mov dword [esi + 8], ecx
push eax
call fcn.10015240
mov eax, dword [esi + 0x70]
mov dword [esi + 0xc], eax
cmp dword [esi + 0x74], 0x10
jb 0x100e7148
mov eax, dword [esi + 0x60]
mov dword [esi + 8], eax
cmp dword [esi + 0xc], 0
je 0x100e75cb
mov eax, dword [esi + 0xc]
mov ecx, eax
and ecx, 3
mov dword [esi + 0x10], ecx
cmp eax, 4
jae 0x100e76d2
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100e771c
mov ecx, 0x811c9dc5
jmp 0x100e71ea
mov ecx, 0x811c9dc5
jmp 0x100e72bb
mov edi, dword [esi + 0xc]
and edi, 0xfffffffc
mov ecx, 0x811c9dc5
xor edx, edx
mov eax, dword [esi + 8]
movzx ebx, byte [eax + edx]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 1]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 2]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 3]
xor ebx, ecx
imul ecx, ebx, 0x1000193
add edx, 4
cmp edi, edx
jne 0x100e7193
cmp dword [esi + 0x10], 0
je 0x100e71ea
add edx, dword [esi + 8]
xor edi, edi
movzx ebx, byte [edx + edi]
xor ebx, ecx
imul ecx, ebx, 0x1000193
inc edi
cmp dword [esi + 0x10], edi
jne 0x100e71d8
mov edx, dword [esi + 0x14]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov ebx, dword [eax + ecx*8 + 4]
cmp ebx, dword [edx + 4]
je 0x100e7e14
add ecx, ecx
mov edi, dword [eax + ecx*4]
mov eax, dword [esi + 0xc]
cmp eax, dword [ebx + 0x18]
jne 0x100e722e
cmp dword [ebx + 0x1c], 0x10
jb 0x100e7218
mov eax, dword [ebx + 8]
jmp 0x100e721b
lea eax, [ebx + 8]
push dword [esi + 0xc]
push eax
push dword [esi + 8]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100e723b
cmp ebx, edi
je 0x100e7e14
mov ebx, dword [ebx + 4]
jmp 0x100e7205
add ebx, 0x20
lea ecx, [esi + 0x40]
call fcn.10014f60
mov dword [0x1025e660], ebx
mov ecx, dword [esi + 0x18]
jmp 0x100e67b6
mov edi, dword [esi + 0xc]
and edi, 0xfffffffc
mov ecx, 0x811c9dc5
xor edx, edx
mov eax, dword [esi + 8]
movzx ebx, byte [eax + edx]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 1]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 2]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 3]
xor ebx, ecx
imul ecx, ebx, 0x1000193
add edx, 4
cmp edi, edx
jne 0x100e7264
cmp dword [esi + 0x10], 0
je 0x100e72bb
add edx, dword [esi + 8]
xor edi, edi
movzx ebx, byte [edx + edi]
xor ebx, ecx
imul ecx, ebx, 0x1000193
inc edi
cmp dword [esi + 0x10], edi
jne 0x100e72a9
mov edx, dword [esi + 0x14]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov ebx, dword [eax + ecx*8 + 4]
cmp ebx, dword [edx + 4]
je 0x100e7e2b
add ecx, ecx
mov edi, dword [eax + ecx*4]
mov eax, dword [esi + 0xc]
cmp eax, dword [ebx + 0x18]
jne 0x100e72ff
cmp dword [ebx + 0x1c], 0x10
jb 0x100e72e9
mov eax, dword [ebx + 8]
jmp 0x100e72ec
lea eax, [ebx + 8]
push dword [esi + 0xc]
push eax
push dword [esi + 8]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100e730c
cmp ebx, edi
je 0x100e7e2b
mov ebx, dword [ebx + 4]
jmp 0x100e72d6
add ebx, 0x20
lea ecx, [esi + 0x40]
call fcn.10014f60
mov dword [0x1025e6c8], ebx
mov dword [esi + 0xa8], 0xffffffff
mov edi, dword [esi + 0x18]
jmp 0x100e682d
mov dword [esi + 0x18], edx
or eax, 1
mov dword [0x1025e76c], eax
mov eax, dword [0x10258d5c]
mov dword [esi + 0x14], eax
mov eax, 0x47db0ea6
mov ecx, 0x196177ae
mov dword [esi + 0x24], ecx
mov dword [esi + 0x20], eax
mov eax, 0x74d7a077
mov ecx, 0x9d86ebe4
mov dword [esi + 0x2c], ecx
mov dword [esi + 0x28], eax
mov eax, 0xe5f6b49b
mov ecx, 0x8d1d745a
mov dword [esi + 0x34], ecx
mov dword [esi + 0x30], eax
mov ecx, 0xc187cbed
mov eax, 0x53f5da20
mov edx, 0x53f5da20
mov dword [esi + 0x3c], edx
mov dword [esi + 0x38], ecx
mov ecx, 0x34ba4ce5
mov edx, 0x780d27cb
mov dword [esi + 0x64], edx
mov dword [esi + 0x60], ecx
mov ecx, 0x59a5c50e
mov edx, 0xfbd986da
mov dword [esi + 0x6c], edx
mov dword [esi + 0x68], ecx
mov ecx, 0x8683f0f7
mov edx, 0xe86d2731
mov dword [esi + 0x74], edx
mov dword [esi + 0x70], ecx
mov ecx, 0xc187af88
mov dword [esi + 0x7c], eax
mov dword [esi + 0x78], ecx
lea eax, [esi + 0x60]
xor ecx, ecx
movaps xmm0, xmmword [esi + 0x20]
xorps xmm0, xmmword [eax]
movaps xmmword [esi + 0x20], xmm0
movaps xmm0, xmmword [esi + 0x30]
xorps xmm0, xmmword [eax + 0x10]
movaps xmmword [esi + 0x30], xmm0
mov dword [esi + 0xa8], 8
lea eax, [esi + 0x20]
lea ecx, [esi + 0x40]
mov dword [esi + 8], ecx
push eax
call fcn.10015240
mov eax, dword [esi + 0x50]
mov dword [esi + 0xc], eax
cmp dword [esi + 0x54], 0x10
jb 0x100e7409
mov eax, dword [esi + 0x40]
mov dword [esi + 8], eax
cmp dword [esi + 0xc], 0
je 0x100e77a3
mov eax, dword [esi + 0xc]
mov ecx, eax
and ecx, 3
mov dword [esi + 0x10], ecx
cmp eax, 4
jae 0x100e77b4
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100e77fe
movss dword [esi + 0x88], xmm0
mov dword [esi + 0x18], edi
or eax, 1
mov dword [0x1025e6dc], eax
mov eax, dword [0x10258d5c]
mov dword [esi + 0x14], eax
mov eax, 0x58dc1388
mov ecx, 0x136e528f
mov dword [esi + 0x44], ecx
mov dword [esi + 0x40], eax
mov eax, 0x2ccaa84f
mov ecx, 0xfbd9f2b4
mov dword [esi + 0x4c], ecx
mov dword [esi + 0x48], eax
mov eax, 0x34ba4ce5
mov ecx, 0x780d27cb
mov dword [esi + 0x24], ecx
mov dword [esi + 0x20], eax
mov eax, 0x59a5c50e
mov ecx, 0xfbd986da
mov dword [esi + 0x2c], ecx
mov dword [esi + 0x28], eax
lea eax, [esi + 0x20]
xor ecx, ecx
movaps xmm0, xmmword [esi + 0x40]
xorps xmm0, xmmword [eax]
movaps xmmword [esi + 0x40], xmm0
mov dword [esi + 0xa8], 0xa
lea eax, [esi + 0x40]
lea ecx, [esi + 0x60]
mov dword [esi + 8], ecx
push eax
call fcn.10015240
mov eax, dword [esi + 0x70]
mov dword [esi + 0xc], eax
cmp dword [esi + 0x74], 0x10
jb 0x100e74c9
mov eax, dword [esi + 0x60]
mov dword [esi + 8], eax
cmp dword [esi + 0xc], 0
je 0x100e77aa
mov eax, dword [esi + 0xc]
mov ecx, eax
and ecx, 3
mov dword [esi + 0x10], ecx
cmp eax, 4
jae 0x100e788c
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100e78d6
mov ecx, 0x811c9dc5
jmp 0x100e7561
mov edi, dword [esi + 0x1c]
and edi, 0xfffffffc
mov ecx, 0x811c9dc5
xor edx, edx
mov eax, dword [esi + 0xc]
movzx ebx, byte [eax + edx]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 1]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 2]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 3]
xor ebx, ecx
imul ecx, ebx, 0x1000193
add edx, 4
cmp edi, edx
jne 0x100e750a
cmp dword [esi + 8], 0
je 0x100e7561
add edx, dword [esi + 0xc]
xor edi, edi
movzx ebx, byte [edx + edi]
xor ebx, ecx
imul ecx, ebx, 0x1000193
inc edi
cmp dword [esi + 8], edi
jne 0x100e754f
mov edx, dword [esi + 0x10]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov ebx, dword [eax + ecx*8 + 4]
cmp ebx, dword [edx + 4]
je 0x100e7e42
add ecx, ecx
mov edi, dword [eax + ecx*4]
mov eax, dword [esi + 0x1c]
cmp eax, dword [ebx + 0x18]
jne 0x100e75a5
cmp dword [ebx + 0x1c], 0x10
jb 0x100e758f
mov eax, dword [ebx + 8]
jmp 0x100e7592
lea eax, [ebx + 8]
push dword [esi + 0x1c]
push eax
push dword [esi + 0xc]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100e75b2
cmp ebx, edi
je 0x100e7e42
mov ebx, dword [ebx + 4]
jmp 0x100e757c
add ebx, 0x20
lea ecx, [esi + 0x60]
call fcn.10014f60
mov dword [0x1025e688], ebx
mov ecx, dword [esi + 0x14]
jmp 0x100e6bd1
mov ecx, 0x811c9dc5
jmp 0x100e7739
mov dword [esi + 0x88], ecx
or eax, 1
mov dword [0x10258ee0], eax
mov eax, 0x47db0ea6
mov ecx, 0x196177ae
mov dword [esi + 0x24], ecx
mov dword [esi + 0x20], eax
mov eax, 0x74d7a077
mov ecx, 0x9d86ebe4
mov dword [esi + 0x2c], ecx
mov dword [esi + 0x28], eax
mov eax, 0xe1e29cb1
mov ecx, 0xe86d2742
mov dword [esi + 0x34], ecx
mov dword [esi + 0x30], eax
mov eax, 0xc187af88
mov ecx, 0x53f5da20
mov edx, 0x34ba4ce5
mov edi, 0x780d27cb
mov dword [esi + 0x64], edi
mov dword [esi + 0x60], edx
mov edx, 0x59a5c50e
mov edi, 0xfbd986da
mov dword [esi + 0x6c], edi
mov dword [esi + 0x68], edx
mov edx, 0x8683f0f7
mov edi, 0xe86d2731
mov dword [esi + 0x74], edi
mov dword [esi + 0x70], edx
mov dword [esi + 0x3c], ecx
mov dword [esi + 0x38], eax
mov dword [esi + 0x7c], ecx
mov dword [esi + 0x78], eax
lea eax, [esi + 0x60]
xor ecx, ecx
movaps xmm0, xmmword [esi + 0x20]
xorps xmm0, xmmword [eax]
movaps xmmword [esi + 0x20], xmm0
movaps xmm0, xmmword [esi + 0x30]
xorps xmm0, xmmword [eax + 0x10]
mov eax, dword [0x10258d5c]
mov dword [esi + 0x18], eax
movaps xmmword [esi + 0x30], xmm0
mov dword [esi + 0xa8], 0xc
lea eax, [esi + 0x20]
lea ecx, [esi + 0x40]
mov dword [esi + 0x10], ecx
push eax
call fcn.10015240
mov eax, dword [esi + 0x50]
mov dword [esi + 8], eax
cmp dword [esi + 0x54], 0x10
jb 0x100e76a8
mov eax, dword [esi + 0x40]
mov dword [esi + 0x10], eax
cmp dword [esi + 8], 0
je 0x100e7965
mov eax, dword [esi + 8]
mov ecx, eax
and ecx, 3
mov dword [esi + 0x14], ecx
cmp eax, 4
jae 0x100e796c
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100e79b6
mov edi, dword [esi + 0xc]
and edi, 0xfffffffc
mov ecx, 0x811c9dc5
xor edx, edx
mov eax, dword [esi + 8]
movzx ebx, byte [eax + edx]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 1]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 2]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 3]
xor ebx, ecx
imul ecx, ebx, 0x1000193
add edx, 4
cmp edi, edx
jne 0x100e76e2
cmp dword [esi + 0x10], 0
je 0x100e7739
add edx, dword [esi + 8]
xor edi, edi
movzx ebx, byte [edx + edi]
xor ebx, ecx
imul ecx, ebx, 0x1000193
inc edi
cmp dword [esi + 0x10], edi
jne 0x100e7727
mov edx, dword [esi + 0x14]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov ebx, dword [eax + ecx*8 + 4]
cmp ebx, dword [edx + 4]
je 0x100e7e59
add ecx, ecx
mov edi, dword [eax + ecx*4]
mov eax, dword [esi + 0xc]
cmp eax, dword [ebx + 0x18]
jne 0x100e777d
cmp dword [ebx + 0x1c], 0x10
jb 0x100e7767
mov eax, dword [ebx + 8]
jmp 0x100e776a
lea eax, [ebx + 8]
push dword [esi + 0xc]
push eax
push dword [esi + 8]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100e778a
cmp ebx, edi
je 0x100e7e59
mov ebx, dword [ebx + 4]
jmp 0x100e7754
add ebx, 0x20
lea ecx, [esi + 0x60]
call fcn.10014f60
mov dword [0x1025e6d8], ebx
mov ecx, dword [esi + 0x18]
jmp 0x100e6891
mov ecx, 0x811c9dc5
jmp 0x100e781b
mov ecx, 0x811c9dc5
jmp 0x100e78f3
mov edi, dword [esi + 0xc]
and edi, 0xfffffffc
mov ecx, 0x811c9dc5
xor edx, edx
mov eax, dword [esi + 8]
movzx ebx, byte [eax + edx]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 1]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 2]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 3]
xor ebx, ecx
imul ecx, ebx, 0x1000193
add edx, 4
cmp edi, edx
jne 0x100e77c4
cmp dword [esi + 0x10], 0
je 0x100e781b
add edx, dword [esi + 8]
xor edi, edi
movzx ebx, byte [edx + edi]
xor ebx, ecx
imul ecx, ebx, 0x1000193
inc edi
cmp dword [esi + 0x10], edi
jne 0x100e7809
mov edx, dword [esi + 0x14]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov ebx, dword [eax + ecx*8 + 4]
cmp ebx, dword [edx + 4]
je 0x100e7e70
add ecx, ecx
mov edi, dword [eax + ecx*4]
mov eax, dword [esi + 0xc]
cmp eax, dword [ebx + 0x18]
jne 0x100e785f
cmp dword [ebx + 0x1c], 0x10
jb 0x100e7849
mov eax, dword [ebx + 8]
jmp 0x100e784c
lea eax, [ebx + 8]
push dword [esi + 0xc]
push eax
push dword [esi + 8]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100e786c
cmp ebx, edi
je 0x100e7e70
mov ebx, dword [ebx + 4]
jmp 0x100e7836
add ebx, 0x20
lea ecx, [esi + 0x40]
call fcn.10014f60
mov dword [0x1025e768], ebx
mov eax, dword [0x10258d94]
mov edi, dword [eax]
mov edx, dword [esi + 0x18]
jmp 0x100e68da
mov edi, dword [esi + 0xc]
and edi, 0xfffffffc
mov ecx, 0x811c9dc5
xor edx, edx
mov eax, dword [esi + 8]
movzx ebx, byte [eax + edx]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 1]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 2]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 3]
xor ebx, ecx
imul ecx, ebx, 0x1000193
add edx, 4
cmp edi, edx
jne 0x100e789c
cmp dword [esi + 0x10], 0
je 0x100e78f3
add edx, dword [esi + 8]
xor edi, edi
movzx ebx, byte [edx + edi]
xor ebx, ecx
imul ecx, ebx, 0x1000193
inc edi
cmp dword [esi + 0x10], edi
jne 0x100e78e1
mov edx, dword [esi + 0x14]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov ebx, dword [eax + ecx*8 + 4]
cmp ebx, dword [edx + 4]
je 0x100e7e87
add ecx, ecx
mov edi, dword [eax + ecx*4]
mov eax, dword [esi + 0xc]
cmp eax, dword [ebx + 0x18]
jne 0x100e7937
cmp dword [ebx + 0x1c], 0x10
jb 0x100e7921
mov eax, dword [ebx + 8]
jmp 0x100e7924
lea eax, [ebx + 8]
push dword [esi + 0xc]
push eax
push dword [esi + 8]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100e7944
cmp ebx, edi
je 0x100e7e87
mov ebx, dword [ebx + 4]
jmp 0x100e790e
add ebx, 0x20
lea ecx, [esi + 0x60]
call fcn.10014f60
mov dword [0x1025e6d8], ebx
mov edi, dword [esi + 0x18]
movss xmm0, dword [esi + 0x88]
jmp 0x100e6908
mov ecx, 0x811c9dc5
jmp 0x100e79d3
mov edi, dword [esi + 8]
and edi, 0xfffffffc
mov ecx, 0x811c9dc5
xor edx, edx
mov eax, dword [esi + 0x10]
movzx ebx, byte [eax + edx]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 1]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 2]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 3]
xor ebx, ecx
imul ecx, ebx, 0x1000193
add edx, 4
cmp edi, edx
jne 0x100e797c
cmp dword [esi + 0x14], 0
je 0x100e79d3
add edx, dword [esi + 0x10]
xor edi, edi
movzx ebx, byte [edx + edi]
xor ebx, ecx
imul ecx, ebx, 0x1000193
inc edi
cmp dword [esi + 0x14], edi
jne 0x100e79c1
mov edx, dword [esi + 0x18]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov ebx, dword [eax + ecx*8 + 4]
cmp ebx, dword [edx + 4]
je 0x100e7e9e
add ecx, ecx
mov edi, dword [eax + ecx*4]
mov eax, dword [esi + 8]
cmp eax, dword [ebx + 0x18]
jne 0x100e7a17
cmp dword [ebx + 0x1c], 0x10
jb 0x100e7a01
mov eax, dword [ebx + 8]
jmp 0x100e7a04
lea eax, [ebx + 8]
push dword [esi + 8]
push eax
push dword [esi + 0x10]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100e7a24
cmp ebx, edi
je 0x100e7e9e
mov ebx, dword [ebx + 4]
jmp 0x100e79ee
add ebx, 0x20
lea ecx, [esi + 0x40]
call fcn.10014f60
mov dword [0x10258edc], ebx
mov ecx, dword [esi + 0x88]
jmp 0x100e69ef
mov dword [esi + 0x88], edx
or eax, 1
mov dword [0x1025e6cc], eax
mov eax, dword [0x10258d5c]
mov dword [esi + 0x18], eax
mov eax, 0x47db0ea6
mov ecx, 0x196177ae
mov dword [esi + 0x24], ecx
mov dword [esi + 0x20], eax
mov eax, 0x74d7a077
mov ecx, 0x8d86ebe4
mov dword [esi + 0x2c], ecx
mov dword [esi + 0x28], eax
mov eax, 0xe3d59392
mov ecx, 0x810e485d
mov dword [esi + 0x34], ecx
mov dword [esi + 0x30], eax
mov eax, 0xf1dcd6fc
mov ecx, 0x53f5da7d
mov dword [esi + 0x3c], ecx
mov dword [esi + 0x38], eax
mov eax, 0x34ba4ce5
mov ecx, 0x780d27cb
mov dword [esi + 0x64], ecx
mov dword [esi + 0x60], eax
mov eax, 0x59a5c50e
mov ecx, 0xfbd986da
mov dword [esi + 0x6c], ecx
mov dword [esi + 0x68], eax
mov eax, 0x8683f0f7
mov ecx, 0xe86d2731
mov dword [esi + 0x74], ecx
mov dword [esi + 0x70], eax
mov eax, 0xc187af88
mov ecx, 0x53f5da20
mov dword [esi + 0x7c], ecx
mov dword [esi + 0x78], eax
lea eax, [esi + 0x60]
xor ecx, ecx
movaps xmm0, xmmword [esi + 0x20]
xorps xmm0, xmmword [eax]
movaps xmmword [esi + 0x20], xmm0
movaps xmm0, xmmword [esi + 0x30]
xorps xmm0, xmmword [eax + 0x10]
movaps xmmword [esi + 0x30], xmm0
mov dword [esi + 0xa8], 0xe
lea eax, [esi + 0x20]
lea ecx, [esi + 0x40]
mov dword [esi + 0x10], ecx
push eax
call fcn.10015240
mov eax, dword [esi + 0x50]
mov dword [esi + 8], eax
cmp dword [esi + 0x54], 0x10
jb 0x100e7b1d
mov eax, dword [esi + 0x40]
mov dword [esi + 0x10], eax
cmp dword [esi + 8], 0
je 0x100e7c3d
mov eax, dword [esi + 8]
mov ecx, eax
and ecx, 3
mov dword [esi + 0x14], ecx
cmp eax, 4
jae 0x100e7c4e
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100e7c98
mov dword [esi + 0x18], ecx
or eax, 1
mov dword [0x10258ee0], eax
mov eax, 0x47db0ea6
mov ecx, 0x196177ae
mov dword [esi + 0x24], ecx
mov dword [esi + 0x20], eax
mov eax, 0x74d7a077
mov ecx, 0x9d86ebe4
mov dword [esi + 0x2c], ecx
mov dword [esi + 0x28], eax
mov eax, 0xe1e29cb1
mov ecx, 0xe86d2742
mov dword [esi + 0x34], ecx
mov dword [esi + 0x30], eax
mov eax, 0xc187af88
mov ecx, 0x53f5da20
mov edx, 0x34ba4ce5
mov edi, 0x780d27cb
mov dword [esi + 0x64], edi
mov dword [esi + 0x60], edx
mov edx, 0x59a5c50e
mov edi, 0xfbd986da
mov dword [esi + 0x6c], edi
mov dword [esi + 0x68], edx
mov edx, 0x8683f0f7
mov edi, 0xe86d2731
mov dword [esi + 0x74], edi
mov dword [esi + 0x70], edx
mov dword [esi + 0x3c], ecx
mov dword [esi + 0x38], eax
mov dword [esi + 0x7c], ecx
mov dword [esi + 0x78], eax
lea eax, [esi + 0x60]
xor ecx, ecx
movaps xmm0, xmmword [esi + 0x20]
xorps xmm0, xmmword [eax]
movaps xmmword [esi + 0x20], xmm0
movaps xmm0, xmmword [esi + 0x30]
xorps xmm0, xmmword [eax + 0x10]
mov eax, dword [0x10258d5c]
mov dword [esi + 0x14], eax
movaps xmmword [esi + 0x30], xmm0
mov dword [esi + 0xa8], 0x10
lea eax, [esi + 0x20]
lea ecx, [esi + 0x40]
mov dword [esi + 8], ecx
push eax
call fcn.10015240
mov eax, dword [esi + 0x50]
mov dword [esi + 0xc], eax
cmp dword [esi + 0x54], 0x10
jb 0x100e7c17
mov eax, dword [esi + 0x40]
mov dword [esi + 8], eax
cmp dword [esi + 0xc], 0
je 0x100e7c44
mov eax, dword [esi + 0xc]
mov ecx, eax
and ecx, 3
mov dword [esi + 0x10], ecx
cmp eax, 4
jae 0x100e7d2c
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100e7d76
mov ecx, 0x811c9dc5
jmp 0x100e7cb5
mov ecx, 0x811c9dc5
jmp 0x100e7d93
mov edi, dword [esi + 8]
and edi, 0xfffffffc
mov ecx, 0x811c9dc5
xor edx, edx
mov eax, dword [esi + 0x10]
movzx ebx, byte [eax + edx]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 1]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 2]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 3]
xor ebx, ecx
imul ecx, ebx, 0x1000193
add edx, 4
cmp edi, edx
jne 0x100e7c5e
cmp dword [esi + 0x14], 0
je 0x100e7cb5
add edx, dword [esi + 0x10]
xor edi, edi
movzx ebx, byte [edx + edi]
xor ebx, ecx
imul ecx, ebx, 0x1000193
inc edi
cmp dword [esi + 0x14], edi
jne 0x100e7ca3
mov edx, dword [esi + 0x18]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov ebx, dword [eax + ecx*8 + 4]
cmp ebx, dword [edx + 4]
je 0x100e7eb5
add ecx, ecx
mov edi, dword [eax + ecx*4]
mov eax, dword [esi + 8]
cmp eax, dword [ebx + 0x18]
jne 0x100e7cf9
cmp dword [ebx + 0x1c], 0x10
jb 0x100e7ce3
mov eax, dword [ebx + 8]
jmp 0x100e7ce6
lea eax, [ebx + 8]
push dword [esi + 8]
push eax
push dword [esi + 0x10]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100e7d06
cmp ebx, edi
je 0x100e7eb5
mov ebx, dword [ebx + 4]
jmp 0x100e7cd0
add ebx, 0x20
lea ecx, [esi + 0x40]
call fcn.10014f60
mov dword [0x1025e6c8], ebx
mov dword [esi + 0xa8], 0xffffffff
mov edx, dword [esi + 0x88]
jmp 0x100e6aeb
mov edi, dword [esi + 0xc]
and edi, 0xfffffffc
mov ecx, 0x811c9dc5
xor edx, edx
mov eax, dword [esi + 8]
movzx ebx, byte [eax + edx]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 1]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 2]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 3]
xor ebx, ecx
imul ecx, ebx, 0x1000193
add edx, 4
cmp edi, edx
jne 0x100e7d3c
cmp dword [esi + 0x10], 0
je 0x100e7d93
add edx, dword [esi + 8]
xor edi, edi
movzx ebx, byte [edx + edi]
xor ebx, ecx
imul ecx, ebx, 0x1000193
inc edi
cmp dword [esi + 0x10], edi
jne 0x100e7d81
mov edx, dword [esi + 0x14]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov ebx, dword [eax + ecx*8 + 4]
cmp ebx, dword [edx + 4]
je 0x100e7ecc
add ecx, ecx
mov edi, dword [eax + ecx*4]
mov eax, dword [esi + 0xc]
cmp eax, dword [ebx + 0x18]
jne 0x100e7dd7
cmp dword [ebx + 0x1c], 0x10
jb 0x100e7dc1
mov eax, dword [ebx + 8]
jmp 0x100e7dc4
lea eax, [ebx + 8]
push dword [esi + 0xc]
push eax
push dword [esi + 8]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100e7de4
cmp ebx, edi
je 0x100e7ecc
mov ebx, dword [ebx + 4]
jmp 0x100e7dae
add ebx, 0x20
lea ecx, [esi + 0x40]
call fcn.10014f60
mov dword [0x10258edc], ebx
mov ecx, dword [esi + 0x18]
jmp 0x100e6b68
mov dword [esi + 0xa8], 1
push str.invalid_unordered_map_K__T__key
call sub.MSVCP140.dll_void___cdecl_std::_Xout_of_range_char_const__
add esp, 4
mov dword [esi + 0xa8], 3
push str.invalid_unordered_map_K__T__key
call sub.MSVCP140.dll_void___cdecl_std::_Xout_of_range_char_const__
add esp, 4
mov dword [esi + 0xa8], 5
push str.invalid_unordered_map_K__T__key
call sub.MSVCP140.dll_void___cdecl_std::_Xout_of_range_char_const__
add esp, 4
mov dword [esi + 0xa8], 0x13
push str.invalid_unordered_map_K__T__key
call sub.MSVCP140.dll_void___cdecl_std::_Xout_of_range_char_const__
add esp, 4
mov dword [esi + 0xa8], 7
push str.invalid_unordered_map_K__T__key
call sub.MSVCP140.dll_void___cdecl_std::_Xout_of_range_char_const__
add esp, 4
mov dword [esi + 0xa8], 9
push str.invalid_unordered_map_K__T__key
call sub.MSVCP140.dll_void___cdecl_std::_Xout_of_range_char_const__
add esp, 4
mov dword [esi + 0xa8], 0xb
push str.invalid_unordered_map_K__T__key
call sub.MSVCP140.dll_void___cdecl_std::_Xout_of_range_char_const__
add esp, 4
mov dword [esi + 0xa8], 0xd
push str.invalid_unordered_map_K__T__key
call sub.MSVCP140.dll_void___cdecl_std::_Xout_of_range_char_const__
add esp, 4
mov dword [esi + 0xa8], 0xf
push str.invalid_unordered_map_K__T__key
call sub.MSVCP140.dll_void___cdecl_std::_Xout_of_range_char_const__
add esp, 4
mov dword [esi + 0xa8], 0x11
push str.invalid_unordered_map_K__T__key
call sub.MSVCP140.dll_void___cdecl_std::_Xout_of_range_char_const__
add esp, 4
nop word cs:[eax + eax]
push ebp
sub esp, 0xc
lea esi, [ebp - 0xac]
mov ebp, dword [esi + 0x98]
lea ecx, [esi + 0x40]
call fcn.10014f60
add esp, 0xc
pop ebp
ret