Function at 0x10110a80
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xffffffe0
sub esp, 0x140
mov esi, esp
mov dword [esi + 0x118], ebp
mov dword [esi + 0x11c], esp
mov dword [esi + 0x128], 0xffffffff
lea eax, [esi + 0x120]
mov dword [esi + 0x124], 0x101276b0
mov ecx, dword fs:[0]
mov dword [esi + 0x120], ecx
mov dword fs:[0], eax
mov ecx, dword [0x10258da0]
mov eax, dword [ecx]
call dword [eax + 0x68]
test al, al
je 0x10110c25
mov eax, dword [0x10258d94]
mov ecx, dword [eax]
mov eax, dword [0x10258ee8]
test al, 1
je 0x10111003
mov ebx, dword [0x10258ee4]
mov eax, dword [ebx + 4]
cmp dword [eax + ecx], 0
jle 0x10110b20
mov eax, dword [0x10258ef0]
test al, 1
je 0x1011134b
mov ebx, dword [0x10258eec]
mov eax, dword [ebx + 4]
cmp byte [eax + ecx], 0
je 0x10110c4b
mov byte [0x1025e8aa], 0
mov eax, dword [0x10258d94]
mov ecx, dword [eax]
mov eax, dword [0x10258ee8]
test al, 1
je 0x1011111b
mov ebx, dword [0x10258ee4]
mov eax, dword [ebx + 4]
cmp dword [eax + ecx], 0
jle 0x10110b6a
mov eax, dword [0x10258ef0]
test al, 1
je 0x10111463
mov ebx, dword [0x10258eec]
mov eax, dword [ebx + 4]
cmp byte [eax + ecx], 0
je 0x10110c9c
mov eax, dword [0x10258dc4]
cmp byte [eax + 0xad], 0
je 0x10110b7f
mov byte [eax + 0xad], 0
mov eax, dword [0x10258d94]
mov ecx, dword [eax]
mov eax, dword [0x10258ee8]
test al, 1
je 0x10111233
mov ebx, dword [0x10258ee4]
mov eax, dword [ebx + 4]
cmp dword [eax + ecx], 0
jle 0x10110bbe
mov eax, dword [0x10258ef0]
test al, 1
je 0x1011157b
mov ebx, dword [0x10258eec]
mov eax, dword [ebx + 4]
cmp byte [eax + ecx], 0
je 0x10110c2e
mov eax, dword [0x10258d54]
cmp byte [eax + 0x454], 0
je 0x10110c2e
cmp byte [0x1025e8ab], 1
jne 0x10110bf9
mov eax, dword [0x10258d94]
mov ecx, dword [eax]
mov eax, dword [0x1025ea18]
test al, 1
je 0x10111a4c
mov ebx, dword [0x1025ea14]
mov eax, dword [ebx + 4]
mov dword [eax + ecx], 5
mov eax, dword [0x10258d94]
mov ecx, dword [eax]
mov eax, dword [0x1025ea18]
test al, 1
je 0x10111693
mov ebx, dword [0x1025ea14]
mov eax, dword [ebx + 4]
cmp dword [eax + ecx], 4
jne 0x10110c35
mov byte [0x1025e8ab], 1
jmp 0x10110c35
mov byte [0x1025e8aa], 0
jmp 0x10110c35
mov byte [0x1025e8ab], 0
mov eax, dword [esi + 0x120]
mov dword fs:[0], eax
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret 4
mov ecx, dword [ebp + 8]
mov eax, dword [0x10258d64]
cmp byte [eax + 0x10], 0
je 0x10110f67
mov byte [0x1025e8aa], 1
mov eax, dword [0x10258d94]
mov edx, dword [eax]
mov eax, dword [0x1025e64c]
test al, 1
je 0x10111ee0
mov ebx, dword [0x1025e648]
mov eax, dword [ebx + 4]
movss xmm0, dword [eax + edx + 8]
addss xmm0, dword [0x101b0100]
movss dword [ecx + 0xc0], xmm0
jmp 0x10110b27
mov eax, dword [0x10258d54]
cmp byte [eax + 0x447], 0
je 0x10110b6a
mov ecx, dword [eax + 0x448]
mov eax, dword [eax + 0x44c]
mov dword [esi + 0x128], 0xffffffff
push eax
push ecx
call fcn.10087190
add esp, 8
test al, al
je 0x10110b6a
mov ecx, dword [0x10258da0]
mov dword [esi + 0x28], 0
xorps xmm0, xmm0
movlps qword [esi + 0x20], xmm0
mov eax, dword [ecx]
lea edx, [esi + 0x20]
push edx
call dword [eax + 0x48]
mov eax, dword [0x10258dc4]
mov byte [eax + 0xad], 1
mov ecx, dword [0x10258d54]
xorps xmm1, xmm1
cvtsi2ss xmm1, dword [ecx + 0x450]
movsd xmm0, qword [esi + 0x20]
movsd qword [eax + 0xb0], xmm0
movss dword [eax + 0xb8], xmm1
xorps xmm1, xmm1
cvtsi2ss xmm1, dword [ecx + 0x4b4]
divss xmm1, dword [0x101b0104]
addss xmm1, dword [0x101b0108]
addss xmm1, dword [0x101aea68]
movss dword [esi + 8], xmm1
mov eax, dword [0x10258d58]
movss xmm3, dword [eax + 0x198]
movss dword [esi + 0xc], xmm3
movss xmm1, dword [0x101af73c]
movaps xmm2, xmm0
mulss xmm2, xmm1
cvtss2sd xmm2, xmm2
movsd qword [esi + 0x100], xmm2
shufps xmm0, xmm0, 0x55
mulss xmm0, xmm1
cvtss2sd xmm0, xmm0
movsd qword [esi + 0x10], xmm0
subss xmm3, xmm3
movss dword [esi + 0x1c], xmm3
movsd xmm0, qword [eax + 0x190]
movaps xmmword [esi + 0x90], xmm0
sub esp, 8
movsd qword [esp], xmm2
call sub.api_ms_win_crt_math_l1_1_0.dll_sin
add esp, 8
fstp dword [esi + 0xf8]
sub esp, 8
movsd xmm0, qword [esi + 0x100]
movsd qword [esp], xmm0
call sub.api_ms_win_crt_math_l1_1_0.dll_cos
add esp, 8
fstp dword [esi + 0xf4]
sub esp, 8
movsd xmm0, qword [esi + 0x10]
movsd qword [esp], xmm0
call sub.api_ms_win_crt_math_l1_1_0.dll_sin
add esp, 8
fstp qword [esi + 0x110]
sub esp, 8
movsd xmm0, qword [esi + 0x10]
movsd qword [esp], xmm0
call sub.api_ms_win_crt_math_l1_1_0.dll_cos
add esp, 8
fstp qword [esi + 0x108]
movsd xmm0, qword [esi + 0x108]
movhpd xmm0, qword [esi + 0x110]
cvtpd2ps xmm0, xmm0
movss xmm1, dword [esi + 0xf4]
shufps xmm1, xmm1, 0
mulps xmm1, xmm0
xorps xmm0, xmm0
movaps xmmword [esi + 0xe0], xmm0
movaps xmmword [esi + 0xd0], xmm0
movaps xmmword [esi + 0xc0], xmm0
movaps xmmword [esi + 0xb0], xmm0
movaps xmmword [esi + 0xa0], xmm0
mov dword [esi + 0xf0], 0
mov dword [esi + 0xfc], vtable.supremacy::valve::trace_filter_world_only_t.0
movups xmmword [esi + 0x6c], xmm0
movups xmmword [esi + 0x5c], xmm0
movups xmmword [esi + 0x4c], xmm0
mov dword [esi + 0x7c], 0
mov eax, dword [0x10258dc4]
movss xmm0, dword [eax + 0xb8]
movaps xmm2, xmm0
shufps xmm2, xmm0, 0
mulps xmm2, xmm1
movaps xmm3, xmmword [esi + 0x90]
movaps xmm1, xmm3
subps xmm1, xmm3
mulss xmm0, dword [esi + 0xf8]
subps xmm1, xmm2
addss xmm0, dword [esi + 0x1c]
movlps qword [esi + 0x50], xmm1
movss dword [esi + 0x58], xmm0
movaps xmm2, xmm1
mulps xmm2, xmm1
shufps xmm2, xmm2, 0x55
mulss xmm1, xmm1
addss xmm1, xmm2
mulss xmm0, xmm0
addss xmm0, xmm1
xorps xmm1, xmm1
ucomiss xmm0, xmm1
setp al
setne cl
or cl, al
mov byte [esi + 0x85], cl
mov dword [esi + 0x80], 0
mov dword [esi + 0x64], 0
movsd qword [esi + 0x40], xmm3
movss xmm0, dword [esi + 0xc]
movss dword [esi + 0x48], xmm0
movss xmm0, dword [esi + 8]
movss dword [esi + 0x70], xmm0
movss dword [esi + 0x74], xmm0
movss dword [esi + 0x78], xmm0
mov byte [esi + 0x84], 0
mov ecx, dword [0x10258dbc]
mov eax, dword [ecx]
lea edx, [esi + 0xa0]
lea edi, [esi + 0xfc]
lea ebx, [esi + 0x40]
push edx
push edi
push 0x400b
push ebx
call dword [eax + 0x14]
movss xmm0, dword [esi + 0xcc]
mov eax, dword [0x10258dc4]
mulss xmm0, dword [eax + 0xb8]
movss dword [eax + 0xb8], xmm0
jmp 0x10110b7f
cmp byte [0x1025e8aa], 1
jne 0x10110b27
mov ecx, 0x13bc
add ecx, dword [0x10258d70]
mov eax, dword [0x10258d58]
mov edi, dword [eax + 0x1b8]
mov edx, 0x1b4e81b5
mov eax, edi
imul edx
mov eax, edx
shr eax, 0x1f
sar edx, 4
add edx, eax
imul eax, edx, 0x96
sub edi, eax
cmp edi, 0x96
jae 0x10112145
imul eax, edi, 0x854
movss xmm1, dword [ecx + eax + 0x794]
movss xmm0, dword [ecx + eax + 0x83c]
ucomiss xmm1, xmm0
jne 0x10110fd4
jnp 0x10110b20
ucomiss xmm0, dword [0x101a799c]
jbe 0x10110b20
mov eax, dword [0x10258d94]
mov edx, dword [eax]
mov eax, dword [0x1025e64c]
test al, 1
je 0x10112154
mov ebx, dword [0x1025e648]
mov ecx, dword [ebp + 8]
jmp 0x10110c7e
mov dword [esi + 0x1c], ecx
or eax, 1
mov dword [0x10258ee8], eax
mov eax, 0x90044af0
mov ecx, 0x981991c5
mov dword [esi + 0x44], ecx
mov dword [esi + 0x40], eax
mov eax, 0xef17b599
mov ecx, 0x12f14cbb
mov dword [esi + 0x4c], ecx
mov dword [esi + 0x48], eax
mov eax, 0xbbbf20d
mov ecx, 0x69d5a972
mov dword [esi + 0x54], ecx
mov dword [esi + 0x50], eax
mov eax, 0x141a283a
mov ecx, 0xd28d404b
mov edx, 0xe36508b3
mov edi, 0xf975c1a0
mov dword [esi + 0xa4], edi
mov dword [esi + 0xa0], edx
mov edx, 0xc265d0e0
mov edi, 0x7bae2185
mov dword [esi + 0xac], edi
mov dword [esi + 0xa8], edx
mov edx, 0x67da9745
mov edi, 0x69d5c106
mov dword [esi + 0xb4], edi
mov dword [esi + 0xb0], edx
mov dword [esi + 0x5c], ecx
mov dword [esi + 0x58], eax
mov dword [esi + 0xbc], ecx
mov dword [esi + 0xb8], eax
lea eax, [esi + 0xa0]
xor ecx, ecx
movaps xmm0, xmmword [esi + 0x40]
xorps xmm0, xmmword [eax]
movaps xmmword [esi + 0x40], xmm0
movaps xmm0, xmmword [esi + 0x50]
xorps xmm0, xmmword [eax + 0x10]
mov eax, dword [0x10258d5c]
mov dword [esi + 0x90], eax
movaps xmmword [esi + 0x50], xmm0
mov dword [esi + 0x128], 0
lea eax, [esi + 0x40]
lea ecx, [esi + 0x20]
mov dword [esi + 8], ecx
push eax
call fcn.10015240
mov eax, dword [esi + 0x30]
mov dword [esi + 0x10], eax
cmp dword [esi + 0x34], 0x10
jb 0x101110f1
mov eax, dword [esi + 0x20]
mov dword [esi + 8], eax
cmp dword [esi + 0x10], 0
je 0x101117b5
mov eax, dword [esi + 0x10]
mov ecx, eax
and ecx, 3
mov dword [esi + 0xc], ecx
cmp eax, 4
jae 0x101117d0
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x1011181a
mov dword [esi + 0x1c], ecx
or eax, 1
mov dword [0x10258ee8], eax
mov eax, 0x90044af0
mov ecx, 0x981991c5
mov dword [esi + 0x44], ecx
mov dword [esi + 0x40], eax
mov eax, 0xef17b599
mov ecx, 0x12f14cbb
mov dword [esi + 0x4c], ecx
mov dword [esi + 0x48], eax
mov eax, 0xbbbf20d
mov ecx, 0x69d5a972
mov dword [esi + 0x54], ecx
mov dword [esi + 0x50], eax
mov eax, 0x141a283a
mov ecx, 0xd28d404b
mov edx, 0xe36508b3
mov edi, 0xf975c1a0
mov dword [esi + 0xa4], edi
mov dword [esi + 0xa0], edx
mov edx, 0xc265d0e0
mov edi, 0x7bae2185
mov dword [esi + 0xac], edi
mov dword [esi + 0xa8], edx
mov edx, 0x67da9745
mov edi, 0x69d5c106
mov dword [esi + 0xb4], edi
mov dword [esi + 0xb0], edx
mov dword [esi + 0x5c], ecx
mov dword [esi + 0x58], eax
mov dword [esi + 0xbc], ecx
mov dword [esi + 0xb8], eax
lea eax, [esi + 0xa0]
xor ecx, ecx
movaps xmm0, xmmword [esi + 0x40]
xorps xmm0, xmmword [eax]
movaps xmmword [esi + 0x40], xmm0
movaps xmm0, xmmword [esi + 0x50]
xorps xmm0, xmmword [eax + 0x10]
mov eax, dword [0x10258d5c]
mov dword [esi + 0x90], eax
movaps xmmword [esi + 0x50], xmm0
mov dword [esi + 0x128], 8
lea eax, [esi + 0x40]
lea ecx, [esi + 0x20]
mov dword [esi + 8], ecx
push eax
call fcn.10015240
mov eax, dword [esi + 0x30]
mov dword [esi + 0x10], eax
cmp dword [esi + 0x34], 0x10
jb 0x10111209
mov eax, dword [esi + 0x20]
mov dword [esi + 8], eax
cmp dword [esi + 0x10], 0
je 0x101117bc
mov eax, dword [esi + 0x10]
mov ecx, eax
and ecx, 3
mov dword [esi + 0xc], ecx
cmp eax, 4
jae 0x101118a4
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x101118ee
mov dword [esi + 0x1c], ecx
or eax, 1
mov dword [0x10258ee8], eax
mov eax, 0x90044af0
mov ecx, 0x981991c5
mov dword [esi + 0x44], ecx
mov dword [esi + 0x40], eax
mov eax, 0xef17b599
mov ecx, 0x12f14cbb
mov dword [esi + 0x4c], ecx
mov dword [esi + 0x48], eax
mov eax, 0xbbbf20d
mov ecx, 0x69d5a972
mov dword [esi + 0x54], ecx
mov dword [esi + 0x50], eax
mov eax, 0x141a283a
mov ecx, 0xd28d404b
mov edx, 0xe36508b3
mov edi, 0xf975c1a0
mov dword [esi + 0xa4], edi
mov dword [esi + 0xa0], edx
mov edx, 0xc265d0e0
mov edi, 0x7bae2185
mov dword [esi + 0xac], edi
mov dword [esi + 0xa8], edx
mov edx, 0x67da9745
mov edi, 0x69d5c106
mov dword [esi + 0xb4], edi
mov dword [esi + 0xb0], edx
mov dword [esi + 0x5c], ecx
mov dword [esi + 0x58], eax
mov dword [esi + 0xbc], ecx
mov dword [esi + 0xb8], eax
lea eax, [esi + 0xa0]
xor ecx, ecx
movaps xmm0, xmmword [esi + 0x40]
xorps xmm0, xmmword [eax]
movaps xmmword [esi + 0x40], xmm0
movaps xmm0, xmmword [esi + 0x50]
xorps xmm0, xmmword [eax + 0x10]
mov eax, dword [0x10258d5c]
mov dword [esi + 0x90], eax
movaps xmmword [esi + 0x50], xmm0
mov dword [esi + 0x128], 0xc
lea eax, [esi + 0x40]
lea ecx, [esi + 0x20]
mov dword [esi + 8], ecx
push eax
call fcn.10015240
mov eax, dword [esi + 0x30]
mov dword [esi + 0x10], eax
cmp dword [esi + 0x34], 0x10
jb 0x10111321
mov eax, dword [esi + 0x20]
mov dword [esi + 8], eax
cmp dword [esi + 0x10], 0
je 0x101117c6
mov eax, dword [esi + 0x10]
mov ecx, eax
and ecx, 3
mov dword [esi + 0xc], ecx
cmp eax, 4
jae 0x10111978
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x101119c2
mov dword [esi + 0x1c], ecx
or eax, 1
mov dword [0x10258ef0], eax
mov eax, 0x90044af0
mov ecx, 0x981991c5
mov dword [esi + 0x44], ecx
mov dword [esi + 0x40], eax
mov eax, 0xef17b599
mov ecx, 0x17f14cbb
mov dword [esi + 0x4c], ecx
mov dword [esi + 0x48], eax
mov eax, 0x34bff12c
mov ecx, 0xca1a072
mov dword [esi + 0x54], ecx
mov dword [esi + 0x50], eax
mov eax, 0x141a283a
mov ecx, 0xd28d404b
mov edx, 0xe36508b3
mov edi, 0xf975c1a0
mov dword [esi + 0xa4], edi
mov dword [esi + 0xa0], edx
mov edx, 0xc265d0e0
mov edi, 0x7bae2185
mov dword [esi + 0xac], edi
mov dword [esi + 0xa8], edx
mov edx, 0x67da9745
mov edi, 0x69d5c106
mov dword [esi + 0xb4], edi
mov dword [esi + 0xb0], edx
mov dword [esi + 0x5c], ecx
mov dword [esi + 0x58], eax
mov dword [esi + 0xbc], ecx
mov dword [esi + 0xb8], eax
lea eax, [esi + 0xa0]
xor ecx, ecx
movaps xmm0, xmmword [esi + 0x40]
xorps xmm0, xmmword [eax]
movaps xmmword [esi + 0x40], xmm0
movaps xmm0, xmmword [esi + 0x50]
xorps xmm0, xmmword [eax + 0x10]
mov eax, dword [0x10258d5c]
mov dword [esi + 0x90], eax
movaps xmmword [esi + 0x50], xmm0
mov dword [esi + 0x128], 2
lea eax, [esi + 0x40]
lea ecx, [esi + 0x20]
mov dword [esi + 8], ecx
push eax
call fcn.10015240
mov eax, dword [esi + 0x30]
mov dword [esi + 0x10], eax
cmp dword [esi + 0x34], 0x10
jb 0x10111439
mov eax, dword [esi + 0x20]
mov dword [esi + 8], eax
cmp dword [esi + 0x10], 0
je 0x10111b6e
mov eax, dword [esi + 0x10]
mov ecx, eax
and ecx, 3
mov dword [esi + 0xc], ecx
cmp eax, 4
jae 0x10111b89
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x10111bd3
mov dword [esi + 0x1c], ecx
or eax, 1
mov dword [0x10258ef0], eax
mov eax, 0x90044af0
mov ecx, 0x981991c5
mov dword [esi + 0x44], ecx
mov dword [esi + 0x40], eax
mov eax, 0xef17b599
mov ecx, 0x17f14cbb
mov dword [esi + 0x4c], ecx
mov dword [esi + 0x48], eax
mov eax, 0x34bff12c
mov ecx, 0xca1a072
mov dword [esi + 0x54], ecx
mov dword [esi + 0x50], eax
mov eax, 0x141a283a
mov ecx, 0xd28d404b
mov edx, 0xe36508b3
mov edi, 0xf975c1a0
mov dword [esi + 0xa4], edi
mov dword [esi + 0xa0], edx
mov edx, 0xc265d0e0
mov edi, 0x7bae2185
mov dword [esi + 0xac], edi
mov dword [esi + 0xa8], edx
mov edx, 0x67da9745
mov edi, 0x69d5c106
mov dword [esi + 0xb4], edi
mov dword [esi + 0xb0], edx
mov dword [esi + 0x5c], ecx
mov dword [esi + 0x58], eax
mov dword [esi + 0xbc], ecx
mov dword [esi + 0xb8], eax
lea eax, [esi + 0xa0]
xor ecx, ecx
movaps xmm0, xmmword [esi + 0x40]
xorps xmm0, xmmword [eax]
movaps xmmword [esi + 0x40], xmm0
movaps xmm0, xmmword [esi + 0x50]
xorps xmm0, xmmword [eax + 0x10]
mov eax, dword [0x10258d5c]
mov dword [esi + 0x90], eax
movaps xmmword [esi + 0x50], xmm0
mov dword [esi + 0x128], 0xa
lea eax, [esi + 0x40]
lea ecx, [esi + 0x20]
mov dword [esi + 8], ecx
push eax
call fcn.10015240
mov eax, dword [esi + 0x30]
mov dword [esi + 0x10], eax
cmp dword [esi + 0x34], 0x10
jb 0x10111551
mov eax, dword [esi + 0x20]
mov dword [esi + 8], eax
cmp dword [esi + 0x10], 0
je 0x10111b75
mov eax, dword [esi + 0x10]
mov ecx, eax
and ecx, 3
mov dword [esi + 0xc], ecx
cmp eax, 4
jae 0x10111c5d
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x10111ca7
mov dword [esi + 0x1c], ecx
or eax, 1
mov dword [0x10258ef0], eax
mov eax, 0x90044af0
mov ecx, 0x981991c5
mov dword [esi + 0x44], ecx
mov dword [esi + 0x40], eax
mov eax, 0xef17b599
mov ecx, 0x17f14cbb
mov dword [esi + 0x4c], ecx
mov dword [esi + 0x48], eax
mov eax, 0x34bff12c
mov ecx, 0xca1a072
mov dword [esi + 0x54], ecx
mov dword [esi + 0x50], eax
mov eax, 0x141a283a
mov ecx, 0xd28d404b
mov edx, 0xe36508b3
mov edi, 0xf975c1a0
mov dword [esi + 0xa4], edi
mov dword [esi + 0xa0], edx
mov edx, 0xc265d0e0
mov edi, 0x7bae2185
mov dword [esi + 0xac], edi
mov dword [esi + 0xa8], edx
mov edx, 0x67da9745
mov edi, 0x69d5c106
mov dword [esi + 0xb4], edi
mov dword [esi + 0xb0], edx
mov dword [esi + 0x5c], ecx
mov dword [esi + 0x58], eax
mov dword [esi + 0xbc], ecx
mov dword [esi + 0xb8], eax
lea eax, [esi + 0xa0]
xor ecx, ecx
movaps xmm0, xmmword [esi + 0x40]
xorps xmm0, xmmword [eax]
movaps xmmword [esi + 0x40], xmm0
movaps xmm0, xmmword [esi + 0x50]
xorps xmm0, xmmword [eax + 0x10]
mov eax, dword [0x10258d5c]
mov dword [esi + 0x90], eax
movaps xmmword [esi + 0x50], xmm0
mov dword [esi + 0x128], 0xe
lea eax, [esi + 0x40]
lea ecx, [esi + 0x20]
mov dword [esi + 8], ecx
push eax
call fcn.10015240
mov eax, dword [esi + 0x30]
mov dword [esi + 0x10], eax
cmp dword [esi + 0x34], 0x10
jb 0x10111669
mov eax, dword [esi + 0x20]
mov dword [esi + 8], eax
cmp dword [esi + 0x10], 0
je 0x10111b7f
mov eax, dword [esi + 0x10]
mov ecx, eax
and ecx, 3
mov dword [esi + 0xc], ecx
cmp eax, 4
jae 0x10111d31
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x10111d7b
mov dword [esi + 0x90], ecx
or eax, 1
mov dword [0x1025ea18], eax
mov eax, dword [0x10258d5c]
mov dword [esi + 0x1c], eax
mov eax, 0x90044af0
mov ecx, 0x981991c5
mov dword [esi + 0x44], ecx
mov dword [esi + 0x40], eax
mov eax, 0xef17b599
mov ecx, 0x12f14cbb
mov dword [esi + 0x4c], ecx
mov dword [esi + 0x48], eax
mov eax, 0x2a9f50a
mov ecx, 0x1bb0b774
mov dword [esi + 0x54], ecx
mov dword [esi + 0x50], eax
mov ecx, 0x717e4777
mov eax, 0xd28d404b
mov edx, 0xd28d404b
mov dword [esi + 0x5c], edx
mov dword [esi + 0x58], ecx
mov ecx, 0xe36508b3
mov edx, 0xf975c1a0
mov dword [esi + 0xa4], edx
mov dword [esi + 0xa0], ecx
mov ecx, 0xc265d0e0
mov edx, 0x7bae2185
mov dword [esi + 0xac], edx
mov dword [esi + 0xa8], ecx
mov ecx, 0x67da9745
mov edx, 0x69d5c106
mov dword [esi + 0xb4], edx
mov dword [esi + 0xb0], ecx
mov ecx, 0x141a283a
mov dword [esi + 0xbc], eax
mov dword [esi + 0xb8], ecx
lea eax, [esi + 0xa0]
xor ecx, ecx
movaps xmm0, xmmword [esi + 0x40]
xorps xmm0, xmmword [eax]
movaps xmmword [esi + 0x40], xmm0
movaps xmm0, xmmword [esi + 0x50]
xorps xmm0, xmmword [eax + 0x10]
movaps xmmword [esi + 0x50], xmm0
mov dword [esi + 0x128], 0x12
lea eax, [esi + 0x40]
lea ecx, [esi + 0x20]
mov dword [esi + 8], ecx
push eax
call fcn.10015240
mov eax, dword [esi + 0x30]
mov dword [esi + 0x10], eax
cmp dword [esi + 0x34], 0x10
jb 0x1011178b
mov eax, dword [esi + 0x20]
mov dword [esi + 8], eax
cmp dword [esi + 0x10], 0
je 0x10111e05
mov eax, dword [esi + 0x10]
mov ecx, eax
and ecx, 3
mov dword [esi + 0xc], ecx
cmp eax, 4
jae 0x10111e0c
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x10111e56
mov ecx, 0x811c9dc5
jmp 0x10111837
mov ecx, 0x811c9dc5
jmp 0x1011190b
mov ecx, 0x811c9dc5
jmp 0x101119df
mov edi, dword [esi + 0x10]
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 0x101117e0
cmp dword [esi + 0xc], 0
je 0x10111837
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 + 0xc], edi
jne 0x10111825
mov edx, dword [esi + 0x90]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov ebx, dword [eax + ecx*8 + 4]
cmp ebx, dword [edx + 4]
je 0x101122f1
add ecx, ecx
mov edi, dword [eax + ecx*4]
mov eax, dword [esi + 0x10]
cmp eax, dword [ebx + 0x18]
jne 0x1011187e
cmp dword [ebx + 0x1c], 0x10
jb 0x10111868
mov eax, dword [ebx + 8]
jmp 0x1011186b
lea eax, [ebx + 8]
push dword [esi + 0x10]
push eax
push dword [esi + 8]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x1011188b
cmp ebx, edi
je 0x101122f1
mov ebx, dword [ebx + 4]
jmp 0x10111855
add ebx, 0x20
lea ecx, [esi + 0x20]
call fcn.10014f60
mov dword [0x10258ee4], ebx
mov ecx, dword [esi + 0x1c]
jmp 0x10110af7
mov edi, dword [esi + 0x10]
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 0x101118b4
cmp dword [esi + 0xc], 0
je 0x1011190b
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 + 0xc], edi
jne 0x101118f9
mov edx, dword [esi + 0x90]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov ebx, dword [eax + ecx*8 + 4]
cmp ebx, dword [edx + 4]
je 0x10112308
add ecx, ecx
mov edi, dword [eax + ecx*4]
mov eax, dword [esi + 0x10]
cmp eax, dword [ebx + 0x18]
jne 0x10111952
cmp dword [ebx + 0x1c], 0x10
jb 0x1011193c
mov eax, dword [ebx + 8]
jmp 0x1011193f
lea eax, [ebx + 8]
push dword [esi + 0x10]
push eax
push dword [esi + 8]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x1011195f
cmp ebx, edi
je 0x10112308
mov ebx, dword [ebx + 4]
jmp 0x10111929
add ebx, 0x20
lea ecx, [esi + 0x20]
call fcn.10014f60
mov dword [0x10258ee4], ebx
mov ecx, dword [esi + 0x1c]
jmp 0x10110b41
mov edi, dword [esi + 0x10]
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 0x10111988
cmp dword [esi + 0xc], 0
je 0x101119df
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 + 0xc], edi
jne 0x101119cd
mov edx, dword [esi + 0x90]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov ebx, dword [eax + ecx*8 + 4]
cmp ebx, dword [edx + 4]
je 0x1011231f
add ecx, ecx
mov edi, dword [eax + ecx*4]
mov eax, dword [esi + 0x10]
cmp eax, dword [ebx + 0x18]
jne 0x10111a26
cmp dword [ebx + 0x1c], 0x10
jb 0x10111a10
mov eax, dword [ebx + 8]
jmp 0x10111a13
lea eax, [ebx + 8]
push dword [esi + 0x10]
push eax
push dword [esi + 8]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x10111a33
cmp ebx, edi
je 0x1011231f
mov ebx, dword [ebx + 4]
jmp 0x101119fd
add ebx, 0x20
lea ecx, [esi + 0x20]
call fcn.10014f60
mov dword [0x10258ee4], ebx
mov ecx, dword [esi + 0x1c]
jmp 0x10110b99
mov dword [esi + 0x90], ecx
or eax, 1
mov dword [0x1025ea18], eax
mov eax, dword [0x10258d5c]
mov dword [esi + 0x1c], eax
mov eax, 0x90044af0
mov ecx, 0x981991c5
mov dword [esi + 0x44], ecx
mov dword [esi + 0x40], eax
mov eax, 0xef17b599
mov ecx, 0x12f14cbb
mov dword [esi + 0x4c], ecx
mov dword [esi + 0x48], eax
mov eax, 0x2a9f50a
mov ecx, 0x1bb0b774
mov dword [esi + 0x54], ecx
mov dword [esi + 0x50], eax
mov ecx, 0x717e4777
mov eax, 0xd28d404b
mov edx, 0xd28d404b
mov dword [esi + 0x5c], edx
mov dword [esi + 0x58], ecx
mov ecx, 0xe36508b3
mov edx, 0xf975c1a0
mov dword [esi + 0xa4], edx
mov dword [esi + 0xa0], ecx
mov ecx, 0xc265d0e0
mov edx, 0x7bae2185
mov dword [esi + 0xac], edx
mov dword [esi + 0xa8], ecx
mov ecx, 0x67da9745
mov edx, 0x69d5c106
mov dword [esi + 0xb4], edx
mov dword [esi + 0xb0], ecx
mov ecx, 0x141a283a
mov dword [esi + 0xbc], eax
mov dword [esi + 0xb8], ecx
lea eax, [esi + 0xa0]
xor ecx, ecx
movaps xmm0, xmmword [esi + 0x40]
xorps xmm0, xmmword [eax]
movaps xmmword [esi + 0x40], xmm0
movaps xmm0, xmmword [esi + 0x50]
xorps xmm0, xmmword [eax + 0x10]
movaps xmmword [esi + 0x50], xmm0
mov dword [esi + 0x128], 0x10
lea eax, [esi + 0x40]
lea ecx, [esi + 0x20]
mov dword [esi + 8], ecx
push eax
call fcn.10015240
mov eax, dword [esi + 0x30]
mov dword [esi + 0x10], eax
cmp dword [esi + 0x34], 0x10
jb 0x10111b44
mov eax, dword [esi + 0x20]
mov dword [esi + 8], eax
cmp dword [esi + 0x10], 0
je 0x10111fa7
mov eax, dword [esi + 0x10]
mov ecx, eax
and ecx, 3
mov dword [esi + 0xc], ecx
cmp eax, 4
jae 0x10111fae
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x10111ff8
mov ecx, 0x811c9dc5
jmp 0x10111bf0
mov ecx, 0x811c9dc5
jmp 0x10111cc4
mov ecx, 0x811c9dc5
jmp 0x10111d98
mov edi, dword [esi + 0x10]
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 0x10111b99
cmp dword [esi + 0xc], 0
je 0x10111bf0
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 + 0xc], edi
jne 0x10111bde
mov edx, dword [esi + 0x90]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov ebx, dword [eax + ecx*8 + 4]
cmp ebx, dword [edx + 4]
je 0x10112336
add ecx, ecx
mov edi, dword [eax + ecx*4]
mov eax, dword [esi + 0x10]
cmp eax, dword [ebx + 0x18]
jne 0x10111c37
cmp dword [ebx + 0x1c], 0x10
jb 0x10111c21
mov eax, dword [ebx + 8]
jmp 0x10111c24
lea eax, [ebx + 8]
push dword [esi + 0x10]
push eax
push dword [esi + 8]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x10111c44
cmp ebx, edi
je 0x10112336
mov ebx, dword [ebx + 4]
jmp 0x10111c0e
add ebx, 0x20
lea ecx, [esi + 0x20]
call fcn.10014f60
mov dword [0x10258eec], ebx
mov ecx, dword [esi + 0x1c]
jmp 0x10110b13
mov edi, dword [esi + 0x10]
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 0x10111c6d
cmp dword [esi + 0xc], 0
je 0x10111cc4
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 + 0xc], edi
jne 0x10111cb2
mov edx, dword [esi + 0x90]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov ebx, dword [eax + ecx*8 + 4]
cmp ebx, dword [edx + 4]
je 0x1011234d
add ecx, ecx
mov edi, dword [eax + ecx*4]
mov eax, dword [esi + 0x10]
cmp eax, dword [ebx + 0x18]
jne 0x10111d0b
cmp dword [ebx + 0x1c], 0x10
jb 0x10111cf5
mov eax, dword [ebx + 8]
jmp 0x10111cf8
lea eax, [ebx + 8]
push dword [esi + 0x10]
push eax
push dword [esi + 8]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x10111d18
cmp ebx, edi
je 0x1011234d
mov ebx, dword [ebx + 4]
jmp 0x10111ce2
add ebx, 0x20
lea ecx, [esi + 0x20]
call fcn.10014f60
mov dword [0x10258eec], ebx
mov ecx, dword [esi + 0x1c]
jmp 0x10110b5d
mov edi, dword [esi + 0x10]
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 0x10111d41
cmp dword [esi + 0xc], 0
je 0x10111d98
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 + 0xc], edi
jne 0x10111d86
mov edx, dword [esi + 0x90]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov ebx, dword [eax + ecx*8 + 4]
cmp ebx, dword [edx + 4]
je 0x10112364
add ecx, ecx
mov edi, dword [eax + ecx*4]
mov eax, dword [esi + 0x10]
cmp eax, dword [ebx + 0x18]
jne 0x10111ddf
cmp dword [ebx + 0x1c], 0x10
jb 0x10111dc9
mov eax, dword [ebx + 8]
jmp 0x10111dcc
lea eax, [ebx + 8]
push dword [esi + 0x10]
push eax
push dword [esi + 8]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x10111dec
cmp ebx, edi
je 0x10112364
mov ebx, dword [ebx + 4]
jmp 0x10111db6
add ebx, 0x20
lea ecx, [esi + 0x20]
call fcn.10014f60
mov dword [0x10258eec], ebx
mov ecx, dword [esi + 0x1c]
jmp 0x10110bb5
mov ecx, 0x811c9dc5
jmp 0x10111e73
mov edi, dword [esi + 0x10]
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 0x10111e1c
cmp dword [esi + 0xc], 0
je 0x10111e73
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 + 0xc], edi
jne 0x10111e61
mov edx, dword [esi + 0x1c]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov ebx, dword [eax + ecx*8 + 4]
cmp ebx, dword [edx + 4]
je 0x1011237b
add ecx, ecx
mov edi, dword [eax + ecx*4]
mov eax, dword [esi + 0x10]
cmp eax, dword [ebx + 0x18]
jne 0x10111eb7
cmp dword [ebx + 0x1c], 0x10
jb 0x10111ea1
mov eax, dword [ebx + 8]
jmp 0x10111ea4
lea eax, [ebx + 8]
push dword [esi + 0x10]
push eax
push dword [esi + 8]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x10111ec4
cmp ebx, edi
je 0x1011237b
mov ebx, dword [ebx + 4]
jmp 0x10111e8e
add ebx, 0x20
lea ecx, [esi + 0x20]
call fcn.10014f60
mov dword [0x1025ea14], ebx
mov ecx, dword [esi + 0x90]
jmp 0x10110c13
mov dword [esi + 0x90], edx
or eax, 1
mov dword [0x1025e64c], eax
mov eax, dword [0x10258d5c]
mov dword [esi + 0x1c], eax
mov eax, 0x861357de
mov ecx, 0x8a1780c3
mov dword [esi + 0x24], ecx
mov dword [esi + 0x20], eax
mov eax, 0xa50ca2af
mov ecx, 0x7bae4fec
mov dword [esi + 0x2c], ecx
mov dword [esi + 0x28], eax
mov eax, 0xe36508b3
mov ecx, 0xf975c1a0
mov dword [esi + 0x44], ecx
mov dword [esi + 0x40], eax
mov eax, 0xc265d0e0
mov ecx, 0x7bae2185
mov dword [esi + 0x4c], ecx
mov dword [esi + 0x48], eax
lea eax, [esi + 0x40]
xor ecx, ecx
movaps xmm0, xmmword [esi + 0x20]
xorps xmm0, xmmword [eax]
movaps xmmword [esi + 0x20], xmm0
mov dword [esi + 0x128], 4
lea eax, [esi + 0x20]
lea ecx, [esi + 0xa0]
mov dword [esi + 8], ecx
push eax
call fcn.10015240
mov eax, dword [esi + 0xb0]
mov dword [esi + 0x10], eax
cmp dword [esi + 0xb4], 0x10
jb 0x10111f7d
mov eax, dword [esi + 0xa0]
mov dword [esi + 8], eax
cmp dword [esi + 0x10], 0
je 0x10112082
mov eax, dword [esi + 0x10]
mov ecx, eax
and ecx, 3
mov dword [esi + 0xc], ecx
cmp eax, 4
jae 0x10112089
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x101120d3
mov ecx, 0x811c9dc5
jmp 0x10112015
mov edi, dword [esi + 0x10]
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 0x10111fbe
cmp dword [esi + 0xc], 0
je 0x10112015
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 + 0xc], edi
jne 0x10112003
mov edx, dword [esi + 0x1c]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov ebx, dword [eax + ecx*8 + 4]
cmp ebx, dword [edx + 4]
je 0x10112392
add ecx, ecx
mov edi, dword [eax + ecx*4]
mov eax, dword [esi + 0x10]
cmp eax, dword [ebx + 0x18]
jne 0x10112059
cmp dword [ebx + 0x1c], 0x10
jb 0x10112043
mov eax, dword [ebx + 8]
jmp 0x10112046
lea eax, [ebx + 8]
push dword [esi + 0x10]
push eax
push dword [esi + 8]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x10112066
cmp ebx, edi
je 0x10112392
mov ebx, dword [ebx + 4]
jmp 0x10112030
add ebx, 0x20
lea ecx, [esi + 0x20]
call fcn.10014f60
mov dword [0x1025ea14], ebx
mov ecx, dword [esi + 0x90]
jmp 0x10110bef
mov ecx, 0x811c9dc5
jmp 0x101120f0
mov edi, dword [esi + 0x10]
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 0x10112099
cmp dword [esi + 0xc], 0
je 0x101120f0
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 + 0xc], edi
jne 0x101120de
mov edx, dword [esi + 0x1c]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov ebx, dword [eax + ecx*8 + 4]
cmp ebx, dword [edx + 4]
je 0x101123a9
add ecx, ecx
mov edi, dword [eax + ecx*4]
mov eax, dword [esi + 0x10]
cmp eax, dword [ebx + 0x18]
jne 0x10112138
cmp dword [ebx + 0x1c], 0x10
jb 0x1011211e
mov eax, dword [ebx + 8]
jmp 0x10112121
lea eax, [ebx + 8]
push dword [esi + 0x10]
push eax
push dword [esi + 8]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x101122cf
cmp ebx, edi
je 0x101123a9
mov ebx, dword [ebx + 4]
jmp 0x1011210b
mov dword [esi + 0x128], 0xffffffff
call fcn.1009f400
mov dword [esi + 0x90], edx
or eax, 1
mov dword [0x1025e64c], eax
mov eax, dword [0x10258d5c]
mov dword [esi + 0x1c], eax
mov eax, 0x861357de
mov ecx, 0x8a1780c3
mov dword [esi + 0x24], ecx
mov dword [esi + 0x20], eax
mov eax, 0xa50ca2af
mov ecx, 0x7bae4fec
mov dword [esi + 0x2c], ecx
mov dword [esi + 0x28], eax
mov eax, 0xe36508b3
mov ecx, 0xf975c1a0
mov dword [esi + 0x44], ecx
mov dword [esi + 0x40], eax
mov eax, 0xc265d0e0
mov ecx, 0x7bae2185
mov dword [esi + 0x4c], ecx
mov dword [esi + 0x48], eax
lea eax, [esi + 0x40]
xor ecx, ecx
movaps xmm0, xmmword [esi + 0x20]
xorps xmm0, xmmword [eax]
movaps xmmword [esi + 0x20], xmm0
mov dword [esi + 0x128], 6
lea eax, [esi + 0x20]
lea ecx, [esi + 0xa0]
mov dword [esi + 8], ecx
push eax
call fcn.10015240
mov eax, dword [esi + 0xb0]
mov dword [esi + 0x10], eax
cmp dword [esi + 0xb4], 0x10
jb 0x101121f1
mov eax, dword [esi + 0xa0]
mov dword [esi + 8], eax
cmp dword [esi + 0x10], 0
je 0x10112210
mov eax, dword [esi + 0x10]
mov ecx, eax
and ecx, 3
mov dword [esi + 0xc], ecx
cmp eax, 4
jae 0x10112217
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x10112261
mov ecx, 0x811c9dc5
jmp 0x1011227e
mov edi, dword [esi + 0x10]
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 0x10112227
cmp dword [esi + 0xc], 0
je 0x1011227e
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 + 0xc], edi
jne 0x1011226c
mov edx, dword [esi + 0x1c]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov ebx, dword [eax + ecx*8 + 4]
cmp ebx, dword [edx + 4]
je 0x101123c0
add ecx, ecx
mov edi, dword [eax + ecx*4]
mov eax, dword [esi + 0x10]
cmp eax, dword [ebx + 0x18]
jne 0x101122c2
cmp dword [ebx + 0x1c], 0x10
jb 0x101122ac
mov eax, dword [ebx + 8]
jmp 0x101122af
lea eax, [ebx + 8]
push dword [esi + 0x10]
push eax
push dword [esi + 8]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x101122cf
cmp ebx, edi
je 0x101123c0
mov ebx, dword [ebx + 4]
jmp 0x10112299
add ebx, 0x20
lea ecx, [esi + 0xa0]
call fcn.10014f60
mov dword [0x1025e648], ebx
mov ecx, dword [ebp + 8]
mov edx, dword [esi + 0x90]
jmp 0x10110c7e
mov dword [esi + 0x128], 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 + 0x128], 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 + 0x128], 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 + 0x128], 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 + 0x128], 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 + 0x128], 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 + 0x128], 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 + 0x128], 0x11
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 + 0x128], 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 + 0x128], 7
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 [eax + eax]
push ebp
sub esp, 0x10
lea esi, [ebp - 0x12c]
mov ebp, dword [esi + 0x118]
lea ecx, [esi + 0x20]
call fcn.10014f60
add esp, 0x10
pop ebp
ret