Function at 0x100e6930
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], 0x100e83e0
mov ecx, dword fs:[0]
mov dword [esi + 0xa0], ecx
mov dword fs:[0], eax
push dword [ebp + 8]
call fcn.100df430
mov eax, dword [0x1025ae04]
mov ecx, dword [eax]
mov eax, dword [0x102606fc]
test al, 1
je 0x100e6e77
mov ebx, dword [0x102606f8]
mov eax, dword [ebx + 4]
cmp byte [eax + ecx], 2
jne 0x100e6e61
mov eax, dword [0x1025ae04]
mov ecx, dword [eax]
mov eax, dword [0x102606d4]
test al, 1
je 0x100e6f2f
mov ebx, dword [0x102606d0]
mov eax, dword [ebx + 4]
movss xmm0, dword [eax + ecx]
mov eax, dword [esi + 0x1c]
movss dword [eax + 0x14], xmm0
mov eax, dword [0x1025adc8]
mov ecx, dword [eax + 0x1d8]
test ecx, ecx
je 0x100e6a09
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 0x100e6a11
movss xmm0, dword [0x101b1a10]
mov eax, dword [esi + 0x1c]
movss dword [eax + 0x18], xmm0
mov eax, dword [0x1025ae04]
mov edi, dword [eax]
mov eax, dword [0x1026073c]
test al, 1
je 0x100e7033
mov ebx, dword [0x10260738]
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.100e12d0
mov eax, dword [0x1025adc4]
cmp byte [eax + 0x53c], 0
je 0x100e6a6f
or byte [edi + 0x32], 0x40
mov eax, dword [esi + 0x1c]
cmp byte [eax + 0x10], 0
je 0x100e6b8f
mov eax, dword [0x1025add0]
cmp dword [eax + 0x18], 0
je 0x100e6ac7
mov eax, dword [0x1025ae04]
mov ecx, dword [eax]
mov eax, dword [0x1026074c]
test al, 1
je 0x100e72ca
mov ebx, dword [0x10260748]
mov eax, dword [ebx + 4]
movss xmm0, dword [eax + ecx]
ucomiss xmm0, dword [0x101a82c0]
mov ecx, dword [ebp + 8]
mov eax, dword [ecx + 0x30]
jbe 0x100e6b3e
or eax, 4
mov dword [ecx + 0x30], eax
jmp 0x100e6b85
mov eax, dword [ebp + 8]
or byte [eax + 0x32], 0x40
mov eax, dword [0x1025ae04]
mov edx, dword [eax]
mov eax, dword [0x102607dc]
test al, 1
je 0x100e753f
mov ebx, dword [0x102607d8]
mov edi, edx
mov eax, dword [ebx + 4]
mov ecx, dword [0x1025ae0c]
movss xmm0, dword [ecx + 0x20]
mulss xmm0, dword [0x101a9fc0]
mulss xmm0, dword [eax + edx]
mov eax, dword [0x1026074c]
test al, 1
je 0x100e7643
mov ebx, dword [0x10260748]
minss xmm0, dword [0x101a8280]
mov eax, dword [ebx + 4]
ucomiss xmm0, dword [eax + edi]
jae 0x100e6b46
mov eax, dword [ebp + 8]
and byte [eax + 0x30], 0xfb
mov eax, dword [0x1025adc8]
and byte [eax + 0x1d4], 0xfd
jmp 0x100e6b85
and eax, 0xfffffffb
mov dword [ecx + 0x30], eax
jmp 0x100e6b85
mov eax, dword [0x1025ae18]
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 [0x1025adc8]
movzx ecx, byte [eax + 0x1d4]
test cl, 1
jne 0x100e6b7c
and cl, 0xfd
jmp 0x100e6b7f
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.100e27c0
mov byte [esi + 0xc], al
mov ecx, edi
push ebx
call fcn.100e4120
cmp byte [esi + 0xc], 0
jne 0x100e6daf
mov bh, al
mov eax, dword [0x1025adc4]
push dword [eax + 0x490]
push dword [eax + 0x48c]
call fcn.10087260
add esp, 8
test al, al
je 0x100e6d21
mov eax, dword [ebp + 8]
test byte [eax + 0x30], 2
jne 0x100e6d21
mov byte [esi + 0xc], bh
mov eax, dword [0x1025ae04]
mov ecx, dword [eax]
mov eax, dword [0x1025af50]
test al, 1
je 0x100e77e5
mov ebx, dword [0x1025af4c]
mov eax, dword [ebx + 4]
test byte [eax + ecx], 1
mov bh, byte [esi + 0xc]
je 0x100e6d21
mov eax, dword [ebp + 8]
movss xmm1, dword [eax + 0x24]
xorps xmm0, xmm0
ucomiss xmm1, xmm0
jne 0x100e6c31
jp 0x100e6c31
movss xmm1, dword [eax + 0x28]
ucomiss xmm1, xmm0
jne 0x100e6c31
jnp 0x100e6d21
mov eax, dword [0x1025adc4]
mov eax, dword [eax + 0x494]
test eax, eax
je 0x100e6c7f
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 0x100e6c89
sqrtsd xmm0, xmm0
jmp 0x100e6cb1
mov eax, dword [esi + 0x1c]
movss xmm0, dword [eax + 0x18]
jmp 0x100e6cd2
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 0x100e6cd7
mov eax, dword [0x1025adc4]
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 [0x1025ae04]
mov edx, dword [eax]
mov eax, dword [0x1026073c]
test al, 1
je 0x100e7c50
mov ebx, dword [0x10260738]
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.100e10a0
mov bh, byte [esi + 0xc]
test bh, bh
jne 0x100e6daf
mov eax, dword [0x1025adc4]
cmp byte [eax + 0x481], 0
je 0x100e6d9a
mov eax, dword [ebp + 8]
test byte [eax + 0x30], 2
mov dword [esi + 0xa8], 0xffffffff
je 0x100e6d9a
mov eax, dword [0x1025adc8]
mov ecx, dword [eax + 0x114]
mov eax, dword [ecx]
call dword [eax + 0x34]
test eax, eax
jne 0x100e6d9a
mov eax, dword [0x1025ae04]
mov ecx, dword [eax]
mov eax, dword [0x1025af50]
test al, 1
je 0x100e7d57
mov ebx, dword [0x1025af4c]
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.100e1530
mov eax, dword [ebp + 8]
and dword [eax + 0x30], 0xfffff9e7
mov eax, dword [0x1025adc4]
cmp byte [eax + 0x488], 0
je 0x100e6e1f
mov eax, dword [0x1025ae04]
mov ecx, dword [eax]
mov eax, dword [0x102606fc]
test al, 1
je 0x100e7141
mov ebx, dword [0x102606f8]
mov eax, dword [ebx + 4]
cmp byte [eax + ecx], 2
jne 0x100e6e1f
mov ecx, dword [ebp + 8]
movss xmm1, dword [ecx + 0x24]
xorps xmm0, xmm0
ucomiss xmm1, xmm0
jne 0x100e6dfc
jnp 0x100e6e0e
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 0x100e6e1a
jnp 0x100e6e61
ucomiss xmm0, xmm1
jmp 0x100e6e50
mov ecx, dword [ebp + 8]
movss xmm1, dword [ecx + 0x24]
xorps xmm0, xmm0
ucomiss xmm1, xmm0
jne 0x100e6e31
jnp 0x100e6e41
setbe al
movzx eax, al
lea eax, [eax*8 + 8]
or dword [ecx + 0x30], eax
movss xmm1, dword [ecx + 0x28]
ucomiss xmm1, xmm0
jne 0x100e6e4d
jnp 0x100e6e61
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 [0x102606fc], eax
mov eax, dword [0x1025adcc]
mov dword [esi + 0x14], eax
mov eax, 0xfef35260
mov ecx, 0x18963725
mov dword [esi + 0x44], ecx
mov dword [esi + 0x40], eax
mov ecx, 0xb9f21ef6
mov eax, 0x38ed4096
mov edx, 0x38ed4096
mov dword [esi + 0x4c], edx
mov dword [esi + 0x48], ecx
mov ecx, 0x91be0d0d
mov edx, 0x61c25253
mov dword [esi + 0x24], edx
mov dword [esi + 0x20], ecx
mov ecx, 0xb9f27b86
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.10015170
mov eax, dword [esi + 0x70]
mov dword [esi + 0xc], eax
cmp dword [esi + 0x74], 0x10
jb 0x100e6f05
mov eax, dword [esi + 0x60]
mov dword [esi + 8], eax
cmp dword [esi + 0xc], 0
je 0x100e7137
mov eax, dword [esi + 0xc]
mov ecx, eax
and ecx, 3
mov dword [esi + 0x10], ecx
cmp eax, 4
jae 0x100e71f9
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100e7243
mov dword [esi + 0x18], ecx
or eax, 1
mov dword [0x102606d4], eax
mov eax, dword [0x1025adcc]
mov dword [esi + 0x14], eax
mov eax, 0xe2df4f4e
mov ecx, 0xae0236
mov dword [esi + 0x24], ecx
mov dword [esi + 0x20], eax
mov eax, 0x94801eff
mov ecx, 0x5eb22da8
mov dword [esi + 0x2c], ecx
mov dword [esi + 0x28], eax
mov eax, 0x118a943
mov ecx, 0x5957d9ba
mov dword [esi + 0x34], ecx
mov dword [esi + 0x30], eax
mov ecx, 0xc82e65fc
mov eax, 0x7152cc
mov edx, 0x7152cc
mov dword [esi + 0x3c], edx
mov dword [esi + 0x38], ecx
mov ecx, 0x91be0d0d
mov edx, 0x61c25253
mov dword [esi + 0x64], edx
mov dword [esi + 0x60], ecx
mov ecx, 0xb9f27b86
mov edx, 0x38ed4096
mov dword [esi + 0x6c], edx
mov dword [esi + 0x68], ecx
mov ecx, 0x7979e42f
mov edx, 0x3c32a9c9
mov dword [esi + 0x74], edx
mov dword [esi + 0x70], ecx
mov ecx, 0xc82e6598
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.10015170
mov eax, dword [esi + 0x50]
mov dword [esi + 0xc], eax
cmp dword [esi + 0x54], 0x10
jb 0x100e7009
mov eax, dword [esi + 0x40]
mov dword [esi + 8], eax
cmp dword [esi + 0xc], 0
je 0x100e7382
mov eax, dword [esi + 0xc]
mov ecx, eax
and ecx, 3
mov dword [esi + 0x10], ecx
cmp eax, 4
jae 0x100e7393
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100e73dd
mov dword [esi + 0x18], edi
or eax, 1
mov dword [0x1026073c], eax
mov eax, dword [0x1025adcc]
mov dword [esi + 0x14], eax
mov eax, 0xe2df4f4e
mov ecx, 0xae0236
mov dword [esi + 0x24], ecx
mov dword [esi + 0x20], eax
mov eax, 0x94801eff
mov ecx, 0x4eb22da8
mov dword [esi + 0x2c], ecx
mov dword [esi + 0x28], eax
mov eax, 0x1c2f874a
mov ecx, 0x5551c6a5
mov dword [esi + 0x34], ecx
mov dword [esi + 0x30], eax
mov eax, 0xf8751cec
mov ecx, 0x715291
mov dword [esi + 0x3c], ecx
mov dword [esi + 0x38], eax
mov eax, 0x91be0d0d
mov ecx, 0x61c25253
mov dword [esi + 0x64], ecx
mov dword [esi + 0x60], eax
mov eax, 0xb9f27b86
mov ecx, 0x38ed4096
mov dword [esi + 0x6c], ecx
mov dword [esi + 0x68], eax
mov eax, 0x7979e42f
mov ecx, 0x3c32a9c9
mov dword [esi + 0x74], ecx
mov dword [esi + 0x70], eax
mov eax, 0xc82e6598
mov ecx, 0x7152cc
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.10015170
mov eax, dword [esi + 0x50]
mov dword [esi + 0xc], eax
cmp dword [esi + 0x54], 0x10
jb 0x100e710d
mov eax, dword [esi + 0x40]
mov dword [esi + 8], eax
cmp dword [esi + 0xc], 0
je 0x100e7389
mov eax, dword [esi + 0xc]
mov ecx, eax
and ecx, 3
mov dword [esi + 0x10], ecx
cmp eax, 4
jae 0x100e7464
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100e74ae
mov ecx, 0x811c9dc5
jmp 0x100e7260
mov dword [esi + 0x14], ecx
or eax, 1
mov dword [0x102606fc], eax
mov eax, dword [0x1025adcc]
mov dword [esi + 0x10], eax
mov eax, 0xfef35260
mov ecx, 0x18963725
mov dword [esi + 0x44], ecx
mov dword [esi + 0x40], eax
mov ecx, 0xb9f21ef6
mov eax, 0x38ed4096
mov edx, 0x38ed4096
mov dword [esi + 0x4c], edx
mov dword [esi + 0x48], ecx
mov ecx, 0x91be0d0d
mov edx, 0x61c25253
mov dword [esi + 0x24], edx
mov dword [esi + 0x20], ecx
mov ecx, 0xb9f27b86
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.10015170
mov eax, dword [esi + 0x70]
mov dword [esi + 0x1c], eax
cmp dword [esi + 0x74], 0x10
jb 0x100e71cf
mov eax, dword [esi + 0x60]
mov dword [esi + 0xc], eax
cmp dword [esi + 0x1c], 0
je 0x100e7703
mov eax, dword [esi + 0x1c]
mov ecx, eax
and ecx, 3
mov dword [esi + 8], ecx
cmp eax, 4
jae 0x100e770a
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100e7754
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 0x100e7209
cmp dword [esi + 0x10], 0
je 0x100e7260
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 0x100e724e
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 0x100e800d
add ecx, ecx
mov edi, dword [eax + ecx*4]
mov eax, dword [esi + 0xc]
cmp eax, dword [ebx + 0x18]
jne 0x100e72a4
cmp dword [ebx + 0x1c], 0x10
jb 0x100e728e
mov eax, dword [ebx + 8]
jmp 0x100e7291
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 0x100e72b1
cmp ebx, edi
je 0x100e800d
mov ebx, dword [ebx + 4]
jmp 0x100e727b
add ebx, 0x20
lea ecx, [esi + 0x60]
call fcn.10015110
mov dword [0x102606f8], ebx
mov ecx, dword [esi + 0x18]
jmp 0x100e699f
mov dword [esi + 0x18], ecx
or eax, 1
mov dword [0x1026074c], eax
mov eax, dword [0x1025adcc]
mov dword [esi + 0x14], eax
mov eax, 0xfdd85260
mov ecx, 0xaa12717
mov dword [esi + 0x44], ecx
mov dword [esi + 0x40], eax
mov eax, 0xcc9d16c7
mov ecx, 0x38ed34f8
mov dword [esi + 0x4c], ecx
mov dword [esi + 0x48], eax
mov eax, 0x91be0d0d
mov ecx, 0x61c25253
mov dword [esi + 0x24], ecx
mov dword [esi + 0x20], eax
mov eax, 0xb9f27b86
mov ecx, 0x38ed4096
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.10015170
mov eax, dword [esi + 0x70]
mov dword [esi + 0xc], eax
cmp dword [esi + 0x74], 0x10
jb 0x100e7358
mov eax, dword [esi + 0x60]
mov dword [esi + 8], eax
cmp dword [esi + 0xc], 0
je 0x100e77db
mov eax, dword [esi + 0xc]
mov ecx, eax
and ecx, 3
mov dword [esi + 0x10], ecx
cmp eax, 4
jae 0x100e78e2
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100e792c
mov ecx, 0x811c9dc5
jmp 0x100e73fa
mov ecx, 0x811c9dc5
jmp 0x100e74cb
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 0x100e73a3
cmp dword [esi + 0x10], 0
je 0x100e73fa
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 0x100e73e8
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 0x100e8024
add ecx, ecx
mov edi, dword [eax + ecx*4]
mov eax, dword [esi + 0xc]
cmp eax, dword [ebx + 0x18]
jne 0x100e743e
cmp dword [ebx + 0x1c], 0x10
jb 0x100e7428
mov eax, dword [ebx + 8]
jmp 0x100e742b
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 0x100e744b
cmp ebx, edi
je 0x100e8024
mov ebx, dword [ebx + 4]
jmp 0x100e7415
add ebx, 0x20
lea ecx, [esi + 0x40]
call fcn.10015110
mov dword [0x102606d0], ebx
mov ecx, dword [esi + 0x18]
jmp 0x100e69c6
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 0x100e7474
cmp dword [esi + 0x10], 0
je 0x100e74cb
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 0x100e74b9
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 0x100e803b
add ecx, ecx
mov edi, dword [eax + ecx*4]
mov eax, dword [esi + 0xc]
cmp eax, dword [ebx + 0x18]
jne 0x100e750f
cmp dword [ebx + 0x1c], 0x10
jb 0x100e74f9
mov eax, dword [ebx + 8]
jmp 0x100e74fc
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 0x100e751c
cmp ebx, edi
je 0x100e803b
mov ebx, dword [ebx + 4]
jmp 0x100e74e6
add ebx, 0x20
lea ecx, [esi + 0x40]
call fcn.10015110
mov dword [0x10260738], ebx
mov dword [esi + 0xa8], 0xffffffff
mov edi, dword [esi + 0x18]
jmp 0x100e6a3d
mov dword [esi + 0x18], edx
or eax, 1
mov dword [0x102607dc], eax
mov eax, dword [0x1025adcc]
mov dword [esi + 0x14], eax
mov eax, 0xe2df4f4e
mov ecx, 0xae0236
mov dword [esi + 0x24], ecx
mov dword [esi + 0x20], eax
mov eax, 0x94801eff
mov ecx, 0x5eb22da8
mov dword [esi + 0x2c], ecx
mov dword [esi + 0x28], eax
mov eax, 0x1a0ca043
mov ecx, 0x5942faa2
mov dword [esi + 0x34], ecx
mov dword [esi + 0x30], eax
mov ecx, 0xc82e01fd
mov eax, 0x7152cc
mov edx, 0x7152cc
mov dword [esi + 0x3c], edx
mov dword [esi + 0x38], ecx
mov ecx, 0x91be0d0d
mov edx, 0x61c25253
mov dword [esi + 0x64], edx
mov dword [esi + 0x60], ecx
mov ecx, 0xb9f27b86
mov edx, 0x38ed4096
mov dword [esi + 0x6c], edx
mov dword [esi + 0x68], ecx
mov ecx, 0x7979e42f
mov edx, 0x3c32a9c9
mov dword [esi + 0x74], edx
mov dword [esi + 0x70], ecx
mov ecx, 0xc82e6598
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.10015170
mov eax, dword [esi + 0x50]
mov dword [esi + 0xc], eax
cmp dword [esi + 0x54], 0x10
jb 0x100e7619
mov eax, dword [esi + 0x40]
mov dword [esi + 8], eax
cmp dword [esi + 0xc], 0
je 0x100e79b3
mov eax, dword [esi + 0xc]
mov ecx, eax
and ecx, 3
mov dword [esi + 0x10], ecx
cmp eax, 4
jae 0x100e79c4
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100e7a0e
movss dword [esi + 0x88], xmm0
mov dword [esi + 0x18], edi
or eax, 1
mov dword [0x1026074c], eax
mov eax, dword [0x1025adcc]
mov dword [esi + 0x14], eax
mov eax, 0xfdd85260
mov ecx, 0xaa12717
mov dword [esi + 0x44], ecx
mov dword [esi + 0x40], eax
mov eax, 0xcc9d16c7
mov ecx, 0x38ed34f8
mov dword [esi + 0x4c], ecx
mov dword [esi + 0x48], eax
mov eax, 0x91be0d0d
mov ecx, 0x61c25253
mov dword [esi + 0x24], ecx
mov dword [esi + 0x20], eax
mov eax, 0xb9f27b86
mov ecx, 0x38ed4096
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.10015170
mov eax, dword [esi + 0x70]
mov dword [esi + 0xc], eax
cmp dword [esi + 0x74], 0x10
jb 0x100e76d9
mov eax, dword [esi + 0x60]
mov dword [esi + 8], eax
cmp dword [esi + 0xc], 0
je 0x100e79ba
mov eax, dword [esi + 0xc]
mov ecx, eax
and ecx, 3
mov dword [esi + 0x10], ecx
cmp eax, 4
jae 0x100e7a9c
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100e7ae6
mov ecx, 0x811c9dc5
jmp 0x100e7771
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 0x100e771a
cmp dword [esi + 8], 0
je 0x100e7771
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 0x100e775f
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 0x100e8052
add ecx, ecx
mov edi, dword [eax + ecx*4]
mov eax, dword [esi + 0x1c]
cmp eax, dword [ebx + 0x18]
jne 0x100e77b5
cmp dword [ebx + 0x1c], 0x10
jb 0x100e779f
mov eax, dword [ebx + 8]
jmp 0x100e77a2
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 0x100e77c2
cmp ebx, edi
je 0x100e8052
mov ebx, dword [ebx + 4]
jmp 0x100e778c
add ebx, 0x20
lea ecx, [esi + 0x60]
call fcn.10015110
mov dword [0x102606f8], ebx
mov ecx, dword [esi + 0x14]
jmp 0x100e6de1
mov ecx, 0x811c9dc5
jmp 0x100e7949
mov dword [esi + 0x88], ecx
or eax, 1
mov dword [0x1025af50], eax
mov eax, 0xe2df4f4e
mov ecx, 0xae0236
mov dword [esi + 0x24], ecx
mov dword [esi + 0x20], eax
mov eax, 0x94801eff
mov ecx, 0x5eb22da8
mov dword [esi + 0x2c], ecx
mov dword [esi + 0x28], eax
mov eax, 0x1e188869
mov ecx, 0x3c32a9ba
mov dword [esi + 0x34], ecx
mov dword [esi + 0x30], eax
mov eax, 0xc82e6598
mov ecx, 0x7152cc
mov edx, 0x91be0d0d
mov edi, 0x61c25253
mov dword [esi + 0x64], edi
mov dword [esi + 0x60], edx
mov edx, 0xb9f27b86
mov edi, 0x38ed4096
mov dword [esi + 0x6c], edi
mov dword [esi + 0x68], edx
mov edx, 0x7979e42f
mov edi, 0x3c32a9c9
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 [0x1025adcc]
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.10015170
mov eax, dword [esi + 0x50]
mov dword [esi + 8], eax
cmp dword [esi + 0x54], 0x10
jb 0x100e78b8
mov eax, dword [esi + 0x40]
mov dword [esi + 0x10], eax
cmp dword [esi + 8], 0
je 0x100e7b75
mov eax, dword [esi + 8]
mov ecx, eax
and ecx, 3
mov dword [esi + 0x14], ecx
cmp eax, 4
jae 0x100e7b7c
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100e7bc6
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 0x100e78f2
cmp dword [esi + 0x10], 0
je 0x100e7949
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 0x100e7937
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 0x100e8069
add ecx, ecx
mov edi, dword [eax + ecx*4]
mov eax, dword [esi + 0xc]
cmp eax, dword [ebx + 0x18]
jne 0x100e798d
cmp dword [ebx + 0x1c], 0x10
jb 0x100e7977
mov eax, dword [ebx + 8]
jmp 0x100e797a
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 0x100e799a
cmp ebx, edi
je 0x100e8069
mov ebx, dword [ebx + 4]
jmp 0x100e7964
add ebx, 0x20
lea ecx, [esi + 0x60]
call fcn.10015110
mov dword [0x10260748], ebx
mov ecx, dword [esi + 0x18]
jmp 0x100e6aa1
mov ecx, 0x811c9dc5
jmp 0x100e7a2b
mov ecx, 0x811c9dc5
jmp 0x100e7b03
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 0x100e79d4
cmp dword [esi + 0x10], 0
je 0x100e7a2b
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 0x100e7a19
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 0x100e8080
add ecx, ecx
mov edi, dword [eax + ecx*4]
mov eax, dword [esi + 0xc]
cmp eax, dword [ebx + 0x18]
jne 0x100e7a6f
cmp dword [ebx + 0x1c], 0x10
jb 0x100e7a59
mov eax, dword [ebx + 8]
jmp 0x100e7a5c
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 0x100e7a7c
cmp ebx, edi
je 0x100e8080
mov ebx, dword [ebx + 4]
jmp 0x100e7a46
add ebx, 0x20
lea ecx, [esi + 0x40]
call fcn.10015110
mov dword [0x102607d8], ebx
mov eax, dword [0x1025ae04]
mov edi, dword [eax]
mov edx, dword [esi + 0x18]
jmp 0x100e6aea
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 0x100e7aac
cmp dword [esi + 0x10], 0
je 0x100e7b03
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 0x100e7af1
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 0x100e8097
add ecx, ecx
mov edi, dword [eax + ecx*4]
mov eax, dword [esi + 0xc]
cmp eax, dword [ebx + 0x18]
jne 0x100e7b47
cmp dword [ebx + 0x1c], 0x10
jb 0x100e7b31
mov eax, dword [ebx + 8]
jmp 0x100e7b34
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 0x100e7b54
cmp ebx, edi
je 0x100e8097
mov ebx, dword [ebx + 4]
jmp 0x100e7b1e
add ebx, 0x20
lea ecx, [esi + 0x60]
call fcn.10015110
mov dword [0x10260748], ebx
mov edi, dword [esi + 0x18]
movss xmm0, dword [esi + 0x88]
jmp 0x100e6b18
mov ecx, 0x811c9dc5
jmp 0x100e7be3
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 0x100e7b8c
cmp dword [esi + 0x14], 0
je 0x100e7be3
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 0x100e7bd1
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 0x100e80ae
add ecx, ecx
mov edi, dword [eax + ecx*4]
mov eax, dword [esi + 8]
cmp eax, dword [ebx + 0x18]
jne 0x100e7c27
cmp dword [ebx + 0x1c], 0x10
jb 0x100e7c11
mov eax, dword [ebx + 8]
jmp 0x100e7c14
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 0x100e7c34
cmp ebx, edi
je 0x100e80ae
mov ebx, dword [ebx + 4]
jmp 0x100e7bfe
add ebx, 0x20
lea ecx, [esi + 0x40]
call fcn.10015110
mov dword [0x1025af4c], ebx
mov ecx, dword [esi + 0x88]
jmp 0x100e6bff
mov dword [esi + 0x88], edx
or eax, 1
mov dword [0x1026073c], eax
mov eax, dword [0x1025adcc]
mov dword [esi + 0x18], eax
mov eax, 0xe2df4f4e
mov ecx, 0xae0236
mov dword [esi + 0x24], ecx
mov dword [esi + 0x20], eax
mov eax, 0x94801eff
mov ecx, 0x4eb22da8
mov dword [esi + 0x2c], ecx
mov dword [esi + 0x28], eax
mov eax, 0x1c2f874a
mov ecx, 0x5551c6a5
mov dword [esi + 0x34], ecx
mov dword [esi + 0x30], eax
mov eax, 0xf8751cec
mov ecx, 0x715291
mov dword [esi + 0x3c], ecx
mov dword [esi + 0x38], eax
mov eax, 0x91be0d0d
mov ecx, 0x61c25253
mov dword [esi + 0x64], ecx
mov dword [esi + 0x60], eax
mov eax, 0xb9f27b86
mov ecx, 0x38ed4096
mov dword [esi + 0x6c], ecx
mov dword [esi + 0x68], eax
mov eax, 0x7979e42f
mov ecx, 0x3c32a9c9
mov dword [esi + 0x74], ecx
mov dword [esi + 0x70], eax
mov eax, 0xc82e6598
mov ecx, 0x7152cc
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.10015170
mov eax, dword [esi + 0x50]
mov dword [esi + 8], eax
cmp dword [esi + 0x54], 0x10
jb 0x100e7d2d
mov eax, dword [esi + 0x40]
mov dword [esi + 0x10], eax
cmp dword [esi + 8], 0
je 0x100e7e4d
mov eax, dword [esi + 8]
mov ecx, eax
and ecx, 3
mov dword [esi + 0x14], ecx
cmp eax, 4
jae 0x100e7e5e
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100e7ea8
mov dword [esi + 0x18], ecx
or eax, 1
mov dword [0x1025af50], eax
mov eax, 0xe2df4f4e
mov ecx, 0xae0236
mov dword [esi + 0x24], ecx
mov dword [esi + 0x20], eax
mov eax, 0x94801eff
mov ecx, 0x5eb22da8
mov dword [esi + 0x2c], ecx
mov dword [esi + 0x28], eax
mov eax, 0x1e188869
mov ecx, 0x3c32a9ba
mov dword [esi + 0x34], ecx
mov dword [esi + 0x30], eax
mov eax, 0xc82e6598
mov ecx, 0x7152cc
mov edx, 0x91be0d0d
mov edi, 0x61c25253
mov dword [esi + 0x64], edi
mov dword [esi + 0x60], edx
mov edx, 0xb9f27b86
mov edi, 0x38ed4096
mov dword [esi + 0x6c], edi
mov dword [esi + 0x68], edx
mov edx, 0x7979e42f
mov edi, 0x3c32a9c9
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 [0x1025adcc]
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.10015170
mov eax, dword [esi + 0x50]
mov dword [esi + 0xc], eax
cmp dword [esi + 0x54], 0x10
jb 0x100e7e27
mov eax, dword [esi + 0x40]
mov dword [esi + 8], eax
cmp dword [esi + 0xc], 0
je 0x100e7e54
mov eax, dword [esi + 0xc]
mov ecx, eax
and ecx, 3
mov dword [esi + 0x10], ecx
cmp eax, 4
jae 0x100e7f3c
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100e7f86
mov ecx, 0x811c9dc5
jmp 0x100e7ec5
mov ecx, 0x811c9dc5
jmp 0x100e7fa3
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 0x100e7e6e
cmp dword [esi + 0x14], 0
je 0x100e7ec5
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 0x100e7eb3
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 0x100e80c5
add ecx, ecx
mov edi, dword [eax + ecx*4]
mov eax, dword [esi + 8]
cmp eax, dword [ebx + 0x18]
jne 0x100e7f09
cmp dword [ebx + 0x1c], 0x10
jb 0x100e7ef3
mov eax, dword [ebx + 8]
jmp 0x100e7ef6
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 0x100e7f16
cmp ebx, edi
je 0x100e80c5
mov ebx, dword [ebx + 4]
jmp 0x100e7ee0
add ebx, 0x20
lea ecx, [esi + 0x40]
call fcn.10015110
mov dword [0x10260738], ebx
mov dword [esi + 0xa8], 0xffffffff
mov edx, dword [esi + 0x88]
jmp 0x100e6cfb
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 0x100e7f4c
cmp dword [esi + 0x10], 0
je 0x100e7fa3
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 0x100e7f91
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 0x100e80dc
add ecx, ecx
mov edi, dword [eax + ecx*4]
mov eax, dword [esi + 0xc]
cmp eax, dword [ebx + 0x18]
jne 0x100e7fe7
cmp dword [ebx + 0x1c], 0x10
jb 0x100e7fd1
mov eax, dword [ebx + 8]
jmp 0x100e7fd4
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 0x100e7ff4
cmp ebx, edi
je 0x100e80dc
mov ebx, dword [ebx + 4]
jmp 0x100e7fbe
add ebx, 0x20
lea ecx, [esi + 0x40]
call fcn.10015110
mov dword [0x1025af4c], ebx
mov ecx, dword [esi + 0x18]
jmp 0x100e6d78
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.10015110
add esp, 0xc
pop ebp
ret