Function at 0x100a9b00
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, 0x800
mov esi, esp
mov dword [esi + 0x7d8], ebp
mov dword [esi + 0xf0], ecx
mov edx, dword [ebp + 8]
mov dword [esi + 0x7dc], esp
mov dword [esi + 0x7e8], 0xffffffff
lea eax, [esi + 0x7e0]
mov dword [esi + 0x7e4], 0x100b5d00
mov ecx, dword fs:[0]
mov dword [esi + 0x7e0], ecx
mov dword fs:[0], eax
mov edi, dword [edx]
mov eax, dword [0x1025f694]
test al, 1
je 0x100aacbe
mov ebx, dword [0x1025f690]
mov eax, dword [ebx + 4]
lea ecx, [esi + 0x140]
push 0x344
push dword [edi + eax - 0x14]
push ecx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
lea eax, [esi + 0x484]
push 0x2d8
push dword [edi + 0x2980]
push eax
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov eax, dword [0x1025f6a4]
test al, 1
je 0x100aadfa
mov ebx, dword [0x1025f6a0]
mov ecx, dword [ebp + 0x10]
mov edx, dword [ebp + 0xc]
mov eax, dword [ebx + 4]
movups xmm0, xmmword [eax + edi + 0x50]
movups xmmword [esi + 0x7ac], xmm0
movups xmm0, xmmword [eax + edi + 0x40]
movups xmmword [esi + 0x79c], xmm0
movups xmm0, xmmword [eax + edi + 0x30]
movups xmmword [esi + 0x78c], xmm0
movups xmm0, xmmword [eax + edi + 0x20]
movups xmmword [esi + 0x77c], xmm0
movups xmm0, xmmword [eax + edi]
movups xmm1, xmmword [eax + edi + 0x10]
movups xmmword [esi + 0x76c], xmm1
movups xmmword [esi + 0x75c], xmm0
test ecx, ecx
je 0x100a9cbd
movss xmm0, dword [edx + 0x74]
subss xmm0, dword [ecx + 0x74]
movss xmm1, dword [edx + 0x6c]
movss xmm2, dword [edx + 0x70]
subss xmm2, dword [ecx + 0x70]
subss xmm1, dword [ecx + 0x6c]
mulss xmm2, xmm2
mulss xmm1, xmm1
addss xmm1, xmm2
mulss xmm0, xmm0
addss xmm0, xmm1
ucomiss xmm0, dword [0x101b0a00]
mov edi, dword [ebp + 8]
jbe 0x100a9c4a
mov byte [edx + 2], 1
mov eax, dword [ebp + 0x10]
movss xmm1, dword [eax + 0x320]
movss xmm0, dword [edx + 0x320]
ucomiss xmm1, xmm0
jne 0x100a9cc4
jp 0x100a9cc4
mov eax, dword [eax + 0x10]
cmp eax, dword [edx + 0x10]
jne 0x100a9cc4
xorps xmm1, xmm1
ucomiss xmm0, xmm1
jbe 0x100a9cc4
movss xmm1, dword [edx + 0x324]
mov eax, dword [ebp + 0x10]
movss xmm2, dword [eax + 0x324]
ucomiss xmm1, xmm2
jbe 0x100a9cc4
mov eax, dword [edx + 0x14]
subss xmm1, xmm2
divss xmm1, xmm0
mov ecx, dword [0x10259d9c]
divss xmm1, dword [ecx + 0x20]
addss xmm1, dword [0x101a72c0]
inc eax
cvttss2si ecx, xmm1
cmp eax, ecx
jge 0x100a9cc4
cmp ecx, 0x13
jg 0x100a9cc4
mov dword [edx + 0x14], ecx
jmp 0x100a9cc4
mov byte [edx + 2], 1
mov edi, dword [ebp + 8]
mov eax, dword [edx + 0x14]
lea ecx, [eax - 0x12]
cmp ecx, 0xffffffee
ja 0x100a9cdb
mov dword [edx + 0x14], 1
mov eax, 1
test byte [edx + 0xd], 2
je 0x100a9ced
mov dword [edx + 0x14], 1
mov eax, 1
cvtsi2ss xmm3, eax
mov eax, dword [0x10259d9c]
mulss xmm3, dword [eax + 0x20]
mov ecx, dword [edx + 0x10]
test ecx, ecx
je 0x100a9de0
mov eax, dword [ebp + 0xc]
movss xmm0, dword [eax + 0x30]
movss xmm1, dword [eax + 0x44]
ucomiss xmm0, xmm1
movaps xmmword [esi + 0x20], xmm3
jb 0x100a9d7c
subss xmm0, xmm3
ucomiss xmm1, xmm0
jbe 0x100a9d7c
mov eax, dword [ecx]
mov eax, dword [eax + 0x730]
mov dword [esi + 0x7e8], 0xffffffff
call eax
movaps xmm3, xmmword [esi + 0x20]
test eax, eax
je 0x100a9d7c
mov eax, dword [eax + 0xcc]
add eax, 0xfffffffe
cmp eax, 6
jb 0x100a9d75
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax + 0x10]
mov eax, dword [0x10259ed0]
test al, 1
je 0x100ab9e5
mov ebx, dword [0x10259ecc]
mov eax, dword [ebx + 4]
cmp word [eax + ecx], 0x1f
mov edi, dword [ebp + 8]
jne 0x100a9d7c
mov eax, dword [ebp + 0xc]
mov byte [eax + 3], 1
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax + 0x10]
test ecx, ecx
je 0x100a9de0
mov eax, dword [ecx]
mov eax, dword [eax + 0x730]
mov dword [esi + 0x7e8], 0xffffffff
call eax
movaps xmm3, xmmword [esi + 0x20]
test eax, eax
je 0x100a9de0
cmp dword [eax + 0xc8], 9
jne 0x100a9de0
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax + 0x10]
mov eax, dword [0x10259f08]
test al, 1
je 0x100ab8ba
mov ebx, dword [0x10259f04]
mov eax, dword [ebx + 4]
movss xmm0, dword [eax + ecx]
xorps xmm1, xmm1
ucomiss xmm0, xmm1
mov edi, dword [ebp + 8]
jne 0x100a9dd9
jnp 0x100a9de0
mov eax, dword [ebp + 0xc]
mov byte [eax + 4], 1
cmp dword [ebp + 0x10], 0
je 0x100a9e2b
xorps xmm0, xmm0
ucomiss xmm3, xmm0
jbe 0x100a9e2b
movss xmm0, dword [0x101a7280]
ucomiss xmm0, xmm3
jbe 0x100a9e2b
mov eax, dword [ebp + 0xc]
movss xmm0, dword [eax + 0x74]
mov ecx, dword [ebp + 0x10]
subss xmm0, dword [ecx + 0x74]
divss xmm0, xmm3
movsd xmm1, qword [eax + 0x6c]
movsd xmm2, qword [ecx + 0x6c]
subps xmm1, xmm2
unpcklps xmm3, xmm3
divps xmm1, xmm3
movlps qword [eax + 0x60], xmm1
movss dword [eax + 0x68], xmm0
mov eax, dword [ebp + 0xc]
test byte [eax + 0xc], 1
je 0x100a9e7b
cmp dword [ebp + 0x10], 0
je 0x100a9e43
mov eax, dword [ebp + 0x10]
test byte [eax + 0xc], 1
je 0x100a9e7b
mov eax, dword [ebp + 0xc]
movss xmm0, dword [eax + 0x208]
xorps xmm1, xmm1
ucomiss xmm0, xmm1
jne 0x100a9e66
jp 0x100a9e66
xorps xmm0, xmm0
movlps qword [eax + 0x60], xmm0
mov dword [eax + 0x68], 0
cmp dword [ebp + 0x10], 0
je 0x100a9e7b
mov ecx, dword [eax + 0x10]
mov eax, dword [ebp + 0x10]
cmp ecx, dword [eax + 0x10]
je 0x100aab54
mov ecx, dword [edi]
mov eax, dword [ebp + 0xc]
add eax, 0x6c
mov edx, dword [0x10259d58]
mov edx, dword [edx + 0x18]
mov dword [esi + 0x7e8], 0xffffffff
push eax
call edx
mov edx, dword [edi]
mov eax, dword [0x1025f674]
test al, 1
je 0x100aaf25
mov ebx, dword [0x1025f670]
mov ecx, dword [ebx + 4]
mov edi, dword [ecx + edx]
mov edx, dword [0x10259d94]
mov edx, dword [edx]
test al, 1
je 0x100ab046
cmp edi, dword [ecx + edx]
mov ebx, dword [ebp + 8]
jne 0x100a9ef0
mov eax, dword [0x10259d58]
mov ecx, dword [eax + 0x154]
mov eax, dword [ecx]
mov eax, dword [eax + 0x34]
mov dword [esi + 0x7e8], 0xffffffff
call eax
test eax, eax
je 0x100aa408
mov eax, 1
cmp eax, 5
jae 0x100aa3e9
nop
mov dword [esi + 0x7e8], 0xffffffff
mov ecx, dword [esi + 0xf0]
mov dword [esi + 0x10], eax
push eax
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push ebx
call fcn.100a07c0
mov eax, dword [ebx]
mov dword [esi + 0x20], eax
mov eax, dword [0x1025f694]
test al, 1
je 0x100a9fd8
mov edi, dword [0x1025f690]
mov eax, dword [edi + 4]
push 0x344
lea ecx, [esi + 0x140]
push ecx
mov edi, dword [esi + 0x20]
push dword [edi + eax - 0x14]
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
push 0x2d8
lea eax, [esi + 0x484]
push eax
push dword [edi + 0x2980]
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov eax, dword [0x1025f6a4]
test al, 1
je 0x100aa0fa
mov edi, dword [0x1025f6a0]
mov eax, dword [edi + 4]
lea ecx, [esi + 0x75c]
movups xmm0, xmmword [ecx + 0x50]
mov edx, dword [esi + 0x20]
movups xmmword [eax + edx + 0x50], xmm0
movups xmm0, xmmword [ecx + 0x40]
movups xmmword [eax + edx + 0x40], xmm0
movups xmm0, xmmword [ecx + 0x30]
movups xmmword [eax + edx + 0x30], xmm0
movups xmm0, xmmword [ecx + 0x20]
movups xmmword [eax + edx + 0x20], xmm0
movups xmm0, xmmword [ecx]
movups xmm1, xmmword [ecx + 0x10]
movups xmmword [eax + edx + 0x10], xmm1
movups xmmword [eax + edx], xmm0
mov eax, dword [esi + 0x10]
inc eax
cmp eax, 5
jb 0x100a9f00
jmp 0x100aa3e9
or eax, 1
mov dword [0x1025f694], eax
mov eax, 0x5d7c3cf8
mov ecx, 0x5372251e
mov dword [esi + 0x44], ecx
mov dword [esi + 0x40], eax
mov eax, 0x72432c1e
mov ecx, 0xfc7d5a40
mov dword [esi + 0x4c], ecx
mov dword [esi + 0x48], eax
mov eax, 0x69b4731e
mov ecx, 0x9bcdd441
mov dword [esi + 0x54], ecx
mov dword [esi + 0x50], eax
mov eax, 0x2817e16e
mov ecx, 0xa51aeae1
mov edx, 0xd2f7fbb
mov edi, 0x360b4472
mov dword [esi + 0xa4], edi
mov dword [esi + 0xa0], edx
mov edx, 0x1f7d016c
mov edi, 0x8f34381f
mov dword [esi + 0xac], edi
mov dword [esi + 0xa8], edx
mov edx, 0x19db104d
mov edi, 0x9bcdb024
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 [0x10259d5c]
mov dword [esi + 0xc], eax
movaps xmmword [esi + 0x50], xmm0
mov dword [esi + 0x7e8], 0xc
lea ecx, [esi + 0x80]
lea eax, [esi + 0x40]
push eax
call fcn.10015240
cmp dword [esi + 0x94], 0x10
lea eax, [esi + 0x80]
mov dword [esi + 8], eax
jb 0x100aa0c9
mov eax, dword [esi + 0x80]
mov dword [esi + 8], eax
mov eax, dword [esi + 0x90]
mov dword [esi + 4], eax
test eax, eax
je 0x100aa222
mov eax, dword [esi + 4]
mov ecx, eax
and ecx, 3
mov dword [esi + 0x3c], ecx
cmp eax, 4
jae 0x100aa233
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100aa27d
or eax, 1
mov dword [0x1025f6a4], eax
mov eax, dword [0x10259d5c]
mov dword [esi + 0xc], eax
mov eax, 0x5d7c3cf8
mov ecx, 0x5372251e
mov dword [esi + 0x44], ecx
mov dword [esi + 0x40], eax
mov eax, 0x72432c1e
mov ecx, 0xdf585e40
mov dword [esi + 0x4c], ecx
mov dword [esi + 0x48], eax
mov eax, 0x49be6322
mov ecx, 0xf6acc245
mov dword [esi + 0x54], ecx
mov dword [esi + 0x50], eax
mov eax, 0x5a72950b
mov ecx, 0xa51aeae1
mov dword [esi + 0x5c], ecx
mov dword [esi + 0x58], eax
mov eax, 0xd2f7fbb
mov ecx, 0x360b4472
mov dword [esi + 0xa4], ecx
mov dword [esi + 0xa0], eax
mov eax, 0x1f7d016c
mov ecx, 0x8f34381f
mov dword [esi + 0xac], ecx
mov dword [esi + 0xa8], eax
mov eax, 0x19db104d
mov ecx, 0x9bcdb024
mov dword [esi + 0xb4], ecx
mov dword [esi + 0xb0], eax
mov eax, 0x2817e16e
mov ecx, 0xa51aeae1
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]
movaps xmmword [esi + 0x50], xmm0
mov dword [esi + 0x7e8], 0xe
lea ecx, [esi + 0x80]
lea eax, [esi + 0x40]
push eax
call fcn.10015240
cmp dword [esi + 0x94], 0x10
lea eax, [esi + 0x80]
mov dword [esi + 8], eax
jb 0x100aa1f5
mov eax, dword [esi + 0x80]
mov dword [esi + 8], eax
mov eax, dword [esi + 0x90]
mov dword [esi + 4], eax
test eax, eax
je 0x100aa229
mov eax, dword [esi + 4]
mov ecx, eax
and ecx, 3
mov dword [esi + 0x3c], ecx
cmp eax, 4
jae 0x100aa30e
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100aa358
mov ecx, 0x811c9dc5
jmp 0x100aa29a
mov ecx, 0x811c9dc5
jmp 0x100aa375
mov edi, dword [esi + 4]
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 0x100aa243
mov eax, dword [esi + 0x3c]
test eax, eax
je 0x100aa29a
add edx, dword [esi + 8]
xor edi, edi
movzx ebx, byte [edx + edi]
xor ebx, ecx
imul ecx, ebx, 0x1000193
inc edi
cmp eax, edi
jne 0x100aa289
mov edx, dword [esi + 0xc]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov edi, dword [eax + ecx*8 + 4]
cmp edi, dword [edx + 4]
mov edx, dword [esi + 4]
je 0x100abd4f
add ecx, ecx
mov ebx, dword [eax + ecx*4]
cmp edx, dword [edi + 0x18]
jne 0x100aa2e0
cmp dword [edi + 0x1c], 0x10
jb 0x100aa2c8
mov eax, dword [edi + 8]
jmp 0x100aa2cb
lea eax, [edi + 8]
mov ecx, dword [esi + 8]
push edx
push eax
push ecx
call sub.VCRUNTIME140.dll_memcmp
mov edx, dword [esi + 4]
add esp, 0xc
test eax, eax
je 0x100aa2f2
cmp edi, ebx
je 0x100abd4f
mov edi, dword [edi + 4]
cmp edx, dword [edi + 0x18]
je 0x100aa2bd
jmp 0x100aa2e0
add edi, 0x20
lea ecx, [esi + 0x80]
call fcn.10014f60
mov dword [0x1025f690], edi
mov ebx, dword [ebp + 8]
jmp 0x100a9f3b
mov edi, dword [esi + 4]
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 0x100aa31e
mov eax, dword [esi + 0x3c]
test eax, eax
je 0x100aa375
add edx, dword [esi + 8]
xor edi, edi
movzx ebx, byte [edx + edi]
xor ebx, ecx
imul ecx, ebx, 0x1000193
inc edi
cmp eax, edi
jne 0x100aa364
mov edx, dword [esi + 0xc]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov edi, dword [eax + ecx*8 + 4]
cmp edi, dword [edx + 4]
mov edx, dword [esi + 4]
je 0x100abd38
add ecx, ecx
mov ebx, dword [eax + ecx*4]
cmp edx, dword [edi + 0x18]
jne 0x100aa3bb
cmp dword [edi + 0x1c], 0x10
jb 0x100aa3a3
mov eax, dword [edi + 8]
jmp 0x100aa3a6
lea eax, [edi + 8]
mov ecx, dword [esi + 8]
push edx
push eax
push ecx
call sub.VCRUNTIME140.dll_memcmp
mov edx, dword [esi + 4]
add esp, 0xc
test eax, eax
je 0x100aa3cd
cmp edi, ebx
je 0x100abd38
mov edi, dword [edi + 4]
cmp edx, dword [edi + 0x18]
je 0x100aa398
jmp 0x100aa3bb
add edi, 0x20
lea ecx, [esi + 0x80]
call fcn.10014f60
mov dword [0x1025f6a0], edi
mov ebx, dword [ebp + 8]
jmp 0x100a9f86
mov eax, dword [0x10259d54]
cmp byte [eax + 0xe4], 0
je 0x100aa408
mov eax, dword [ebp + 0xc]
mov byte [eax + 1], 1
mov dword [esi + 0x7e8], 0xffffffff
mov dword [esi + 0x7e8], 0xffffffff
mov ecx, dword [esi + 0xf0]
push 0
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push ebx
call fcn.100a07c0
mov ecx, dword [ebx]
mov eax, dword [0x1025f64c]
test al, 1
je 0x100ab16a
mov ebx, dword [0x1025f648]
mov edx, dword [ebx + 4]
mov eax, dword [0x10259d94]
mov edi, dword [eax]
mov eax, dword [0x1025f644]
test al, 1
je 0x100ab246
mov ebx, dword [0x1025f640]
mov eax, dword [ebx + 4]
movss xmm2, dword [eax + edi + 8]
subss xmm2, dword [ecx + edx + 8]
movss xmm0, dword [eax + edi + 4]
subss xmm0, dword [ecx + edx + 4]
movss xmm1, dword [eax + edi]
subss xmm1, dword [ecx + edx]
movss dword [esi + 0x20], xmm0
mulss xmm0, xmm0
movss dword [esi + 0x10], xmm1
mulss xmm1, xmm1
addss xmm1, xmm0
xorps xmm0, xmm0
cvtss2sd xmm0, xmm1
xorps xmm1, xmm1
ucomisd xmm0, xmm1
jb 0x100aa4ac
sqrtsd xmm0, xmm0
jmp 0x100aa4da
sub esp, 8
movsd qword [esp], xmm0
movss dword [esi + 0xf0], xmm2
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrt
movss xmm2, dword [esi + 0xf0]
add esp, 8
fstp qword [esi + 0x130]
movsd xmm0, qword [esi + 0x130]
mov ebx, dword [ebp + 8]
cvtsd2ss xmm0, xmm0
cvtss2sd xmm0, xmm0
xorps xmm1, xmm1
cvtss2sd xmm1, xmm2
divsd xmm1, xmm0
sub esp, 8
movsd qword [esp], xmm1
call sub.api_ms_win_crt_math_l1_1_0.dll_atan
fstp st(0)
add esp, 8
movss xmm0, dword [esi + 0x20]
divss xmm0, dword [esi + 0x10]
cvtss2sd xmm0, xmm0
sub esp, 8
movsd qword [esp], xmm0
call sub.api_ms_win_crt_math_l1_1_0.dll_atan
add esp, 8
fstp dword [esi + 0x128]
movss xmm0, dword [esi + 0x128]
mulss xmm0, dword [0x101b0818]
movss xmm1, dword [0x101b07e0]
addss xmm1, xmm0
xorps xmm2, xmm2
movss dword [esi + 0x20], xmm2
cmpnless xmm2, dword [esi + 0x10]
andps xmm0, xmm2
andnps xmm2, xmm1
orps xmm2, xmm0
movaps xmmword [esi + 0x10], xmm2
movss dword [esi + 0xa0], xmm2
lea edi, [esi + 0xa0]
push edi
call dword [sym.imp.api_ms_win_crt_math_l1_1_0.dll__fdtest]
add esp, 4
xorps xmm0, xmm0
test ax, ax
jg 0x100aa5ee
movaps xmm0, xmmword [esi + 0x10]
ucomiss xmm0, dword [0x101b09d4]
jb 0x100aa59e
movss xmm0, dword [0x101b07e0]
movaps xmm1, xmmword [esi + 0x10]
ucomiss xmm0, xmm1
movaps xmm0, xmm1
jae 0x100aa5ee
xorps xmm0, xmm0
xor ebx, ebx
movaps xmm1, xmmword [esi + 0x10]
ucomiss xmm0, xmm1
seta bl
movaps xmm0, xmm1
divss xmm0, dword [0x101afe00]
andps xmm0, xmmword [0x101a87c0]
sub esp, 4
movss dword [esp], xmm0
call sub.api_ms_win_crt_math_l1_1_0.dll_roundf
add esp, 4
fstp dword [esi + 0x124]
movss xmm0, dword [esi + 0x124]
mulss xmm0, dword [ebx*4 + 0x101b09d8]
mov ebx, dword [ebp + 8]
addss xmm0, dword [esi + 0x10]
movss dword [esi + 0x10], xmm0
mov eax, dword [ebp + 0xc]
movss xmm0, dword [eax + 0x4c]
movss dword [esi + 0xf0], xmm0
movss dword [esi + 0xa0], xmm0
push edi
call dword [sym.imp.api_ms_win_crt_math_l1_1_0.dll__fdtest]
add esp, 4
test ax, ax
jg 0x100aa693
movss xmm1, dword [esi + 0xf0]
ucomiss xmm1, dword [0x101b09d4]
jb 0x100aa63f
movss xmm0, dword [0x101b07e0]
ucomiss xmm0, xmm1
jb 0x100aa63f
movss dword [esi + 0x20], xmm1
jmp 0x100aa693
xorps xmm0, xmm0
xor ebx, ebx
ucomiss xmm0, xmm1
seta bl
movaps xmm0, xmm1
divss xmm0, dword [0x101afe00]
andps xmm0, xmmword [0x101a87c0]
sub esp, 4
movss dword [esp], xmm0
call sub.api_ms_win_crt_math_l1_1_0.dll_roundf
add esp, 4
fstp dword [esi + 0x120]
movss xmm0, dword [esi + 0x120]
mulss xmm0, dword [ebx*4 + 0x101b09d8]
mov ebx, dword [ebp + 8]
addss xmm0, dword [esi + 0xf0]
movss dword [esi + 0x20], xmm0
movss xmm0, dword [0x101afa14]
addss xmm0, dword [esi + 0x10]
movss dword [esi + 4], xmm0
movss dword [esi + 0xa0], xmm0
push edi
call dword [sym.imp.api_ms_win_crt_math_l1_1_0.dll__fdtest]
add esp, 4
xorps xmm0, xmm0
movaps xmmword [esi + 0xf0], xmm0
test ax, ax
jg 0x100aa732
movss xmm1, dword [esi + 4]
ucomiss xmm1, dword [0x101b09d4]
jb 0x100aa6e6
movss xmm0, dword [0x101b07e0]
ucomiss xmm0, xmm1
jb 0x100aa6e6
movaps xmm0, xmm1
jmp 0x100aa732
xorps xmm0, xmm0
xor ebx, ebx
ucomiss xmm0, xmm1
seta bl
movaps xmm0, xmm1
divss xmm0, dword [0x101afe00]
andps xmm0, xmmword [0x101a87c0]
sub esp, 4
movss dword [esp], xmm0
call sub.api_ms_win_crt_math_l1_1_0.dll_roundf
add esp, 4
fstp dword [esi + 0x11c]
movss xmm0, dword [esi + 0x11c]
mulss xmm0, dword [ebx*4 + 0x101b09d8]
mov ebx, dword [ebp + 8]
addss xmm0, dword [esi + 4]
movss xmm1, dword [esi + 0x20]
subss xmm1, xmm0
movss dword [esi + 4], xmm1
movss dword [esi + 0xa0], xmm1
push edi
call dword [sym.imp.api_ms_win_crt_math_l1_1_0.dll__fdtest]
add esp, 4
test ax, ax
jg 0x100aa7d1
movss xmm1, dword [esi + 4]
ucomiss xmm1, dword [0x101b09d4]
jb 0x100aa77e
movss xmm0, dword [0x101b07e0]
ucomiss xmm0, xmm1
jb 0x100aa77e
movaps xmm0, xmm1
movaps xmmword [esi + 0xf0], xmm1
jmp 0x100aa7d1
xorps xmm0, xmm0
xor ebx, ebx
ucomiss xmm0, xmm1
seta bl
movaps xmm0, xmm1
divss xmm0, dword [0x101afe00]
andps xmm0, xmmword [0x101a87c0]
sub esp, 4
movss dword [esp], xmm0
call sub.api_ms_win_crt_math_l1_1_0.dll_roundf
add esp, 4
fstp dword [esi + 0x118]
movss xmm0, dword [esi + 0x118]
mulss xmm0, dword [ebx*4 + 0x101b09d8]
mov ebx, dword [ebp + 8]
addss xmm0, dword [esi + 4]
movaps xmmword [esi + 0xf0], xmm0
movaps xmm1, xmmword [esi + 0xf0]
andps xmm1, xmmword [0x101a87c0]
mov al, 1
movss xmm0, dword [0x101b0a10]
ucomiss xmm0, xmm1
ja 0x100aa94c
movss xmm0, dword [0x101afa2c]
addss xmm0, dword [esi + 0x10]
movss dword [esi + 4], xmm0
movss dword [esi + 0xa0], xmm0
push edi
call dword [sym.imp.api_ms_win_crt_math_l1_1_0.dll__fdtest]
add esp, 4
xorps xmm0, xmm0
movaps xmmword [esi + 0xf0], xmm0
test ax, ax
jg 0x100aa891
movss xmm1, dword [esi + 4]
ucomiss xmm1, dword [0x101b09d4]
jb 0x100aa845
movss xmm0, dword [0x101b07e0]
ucomiss xmm0, xmm1
jb 0x100aa845
movaps xmm0, xmm1
jmp 0x100aa891
xorps xmm0, xmm0
xor ebx, ebx
ucomiss xmm0, xmm1
seta bl
movaps xmm0, xmm1
divss xmm0, dword [0x101afe00]
andps xmm0, xmmword [0x101a87c0]
sub esp, 4
movss dword [esp], xmm0
call sub.api_ms_win_crt_math_l1_1_0.dll_roundf
add esp, 4
fstp dword [esi + 0x114]
movss xmm0, dword [esi + 0x114]
mulss xmm0, dword [ebx*4 + 0x101b09d8]
mov ebx, dword [ebp + 8]
addss xmm0, dword [esi + 4]
movss xmm1, dword [esi + 0x20]
subss xmm1, xmm0
movss dword [esi + 4], xmm1
movss dword [esi + 0xa0], xmm1
push edi
call dword [sym.imp.api_ms_win_crt_math_l1_1_0.dll__fdtest]
add esp, 4
test ax, ax
jg 0x100aa930
movss xmm1, dword [esi + 4]
ucomiss xmm1, dword [0x101b09d4]
jb 0x100aa8dd
movss xmm0, dword [0x101b07e0]
ucomiss xmm0, xmm1
jb 0x100aa8dd
movaps xmm0, xmm1
movaps xmmword [esi + 0xf0], xmm1
jmp 0x100aa930
xorps xmm0, xmm0
xor ebx, ebx
ucomiss xmm0, xmm1
seta bl
movaps xmm0, xmm1
divss xmm0, dword [0x101afe00]
andps xmm0, xmmword [0x101a87c0]
sub esp, 4
movss dword [esp], xmm0
call sub.api_ms_win_crt_math_l1_1_0.dll_roundf
add esp, 4
fstp dword [esi + 0x110]
movss xmm0, dword [esi + 0x110]
mulss xmm0, dword [ebx*4 + 0x101b09d8]
mov ebx, dword [ebp + 8]
addss xmm0, dword [esi + 4]
movaps xmmword [esi + 0xf0], xmm0
movaps xmm1, xmmword [esi + 0xf0]
andps xmm1, xmmword [0x101a87c0]
movss xmm0, dword [0x101b0a10]
ucomiss xmm0, xmm1
seta al
mov ecx, dword [ebp + 0xc]
mov byte [ecx + 7], al
movss xmm0, dword [esi + 0x10]
addss xmm0, dword [0x101b07e0]
movss dword [esi + 0x10], xmm0
movss dword [esi + 0xa0], xmm0
push edi
call dword [sym.imp.api_ms_win_crt_math_l1_1_0.dll__fdtest]
add esp, 4
xorps xmm0, xmm0
test ax, ax
jg 0x100aa9ee
movss xmm0, dword [esi + 0x10]
ucomiss xmm0, dword [0x101b09d4]
jb 0x100aa99f
movaps xmm1, xmm0
movss xmm0, dword [0x101b07e0]
ucomiss xmm0, xmm1
movaps xmm0, xmm1
jae 0x100aa9ee
movaps xmm1, xmm0
xorps xmm0, xmm0
xor ebx, ebx
ucomiss xmm0, xmm1
seta bl
movaps xmm0, xmm1
divss xmm0, dword [0x101afe00]
andps xmm0, xmmword [0x101a87c0]
sub esp, 4
movss dword [esp], xmm0
call sub.api_ms_win_crt_math_l1_1_0.dll_roundf
add esp, 4
fstp dword [esi + 0x10c]
movss xmm0, dword [esi + 0x10c]
mulss xmm0, dword [ebx*4 + 0x101b09d8]
mov ebx, dword [ebp + 8]
addss xmm0, dword [esi + 0x10]
movss xmm1, dword [esi + 0x20]
subss xmm1, xmm0
movss dword [esi + 0x20], xmm1
movss dword [esi + 0xa0], xmm1
push edi
call dword [sym.imp.api_ms_win_crt_math_l1_1_0.dll__fdtest]
add esp, 4
test ax, ax
xorps xmm1, xmm1
jg 0x100aaa95
movss xmm0, dword [esi + 0x20]
ucomiss xmm0, dword [0x101b09d4]
jb 0x100aaa3c
movaps xmm1, xmm0
movss xmm0, dword [0x101b07e0]
ucomiss xmm0, xmm1
movaps xmm0, xmm1
jb 0x100aaa3c
movaps xmm1, xmm0
jmp 0x100aaa95
movaps xmm1, xmm0
xorps xmm0, xmm0
xor ebx, ebx
ucomiss xmm0, xmm1
seta bl
movaps xmm0, xmm1
divss xmm0, dword [0x101afe00]
andps xmm0, xmmword [0x101a87c0]
sub esp, 4
movss dword [esp], xmm0
call sub.api_ms_win_crt_math_l1_1_0.dll_roundf
add esp, 4
fstp dword [esi + 0x108]
movss xmm1, dword [esi + 0x108]
mulss xmm1, dword [ebx*4 + 0x101b09d8]
mov ebx, dword [ebp + 8]
addss xmm1, dword [esi + 0x20]
mov dword [esi + 0x7e8], 0xffffffff
andps xmm1, xmmword [0x101a87c0]
movss xmm0, dword [0x101b0a10]
ucomiss xmm0, xmm1
mov edi, dword [ebp + 0xc]
seta byte [edi + 8]
mov eax, dword [ebx]
mov dword [esi + 0x7e8], 0xffffffff
push eax
call fcn.100a8cc0
fstp dword [edi + 0x40]
cmp byte [edi + 1], 0
je 0x100aaad6
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push edi
push ebx
call fcn.100a8fd0
add edi, 0x90
mov eax, dword [ebx]
push 0x2d8
push edi
push dword [eax + 0x2980]
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov eax, dword [0x10259d58]
mov byte [eax + 0x1bf], 1
mov ecx, dword [ebx]
mov eax, dword [0x10259d9c]
movss xmm0, dword [eax + 0x10]
add ebx, 0x2c
mov eax, dword [ecx + 4]
add ecx, 4
sub esp, 0x10
movss dword [esp + 0xc], xmm0
mov dword [esp], ebx
mov dword [esp + 8], 0xfff00
mov dword [esp + 4], 0x100
call dword [eax + 0x34]
mov eax, dword [0x10259d58]
mov byte [eax + 0x1bf], 0
mov eax, dword [esi + 0x7e0]
mov dword fs:[0], eax
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret 0x10
mov eax, dword [ebp + 0xc]
movss xmm0, dword [eax + 0x320]
mov eax, dword [ebp + 0x10]
ucomiss xmm0, dword [eax + 0x320]
jne 0x100a9e7b
jp 0x100a9e7b
mov eax, dword [ebp + 0xc]
movss xmm3, dword [eax + 0x318]
addss xmm3, dword [0x101a87b0]
mulss xmm3, dword [0x101b0a04]
test ecx, ecx
je 0x100aabc8
mov eax, dword [ecx]
mov eax, dword [eax + 0x6e4]
mov dword [esi + 0x7e8], 0xffffffff
movaps xmmword [esi + 0x20], xmm3
call eax
movaps xmm3, xmmword [esi + 0x20]
fstp dword [esi + 0x12c]
movss xmm2, dword [esi + 0x12c]
maxss xmm2, dword [0x101a89b8]
jmp 0x100aabd0
movss xmm2, dword [0x101b0a0c]
addss xmm3, dword [0x101b0a08]
mov eax, dword [ebp + 0xc]
movss xmm0, dword [eax + 0x60]
movss xmm1, dword [eax + 0x64]
mulss xmm1, xmm1
mulss xmm0, xmm0
addss xmm0, xmm1
cvtss2sd xmm0, xmm0
xorps xmm1, xmm1
ucomisd xmm0, xmm1
jb 0x100aac04
sqrtsd xmm0, xmm0
jmp 0x100aac34
sub esp, 8
movsd qword [esp], xmm0
movaps xmmword [esi + 0x20], xmm3
movss dword [esi + 0x10], xmm2
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrt
movss xmm2, dword [esi + 0x10]
movaps xmm3, xmmword [esi + 0x20]
add esp, 8
fstp qword [esi + 0x138]
movsd xmm0, qword [esi + 0x138]
mulss xmm3, xmm2
cvtsd2ss xmm0, xmm0
mov eax, dword [ebp + 0xc]
movss xmm1, dword [eax + 0x318]
ucomiss xmm1, dword [0x101a7280]
jb 0x100aac79
ucomiss xmm0, xmm3
jbe 0x100aac79
xorps xmm1, xmm1
ucomiss xmm0, xmm1
movss xmm1, dword [eax + 0x60]
jne 0x100aac64
jnp 0x100aac9d
movss xmm2, dword [eax + 0x64]
unpcklps xmm1, xmm2
shufps xmm0, xmm0, 0
divps xmm1, xmm0
movlps qword [eax + 0x60], xmm1
jmp 0x100aaca5
movss xmm2, dword [0x101a7280]
ucomiss xmm2, xmm1
jbe 0x100a9e7b
ucomiss xmm3, xmm0
jae 0x100aac55
xorps xmm2, xmm2
ucomiss xmm1, xmm2
jbe 0x100a9e7b
jmp 0x100aac55
movss xmm0, dword [eax + 0x64]
unpcklps xmm1, xmm0
unpcklps xmm3, xmm3
mulps xmm3, xmm1
movlps qword [eax + 0x60], xmm3
mov dword [esi + 0x7e8], 0xffffffff
jmp 0x100a9e7b
mov dword [esi + 8], edi
or eax, 1
mov dword [0x1025f694], eax
mov eax, 0x5d7c3cf8
mov ecx, 0x5372251e
mov dword [esi + 0xa4], ecx
mov dword [esi + 0xa0], eax
mov eax, 0x72432c1e
mov ecx, 0xfc7d5a40
mov dword [esi + 0xac], ecx
mov dword [esi + 0xa8], eax
mov eax, 0x69b4731e
mov ecx, 0x9bcdd441
mov dword [esi + 0xb4], ecx
mov dword [esi + 0xb0], eax
mov eax, 0x2817e16e
mov ecx, 0xa51aeae1
mov edx, 0xd2f7fbb
mov edi, 0x360b4472
mov dword [esi + 0x144], edi
mov dword [esi + 0x140], edx
mov edx, 0x1f7d016c
mov edi, 0x8f34381f
mov dword [esi + 0x14c], edi
mov dword [esi + 0x148], edx
mov edx, 0x19db104d
mov edi, 0x9bcdb024
mov dword [esi + 0x154], edi
mov dword [esi + 0x150], edx
mov dword [esi + 0xbc], ecx
mov dword [esi + 0xb8], eax
mov dword [esi + 0x15c], ecx
mov dword [esi + 0x158], eax
lea eax, [esi + 0x140]
xor ecx, ecx
movaps xmm0, xmmword [esi + 0xa0]
xorps xmm0, xmmword [eax]
movaps xmmword [esi + 0xa0], xmm0
movaps xmm0, xmmword [esi + 0xb0]
xorps xmm0, xmmword [eax + 0x10]
mov eax, dword [0x10259d5c]
mov dword [esi + 0xc], eax
movaps xmmword [esi + 0xb0], xmm0
mov dword [esi + 0x7e8], 0
lea eax, [esi + 0xa0]
lea ecx, [esi + 0x40]
mov dword [esi + 0x10], ecx
push eax
call fcn.10015240
mov eax, dword [esi + 0x50]
mov dword [esi + 0x20], eax
cmp dword [esi + 0x54], 0x10
jb 0x100aadd0
mov eax, dword [esi + 0x40]
mov dword [esi + 0x10], eax
cmp dword [esi + 0x20], 0
je 0x100ab36c
mov eax, dword [esi + 0x20]
mov ecx, eax
and ecx, 3
mov dword [esi + 4], ecx
cmp eax, 4
jae 0x100ab3a8
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100ab3f2
mov dword [esi + 8], edi
or eax, 1
mov dword [0x1025f6a4], eax
mov eax, dword [0x10259d5c]
mov dword [esi + 0xc], eax
mov eax, 0x5d7c3cf8
mov ecx, 0x5372251e
mov dword [esi + 0x44], ecx
mov dword [esi + 0x40], eax
mov eax, 0x72432c1e
mov ecx, 0xdf585e40
mov dword [esi + 0x4c], ecx
mov dword [esi + 0x48], eax
mov eax, 0x49be6322
mov ecx, 0xf6acc245
mov dword [esi + 0x54], ecx
mov dword [esi + 0x50], eax
mov ecx, 0x5a72950b
mov eax, 0xa51aeae1
mov edx, 0xa51aeae1
mov dword [esi + 0x5c], edx
mov dword [esi + 0x58], ecx
mov ecx, 0xd2f7fbb
mov edx, 0x360b4472
mov dword [esi + 0xa4], edx
mov dword [esi + 0xa0], ecx
mov ecx, 0x1f7d016c
mov edx, 0x8f34381f
mov dword [esi + 0xac], edx
mov dword [esi + 0xa8], ecx
mov ecx, 0x19db104d
mov edx, 0x9bcdb024
mov dword [esi + 0xb4], edx
mov dword [esi + 0xb0], ecx
mov ecx, 0x2817e16e
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 + 0x7e8], 2
lea eax, [esi + 0x40]
lea ecx, [esi + 0x80]
mov dword [esi + 0x10], ecx
push eax
call fcn.10015240
mov eax, dword [esi + 0x90]
mov dword [esi + 0x20], eax
cmp dword [esi + 0x94], 0x10
jb 0x100aaefb
mov eax, dword [esi + 0x80]
mov dword [esi + 0x10], eax
cmp dword [esi + 0x20], 0
je 0x100ab376
mov eax, dword [esi + 0x20]
mov ecx, eax
and ecx, 3
mov dword [esi + 4], ecx
cmp eax, 4
jae 0x100ab479
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100ab4c3
mov dword [esi + 0xc], edx
or eax, 1
mov dword [0x1025f674], eax
mov eax, 0x7e4e3df8
mov ecx, 0x42650117
mov dword [esi + 0x44], ecx
mov dword [esi + 0x40], eax
mov eax, 0x32047505
mov ecx, 0xe66b5521
mov dword [esi + 0x4c], ecx
mov dword [esi + 0x48], eax
mov eax, 0x74ba7519
mov ecx, 0x9ba0c56a
mov dword [esi + 0x54], ecx
mov dword [esi + 0x50], eax
mov eax, 0x2817e16e
mov ecx, 0xa51aeae1
mov edx, 0xd2f7fbb
mov edi, 0x360b4472
mov dword [esi + 0xa4], edi
mov dword [esi + 0xa0], edx
mov edx, 0x1f7d016c
mov edi, 0x8f34381f
mov dword [esi + 0xac], edi
mov dword [esi + 0xa8], edx
mov edx, 0x19db104d
mov edi, 0x9bcdb024
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 [0x10259d5c]
mov dword [esi + 8], eax
movaps xmmword [esi + 0x50], xmm0
mov dword [esi + 0x7e8], 8
lea eax, [esi + 0x40]
lea ecx, [esi + 0x80]
mov dword [esi + 0x10], ecx
push eax
call fcn.10015240
mov eax, dword [esi + 0x90]
mov dword [esi + 0x20], eax
cmp dword [esi + 0x94], 0x10
jb 0x100ab01c
mov eax, dword [esi + 0x80]
mov dword [esi + 0x10], eax
cmp dword [esi + 0x20], 0
je 0x100ab380
mov eax, dword [esi + 0x20]
mov ecx, eax
and ecx, 3
mov dword [esi + 4], ecx
cmp eax, 4
jae 0x100ab54d
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100ab597
mov dword [esi + 0x3c], edx
mov dword [esi + 0xc], edi
or eax, 1
mov dword [0x1025f674], eax
mov eax, 0x7e4e3df8
mov ecx, 0x42650117
mov dword [esi + 0x44], ecx
mov dword [esi + 0x40], eax
mov eax, 0x32047505
mov ecx, 0xe66b5521
mov dword [esi + 0x4c], ecx
mov dword [esi + 0x48], eax
mov eax, 0x74ba7519
mov ecx, 0x9ba0c56a
mov dword [esi + 0x54], ecx
mov dword [esi + 0x50], eax
mov eax, 0x2817e16e
mov ecx, 0xa51aeae1
mov edx, 0xd2f7fbb
mov edi, 0x360b4472
mov dword [esi + 0xa4], edi
mov dword [esi + 0xa0], edx
mov edx, 0x1f7d016c
mov edi, 0x8f34381f
mov dword [esi + 0xac], edi
mov dword [esi + 0xa8], edx
mov edx, 0x19db104d
mov edi, 0x9bcdb024
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 [0x10259d5c]
mov dword [esi + 8], eax
movaps xmmword [esi + 0x50], xmm0
mov dword [esi + 0x7e8], 0xa
lea eax, [esi + 0x40]
lea ecx, [esi + 0x80]
mov dword [esi + 0x10], ecx
push eax
call fcn.10015240
mov eax, dword [esi + 0x90]
mov dword [esi + 0x20], eax
cmp dword [esi + 0x94], 0x10
jb 0x100ab140
mov eax, dword [esi + 0x80]
mov dword [esi + 0x10], eax
cmp dword [esi + 0x20], 0
je 0x100ab38a
mov eax, dword [esi + 0x20]
mov ecx, eax
and ecx, 3
mov dword [esi + 4], ecx
cmp eax, 4
jae 0x100ab626
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100ab670
mov dword [esi + 4], ecx
or eax, 1
mov dword [0x1025f64c], eax
mov eax, dword [0x10259d5c]
mov dword [esi + 8], eax
mov eax, 0x685920d6
mov ecx, 0x45690511
mov dword [esi + 0x84], ecx
mov dword [esi + 0x80], eax
mov eax, 0x78147323
mov ecx, 0x8f345676
mov dword [esi + 0x8c], ecx
mov dword [esi + 0x88], eax
mov eax, 0xd2f7fbb
mov ecx, 0x360b4472
mov dword [esi + 0x44], ecx
mov dword [esi + 0x40], eax
mov eax, 0x1f7d016c
mov ecx, 0x8f34381f
mov dword [esi + 0x4c], ecx
mov dword [esi + 0x48], eax
lea eax, [esi + 0x40]
xor ecx, ecx
movaps xmm0, xmmword [esi + 0x80]
xorps xmm0, xmmword [eax]
movaps xmmword [esi + 0x80], xmm0
mov dword [esi + 0x7e8], 0x10
lea eax, [esi + 0x80]
lea ecx, [esi + 0xa0]
mov dword [esi + 0x10], ecx
push eax
call fcn.10015240
mov eax, dword [esi + 0xb0]
mov dword [esi + 0x20], eax
cmp dword [esi + 0xb4], 0x10
jb 0x100ab219
mov eax, dword [esi + 0xa0]
mov dword [esi + 0x10], eax
cmp dword [esi + 0x20], 0
je 0x100ab394
mov eax, dword [esi + 0x20]
mov ecx, eax
and ecx, 3
mov dword [esi + 0xf0], ecx
cmp eax, 4
jae 0x100ab700
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100ab74a
mov dword [esi + 0x3c], edi
mov dword [esi + 0xc], edx
mov dword [esi + 4], ecx
or eax, 1
mov dword [0x1025f644], eax
mov eax, 0x7e4e3df8
mov ecx, 0x42650117
mov dword [esi + 0x44], ecx
mov dword [esi + 0x40], eax
mov eax, 0x32047505
mov ecx, 0xf96b5521
mov dword [esi + 0x4c], ecx
mov dword [esi + 0x48], eax
mov eax, 0x6b947328
mov ecx, 0xf5a4d74d
mov dword [esi + 0x54], ecx
mov dword [esi + 0x50], eax
mov eax, 0x2817e16e
mov ecx, 0xa51aeae1
mov edx, 0xd2f7fbb
mov edi, 0x360b4472
mov dword [esi + 0xa4], edi
mov dword [esi + 0xa0], edx
mov edx, 0x1f7d016c
mov edi, 0x8f34381f
mov dword [esi + 0xac], edi
mov dword [esi + 0xa8], edx
mov edx, 0x19db104d
mov edi, 0x9bcdb024
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 [0x10259d5c]
mov dword [esi + 8], eax
movaps xmmword [esi + 0x50], xmm0
mov dword [esi + 0x7e8], 0x12
lea eax, [esi + 0x40]
lea ecx, [esi + 0x80]
mov dword [esi + 0x10], ecx
push eax
call fcn.10015240
mov eax, dword [esi + 0x90]
mov dword [esi + 0x20], eax
cmp dword [esi + 0x94], 0x10
jb 0x100ab343
mov eax, dword [esi + 0x80]
mov dword [esi + 0x10], eax
cmp dword [esi + 0x20], 0
je 0x100ab39e
mov eax, dword [esi + 0x20]
mov ecx, eax
and ecx, 3
mov dword [esi + 0xf0], ecx
cmp eax, 4
jae 0x100ab7da
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100ab824
mov ecx, 0x811c9dc5
jmp 0x100ab40f
mov ecx, 0x811c9dc5
jmp 0x100ab4e0
mov ecx, 0x811c9dc5
jmp 0x100ab5b4
mov ecx, 0x811c9dc5
jmp 0x100ab68d
mov ecx, 0x811c9dc5
jmp 0x100ab76d
mov ecx, 0x811c9dc5
jmp 0x100ab847
mov edi, dword [esi + 0x20]
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 0x100ab3b8
cmp dword [esi + 4], 0
je 0x100ab40f
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 + 4], edi
jne 0x100ab3fd
mov edx, dword [esi + 0xc]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov ebx, dword [eax + ecx*8 + 4]
cmp ebx, dword [edx + 4]
je 0x100abd66
add ecx, ecx
mov edi, dword [eax + ecx*4]
mov eax, dword [esi + 0x20]
cmp eax, dword [ebx + 0x18]
jne 0x100ab453
cmp dword [ebx + 0x1c], 0x10
jb 0x100ab43d
mov eax, dword [ebx + 8]
jmp 0x100ab440
lea eax, [ebx + 8]
push dword [esi + 0x20]
push eax
push dword [esi + 0x10]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100ab460
cmp ebx, edi
je 0x100abd66
mov ebx, dword [ebx + 4]
jmp 0x100ab42a
add ebx, 0x20
lea ecx, [esi + 0x40]
call fcn.10014f60
mov dword [0x1025f690], ebx
mov edi, dword [esi + 8]
jmp 0x100a9b68
mov edi, dword [esi + 0x20]
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 0x100ab489
cmp dword [esi + 4], 0
je 0x100ab4e0
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 + 4], edi
jne 0x100ab4ce
mov edx, dword [esi + 0xc]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov ebx, dword [eax + ecx*8 + 4]
cmp ebx, dword [edx + 4]
je 0x100abd7d
add ecx, ecx
mov edi, dword [eax + ecx*4]
mov eax, dword [esi + 0x20]
cmp eax, dword [ebx + 0x18]
jne 0x100ab524
cmp dword [ebx + 0x1c], 0x10
jb 0x100ab50e
mov eax, dword [ebx + 8]
jmp 0x100ab511
lea eax, [ebx + 8]
push dword [esi + 0x20]
push eax
push dword [esi + 0x10]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100ab531
cmp ebx, edi
je 0x100abd7d
mov ebx, dword [ebx + 4]
jmp 0x100ab4fb
add ebx, 0x20
lea ecx, [esi + 0x80]
call fcn.10014f60
mov dword [0x1025f6a0], ebx
mov edi, dword [esi + 8]
jmp 0x100a9bb0
mov edi, dword [esi + 0x20]
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 0x100ab55d
cmp dword [esi + 4], 0
je 0x100ab5b4
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 + 4], edi
jne 0x100ab5a2
mov edx, dword [esi + 8]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov ebx, dword [eax + ecx*8 + 4]
cmp ebx, dword [edx + 4]
je 0x100abd94
add ecx, ecx
mov edi, dword [eax + ecx*4]
mov eax, dword [esi + 0x20]
cmp eax, dword [ebx + 0x18]
jne 0x100ab5f8
cmp dword [ebx + 0x1c], 0x10
jb 0x100ab5e2
mov eax, dword [ebx + 8]
jmp 0x100ab5e5
lea eax, [ebx + 8]
push dword [esi + 0x20]
push eax
push dword [esi + 0x10]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100ab605
cmp ebx, edi
je 0x100abd94
mov ebx, dword [ebx + 4]
jmp 0x100ab5cf
add ebx, 0x20
lea ecx, [esi + 0x80]
call fcn.10014f60
mov dword [0x1025f670], ebx
mov eax, dword [0x1025f674]
mov edx, dword [esi + 0xc]
jmp 0x100a9eae
mov edi, dword [esi + 0x20]
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 0x100ab636
cmp dword [esi + 4], 0
je 0x100ab68d
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 + 4], edi
jne 0x100ab67b
mov edx, dword [esi + 8]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov ebx, dword [eax + ecx*8 + 4]
cmp ebx, dword [edx + 4]
je 0x100abdab
add ecx, ecx
mov edi, dword [eax + ecx*4]
mov eax, dword [esi + 0x20]
cmp eax, dword [ebx + 0x18]
jne 0x100ab6d1
cmp dword [ebx + 0x1c], 0x10
jb 0x100ab6bb
mov eax, dword [ebx + 8]
jmp 0x100ab6be
lea eax, [ebx + 8]
push dword [esi + 0x20]
push eax
push dword [esi + 0x10]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100ab6de
cmp ebx, edi
je 0x100abdab
mov ebx, dword [ebx + 4]
jmp 0x100ab6a8
lea edi, [ebx + 0x20]
lea ecx, [esi + 0x80]
call fcn.10014f60
mov dword [0x1025f670], edi
mov ecx, dword [ebx + 0x24]
mov edi, dword [esi + 0xc]
mov edx, dword [esi + 0x3c]
jmp 0x100a9ec4
mov edi, dword [esi + 0x20]
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 0x100ab710
cmp dword [esi + 0xf0], 0
je 0x100ab76d
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 + 0xf0], edi
jne 0x100ab758
mov edx, dword [esi + 8]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov ebx, dword [eax + ecx*8 + 4]
cmp ebx, dword [edx + 4]
je 0x100abdc2
add ecx, ecx
mov edi, dword [eax + ecx*4]
mov eax, dword [esi + 0x20]
cmp eax, dword [ebx + 0x18]
jne 0x100ab7b1
cmp dword [ebx + 0x1c], 0x10
jb 0x100ab79b
mov eax, dword [ebx + 8]
jmp 0x100ab79e
lea eax, [ebx + 8]
push dword [esi + 0x20]
push eax
push dword [esi + 0x10]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100ab7be
cmp ebx, edi
je 0x100abdc2
mov ebx, dword [ebx + 4]
jmp 0x100ab788
add ebx, 0x20
lea ecx, [esi + 0xa0]
call fcn.10014f60
mov dword [0x1025f648], ebx
mov ecx, dword [esi + 4]
jmp 0x100aa43e
mov edi, dword [esi + 0x20]
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 0x100ab7ea
cmp dword [esi + 0xf0], 0
je 0x100ab847
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 + 0xf0], edi
jne 0x100ab832
mov edx, dword [esi + 8]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov ebx, dword [eax + ecx*8 + 4]
cmp ebx, dword [edx + 4]
je 0x100abdd9
add ecx, ecx
mov edi, dword [eax + ecx*4]
mov eax, dword [esi + 0x20]
cmp eax, dword [ebx + 0x18]
jne 0x100ab88b
cmp dword [ebx + 0x1c], 0x10
jb 0x100ab875
mov eax, dword [ebx + 8]
jmp 0x100ab878
lea eax, [ebx + 8]
push dword [esi + 0x20]
push eax
push dword [esi + 0x10]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100ab898
cmp ebx, edi
je 0x100abdd9
mov ebx, dword [ebx + 4]
jmp 0x100ab862
add ebx, 0x20
lea ecx, [esi + 0x80]
call fcn.10014f60
mov dword [0x1025f640], ebx
mov ecx, dword [esi + 4]
mov edx, dword [esi + 0xc]
mov edi, dword [esi + 0x3c]
jmp 0x100aa45b
mov dword [esi + 0x3c], ecx
or eax, 1
mov dword [0x10259f08], eax
mov eax, dword [0x10259d5c]
mov dword [esi + 0xc], eax
mov eax, 0x7e4e3df8
mov ecx, 0x71580717
mov dword [esi + 0x44], ecx
mov dword [esi + 0x40], eax
mov eax, 0x7e13641e
mov ecx, 0xb1195d7b
mov dword [esi + 0x4c], ecx
mov dword [esi + 0x48], eax
mov eax, 0x4dbd4f20
mov ecx, 0xeca2c24c
mov dword [esi + 0x54], ecx
mov dword [esi + 0x50], eax
mov ecx, 0x4d7a883a
mov eax, 0xa51aeae1
mov edx, 0xa51aeae1
mov dword [esi + 0x5c], edx
mov dword [esi + 0x58], ecx
mov ecx, 0xd2f7fbb
mov edx, 0x360b4472
mov dword [esi + 0xa4], edx
mov dword [esi + 0xa0], ecx
mov ecx, 0x1f7d016c
mov edx, 0x8f34381f
mov dword [esi + 0xac], edx
mov dword [esi + 0xa8], ecx
mov ecx, 0x19db104d
mov edx, 0x9bcdb024
mov dword [esi + 0xb4], edx
mov dword [esi + 0xb0], ecx
mov ecx, 0x2817e16e
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 + 0x7e8], 6
lea eax, [esi + 0x40]
lea ecx, [esi + 0x80]
mov dword [esi + 4], ecx
push eax
call fcn.10015240
mov eax, dword [esi + 0x90]
mov dword [esi + 0x10], eax
cmp dword [esi + 0x94], 0x10
jb 0x100ab9bb
mov eax, dword [esi + 0x80]
mov dword [esi + 4], eax
cmp dword [esi + 0x10], 0
je 0x100abb7a
mov eax, dword [esi + 0x10]
mov ecx, eax
and ecx, 3
mov dword [esi + 8], ecx
cmp eax, 4
jae 0x100abb81
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100abbcb
mov dword [esi + 0x3c], ecx
or eax, 1
mov dword [0x10259ed0], eax
mov eax, dword [0x10259d5c]
mov dword [esi + 0xc], eax
mov eax, 0x7e4e3df8
mov ecx, 0x427f0517
mov dword [esi + 0xa4], ecx
mov dword [esi + 0xa0], eax
mov eax, 0x6a1f681e
mov ecx, 0xe356596b
mov dword [esi + 0xac], ecx
mov dword [esi + 0xa8], eax
mov eax, 0x7caf5928
mov ecx, 0xf6f39d49
mov dword [esi + 0xb4], ecx
mov dword [esi + 0xb0], eax
mov eax, 0x5c5e8831
mov ecx, 0xc05e8784
mov dword [esi + 0xbc], ecx
mov dword [esi + 0xb8], eax
mov eax, 0xafe36939
mov ecx, 0xcb07adf2
mov dword [esi + 0xc4], ecx
mov dword [esi + 0xc0], eax
mov eax, 0xd14b8c49
mov ecx, 0xe9d13f1b
mov dword [esi + 0xcc], ecx
mov dword [esi + 0xc8], eax
mov eax, 0xd2f7fbb
mov ecx, 0x360b4472
mov dword [esi + 0x44], ecx
mov dword [esi + 0x40], eax
mov eax, 0x1f7d016c
mov ecx, 0x8f34381f
mov dword [esi + 0x4c], ecx
mov dword [esi + 0x48], eax
mov eax, 0x19db104d
mov ecx, 0x9bcdb024
mov dword [esi + 0x54], ecx
mov dword [esi + 0x50], eax
mov eax, 0x2817e16e
mov ecx, 0xa51aeae1
mov dword [esi + 0x5c], ecx
mov dword [esi + 0x58], eax
mov eax, 0xc68d005f
mov ecx, 0xa568c486
mov dword [esi + 0x64], ecx
mov dword [esi + 0x60], eax
mov eax, 0xb42fe200
mov ecx, 0xe9d13f63
mov dword [esi + 0x6c], ecx
mov dword [esi + 0x68], eax
lea eax, [esi + 0x40]
xor ecx, ecx
movaps xmm0, xmmword [esi + 0xa0]
xorps xmm0, xmmword [eax]
movaps xmmword [esi + 0xa0], xmm0
movaps xmm0, xmmword [esi + 0xb0]
xorps xmm0, xmmword [eax + 0x10]
movaps xmmword [esi + 0xb0], xmm0
movaps xmm0, xmmword [esi + 0xc0]
xorps xmm0, xmmword [eax + 0x20]
movaps xmmword [esi + 0xc0], xmm0
mov dword [esi + 0x7e8], 4
lea eax, [esi + 0xa0]
lea ecx, [esi + 0x80]
mov dword [esi + 4], ecx
push eax
call fcn.10015240
mov eax, dword [esi + 0x90]
mov dword [esi + 0x10], eax
cmp dword [esi + 0x94], 0x10
jb 0x100abb50
mov eax, dword [esi + 0x80]
mov dword [esi + 4], eax
cmp dword [esi + 0x10], 0
je 0x100abc59
mov eax, dword [esi + 0x10]
mov ecx, eax
and ecx, 3
mov dword [esi + 8], ecx
cmp eax, 4
jae 0x100abc60
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100abcaa
mov ecx, 0x811c9dc5
jmp 0x100abbe8
mov edi, dword [esi + 0x10]
and edi, 0xfffffffc
mov ecx, 0x811c9dc5
xor edx, edx
mov eax, dword [esi + 4]
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 0x100abb91
cmp dword [esi + 8], 0
je 0x100abbe8
add edx, dword [esi + 4]
xor edi, edi
movzx ebx, byte [edx + edi]
xor ebx, ecx
imul ecx, ebx, 0x1000193
inc edi
cmp dword [esi + 8], edi
jne 0x100abbd6
mov edx, dword [esi + 0xc]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov ebx, dword [eax + ecx*8 + 4]
cmp ebx, dword [edx + 4]
je 0x100abdf0
add ecx, ecx
mov edi, dword [eax + ecx*4]
mov eax, dword [esi + 0x10]
cmp eax, dword [ebx + 0x18]
jne 0x100abc2c
cmp dword [ebx + 0x1c], 0x10
jb 0x100abc16
mov eax, dword [ebx + 8]
jmp 0x100abc19
lea eax, [ebx + 8]
push dword [esi + 0x10]
push eax
push dword [esi + 4]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100abc39
cmp ebx, edi
je 0x100abdf0
mov ebx, dword [ebx + 4]
jmp 0x100abc03
add ebx, 0x20
lea ecx, [esi + 0x80]
call fcn.10014f60
mov dword [0x10259f04], ebx
movaps xmm3, xmmword [esi + 0x20]
mov ecx, dword [esi + 0x3c]
jmp 0x100a9dc4
mov ecx, 0x811c9dc5
jmp 0x100abcc7
mov edi, dword [esi + 0x10]
and edi, 0xfffffffc
mov ecx, 0x811c9dc5
xor edx, edx
mov eax, dword [esi + 4]
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 0x100abc70
cmp dword [esi + 8], 0
je 0x100abcc7
add edx, dword [esi + 4]
xor edi, edi
movzx ebx, byte [edx + edi]
xor ebx, ecx
imul ecx, ebx, 0x1000193
inc edi
cmp dword [esi + 8], edi
jne 0x100abcb5
mov edx, dword [esi + 0xc]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov ebx, dword [eax + ecx*8 + 4]
cmp ebx, dword [edx + 4]
je 0x100abe07
add ecx, ecx
mov edi, dword [eax + ecx*4]
mov eax, dword [esi + 0x10]
cmp eax, dword [ebx + 0x18]
jne 0x100abd0b
cmp dword [ebx + 0x1c], 0x10
jb 0x100abcf5
mov eax, dword [ebx + 8]
jmp 0x100abcf8
lea eax, [ebx + 8]
push dword [esi + 0x10]
push eax
push dword [esi + 4]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100abd18
cmp ebx, edi
je 0x100abe07
mov ebx, dword [ebx + 4]
jmp 0x100abce2
add ebx, 0x20
lea ecx, [esi + 0x80]
call fcn.10014f60
mov dword [0x10259ecc], ebx
movaps xmm3, xmmword [esi + 0x20]
mov ecx, dword [esi + 0x3c]
jmp 0x100a9d68
mov dword [esi + 0x7e8], 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 + 0x7e8], 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 + 0x7e8], 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 + 0x7e8], 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 + 0x7e8], 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 + 0x7e8], 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 + 0x7e8], 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 + 0x7e8], 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 + 0x7e8], 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 + 0x7e8], 5
push str.invalid_unordered_map_K__T__key
call sub.MSVCP140.dll_void___cdecl_std::_Xout_of_range_char_const__
add esp, 4
nop
push ebp
sub esp, 0x14
lea esi, [ebp - 0x7ec]
mov ebp, dword [esi + 0x7d8]
lea ecx, [esi + 0x40]
call fcn.10014f60
add esp, 0x14
pop ebp
ret