Function at 0x100cfea0
Capabilities:
Authenticate hmac
Encode data using xor
Hash data using fnv
Parse pe header
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xffffffe0
sub esp, 0x280
mov esi, esp
mov dword [esi + 0x258], ebp
mov dword [esi + 0x25c], esp
mov dword [esi + 0x268], 0xffffffff
lea eax, [esi + 0x260]
mov dword [esi + 0x264], 0x100da2b0
mov edx, dword fs:[0]
mov dword [esi + 0x260], edx
mov dword fs:[0], eax
mov eax, dword [ecx + 0xc]
mov dword [esi + 0x134], eax
mov edx, dword [ecx + 0x18]
mov dword [ecx + 0xc], 0
mov eax, dword [0x10258dc8]
mov edi, dword [eax]
mov eax, dword [0x1025e684]
test al, 1
mov dword [esi + 0x3c], ecx
je 0x100d8baa
mov ecx, dword [0x1025e680]
mov ebx, dword [ebp + 0x20]
and edx, 0xfffffffe
mov eax, edx
mov ecx, dword [ecx + 4]
xor edx, edx
cmp byte [ecx + edi], 0
sete dl
lea edi, [edx*8 + 8]
mov edx, dword [ebx + 0x10]
mov ecx, dword [esi + 0x3c]
mov ecx, dword [ecx + 4]
add ecx, edx
cmp edi, ecx
cmovl ecx, edi
xor edi, edi
mov dword [esi + 0x20], eax
cmp eax, 2
mov eax, dword [esi + 0x134]
mov ebx, eax
cmovne ebx, edi
add ebx, edx
sub ecx, ebx
test ecx, ecx
cmovle ecx, edi
mov edx, dword [esi + 0x3c]
mov dword [edx + 4], ecx
mov ecx, dword [ebp + 0x20]
mov ecx, dword [ecx + 0x10]
mov dword [esi + 0x110], ecx
add ecx, eax
cmp ecx, 2
mov edx, 1
cmovge edx, ecx
cmp edx, 0x3e
mov ebx, 0x3e
cmovl ebx, edx
mov edi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x20]
mov dword [ecx + 0x10], ebx
mov dword [ecx + 0xc], 0
mov ecx, dword [esi + 0x3c]
push eax
push ebx
push dword [esi + 0x110]
call fcn.100cf590
mov dword [esi + 0x12c], eax
mov eax, dword [0x10258da8]
mov ecx, dword [eax + 0x4d24]
mov eax, dword [eax + 0x4d28]
lea ebx, [eax + ecx]
add ecx, eax
inc ecx
mov dword [esi + 0x130], ecx
sub ecx, dword [esi + 0x110]
nop word cs:[eax + eax]
lea eax, [ecx + 1]
mov dword [edi], eax
cmp ecx, ebx
jg 0x100d0016
mov ecx, dword [ebp + 8]
mov edx, dword [ebp + 0xc]
push 1
push eax
mov eax, dword [ebp + 0x18]
push dword [eax]
push dword [ebp + 0x14]
push dword [ebp + 0x10]
call dword [0x10258e70]
test al, al
je 0x100d8b85
mov eax, dword [edi]
mov ecx, dword [ebp + 0x18]
mov dword [ecx], eax
mov ecx, dword [edi]
jmp 0x100cffe0
mov eax, dword [0x10258da8]
mov edi, dword [eax + 0x4d24]
cmp edi, ebx
jg 0x100d00bd
xor eax, eax
cmp dword [esi + 0x20], 2
setne byte [esi + 0x110]
cmovne eax, dword [esi + 0x134]
mov dword [esi + 0x3c], eax
neg ebx
inc edi
nop word cs:[eax + eax]
mov eax, edi
mov ecx, 0x1b4e81b5
imul ecx
mov eax, edx
shr eax, 0x1f
sar edx, 4
add edx, eax
imul ecx, edx, 0x96
mov eax, edi
sub eax, ecx
mov ecx, dword [0x10258d70]
mov edx, 0x13bc
add ecx, edx
cmp eax, 0x96
jae 0x100d8b9b
imul eax, eax, 0x854
mov edx, dword [esi + 0x3c]
mov dword [ecx + eax + 0x10], edx
mov byte [ecx + eax + 0x14], 1
movzx edx, byte [esi + 0x110]
mov byte [ecx + eax + 0x15], dl
mov edx, dword [esi + 0x12c]
mov dword [ecx + eax + 0xc], edx
inc edx
mov dword [esi + 0x12c], edx
lea eax, [ebx + edi]
inc eax
inc edi
cmp eax, 2
jne 0x100d0050
mov ecx, dword [0x10258dc4]
mov eax, dword [ebp + 0x18]
mov eax, dword [eax]
mov edx, dword [ecx]
mov edx, dword [edx + 0x20]
mov dword [esi + 0x268], 0xffffffff
push eax
push dword [ebp + 0x10]
call edx
test eax, eax
je 0x100d8b85
mov ecx, dword [eax + 0x60]
mov dword [esi + 0x220], ecx
movups xmm0, xmmword [eax + 0x50]
movaps xmmword [esi + 0x210], xmm0
movups xmm0, xmmword [eax + 0x40]
movaps xmmword [esi + 0x200], xmm0
movups xmm0, xmmword [eax + 0x30]
movaps xmmword [esi + 0x1f0], xmm0
movups xmm0, xmmword [eax + 0x20]
movaps xmmword [esi + 0x1e0], xmm0
movups xmm0, xmmword [eax]
movups xmm1, xmmword [eax + 0x10]
movaps xmmword [esi + 0x1d0], xmm1
movaps xmmword [esi + 0x1c0], xmm0
movups xmm0, xmmword [eax]
movups xmm1, xmmword [eax + 0x10]
movaps xmmword [esi + 0x140], xmm0
mov ecx, dword [eax + 0x60]
mov dword [esi + 0x1a0], ecx
movups xmm0, xmmword [eax + 0x50]
movaps xmmword [esi + 0x190], xmm0
movups xmm0, xmmword [eax + 0x40]
movaps xmmword [esi + 0x180], xmm0
movups xmm0, xmmword [eax + 0x30]
movaps xmmword [esi + 0x170], xmm0
movups xmm0, xmmword [eax + 0x20]
movaps xmmword [esi + 0x160], xmm0
movaps xmmword [esi + 0x150], xmm1
inc dword [esi + 0x144]
mov eax, dword [0x10258db0]
mov dword [eax + 0xc], 0xffffffff
mov dword [eax + 0x1c], 0
cmp dword [esi + 0x20], 2
jne 0x100d8ace
mov eax, dword [0x10258da8]
inc dword [eax + 0x4d28]
mov ecx, dword [eax + 0x9c]
inc dword [ecx + 0x2c]
mov eax, dword [eax + 0x9c]
inc dword [eax + 0x18]
mov ecx, 0x1b4e81b5
mov ebx, dword [esi + 0x130]
mov eax, ebx
imul ecx
mov eax, edx
shr eax, 0x1f
sar edx, 4
add edx, eax
mov edi, 0x13bc
imul eax, edx, 0x96
sub ebx, eax
mov ecx, dword [0x10258d70]
add ecx, edi
cmp ebx, 0x96
jae 0x100d8ba5
imul eax, ebx, 0x854
movsd xmm0, qword [ecx + eax + 0x18]
movaps xmmword [esi + 0x240], xmm0
mov eax, dword [esi + 0x134]
add eax, 0xfffffffe
mov dword [esi + 0x13c], eax
mov dword [esi + 0x130], 0
mov eax, dword [0x10258da8]
nop word cs:[eax + eax]
mov edx, dword [eax + 0x17c]
test edx, edx
jle 0x100d025b
mov ecx, dword [0x10258db0]
mov edi, dword [eax + 0x4d28]
add edi, dword [eax + 0x4d24]
mov ebx, dword [ecx]
push edi
push dword [eax + 0x4d2c]
push 1
push edx
call dword [ebx + 0xc]
mov eax, dword [0x10258d58]
test byte [eax + 0x1d4], 0x10
je 0x100d0287
and dword [esi + 0x170], 0x410006
xorps xmm0, xmm0
movlps qword [esi + 0x164], xmm0
mov dword [esi + 0x16c], 0
mov eax, dword [0x10258d94]
mov ecx, dword [eax]
mov eax, dword [0x10258ee8]
test al, 1
je 0x100d1560
mov edi, dword [0x10258ee4]
mov eax, dword [edi + 4]
cmp dword [eax + ecx], 0
jle 0x100d12d0
mov eax, dword [0x10258ef0]
test al, 1
je 0x100d167c
mov edi, dword [0x10258eec]
mov eax, dword [edi + 4]
cmp byte [eax + ecx], 0
jne 0x100d12d0
mov ecx, dword [0x10258d58]
test byte [ecx + 0x1d4], 0x10
je 0x100d0335
cmp dword [esi + 0x134], 2
jl 0x100d0304
mov eax, dword [esi + 0x130]
cmp dword [esi + 0x13c], eax
jle 0x100d0304
movaps xmm0, xmmword [esi + 0x240]
movlps qword [esi + 0x164], xmm0
jmp 0x100d0335
mov eax, dword [0x10258d54]
mov eax, dword [eax + 0xd8]
inc eax
mov ecx, dword [0x10258d64]
mov dword [ecx + 0xc], eax
mov dword [esi + 0x268], 0xffffffff
lea eax, [esi + 0x140]
push eax
call fcn.100e25b0
mov ecx, dword [0x10258d58]
movss xmm0, dword [ecx + 0x19c]
ucomiss xmm0, dword [0x101a7780]
jne 0x100d034c
jnp 0x100d0560
movss xmm1, dword [ecx + 0x1a0]
ucomiss xmm1, dword [0x101a7780]
jne 0x100d0363
jnp 0x100d0560
movss xmm3, dword [ecx + 0x1a4]
ucomiss xmm3, dword [0x101a7780]
jne 0x100d037a
jnp 0x100d0560
mov eax, dword [0x10258d94]
mov edx, dword [eax]
mov eax, dword [0x1025e64c]
test al, 1
je 0x100d6f73
mov edi, dword [0x1025e648]
mov eax, dword [edi + 4]
movss xmm4, dword [eax + edx + 8]
movss xmm2, dword [eax + edx]
subss xmm2, xmm0
movss xmm0, dword [eax + edx + 4]
subss xmm0, xmm1
movss dword [esi + 0x110], xmm0
mulss xmm0, xmm0
movss dword [esi + 0x3c], xmm2
movaps xmm1, xmm2
mulss xmm1, xmm2
addss xmm1, xmm0
xorps xmm0, xmm0
cvtss2sd xmm0, xmm1
ucomisd xmm0, qword [0x101a7fb0]
jb 0x100d03e3
sqrtsd xmm0, xmm0
jmp 0x100d0415
sub esp, 8
movsd qword [esp], xmm0
movss dword [esi + 0x20], xmm3
movss dword [esi + 0x14], xmm4
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrt
movss xmm4, dword [esi + 0x14]
movss xmm3, dword [esi + 0x20]
add esp, 8
fstp qword [esi + 0x238]
movsd xmm0, qword [esi + 0x238]
cvtsd2ss xmm0, xmm0
subss xmm4, xmm3
cvtss2sd xmm0, xmm0
xorps xmm1, xmm1
cvtss2sd xmm1, xmm4
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 + 0x110]
divss xmm0, dword [esi + 0x3c]
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 + 0x1bc]
movss xmm2, dword [esi + 0x1bc]
mulss xmm2, dword [0x101af818]
movaps xmm3, xmm2
addss xmm3, dword [0x101af7e0]
mov ecx, dword [0x10258d58]
mov eax, dword [0x10258d94]
mov edx, dword [eax]
mov eax, dword [0x1025e64c]
test al, 1
je 0x100d7044
mov edi, dword [0x1025e648]
mov eax, dword [edi + 4]
movss xmm0, dword [eax + edx]
movss xmm1, dword [eax + edx + 4]
subss xmm1, dword [ecx + 0x1a0]
subss xmm0, dword [ecx + 0x19c]
mulss xmm1, xmm1
mulss xmm0, xmm0
addss xmm0, xmm1
cvtss2sd xmm0, xmm0
ucomisd xmm0, qword [0x101a7fb0]
jb 0x100d04de
sqrtsd xmm0, xmm0
jmp 0x100d0512
sub esp, 8
movsd qword [esp], xmm0
movaps xmmword [esi + 0x110], xmm2
movaps xmmword [esi + 0x20], xmm3
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrt
movaps xmm3, xmmword [esi + 0x20]
movaps xmm2, xmmword [esi + 0x110]
add esp, 8
fstp qword [esi + 0x230]
movsd xmm0, qword [esi + 0x230]
cvtsd2ss xmm0, xmm0
ucomiss xmm0, dword [0x101a62c0]
jbe 0x100d0560
xorps xmm0, xmm0
cmpnless xmm0, dword [esi + 0x3c]
andps xmm2, xmm0
andnps xmm0, xmm3
orps xmm0, xmm2
movss dword [esi + 0x150], xmm0
movss xmm0, dword [0x101afcfc]
movlps qword [esi + 0x164], xmm0
mov dword [esi + 0x268], 0xffffffff
nop word cs:[eax + eax]
mov ecx, dword [0x10258d64]
mov dword [esi + 0x268], 0xffffffff
lea eax, [esi + 0x140]
push eax
call fcn.100e3f10
mov edi, dword [esi + 0x144]
mov eax, edi
mov edx, 0x1b4e81b5
imul edx
mov eax, edx
shr eax, 0x1f
sar edx, 4
add edx, eax
mov ebx, dword [0x10258d70]
imul eax, edx, 0x96
sub edi, eax
lea ecx, [ebx + 0x13bc]
cmp edi, 0x96
jae 0x100d8ba5
imul eax, edi, 0x854
mov dword [esi + 0x3c], ecx
mov dword [esi + 0x110], eax
add eax, ecx
push 0x854
push 0
mov dword [esi + 0x20], eax
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
mov eax, dword [0x10258d94]
mov edx, dword [eax]
mov ecx, dword [0x1025e774]
test cl, 1
je 0x100d188a
mov edi, dword [0x1025e770]
mov ecx, dword [edi + 4]
movss xmm0, dword [ecx + edx]
movss dword [ebx + 0xf4], xmm0
mov ecx, dword [eax]
mov eax, dword [0x1025e724]
test al, 1
je 0x100d19ab
mov edi, dword [0x1025e720]
mov eax, dword [edi + 4]
mov eax, dword [eax + ecx]
cmp eax, 0xffffffff
je 0x100d0691
mov ecx, dword [0x10258da4]
mov edx, dword [ecx]
mov edx, dword [edx + 0x10]
mov dword [esi + 0x268], 0xffffffff
push eax
call edx
test eax, eax
je 0x100d0691
mov ecx, dword [0x1025e67c]
test cl, 1
je 0x100d540f
mov edi, dword [0x1025e678]
mov ecx, dword [edi + 4]
movss xmm0, dword [ecx + eax]
mov edx, dword [0x10258d70]
movss dword [edx + 0xec], xmm0
mov ecx, dword [0x1025e754]
test cl, 1
je 0x100d5530
mov edi, dword [0x1025e750]
mov ecx, dword [edi + 4]
movss xmm0, dword [ecx + eax]
movss dword [edx + 0xf0], xmm0
mov eax, dword [0x10258d94]
mov edx, dword [eax]
mov ecx, dword [0x1025e6fc]
test cl, 1
je 0x100d1b37
mov edi, dword [0x1025e6f8]
mov ecx, dword [edi + 4]
movss xmm0, dword [edx + ecx - 4]
mov ecx, dword [esi + 0x20]
movss dword [ecx], xmm0
mov edx, dword [eax]
mov ecx, dword [0x10258ef8]
test cl, 1
je 0x100d1c4e
mov edi, dword [0x10258ef4]
mov ecx, dword [edi + 4]
movd xmm0, dword [ecx + edx]
pshufd xmm0, xmm0, 0x50
mov edx, dword [esi + 0x3c]
mov edi, dword [esi + 0x110]
movq qword [edx + edi + 8], xmm0
mov ecx, dword [esi + 0x1a0]
mov dword [edx + edi + 0x84], ecx
movaps xmm0, xmmword [esi + 0x190]
movups xmmword [edx + edi + 0x74], xmm0
movaps xmm0, xmmword [esi + 0x180]
movups xmmword [edx + edi + 0x64], xmm0
movaps xmm0, xmmword [esi + 0x170]
movups xmmword [edx + edi + 0x54], xmm0
movaps xmm0, xmmword [esi + 0x160]
movups xmmword [edx + edi + 0x44], xmm0
movaps xmm0, xmmword [esi + 0x140]
movaps xmm1, xmmword [esi + 0x150]
movups xmmword [edx + edi + 0x34], xmm1
movups xmmword [edx + edi + 0x24], xmm0
mov ecx, dword [eax]
mov eax, dword [0x1025e694]
test al, 1
je 0x100d1d65
mov edi, dword [0x1025e690]
mov eax, dword [edi + 4]
mov edi, dword [ecx + eax - 0x14]
test edi, edi
mov ecx, dword [esi + 0x3c]
mov ebx, dword [esi + 0x110]
je 0x100d0796
lea eax, [ecx + ebx]
add eax, 0x88
push 0x344
push edi
push eax
call sub.VCRUNTIME140.dll_memcpy
mov ecx, dword [esi + 0x3c]
add esp, 0xc
movss xmm0, dword [edi + 0x80]
movss dword [ecx + ebx + 4], xmm0
mov edi, dword [0x10258d94]
mov eax, dword [edi]
add ecx, ebx
add ecx, 0x3cc
push 0x2d8
push dword [eax + 0x2980]
mov dword [esi + 0x14], ecx
push ecx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov ecx, dword [edi]
mov eax, dword [0x1025e6a4]
test al, 1
je 0x100d1e7b
mov ebx, dword [0x1025e6a0]
mov eax, dword [ebx + 4]
movups xmm0, xmmword [eax + ecx + 0x50]
mov ebx, ecx
mov ecx, dword [esi + 0x3c]
mov edx, dword [esi + 0x110]
movups xmmword [ecx + edx + 0x6f4], xmm0
movups xmm0, xmmword [eax + ebx + 0x40]
movups xmmword [ecx + edx + 0x6e4], xmm0
movups xmm0, xmmword [eax + ebx + 0x30]
movups xmmword [ecx + edx + 0x6d4], xmm0
movups xmm0, xmmword [eax + ebx + 0x20]
movups xmmword [ecx + edx + 0x6c4], xmm0
movups xmm0, xmmword [eax + ebx]
movups xmm1, xmmword [eax + ebx + 0x10]
movups xmmword [ecx + edx + 0x6b4], xmm1
movups xmmword [ecx + edx + 0x6a4], xmm0
mov ecx, dword [edi]
mov eax, dword [0x1025e75c]
test al, 1
je 0x100d1f9b
mov dword [esi + 0x20], edi
mov ebx, dword [0x1025e758]
mov eax, dword [ebx + 4]
mov edi, ecx
mov ecx, dword [eax + ecx + 8]
mov edx, dword [esi + 0x3c]
mov ebx, dword [esi + 0x110]
mov dword [edx + ebx + 0x70c], ecx
movsd xmm0, qword [eax + edi]
movsd qword [edx + ebx + 0x704], xmm0
mov edx, dword [esi + 0x20]
mov edi, dword [edx]
mov eax, dword [0x1025e6ac]
test al, 1
je 0x100d20bb
mov dword [esi + 0x20], edx
mov ebx, dword [0x1025e6a8]
mov eax, dword [ebx + 4]
mov ecx, dword [eax + edi + 8]
mov edx, dword [esi + 0x3c]
mov ebx, dword [esi + 0x110]
mov dword [edx + ebx + 0x718], ecx
movsd xmm0, qword [eax + edi]
movsd qword [edx + ebx + 0x710], xmm0
mov edx, dword [esi + 0x20]
mov edi, dword [edx]
mov eax, dword [0x1025e764]
test al, 1
je 0x100d21db
mov dword [esi + 0x20], edx
mov ebx, dword [0x1025e760]
mov eax, dword [ebx + 4]
mov ecx, dword [eax + edi + 8]
mov edx, dword [esi + 0x3c]
mov ebx, dword [esi + 0x110]
mov dword [edx + ebx + 0x724], ecx
movsd xmm0, qword [eax + edi]
movsd qword [edx + ebx + 0x71c], xmm0
mov eax, dword [esi + 0x20]
mov edi, dword [eax]
mov eax, dword [0x1025e644]
test al, 1
je 0x100d22fb
mov ebx, dword [0x1025e640]
mov eax, dword [ebx + 4]
mov ecx, dword [eax + edi + 8]
mov edx, dword [esi + 0x3c]
mov ebx, dword [esi + 0x110]
mov dword [edx + ebx + 0x730], ecx
movsd xmm0, qword [eax + edi]
movsd qword [edx + ebx + 0x728], xmm0
mov eax, dword [esi + 0x20]
mov edi, dword [eax]
mov eax, dword [0x1025e64c]
test al, 1
je 0x100d2411
mov ebx, dword [0x1025e648]
mov eax, dword [ebx + 4]
mov ecx, dword [eax + edi + 8]
mov edx, dword [esi + 0x3c]
mov ebx, dword [esi + 0x110]
mov dword [edx + ebx + 0x73c], ecx
movsd xmm0, qword [eax + edi]
movsd qword [edx + ebx + 0x734], xmm0
mov eax, dword [esi + 0x20]
mov edi, dword [eax]
mov eax, dword [0x1025e654]
test al, 1
je 0x100d24d9
mov ebx, dword [0x1025e650]
mov eax, dword [ebx + 4]
mov ecx, dword [eax + edi + 8]
mov edx, dword [esi + 0x3c]
mov ebx, dword [esi + 0x110]
mov dword [edx + ebx + 0x748], ecx
movsd xmm0, qword [eax + edi]
movsd qword [edx + ebx + 0x740], xmm0
mov eax, dword [esi + 0x20]
mov edi, dword [eax]
mov eax, dword [0x1025e65c]
test al, 1
je 0x100d25ef
mov ecx, dword [esi + 0x144]
mov eax, ecx
mov edx, 0x1b4e81b5
imul edx
mov eax, edx
shr eax, 0x1f
sar edx, 4
add edx, eax
mov eax, dword [0x10258dc4]
mov eax, dword [eax + 0xf4]
imul edx, edx, 0x96
sub ecx, edx
imul ecx, ecx, 0x64
mov edx, dword [esi + 0x1a0]
mov dword [eax + ecx + 0x60], edx
movaps xmm0, xmmword [esi + 0x190]
movups xmmword [eax + ecx + 0x50], xmm0
movaps xmm0, xmmword [esi + 0x180]
movups xmmword [eax + ecx + 0x40], xmm0
movaps xmm0, xmmword [esi + 0x170]
movups xmmword [eax + ecx + 0x30], xmm0
movaps xmm0, xmmword [esi + 0x160]
movups xmmword [eax + ecx + 0x20], xmm0
movaps xmm0, xmmword [esi + 0x150]
movups xmmword [eax + ecx + 0x10], xmm0
movaps xmm0, xmmword [esi + 0x140]
movups xmmword [eax + ecx], xmm0
mov eax, dword [esi + 0x1a0]
mov dword [esi + 0x100], eax
movaps xmm0, xmmword [esi + 0x190]
movaps xmmword [esi + 0xf0], xmm0
movaps xmm0, xmmword [esi + 0x180]
movaps xmmword [esi + 0xe0], xmm0
movaps xmm0, xmmword [esi + 0x170]
movaps xmmword [esi + 0xd0], xmm0
movaps xmm0, xmmword [esi + 0x160]
movaps xmmword [esi + 0xc0], xmm0
movaps xmm0, xmmword [esi + 0x140]
movaps xmm1, xmmword [esi + 0x150]
movaps xmmword [esi + 0xb0], xmm1
movaps xmmword [esi + 0xa0], xmm0
mov eax, dword [0x10258d58]
mov eax, dword [eax + 0x24]
mov dword [esi + 0x268], 0xffffffff
lea ebx, [esi + 0x140]
mov ecx, ebx
call eax
mov ecx, eax
mov edi, dword [esi + 0x144]
mov eax, edi
mov edx, 0x1b4e81b5
imul edx
mov eax, edx
shr eax, 0x1f
sar edx, 4
add edx, eax
mov eax, dword [0x10258dc4]
mov eax, dword [eax + 0xf8]
imul edx, edx, 0x96
sub edi, edx
imul edx, edi, 0x68
movaps xmm0, xmmword [esi + 0xa0]
movaps xmm1, xmmword [esi + 0xb0]
movups xmmword [eax + edx], xmm0
movups xmmword [eax + edx + 0x10], xmm1
movaps xmm0, xmmword [esi + 0xc0]
movups xmmword [eax + edx + 0x20], xmm0
movaps xmm0, xmmword [esi + 0xd0]
movups xmmword [eax + edx + 0x30], xmm0
movaps xmm0, xmmword [esi + 0xe0]
movups xmmword [eax + edx + 0x40], xmm0
movaps xmm0, xmmword [esi + 0xf0]
movups xmmword [eax + edx + 0x50], xmm0
mov edi, dword [esi + 0x100]
mov dword [eax + edx + 0x60], edi
mov dword [eax + edx + 0x64], ecx
mov eax, dword [0x10258d58]
mov ecx, dword [ebp + 0x14]
mov edx, ebx
lea edi, [esi + 0x1c0]
push edi
call dword [eax + 0x40]
add esp, 4
mov edi, dword [esi + 0x144]
mov eax, edi
mov ecx, 0x1b4e81b5
imul ecx
mov eax, edx
shr eax, 0x1f
sar edx, 4
add edx, eax
imul eax, edx, 0x96
sub edi, eax
mov ecx, dword [0x10258d70]
mov eax, 0x13bc
add ecx, eax
cmp edi, 0x96
jae 0x100d8ba5
imul eax, edi, 0x854
mov byte [ecx + eax + 0x14], 1
mov edx, dword [esi + 0x12c]
mov dword [ecx + eax + 0xc], edx
mov ecx, dword [esi + 0x130]
inc ecx
mov eax, dword [0x10258da8]
mov dword [esi + 0x130], ecx
cmp ecx, dword [esi + 0x134]
jge 0x100d8b6a
inc edx
mov dword [esi + 0x12c], edx
inc dword [eax + 0x4d28]
mov ecx, dword [eax + 0x9c]
inc dword [ecx + 0x2c]
mov ecx, dword [eax + 0x9c]
inc dword [ecx + 0x18]
mov ecx, dword [esi + 0x1a0]
mov dword [esi + 0x220], ecx
movaps xmm0, xmmword [esi + 0x190]
movaps xmmword [esi + 0x210], xmm0
movaps xmm0, xmmword [esi + 0x180]
movaps xmmword [esi + 0x200], xmm0
movaps xmm0, xmmword [esi + 0x170]
movaps xmmword [esi + 0x1f0], xmm0
movaps xmm0, xmmword [esi + 0x160]
movaps xmmword [esi + 0x1e0], xmm0
movaps xmm0, xmmword [esi + 0x140]
movaps xmm1, xmmword [esi + 0x150]
movaps xmmword [esi + 0x1d0], xmm1
movaps xmmword [esi + 0x1c0], xmm0
inc dword [esi + 0x144]
jmp 0x100d0230
mov dword [esi + 0x14], ecx
or eax, 1
mov dword [0x10258ee8], eax
mov eax, 0x47db0ea6
mov ecx, 0x196177ae
mov dword [esi + 0x64], ecx
mov dword [esi + 0x60], eax
mov eax, 0x74d7a077
mov ecx, 0x9286ebe4
mov dword [esi + 0x6c], ecx
mov dword [esi + 0x68], eax
mov eax, 0xeae295bf
mov ecx, 0xe86d4f45
mov dword [esi + 0x74], ecx
mov dword [esi + 0x70], eax
mov eax, 0xc187af88
mov ecx, 0x53f5da20
mov edx, 0x34ba4ce5
mov edi, 0x780d27cb
mov dword [esi + 0xa4], edi
mov dword [esi + 0xa0], edx
mov edx, 0x59a5c50e
mov edi, 0xfbd986da
mov dword [esi + 0xac], edi
mov dword [esi + 0xa8], edx
mov edx, 0x8683f0f7
mov edi, 0xe86d2731
mov dword [esi + 0xb4], edi
mov dword [esi + 0xb0], edx
mov dword [esi + 0x7c], ecx
mov dword [esi + 0x78], eax
mov dword [esi + 0xbc], ecx
mov dword [esi + 0xb8], eax
lea eax, [esi + 0xa0]
xor ecx, ecx
movaps xmm0, xmmword [esi + 0x60]
xorps xmm0, xmmword [eax]
movaps xmmword [esi + 0x60], xmm0
movaps xmm0, xmmword [esi + 0x70]
xorps xmm0, xmmword [eax + 0x10]
mov eax, dword [0x10258d5c]
mov dword [esi + 0x20], eax
movaps xmmword [esi + 0x70], xmm0
mov dword [esi + 0x268], 2
lea ecx, [esi + 0x40]
lea eax, [esi + 0x60]
push eax
call fcn.10015240
cmp dword [esi + 0x54], 0x10
lea eax, [esi + 0x40]
mov dword [esi + 0x110], eax
jb 0x100d164e
mov eax, dword [esi + 0x40]
mov dword [esi + 0x110], eax
mov eax, dword [esi + 0x50]
mov dword [esi + 0x3c], eax
test eax, eax
je 0x100d1798
mov eax, dword [esi + 0x3c]
mov ecx, eax
and ecx, 3
mov dword [esi + 0x10], ecx
cmp eax, 4
jae 0x100d179f
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100d17ec
mov dword [esi + 0x14], ecx
or eax, 1
mov dword [0x10258ef0], eax
mov eax, 0x47db0ea6
mov ecx, 0x196177ae
mov dword [esi + 0x64], ecx
mov dword [esi + 0x60], eax
mov eax, 0x74d7a077
mov ecx, 0x9786ebe4
mov dword [esi + 0x6c], ecx
mov dword [esi + 0x68], eax
mov eax, 0xd5e6969e
mov ecx, 0x8d194645
mov dword [esi + 0x74], ecx
mov dword [esi + 0x70], eax
mov eax, 0xc187af88
mov ecx, 0x53f5da20
mov edx, 0x34ba4ce5
mov edi, 0x780d27cb
mov dword [esi + 0xa4], edi
mov dword [esi + 0xa0], edx
mov edx, 0x59a5c50e
mov edi, 0xfbd986da
mov dword [esi + 0xac], edi
mov dword [esi + 0xa8], edx
mov edx, 0x8683f0f7
mov edi, 0xe86d2731
mov dword [esi + 0xb4], edi
mov dword [esi + 0xb0], edx
mov dword [esi + 0x7c], ecx
mov dword [esi + 0x78], eax
mov dword [esi + 0xbc], ecx
mov dword [esi + 0xb8], eax
lea eax, [esi + 0xa0]
xor ecx, ecx
movaps xmm0, xmmword [esi + 0x60]
xorps xmm0, xmmword [eax]
movaps xmmword [esi + 0x60], xmm0
movaps xmm0, xmmword [esi + 0x70]
xorps xmm0, xmmword [eax + 0x10]
mov eax, dword [0x10258d5c]
mov dword [esi + 0x10], eax
movaps xmmword [esi + 0x70], xmm0
mov dword [esi + 0x268], 4
lea ecx, [esi + 0x40]
lea eax, [esi + 0x60]
push eax
call fcn.10015240
cmp dword [esi + 0x54], 0x10
lea eax, [esi + 0x40]
mov dword [esi + 0x3c], eax
jb 0x100d1764
mov eax, dword [esi + 0x40]
mov dword [esi + 0x3c], eax
mov eax, dword [esi + 0x50]
mov dword [esi + 0x110], eax
test eax, eax
je 0x100d1880
mov eax, dword [esi + 0x110]
mov ecx, eax
and ecx, 3
mov dword [esi + 0x20], ecx
cmp eax, 4
jae 0x100d37bf
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100d380c
mov ecx, 0x811c9dc5
jmp 0x100d180c
mov edi, dword [esi + 0x3c]
and edi, 0xfffffffc
mov ecx, 0x811c9dc5
xor edx, edx
mov eax, dword [esi + 0x110]
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 0x100d17b2
mov eax, dword [esi + 0x10]
test eax, eax
je 0x100d180c
add edx, dword [esi + 0x110]
xor edi, edi
movzx ebx, byte [edx + edi]
xor ebx, ecx
imul ecx, ebx, 0x1000193
inc edi
cmp eax, edi
jne 0x100d17fb
mov edx, dword [esi + 0x20]
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 + 0x3c]
je 0x100d8e10
add ecx, ecx
mov ebx, dword [eax + ecx*4]
cmp edx, dword [edi + 0x18]
jne 0x100d1855
cmp dword [edi + 0x1c], 0x10
jb 0x100d183a
mov eax, dword [edi + 8]
jmp 0x100d183d
lea eax, [edi + 8]
mov ecx, dword [esi + 0x110]
push edx
push eax
push ecx
call sub.VCRUNTIME140.dll_memcmp
mov edx, dword [esi + 0x3c]
add esp, 0xc
test eax, eax
je 0x100d1867
cmp edi, ebx
je 0x100d8e10
mov edi, dword [edi + 4]
cmp edx, dword [edi + 0x18]
je 0x100d182f
jmp 0x100d1855
add edi, 0x20
lea ecx, [esi + 0x40]
call fcn.10014f60
mov dword [0x10258ee4], edi
mov ecx, dword [esi + 0x14]
jmp 0x100d02a1
mov ecx, 0x811c9dc5
jmp 0x100d3829
mov dword [esi + 0x5c], edx
or ecx, 1
mov dword [0x1025e774], ecx
mov eax, dword [0x10258d5c]
mov dword [esi + 0x1c], eax
mov eax, 0x64e90fa6
mov ecx, 0x1d7446a7
mov dword [esi + 0x64], ecx
mov dword [esi + 0x60], eax
mov eax, 0x349be87c
mov ecx, 0xadb5e085
mov dword [esi + 0x6c], ecx
mov dword [esi + 0x68], eax
mov eax, 0xe5ec9c92
mov ecx, 0xa5145358
mov dword [esi + 0x74], ecx
mov dword [esi + 0x70], eax
mov eax, 0xa7eecbe7
mov ecx, 0x5387bf49
mov dword [esi + 0x7c], ecx
mov dword [esi + 0x78], eax
mov eax, 0x34ba4ce5
mov ecx, 0x780d27cb
mov dword [esi + 0xa4], ecx
mov dword [esi + 0xa0], eax
mov eax, 0x59a5c50e
mov ecx, 0xfbd986da
mov dword [esi + 0xac], ecx
mov dword [esi + 0xa8], eax
mov eax, 0x8683f0f7
mov ecx, 0xe86d2731
mov dword [esi + 0xb4], ecx
mov dword [esi + 0xb0], eax
mov eax, 0xc187af88
mov ecx, 0x53f5da20
mov dword [esi + 0xbc], ecx
mov dword [esi + 0xb8], eax
lea eax, [esi + 0xa0]
xor ecx, ecx
movaps xmm0, xmmword [esi + 0x60]
xorps xmm0, xmmword [eax]
movaps xmmword [esi + 0x60], xmm0
movaps xmm0, xmmword [esi + 0x70]
xorps xmm0, xmmword [eax + 0x10]
movaps xmmword [esi + 0x70], xmm0
mov dword [esi + 0x268], 0xa
lea ecx, [esi + 0x40]
lea eax, [esi + 0x60]
push eax
call fcn.10015240
cmp dword [esi + 0x54], 0x10
lea eax, [esi + 0x40]
mov dword [esi + 0x10], eax
jb 0x100d197d
mov eax, dword [esi + 0x40]
mov dword [esi + 0x10], eax
mov eax, dword [esi + 0x50]
mov dword [esi + 0x14], eax
test eax, eax
je 0x100d56bd
mov eax, dword [esi + 0x14]
mov ecx, eax
and ecx, 3
mov dword [esi + 0x18], ecx
cmp eax, 4
jae 0x100d57d5
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100d581f
mov dword [esi + 0x5c], ecx
or eax, 1
mov dword [0x1025e724], eax
mov eax, 0x47db0ea6
mov ecx, 0x156264ae
mov dword [esi + 0xa4], ecx
mov dword [esi + 0xa0], eax
mov eax, 0x1ad1a46c
mov ecx, 0x9aabe7b2
mov dword [esi + 0xac], ecx
mov dword [esi + 0xa8], eax
mov eax, 0xf4e68494
mov ecx, 0xb700191c
mov dword [esi + 0xb4], ecx
mov dword [esi + 0xb0], eax
mov eax, 0xb5e4eee0
mov ecx, 0x490ac49
mov dword [esi + 0xbc], ecx
mov dword [esi + 0xb8], eax
mov eax, 0xe5ba897c
mov ecx, 0xdddc2711
mov dword [esi + 0xc4], ecx
mov dword [esi + 0xc0], eax
mov eax, 0x6ffc8822
mov ecx, 0x5a8e565e
mov edx, 0x34ba4ce5
mov edi, 0x780d27cb
mov dword [esi + 0x64], edi
mov dword [esi + 0x60], edx
mov edx, 0x59a5c50e
mov edi, 0xfbd986da
mov dword [esi + 0x6c], edi
mov dword [esi + 0x68], edx
mov edx, 0x8683f0f7
mov edi, 0xe86d2731
mov dword [esi + 0x74], edi
mov dword [esi + 0x70], edx
mov edx, 0xc187af88
mov edi, 0x53f5da20
mov dword [esi + 0x7c], edi
mov dword [esi + 0x78], edx
mov edx, 0x8acae819
mov edi, 0xdddc277f
mov dword [esi + 0x84], edi
mov dword [esi + 0x80], edx
mov dword [esi + 0xcc], ecx
mov dword [esi + 0xc8], eax
mov dword [esi + 0x8c], ecx
mov dword [esi + 0x88], eax
lea eax, [esi + 0x60]
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]
mov eax, dword [0x10258d5c]
mov dword [esi + 0x1c], eax
movaps xmmword [esi + 0xc0], xmm0
mov dword [esi + 0x268], 0xc
lea ecx, [esi + 0x40]
lea eax, [esi + 0xa0]
push eax
call fcn.10015240
cmp dword [esi + 0x54], 0x10
lea eax, [esi + 0x40]
mov dword [esi + 0x10], eax
jb 0x100d1b09
mov eax, dword [esi + 0x40]
mov dword [esi + 0x10], eax
mov eax, dword [esi + 0x50]
mov dword [esi + 0x14], eax
test eax, eax
je 0x100d56c7
mov eax, dword [esi + 0x14]
mov ecx, eax
and ecx, 3
mov dword [esi + 0x18], ecx
cmp eax, 4
jae 0x100d58b1
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100d58fb
mov dword [esi + 0x5c], edx
or ecx, 1
mov dword [0x1025e6fc], ecx
mov eax, 0x64e90fa6
mov ecx, 0x1d7446a7
mov dword [esi + 0x64], ecx
mov dword [esi + 0x60], eax
mov eax, 0x349be87c
mov ecx, 0x9f98ef85
mov dword [esi + 0x6c], ecx
mov dword [esi + 0x68], eax
mov eax, 0xc4ed9f93
mov ecx, 0xe81e5358
mov dword [esi + 0x74], ecx
mov dword [esi + 0x70], eax
mov eax, 0xc187af88
mov ecx, 0x53f5da20
mov edx, 0x34ba4ce5
mov edi, 0x780d27cb
mov dword [esi + 0xa4], edi
mov dword [esi + 0xa0], edx
mov edx, 0x59a5c50e
mov edi, 0xfbd986da
mov dword [esi + 0xac], edi
mov dword [esi + 0xa8], edx
mov edx, 0x8683f0f7
mov edi, 0xe86d2731
mov dword [esi + 0xb4], edi
mov dword [esi + 0xb0], edx
mov dword [esi + 0x7c], ecx
mov dword [esi + 0x78], eax
mov dword [esi + 0xbc], ecx
mov dword [esi + 0xb8], eax
lea eax, [esi + 0xa0]
xor ecx, ecx
movaps xmm0, xmmword [esi + 0x60]
xorps xmm0, xmmword [eax]
movaps xmmword [esi + 0x60], xmm0
movaps xmm0, xmmword [esi + 0x70]
xorps xmm0, xmmword [eax + 0x10]
mov eax, dword [0x10258d5c]
mov dword [esi + 0x1c], eax
movaps xmmword [esi + 0x70], xmm0
mov dword [esi + 0x268], 0x12
lea ecx, [esi + 0x40]
lea eax, [esi + 0x60]
push eax
call fcn.10015240
cmp dword [esi + 0x54], 0x10
lea eax, [esi + 0x40]
mov dword [esi + 0x10], eax
jb 0x100d1c20
mov eax, dword [esi + 0x40]
mov dword [esi + 0x10], eax
mov eax, dword [esi + 0x50]
mov dword [esi + 0x14], eax
test eax, eax
je 0x100d56d1
mov eax, dword [esi + 0x14]
mov ecx, eax
and ecx, 3
mov dword [esi + 0x18], ecx
cmp eax, 4
jae 0x100d5982
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100d59cc
mov dword [esi + 0x1c], edx
or ecx, 1
mov dword [0x10258ef8], ecx
mov eax, 0x47db0ea6
mov ecx, 0x196177ae
mov dword [esi + 0x64], ecx
mov dword [esi + 0x60], eax
mov eax, 0x9586ebe4
mov ecx, 0x74d7a077
mov dword [esi + 0x6c], eax
mov dword [esi + 0x68], ecx
mov eax, 0x8d1e4673
mov ecx, 0xede099a3
mov dword [esi + 0x74], eax
mov dword [esi + 0x70], ecx
mov eax, 0xc187af88
mov ecx, 0x53f5da20
mov edx, 0x34ba4ce5
mov edi, 0x780d27cb
mov dword [esi + 0xa4], edi
mov dword [esi + 0xa0], edx
mov edx, 0x59a5c50e
mov edi, 0xfbd986da
mov dword [esi + 0xac], edi
mov dword [esi + 0xa8], edx
mov edx, 0x8683f0f7
mov edi, 0xe86d2731
mov dword [esi + 0xb4], edi
mov dword [esi + 0xb0], edx
mov dword [esi + 0x7c], ecx
mov dword [esi + 0x78], eax
mov dword [esi + 0xbc], ecx
mov dword [esi + 0xb8], eax
lea eax, [esi + 0xa0]
xor ecx, ecx
movaps xmm0, xmmword [esi + 0x60]
xorps xmm0, xmmword [eax]
movaps xmmword [esi + 0x60], xmm0
movaps xmm0, xmmword [esi + 0x70]
xorps xmm0, xmmword [eax + 0x10]
mov eax, dword [0x10258d5c]
mov dword [esi + 0x18], eax
movaps xmmword [esi + 0x70], xmm0
mov dword [esi + 0x268], 0x14
lea ecx, [esi + 0x40]
lea eax, [esi + 0x60]
push eax
call fcn.10015240
cmp dword [esi + 0x54], 0x10
lea eax, [esi + 0x40]
mov dword [esi + 0x14], eax
jb 0x100d1d37
mov eax, dword [esi + 0x40]
mov dword [esi + 0x14], eax
mov eax, dword [esi + 0x50]
mov dword [esi + 0x20], eax
test eax, eax
je 0x100d56db
mov eax, dword [esi + 0x20]
mov ecx, eax
and ecx, 3
mov dword [esi + 0x10], ecx
cmp eax, 4
jae 0x100d5a58
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100d5aa2
mov dword [esi + 0x1c], ecx
or eax, 1
mov dword [0x1025e694], eax
mov eax, 0x64e90fa6
mov ecx, 0x1d7446a7
mov dword [esi + 0x64], ecx
mov dword [esi + 0x60], eax
mov eax, 0x349be87c
mov ecx, 0x8890e485
mov dword [esi + 0x6c], ecx
mov dword [esi + 0x68], eax
mov eax, 0xf6ec93a4
mov ecx, 0xe86d4354
mov dword [esi + 0x74], ecx
mov dword [esi + 0x70], eax
mov eax, 0xc187af88
mov ecx, 0x53f5da20
mov edx, 0x34ba4ce5
mov edi, 0x780d27cb
mov dword [esi + 0xa4], edi
mov dword [esi + 0xa0], edx
mov edx, 0x59a5c50e
mov edi, 0xfbd986da
mov dword [esi + 0xac], edi
mov dword [esi + 0xa8], edx
mov edx, 0x8683f0f7
mov edi, 0xe86d2731
mov dword [esi + 0xb4], edi
mov dword [esi + 0xb0], edx
mov dword [esi + 0x7c], ecx
mov dword [esi + 0x78], eax
mov dword [esi + 0xbc], ecx
mov dword [esi + 0xb8], eax
lea eax, [esi + 0xa0]
xor ecx, ecx
movaps xmm0, xmmword [esi + 0x60]
xorps xmm0, xmmword [eax]
movaps xmmword [esi + 0x60], xmm0
movaps xmm0, xmmword [esi + 0x70]
xorps xmm0, xmmword [eax + 0x10]
mov eax, dword [0x10258d5c]
mov dword [esi + 0x18], eax
movaps xmmword [esi + 0x70], xmm0
mov dword [esi + 0x268], 0x16
lea ecx, [esi + 0x40]
lea eax, [esi + 0x60]
push eax
call fcn.10015240
cmp dword [esi + 0x54], 0x10
lea eax, [esi + 0x40]
mov dword [esi + 0x14], eax
jb 0x100d1e4d
mov eax, dword [esi + 0x40]
mov dword [esi + 0x14], eax
mov eax, dword [esi + 0x50]
mov dword [esi + 0x20], eax
test eax, eax
je 0x100d56e5
mov eax, dword [esi + 0x20]
mov ecx, eax
and ecx, 3
mov dword [esi + 0x10], ecx
cmp eax, 4
jae 0x100d5b2e
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100d5b78
mov dword [esi + 0x5c], ecx
or eax, 1
mov dword [0x1025e6a4], eax
mov eax, dword [0x10258d5c]
mov dword [esi + 0x1c], eax
mov eax, 0x64e90fa6
mov ecx, 0x1d7446a7
mov dword [esi + 0x64], ecx
mov dword [esi + 0x60], eax
mov eax, 0xabb5e085
mov ecx, 0x349be87c
mov dword [esi + 0x6c], eax
mov dword [esi + 0x68], ecx
mov eax, 0x850c5550
mov ecx, 0xd6e68398
mov dword [esi + 0x74], eax
mov dword [esi + 0x70], ecx
mov eax, 0x53f5da20
mov ecx, 0xb3e2dbed
mov dword [esi + 0x7c], eax
mov dword [esi + 0x78], ecx
mov eax, 0x34ba4ce5
mov ecx, 0x780d27cb
mov dword [esi + 0xa4], ecx
mov dword [esi + 0xa0], eax
mov eax, 0x59a5c50e
mov ecx, 0xfbd986da
mov dword [esi + 0xac], ecx
mov dword [esi + 0xa8], eax
mov eax, 0x8683f0f7
mov ecx, 0xe86d2731
mov dword [esi + 0xb4], ecx
mov dword [esi + 0xb0], eax
mov eax, 0xc187af88
mov ecx, 0x53f5da20
mov dword [esi + 0xbc], ecx
mov dword [esi + 0xb8], eax
lea eax, [esi + 0xa0]
xor ecx, ecx
movaps xmm0, xmmword [esi + 0x60]
xorps xmm0, xmmword [eax]
movaps xmmword [esi + 0x60], xmm0
movaps xmm0, xmmword [esi + 0x70]
xorps xmm0, xmmword [eax + 0x10]
movaps xmmword [esi + 0x70], xmm0
mov dword [esi + 0x268], 0x18
lea ecx, [esi + 0x40]
lea eax, [esi + 0x60]
push eax
call fcn.10015240
cmp dword [esi + 0x54], 0x10
lea eax, [esi + 0x40]
mov dword [esi + 0x10], eax
jb 0x100d1f6d
mov eax, dword [esi + 0x40]
mov dword [esi + 0x10], eax
mov eax, dword [esi + 0x50]
mov dword [esi + 0x20], eax
test eax, eax
je 0x100d56ef
mov eax, dword [esi + 0x20]
mov ecx, eax
and ecx, 3
mov dword [esi + 0x18], ecx
cmp eax, 4
jae 0x100d5bff
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100d5c49
mov dword [esi + 0x5c], ecx
or eax, 1
mov dword [0x1025e75c], eax
mov eax, dword [0x10258d5c]
mov dword [esi + 0x1c], eax
mov eax, 0x64e90fa6
mov ecx, 0x1d7446a7
mov dword [esi + 0x64], ecx
mov dword [esi + 0x60], eax
mov eax, 0x349be87c
mov ecx, 0x9cb7e785
mov dword [esi + 0x6c], ecx
mov dword [esi + 0x68], eax
mov eax, 0xc7e689b2
mov ecx, 0x8d01405f
mov dword [esi + 0x74], ecx
mov dword [esi + 0x70], eax
mov eax, 0xc187affb
mov ecx, 0x53f5da20
mov dword [esi + 0x7c], ecx
mov dword [esi + 0x78], eax
mov eax, 0x34ba4ce5
mov ecx, 0x780d27cb
mov dword [esi + 0xa4], ecx
mov dword [esi + 0xa0], eax
mov eax, 0x59a5c50e
mov ecx, 0xfbd986da
mov dword [esi + 0xac], ecx
mov dword [esi + 0xa8], eax
mov eax, 0x8683f0f7
mov ecx, 0xe86d2731
mov dword [esi + 0xb4], ecx
mov dword [esi + 0xb0], eax
mov eax, 0xc187af88
mov ecx, 0x53f5da20
mov dword [esi + 0xbc], ecx
mov dword [esi + 0xb8], eax
lea eax, [esi + 0xa0]
xor ecx, ecx
movaps xmm0, xmmword [esi + 0x60]
xorps xmm0, xmmword [eax]
movaps xmmword [esi + 0x60], xmm0
movaps xmm0, xmmword [esi + 0x70]
xorps xmm0, xmmword [eax + 0x10]
movaps xmmword [esi + 0x70], xmm0
mov dword [esi + 0x268], 0x1a
lea ecx, [esi + 0x40]
lea eax, [esi + 0x60]
push eax
call fcn.10015240
cmp dword [esi + 0x54], 0x10
lea eax, [esi + 0x40]
mov dword [esi + 0x10], eax
jb 0x100d208d
mov eax, dword [esi + 0x40]
mov dword [esi + 0x10], eax
mov eax, dword [esi + 0x50]
mov dword [esi + 0x20], eax
test eax, eax
je 0x100d56f9
mov eax, dword [esi + 0x20]
mov ecx, eax
and ecx, 3
mov dword [esi + 0x18], ecx
cmp eax, 4
jae 0x100d5cd6
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100d5d20
mov dword [esi + 0x5c], edi
or eax, 1
mov dword [0x1025e6ac], eax
mov eax, dword [0x10258d5c]
mov dword [esi + 0x1c], eax
mov eax, 0x47db0ea6
mov ecx, 0x196177ae
mov dword [esi + 0x64], ecx
mov dword [esi + 0x60], eax
mov eax, 0x74d7a077
mov ecx, 0x9a86ebe4
mov dword [esi + 0x6c], ecx
mov dword [esi + 0x68], eax
mov eax, 0xf3d39d9e
mov ecx, 0xa905445f
mov dword [esi + 0x74], ecx
mov dword [esi + 0x70], eax
mov eax, 0xa4ebc8e6
mov ecx, 0x53f5da20
mov dword [esi + 0x7c], ecx
mov dword [esi + 0x78], eax
mov eax, 0x34ba4ce5
mov ecx, 0x780d27cb
mov dword [esi + 0xa4], ecx
mov dword [esi + 0xa0], eax
mov eax, 0x59a5c50e
mov ecx, 0xfbd986da
mov dword [esi + 0xac], ecx
mov dword [esi + 0xa8], eax
mov eax, 0x8683f0f7
mov ecx, 0xe86d2731
mov dword [esi + 0xb4], ecx
mov dword [esi + 0xb0], eax
mov eax, 0xc187af88
mov ecx, 0x53f5da20
mov dword [esi + 0xbc], ecx
mov dword [esi + 0xb8], eax
lea eax, [esi + 0xa0]
xor ecx, ecx
movaps xmm0, xmmword [esi + 0x60]
xorps xmm0, xmmword [eax]
movaps xmmword [esi + 0x60], xmm0
movaps xmm0, xmmword [esi + 0x70]
xorps xmm0, xmmword [eax + 0x10]
movaps xmmword [esi + 0x70], xmm0
mov dword [esi + 0x268], 0x1c
lea ecx, [esi + 0x40]
lea eax, [esi + 0x60]
push eax
call fcn.10015240
cmp dword [esi + 0x54], 0x10
lea eax, [esi + 0x40]
mov dword [esi + 0x10], eax
jb 0x100d21ad
mov eax, dword [esi + 0x40]
mov dword [esi + 0x10], eax
mov eax, dword [esi + 0x50]
mov dword [esi + 0x20], eax
test eax, eax
je 0x100d5703
mov eax, dword [esi + 0x20]
mov ecx, eax
and ecx, 3
mov dword [esi + 0x18], ecx
cmp eax, 4
jae 0x100d5daf
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100d5df9
mov dword [esi + 0x5c], edi
or eax, 1
mov dword [0x1025e764], eax
mov eax, dword [0x10258d5c]
mov dword [esi + 0x1c], eax
mov eax, 0x47db0ea6
mov ecx, 0x196177ae
mov dword [esi + 0x64], ecx
mov dword [esi + 0x60], eax
mov eax, 0x74d7a077
mov ecx, 0x8d86ebe4
mov dword [esi + 0x6c], ecx
mov dword [esi + 0x68], eax
mov eax, 0xd6f4959e
mov ecx, 0x800e4944
mov dword [esi + 0x74], ecx
mov dword [esi + 0x70], eax
mov eax, 0xade0c1c9
mov ecx, 0x53f5da45
mov dword [esi + 0x7c], ecx
mov dword [esi + 0x78], eax
mov eax, 0x34ba4ce5
mov ecx, 0x780d27cb
mov dword [esi + 0xa4], ecx
mov dword [esi + 0xa0], eax
mov eax, 0x59a5c50e
mov ecx, 0xfbd986da
mov dword [esi + 0xac], ecx
mov dword [esi + 0xa8], eax
mov eax, 0x8683f0f7
mov ecx, 0xe86d2731
mov dword [esi + 0xb4], ecx
mov dword [esi + 0xb0], eax
mov eax, 0xc187af88
mov ecx, 0x53f5da20
mov dword [esi + 0xbc], ecx
mov dword [esi + 0xb8], eax
lea eax, [esi + 0xa0]
xor ecx, ecx
movaps xmm0, xmmword [esi + 0x60]
xorps xmm0, xmmword [eax]
movaps xmmword [esi + 0x60], xmm0
movaps xmm0, xmmword [esi + 0x70]
xorps xmm0, xmmword [eax + 0x10]
movaps xmmword [esi + 0x70], xmm0
mov dword [esi + 0x268], 0x1e
lea ecx, [esi + 0x40]
lea eax, [esi + 0x60]
push eax
call fcn.10015240
cmp dword [esi + 0x54], 0x10
lea eax, [esi + 0x40]
mov dword [esi + 0x10], eax
jb 0x100d22cd
mov eax, dword [esi + 0x40]
mov dword [esi + 0x10], eax
mov eax, dword [esi + 0x50]
mov dword [esi + 0x20], eax
test eax, eax
je 0x100d570d
mov eax, dword [esi + 0x20]
mov ecx, eax
and ecx, 3
mov dword [esi + 0x18], ecx
cmp eax, 4
jae 0x100d5e88
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100d5ed2
mov dword [esi + 0x5c], edi
or eax, 1
mov dword [0x1025e644], eax
mov eax, 0xc6362ae
mov ecx, 0x47db0ea6
mov dword [esi + 0x64], eax
mov dword [esi + 0x60], ecx
mov eax, 0x8d86ebe4
mov ecx, 0x74dcb167
mov dword [esi + 0x6c], eax
mov dword [esi + 0x68], ecx
mov eax, 0x86044058
mov ecx, 0xf4cc9392
mov dword [esi + 0x74], eax
mov dword [esi + 0x70], ecx
mov eax, 0xc187af88
mov ecx, 0x53f5da20
mov edx, 0x34ba4ce5
mov edi, 0x780d27cb
mov dword [esi + 0xa4], edi
mov dword [esi + 0xa0], edx
mov edx, 0x59a5c50e
mov edi, 0xfbd986da
mov dword [esi + 0xac], edi
mov dword [esi + 0xa8], edx
mov edx, 0x8683f0f7
mov edi, 0xe86d2731
mov dword [esi + 0xb4], edi
mov dword [esi + 0xb0], edx
mov dword [esi + 0x7c], ecx
mov dword [esi + 0x78], eax
mov dword [esi + 0xbc], ecx
mov dword [esi + 0xb8], eax
lea eax, [esi + 0xa0]
xor ecx, ecx
movaps xmm0, xmmword [esi + 0x60]
xorps xmm0, xmmword [eax]
movaps xmmword [esi + 0x60], xmm0
movaps xmm0, xmmword [esi + 0x70]
xorps xmm0, xmmword [eax + 0x10]
mov eax, dword [0x10258d5c]
mov dword [esi + 0x1c], eax
movaps xmmword [esi + 0x70], xmm0
mov dword [esi + 0x268], 0x20
lea ecx, [esi + 0x40]
lea eax, [esi + 0x60]
push eax
call fcn.10015240
cmp dword [esi + 0x54], 0x10
lea eax, [esi + 0x40]
mov dword [esi + 0x10], eax
jb 0x100d23e3
mov eax, dword [esi + 0x40]
mov dword [esi + 0x10], eax
mov eax, dword [esi + 0x50]
mov dword [esi + 0x20], eax
test eax, eax
je 0x100d5717
mov eax, dword [esi + 0x20]
mov ecx, eax
and ecx, 3
mov dword [esi + 0x18], ecx
cmp eax, 4
jae 0x100d5f61
mov dword [esi + 0x5c], edi
or eax, 1
mov dword [0x1025e64c], eax
mov eax, dword [0x10258d5c]
mov dword [esi + 0x1c], eax
mov eax, 0x51cc1388
mov ecx, 0xb6f66a8
mov dword [esi + 0x44], ecx
mov dword [esi + 0x40], eax
mov eax, 0x3eccb741
mov ecx, 0xfbd9e8b3
mov dword [esi + 0x4c], ecx
mov dword [esi + 0x48], eax
mov eax, 0x34ba4ce5
mov ecx, 0x780d27cb
mov dword [esi + 0x64], ecx
mov dword [esi + 0x60], eax
mov eax, 0x59a5c50e
mov ecx, 0xfbd986da
mov dword [esi + 0x6c], ecx
mov dword [esi + 0x68], eax
lea eax, [esi + 0x60]
xor ecx, ecx
movaps xmm0, xmmword [esi + 0x40]
xorps xmm0, xmmword [eax]
movaps xmmword [esi + 0x40], xmm0
mov dword [esi + 0x268], 0x22
lea ecx, [esi + 0xa0]
lea eax, [esi + 0x40]
push eax
call fcn.10015240
cmp dword [esi + 0xb4], 0x10
lea eax, [esi + 0xa0]
mov dword [esi + 0x10], eax
jb 0x100d24a8
mov eax, dword [esi + 0xa0]
mov dword [esi + 0x10], eax
mov eax, dword [esi + 0xb0]
mov dword [esi + 0x20], eax
test eax, eax
je 0x100d5721
mov dword [esi + 0x5c], edi
or eax, 1
mov dword [0x1025e654], eax
mov eax, 0xc6362ae
mov ecx, 0x47db0ea6
mov dword [esi + 0x64], eax
mov dword [esi + 0x60], ecx
mov eax, 0x8d86ebe4
mov ecx, 0x74dcb167
mov dword [esi + 0x6c], eax
mov dword [esi + 0x68], ecx
mov eax, 0xe86d545f
mov ecx, 0xefce9392
mov dword [esi + 0x74], eax
mov dword [esi + 0x70], ecx
mov eax, 0xc187af88
mov ecx, 0x53f5da20
mov edx, 0x34ba4ce5
mov edi, 0x780d27cb
mov dword [esi + 0xa4], edi
mov dword [esi + 0xa0], edx
mov edx, 0x59a5c50e
mov edi, 0xfbd986da
mov dword [esi + 0xac], edi
mov dword [esi + 0xa8], edx
mov edx, 0x8683f0f7
mov edi, 0xe86d2731
mov dword [esi + 0xb4], edi
mov dword [esi + 0xb0], edx
mov dword [esi + 0x7c], ecx
mov dword [esi + 0x78], eax
mov dword [esi + 0xbc], ecx
mov dword [esi + 0xb8], eax
lea eax, [esi + 0xa0]
xor ecx, ecx
movaps xmm0, xmmword [esi + 0x60]
xorps xmm0, xmmword [eax]
movaps xmmword [esi + 0x60], xmm0
movaps xmm0, xmmword [esi + 0x70]
xorps xmm0, xmmword [eax + 0x10]
mov eax, dword [0x10258d5c]
mov dword [esi + 0x1c], eax
movaps xmmword [esi + 0x70], xmm0
mov dword [esi + 0x268], 0x24
lea ecx, [esi + 0x40]
lea eax, [esi + 0x60]
push eax
call fcn.10015240
cmp dword [esi + 0x54], 0x10
lea eax, [esi + 0x40]
mov dword [esi + 0x10], eax
jb 0x100d25c1
mov edi, dword [esi + 0x110]
and edi, 0xfffffffc
mov ecx, 0x811c9dc5
xor edx, edx
mov eax, dword [esi + 0x3c]
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 0x100d37cf
cmp dword [esi + 0x20], 0
je 0x100d3829
add edx, dword [esi + 0x3c]
xor edi, edi
movzx ebx, byte [edx + edi]
xor ebx, ecx
imul ecx, ebx, 0x1000193
inc edi
cmp dword [esi + 0x20], edi
jne 0x100d3817
mov edx, dword [esi + 0x10]
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 + 0x110]
je 0x100d9318
add ecx, ecx
mov ebx, dword [eax + ecx*4]
cmp edx, dword [edi + 0x18]
jne 0x100d3874
cmp dword [edi + 0x1c], 0x10
jb 0x100d385a
mov eax, dword [edi + 8]
jmp 0x100d385d
lea eax, [edi + 8]
push edx
push eax
push dword [esi + 0x3c]
call sub.VCRUNTIME140.dll_memcmp
mov edx, dword [esi + 0x110]
add esp, 0xc
test eax, eax
je 0x100d3886
cmp edi, ebx
je 0x100d9318
mov edi, dword [edi + 4]
cmp edx, dword [edi + 0x18]
je 0x100d384f
jmp 0x100d3874
add edi, 0x20
lea ecx, [esi + 0x40]
call fcn.10014f60
mov dword [0x10258eec], edi
mov ecx, dword [esi + 0x14]
jmp 0x100d02c1
mov dword [esi + 0x1c], eax
or ecx, 1
mov dword [0x1025e67c], ecx
mov eax, dword [0x10258d5c]
mov dword [esi + 0x5c], eax
mov eax, 0x55df1ba6
mov ecx, 0x3b6348bb
mov dword [esi + 0x64], ecx
mov dword [esi + 0x60], eax
mov eax, 0x2ac4875d
mov ecx, 0x96e7abbf
mov dword [esi + 0x6c], ecx
mov dword [esi + 0x68], eax
mov eax, 0xd4ef96a8
mov ecx, 0x81024454
mov dword [esi + 0x74], ecx
mov dword [esi + 0x70], eax
mov eax, 0xa5e9e6e4
mov ecx, 0x53f5a245
mov dword [esi + 0x7c], ecx
mov dword [esi + 0x78], eax
mov eax, 0x34ba4ce5
mov ecx, 0x780d27cb
mov dword [esi + 0xa4], ecx
mov dword [esi + 0xa0], eax
mov eax, 0x59a5c50e
mov ecx, 0xfbd986da
mov dword [esi + 0xac], ecx
mov dword [esi + 0xa8], eax
mov eax, 0x8683f0f7
mov ecx, 0xe86d2731
mov dword [esi + 0xb4], ecx
mov dword [esi + 0xb0], eax
mov eax, 0xc187af88
mov ecx, 0x53f5da20
mov dword [esi + 0xbc], ecx
mov dword [esi + 0xb8], eax
lea eax, [esi + 0xa0]
xor ecx, ecx
movaps xmm0, xmmword [esi + 0x60]
xorps xmm0, xmmword [eax]
movaps xmmword [esi + 0x60], xmm0
movaps xmm0, xmmword [esi + 0x70]
xorps xmm0, xmmword [eax + 0x10]
movaps xmmword [esi + 0x70], xmm0
mov dword [esi + 0x268], 0xe
lea ecx, [esi + 0x40]
lea eax, [esi + 0x60]
push eax
call fcn.10015240
cmp dword [esi + 0x54], 0x10
lea eax, [esi + 0x40]
mov dword [esi + 0x10], eax
jb 0x100d5502
mov eax, dword [esi + 0x40]
mov dword [esi + 0x10], eax
mov eax, dword [esi + 0x50]
mov dword [esi + 0x14], eax
test eax, eax
je 0x100d8727
mov eax, dword [esi + 0x14]
mov ecx, eax
and ecx, 3
mov dword [esi + 0x18], ecx
cmp eax, 4
jae 0x100d8738
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100d8782
mov dword [esi + 0x1c], eax
or ecx, 1
mov dword [0x1025e754], ecx
mov eax, 0x55df1ba6
mov ecx, 0x3b6348bb
mov dword [esi + 0xa4], ecx
mov dword [esi + 0xa0], eax
mov eax, 0x2ac4875d
mov ecx, 0x96e7abbf
mov dword [esi + 0xac], ecx
mov dword [esi + 0xa8], eax
mov eax, 0x891f5252
mov ecx, 0xe5c296a8
mov dword [esi + 0xb4], eax
mov dword [esi + 0xb0], ecx
mov eax, 0x2799bb4e
mov ecx, 0xa4d7d6eb
mov dword [esi + 0xbc], eax
mov dword [esi + 0xb8], ecx
mov eax, 0xdddc277f
mov ecx, 0x8acae860
mov dword [esi + 0xc4], eax
mov dword [esi + 0xc0], ecx
mov eax, 0x6ffc8822
mov ecx, 0x5a8e565e
mov edx, 0x34ba4ce5
mov edi, 0x780d27cb
mov dword [esi + 0x64], edi
mov dword [esi + 0x60], edx
mov edx, 0x59a5c50e
mov edi, 0xfbd986da
mov dword [esi + 0x6c], edi
mov dword [esi + 0x68], edx
mov edx, 0x8683f0f7
mov edi, 0xe86d2731
mov dword [esi + 0x74], edi
mov dword [esi + 0x70], edx
mov edx, 0xc187af88
mov edi, 0x53f5da20
mov dword [esi + 0x7c], edi
mov dword [esi + 0x78], edx
mov edx, 0x8acae819
mov edi, 0xdddc277f
mov dword [esi + 0x84], edi
mov dword [esi + 0x80], edx
mov dword [esi + 0xcc], ecx
mov dword [esi + 0xc8], eax
mov dword [esi + 0x8c], ecx
mov dword [esi + 0x88], eax
lea eax, [esi + 0x60]
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]
mov eax, dword [0x10258d5c]
mov dword [esi + 0x5c], eax
movaps xmmword [esi + 0xc0], xmm0
mov dword [esi + 0x268], 0x10
lea ecx, [esi + 0x40]
lea eax, [esi + 0xa0]
push eax
call fcn.10015240
cmp dword [esi + 0x54], 0x10
lea eax, [esi + 0x40]
mov dword [esi + 0x10], eax
jb 0x100d568f
mov eax, dword [esi + 0x40]
mov dword [esi + 0x10], eax
mov eax, dword [esi + 0x50]
mov dword [esi + 0x14], eax
test eax, eax
je 0x100d872e
mov eax, dword [esi + 0x14]
mov ecx, eax
and ecx, 3
mov dword [esi + 0x18], ecx
cmp eax, 4
jae 0x100d8809
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100d8853
mov ecx, 0x811c9dc5
jmp 0x100d583c
mov ecx, 0x811c9dc5
jmp 0x100d5918
mov ecx, 0x811c9dc5
jmp 0x100d59e9
mov ecx, 0x811c9dc5
jmp 0x100d5abf
mov ecx, 0x811c9dc5
jmp 0x100d5b95
mov ecx, 0x811c9dc5
jmp 0x100d5c66
mov ecx, 0x811c9dc5
jmp 0x100d5d3d
mov ecx, 0x811c9dc5
jmp 0x100d5e16
mov ecx, 0x811c9dc5
jmp 0x100d5eef
mov ecx, 0x811c9dc5
jmp 0x100d5fc8
mov edi, dword [esi + 0x14]
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 0x100d57e2
cmp dword [esi + 0x18], 0
je 0x100d583c
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 + 0x18], edi
jne 0x100d582a
mov edx, dword [esi + 0x1c]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov edi, dword [eax + ecx*8 + 4]
cmp edi, dword [edx + 4]
je 0x100d8f80
add ecx, ecx
mov ebx, dword [eax + ecx*4]
mov eax, dword [esi + 0x14]
cmp eax, dword [edi + 0x18]
jne 0x100d5880
cmp dword [edi + 0x1c], 0x10
jb 0x100d586a
mov eax, dword [edi + 8]
jmp 0x100d586d
lea eax, [edi + 8]
push dword [esi + 0x14]
push eax
push dword [esi + 0x10]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100d588d
cmp edi, ebx
je 0x100d8f80
mov edi, dword [edi + 4]
jmp 0x100d5857
add edi, 0x20
lea ecx, [esi + 0x40]
call fcn.10014f60
mov dword [0x1025e770], edi
mov eax, dword [0x10258d94]
mov ebx, dword [0x10258d70]
mov edx, dword [esi + 0x5c]
jmp 0x100d05f5
mov edi, dword [esi + 0x14]
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 0x100d58be
cmp dword [esi + 0x18], 0
je 0x100d5918
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 + 0x18], edi
jne 0x100d5906
mov edx, dword [esi + 0x1c]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov edi, dword [eax + ecx*8 + 4]
cmp edi, dword [edx + 4]
je 0x100d9260
add ecx, ecx
mov ebx, dword [eax + ecx*4]
mov eax, dword [esi + 0x14]
cmp eax, dword [edi + 0x18]
jne 0x100d595c
cmp dword [edi + 0x1c], 0x10
jb 0x100d5946
mov eax, dword [edi + 8]
jmp 0x100d5949
lea eax, [edi + 8]
push dword [esi + 0x14]
push eax
push dword [esi + 0x10]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100d5969
cmp edi, ebx
je 0x100d9260
mov edi, dword [edi + 4]
jmp 0x100d5933
add edi, 0x20
lea ecx, [esi + 0x40]
call fcn.10014f60
mov dword [0x1025e720], edi
mov ecx, dword [esi + 0x5c]
jmp 0x100d061a
mov edi, dword [esi + 0x14]
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 0x100d598f
cmp dword [esi + 0x18], 0
je 0x100d59e9
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 + 0x18], edi
jne 0x100d59d7
mov edx, dword [esi + 0x1c]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov edi, dword [eax + ecx*8 + 4]
cmp edi, dword [edx + 4]
je 0x100d8edf
add ecx, ecx
mov ebx, dword [eax + ecx*4]
mov eax, dword [esi + 0x14]
cmp eax, dword [edi + 0x18]
jne 0x100d5a2d
cmp dword [edi + 0x1c], 0x10
jb 0x100d5a17
mov eax, dword [edi + 8]
jmp 0x100d5a1a
lea eax, [edi + 8]
push dword [esi + 0x14]
push eax
push dword [esi + 0x10]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100d5a3a
cmp edi, ebx
je 0x100d8edf
mov edi, dword [edi + 4]
jmp 0x100d5a04
add edi, 0x20
lea ecx, [esi + 0x40]
call fcn.10014f60
mov dword [0x1025e6f8], edi
mov eax, dword [0x10258d94]
mov edx, dword [esi + 0x5c]
jmp 0x100d06ad
mov edi, dword [esi + 0x20]
and edi, 0xfffffffc
mov ecx, 0x811c9dc5
xor edx, edx
mov eax, dword [esi + 0x14]
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 0x100d5a65
cmp dword [esi + 0x10], 0
je 0x100d5abf
add edx, dword [esi + 0x14]
xor edi, edi
movzx ebx, byte [edx + edi]
xor ebx, ecx
imul ecx, ebx, 0x1000193
inc edi
cmp dword [esi + 0x10], edi
jne 0x100d5aad
mov edx, dword [esi + 0x18]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov edi, dword [eax + ecx*8 + 4]
cmp edi, dword [edx + 4]
je 0x100d92d3
add ecx, ecx
mov ebx, dword [eax + ecx*4]
mov eax, dword [esi + 0x20]
cmp eax, dword [edi + 0x18]
jne 0x100d5b03
cmp dword [edi + 0x1c], 0x10
jb 0x100d5aed
mov eax, dword [edi + 8]
jmp 0x100d5af0
lea eax, [edi + 8]
push dword [esi + 0x20]
push eax
push dword [esi + 0x14]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100d5b10
cmp edi, ebx
je 0x100d92d3
mov edi, dword [edi + 4]
jmp 0x100d5ada
add edi, 0x20
lea ecx, [esi + 0x40]
call fcn.10014f60
mov dword [0x10258ef4], edi
mov eax, dword [0x10258d94]
mov edx, dword [esi + 0x1c]
jmp 0x100d06d4
mov edi, dword [esi + 0x20]
and edi, 0xfffffffc
mov ecx, 0x811c9dc5
xor edx, edx
mov eax, dword [esi + 0x14]
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 0x100d5b3b
cmp dword [esi + 0x10], 0
je 0x100d5b95
add edx, dword [esi + 0x14]
xor edi, edi
movzx ebx, byte [edx + edi]
xor ebx, ecx
imul ecx, ebx, 0x1000193
inc edi
cmp dword [esi + 0x10], edi
jne 0x100d5b83
mov edx, dword [esi + 0x18]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov edi, dword [eax + ecx*8 + 4]
cmp edi, dword [edx + 4]
je 0x100d8f0d
add ecx, ecx
mov ebx, dword [eax + ecx*4]
mov eax, dword [esi + 0x20]
cmp eax, dword [edi + 0x18]
jne 0x100d5bd9
cmp dword [edi + 0x1c], 0x10
jb 0x100d5bc3
mov eax, dword [edi + 8]
jmp 0x100d5bc6
lea eax, [edi + 8]
push dword [esi + 0x20]
push eax
push dword [esi + 0x14]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100d5be6
cmp edi, ebx
je 0x100d8f0d
mov edi, dword [edi + 4]
jmp 0x100d5bb0
add edi, 0x20
lea ecx, [esi + 0x40]
call fcn.10014f60
mov dword [0x1025e690], edi
mov ecx, dword [esi + 0x1c]
jmp 0x100d075a
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 0x100d5c0c
cmp dword [esi + 0x18], 0
je 0x100d5c66
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 + 0x18], edi
jne 0x100d5c54
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 0x100d9066
add ecx, ecx
mov edi, dword [eax + ecx*4]
mov eax, dword [esi + 0x20]
cmp eax, dword [ebx + 0x18]
jne 0x100d5caa
cmp dword [ebx + 0x1c], 0x10
jb 0x100d5c94
mov eax, dword [ebx + 8]
jmp 0x100d5c97
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 0x100d5cb7
cmp ebx, edi
je 0x100d9066
mov ebx, dword [ebx + 4]
jmp 0x100d5c81
add ebx, 0x20
lea ecx, [esi + 0x40]
call fcn.10014f60
mov dword [0x1025e6a0], ebx
mov edi, dword [0x10258d94]
mov ecx, dword [esi + 0x5c]
jmp 0x100d07d2
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 0x100d5ce3
cmp dword [esi + 0x18], 0
je 0x100d5d3d
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 + 0x18], edi
jne 0x100d5d2b
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 0x100d907d
add ecx, ecx
mov edi, dword [eax + ecx*4]
mov eax, dword [esi + 0x20]
cmp eax, dword [ebx + 0x18]
jne 0x100d5d81
cmp dword [ebx + 0x1c], 0x10
jb 0x100d5d6b
cmp ebx, edi
je 0x100d907d
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 0x100d5dbc
cmp dword [esi + 0x18], 0
je 0x100d5e16
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 0x100d8f97
add ecx, ecx
mov edi, dword [eax + ecx*4]
mov eax, dword [esi + 0x20]
cmp eax, dword [ebx + 0x18]
jne 0x100d5e5a
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 0x100d5e95
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 0x100d8fae
mov dword [esi + 0x18], edx
mov dword [esi + 0x10], ecx
or eax, 1
mov dword [0x1025e64c], eax
mov eax, dword [0x10258d5c]
mov dword [esi + 0x14], eax
mov eax, 0x51cc1388
mov ecx, 0xb6f66a8
mov dword [esi + 0x44], ecx
mov dword [esi + 0x40], eax
mov eax, 0x3eccb741
mov ecx, 0xfbd9e8b3
mov dword [esi + 0x4c], ecx
mov dword [esi + 0x48], eax
mov eax, 0x34ba4ce5
mov ecx, 0x780d27cb
mov dword [esi + 0x64], ecx
mov dword [esi + 0x60], eax
mov eax, 0x59a5c50e
mov ecx, 0xfbd986da
mov dword [esi + 0x6c], ecx
mov dword [esi + 0x68], eax
lea eax, [esi + 0x60]
xor ecx, ecx
movaps xmm0, xmmword [esi + 0x40]
xorps xmm0, xmmword [eax]
movaps xmmword [esi + 0x40], xmm0
mov dword [esi + 0x268], 6
lea ecx, [esi + 0xa0]
lea eax, [esi + 0x40]
push eax
call fcn.10015240
cmp dword [esi + 0xb4], 0x10
lea eax, [esi + 0xa0]
mov dword [esi + 0x110], eax
jb 0x100d7013
mov eax, dword [esi + 0xa0]
mov dword [esi + 0x110], eax
mov eax, dword [esi + 0xb0]
mov dword [esi + 0x3c], eax
test eax, eax
je 0x100d88e0
mov eax, dword [esi + 0x3c]
mov ecx, eax
and ecx, 3
mov dword [esi + 0x20], ecx
cmp eax, 4
jae 0x100d88f1
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100d893e
mov dword [esi + 0x138], edx
mov dword [esi + 0x5c], ecx
movaps xmmword [esi + 0x20], xmm3
movaps xmmword [esi + 0x110], xmm2
or eax, 1
mov dword [0x1025e64c], eax
mov eax, dword [0x10258d5c]
mov dword [esi + 0x1c], eax
mov eax, 0x51cc1388
mov ecx, 0xb6f66a8
mov dword [esi + 0x44], ecx
mov dword [esi + 0x40], eax
mov eax, 0x3eccb741
mov ecx, 0xfbd9e8b3
mov dword [esi + 0x4c], ecx
mov dword [esi + 0x48], eax
mov eax, 0x34ba4ce5
mov ecx, 0x780d27cb
mov dword [esi + 0x64], ecx
mov dword [esi + 0x60], eax
mov eax, 0x59a5c50e
mov ecx, 0xfbd986da
mov dword [esi + 0x6c], ecx
mov dword [esi + 0x68], eax
lea eax, [esi + 0x60]
xor ecx, ecx
movaps xmm0, xmmword [esi + 0x40]
xorps xmm0, xmmword [eax]
movaps xmmword [esi + 0x40], xmm0
mov dword [esi + 0x268], 8
lea ecx, [esi + 0xa0]
lea eax, [esi + 0x40]
push eax
call fcn.10015240
cmp dword [esi + 0xb4], 0x10
lea eax, [esi + 0xa0]
mov dword [esi + 0x10], eax
jb 0x100d70ec
mov eax, dword [esi + 0xa0]
mov dword [esi + 0x10], eax
mov eax, dword [esi + 0xb0]
mov dword [esi + 0x14], eax
test eax, eax
je 0x100d88e7
mov eax, dword [esi + 0x14]
mov ecx, eax
and ecx, 3
mov dword [esi + 0x18], ecx
cmp eax, 4
jae 0x100d89e9
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100d8a33
mov ecx, 0x811c9dc5
jmp 0x100d879f
mov ecx, 0x811c9dc5
jmp 0x100d8870
mov edi, dword [esi + 0x14]
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 0x100d8745
cmp dword [esi + 0x18], 0
je 0x100d879f
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 + 0x18], edi
jne 0x100d878d
mov edx, dword [esi + 0x5c]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov edi, dword [eax + ecx*8 + 4]
cmp edi, dword [edx + 4]
je 0x100d904f
add ecx, ecx
mov ebx, dword [eax + ecx*4]
mov eax, dword [esi + 0x14]
cmp eax, dword [edi + 0x18]
jne 0x100d87e3
cmp dword [edi + 0x1c], 0x10
jb 0x100d87cd
mov eax, dword [edi + 8]
jmp 0x100d87d0
lea eax, [edi + 8]
push dword [esi + 0x14]
push eax
push dword [esi + 0x10]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100d87f0
cmp edi, ebx
je 0x100d904f
mov edi, dword [edi + 4]
jmp 0x100d87ba
add edi, 0x20
lea ecx, [esi + 0x40]
call fcn.10014f60
mov dword [0x1025e678], edi
mov eax, dword [esi + 0x1c]
jmp 0x100d0656
mov edi, dword [esi + 0x14]
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 0x100d8816
cmp dword [esi + 0x18], 0
je 0x100d8870
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 + 0x18], edi
jne 0x100d885e
mov edx, dword [esi + 0x5c]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov edi, dword [eax + ecx*8 + 4]
cmp edi, dword [edx + 4]
je 0x100d932f
add ecx, ecx
mov ebx, dword [eax + ecx*4]
mov eax, dword [esi + 0x14]
cmp eax, dword [edi + 0x18]
jne 0x100d88b4
cmp dword [edi + 0x1c], 0x10
jb 0x100d889e
mov eax, dword [edi + 8]
jmp 0x100d88a1
lea eax, [edi + 8]
push dword [esi + 0x14]
push eax
push dword [esi + 0x10]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100d88c1
cmp edi, ebx
je 0x100d932f
mov edi, dword [edi + 4]
jmp 0x100d888b
add edi, 0x20
lea ecx, [esi + 0x40]
call fcn.10014f60
mov dword [0x1025e750], edi
mov edx, dword [0x10258d70]
mov eax, dword [esi + 0x1c]
jmp 0x100d0681
mov ecx, 0x811c9dc5
jmp 0x100d895e
mov ecx, 0x811c9dc5
jmp 0x100d8a50
mov edi, dword [esi + 0x3c]
and edi, 0xfffffffc
mov ecx, 0x811c9dc5
xor edx, edx
mov eax, dword [esi + 0x110]
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 0x100d88fe
cmp dword [esi + 0x20], 0
je 0x100d895e
add edx, dword [esi + 0x110]
xor edi, edi
movzx ebx, byte [edx + edi]
xor ebx, ecx
imul ecx, ebx, 0x1000193
inc edi
cmp dword [esi + 0x20], edi
jne 0x100d894c
mov edx, dword [esi + 0x14]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov edi, dword [eax + ecx*8 + 4]
cmp edi, dword [edx + 4]
je 0x100d914c
add ecx, ecx
mov ebx, dword [eax + ecx*4]
mov eax, dword [esi + 0x3c]
cmp eax, dword [edi + 0x18]
jne 0x100d89a5
cmp dword [edi + 0x1c], 0x10
jb 0x100d898c
mov eax, dword [edi + 8]
jmp 0x100d898f
lea eax, [edi + 8]
push dword [esi + 0x3c]
push eax
push dword [esi + 0x110]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100d89b2
cmp edi, ebx
je 0x100d914c
mov edi, dword [edi + 4]
jmp 0x100d8979
add edi, 0x20
lea ecx, [esi + 0xa0]
call fcn.10014f60
mov dword [0x1025e648], edi
mov eax, dword [esi + 0x10]
movss xmm3, dword [eax + 0x1a4]
movss xmm0, dword [eax + 0x19c]
movss xmm1, dword [eax + 0x1a0]
mov edx, dword [esi + 0x18]
jmp 0x100d0394
mov edi, dword [esi + 0x14]
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 0x100d89f6
cmp dword [esi + 0x18], 0
je 0x100d8a50
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 + 0x18], edi
jne 0x100d8a3e
mov edx, dword [esi + 0x1c]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov edi, dword [eax + ecx*8 + 4]
cmp edi, dword [edx + 4]
je 0x100d921b
add ecx, ecx
mov ebx, dword [eax + ecx*4]
mov eax, dword [esi + 0x14]
cmp eax, dword [edi + 0x18]
jne 0x100d8a94
cmp dword [edi + 0x1c], 0x10
jb 0x100d8a7e
mov eax, dword [edi + 8]
jmp 0x100d8a81
lea eax, [edi + 8]
push dword [esi + 0x14]
push eax
push dword [esi + 0x10]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100d8aa1
cmp edi, ebx
je 0x100d921b
mov edi, dword [edi + 4]
jmp 0x100d8a6b
add edi, 0x20
lea ecx, [esi + 0xa0]
call fcn.10014f60
mov dword [0x1025e648], edi
movaps xmm2, xmmword [esi + 0x110]
movaps xmm3, xmmword [esi + 0x20]
mov ecx, dword [esi + 0x5c]
mov edx, dword [esi + 0x138]
jmp 0x100d04a0
mov dword [esi + 0x148], 0x7fffffff
mov ebx, dword [esi + 0x134]
nop
mov eax, dword [0x10258d58]
mov ecx, dword [ebp + 0x14]
lea edx, [esi + 0x140]
lea edi, [esi + 0x1c0]
push edi
call dword [eax + 0x40]
add esp, 4
mov eax, dword [esi + 0x1a0]
mov dword [esi + 0x220], eax
movaps xmm0, xmmword [esi + 0x190]
movaps xmmword [esi + 0x210], xmm0
movaps xmm0, xmmword [esi + 0x180]
movaps xmmword [esi + 0x200], xmm0
movaps xmm0, xmmword [esi + 0x170]
movaps xmmword [esi + 0x1f0], xmm0
movaps xmm0, xmmword [esi + 0x160]
movaps xmmword [esi + 0x1e0], xmm0
movaps xmm0, xmmword [esi + 0x140]
movaps xmm1, xmmword [esi + 0x150]
movaps xmmword [esi + 0x1d0], xmm1
movaps xmmword [esi + 0x1c0], xmm0
inc dword [esi + 0x144]
dec ebx
jne 0x100d8ae0
jmp 0x100d8b85
mov ecx, dword [0x10258d58]
mov edx, dword [eax + 0x4d24]
mov eax, dword [eax + 0x4d28]
add eax, edx
inc eax
push eax
call fcn.10017980
mov eax, dword [esi + 0x260]
mov dword fs:[0], eax
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret 0x1c
mov dword [esi + 0x268], 0xffffffff
call fcn.1009f400
mov dword [esi + 0x13c], edi
mov dword [esi + 0x20], edx
or eax, 1
mov dword [0x1025e684], eax
mov eax, dword [0x10258d5c]
mov dword [esi + 0x14], eax
mov eax, 0x73e90fa6
mov ecx, 0x2a684aaa
mov dword [esi + 0x144], ecx
mov dword [esi + 0x140], eax
mov eax, 0x2ac0a97b
mov ecx, 0x83b6f48a
mov dword [esi + 0x14c], ecx
mov dword [esi + 0x148], eax
mov eax, 0xebbddd8e
mov ecx, 0x9b24456e
mov dword [esi + 0x154], ecx
mov dword [esi + 0x150], eax
mov eax, 0xb7ebcede
mov ecx, 0x53a69e45
mov dword [esi + 0x15c], ecx
mov dword [esi + 0x158], eax
mov eax, 0x34ba4ce5
mov ecx, 0x780d27cb
mov dword [esi + 0x1c4], ecx
mov dword [esi + 0x1c0], eax
mov eax, 0x59a5c50e
mov ecx, 0xfbd986da
mov dword [esi + 0x1cc], ecx
mov dword [esi + 0x1c8], eax
mov eax, 0x8683f0f7
mov ecx, 0xe86d2731
mov dword [esi + 0x1d4], ecx
mov dword [esi + 0x1d0], eax
mov eax, 0xc187af88
mov ecx, 0x53f5da20
mov dword [esi + 0x1dc], ecx
mov dword [esi + 0x1d8], eax
lea eax, [esi + 0x1c0]
xor ecx, ecx
movaps xmm0, xmmword [esi + 0x140]
xorps xmm0, xmmword [eax]
movaps xmmword [esi + 0x140], xmm0
movaps xmm0, xmmword [esi + 0x150]
xorps xmm0, xmmword [eax + 0x10]
movaps xmmword [esi + 0x150], xmm0
mov dword [esi + 0x268], 0
lea eax, [esi + 0x140]
lea ecx, [esi + 0xa0]
mov dword [esi + 0x12c], ecx
push eax
call fcn.10015240
mov eax, dword [esi + 0xb0]
mov dword [esi + 0x110], eax
cmp dword [esi + 0xb4], 0x10
jb 0x100d8ce1
mov eax, dword [esi + 0xa0]
mov dword [esi + 0x12c], eax
cmp dword [esi + 0x110], 0
je 0x100d8d09
mov eax, dword [esi + 0x110]
mov ecx, eax
and ecx, 3
mov dword [esi + 0x130], ecx
cmp eax, 4
jae 0x100d8d10
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100d8d60
mov ecx, 0x811c9dc5
jmp 0x100d8d86
mov edi, dword [esi + 0x110]
and edi, 0xfffffffc
mov ecx, 0x811c9dc5
xor edx, edx
mov eax, dword [esi + 0x12c]
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 0x100d8d26
cmp dword [esi + 0x130], 0
je 0x100d8d86
add edx, dword [esi + 0x12c]
xor edi, edi
movzx ebx, byte [edx + edi]
xor ebx, ecx
imul ecx, ebx, 0x1000193
inc edi
cmp dword [esi + 0x130], edi
jne 0x100d8d71
mov edx, dword [esi + 0x14]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov edi, dword [eax + ecx*8 + 4]
cmp edi, dword [edx + 4]
je 0x100d935d
mov ebx, edi
add ecx, ecx
mov edi, dword [eax + ecx*4]
mov eax, dword [esi + 0x110]
cmp eax, dword [ebx + 0x18]
jne 0x100d8dd5
cmp dword [ebx + 0x1c], 0x10
jb 0x100d8db9
mov eax, dword [ebx + 8]
jmp 0x100d8dbc
lea eax, [ebx + 8]
push dword [esi + 0x110]
push eax
push dword [esi + 0x12c]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100d8de2
cmp ebx, edi
je 0x100d935d
mov ebx, dword [ebx + 4]
jmp 0x100d8da3
add ebx, 0x20
lea ecx, [esi + 0xa0]
call fcn.10014f60
mov ecx, ebx
mov dword [0x1025e680], ebx
mov dword [esi + 0x268], 0xffffffff
mov edx, dword [esi + 0x20]
mov edi, dword [esi + 0x13c]
jmp 0x100cff1a
mov dword [esi + 0x268], 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 + 0x268], 0x6b
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 + 0x268], 0x4f
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 + 0x268], 0x5d
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 + 0x268], 0x25
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 + 0x268], 0x33
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 + 0x268], 0x41
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 + 0x268], 0x59
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 + 0x268], 0x23
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 + 0x268], 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 + 0x268], 0x4d
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 + 0x268], 0x17
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 + 0x268], 0x2f
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 + 0x268], 0x69
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 + 0x268], 0x4b
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 + 0x268], 0x67
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 + 0x268], 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 + 0x268], 0x1d
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 + 0x268], 0x1f
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 + 0x268], 0x3b
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 + 0x268], 0x47
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 + 0x268], 0x51
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 + 0x268], 0x57
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 + 0x268], 0x6d
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 + 0x268], 0x71
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 + 0x268], 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 + 0x268], 0x19
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 + 0x268], 0x1b
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 + 0x268], 0x27
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 + 0x268], 0x35
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 + 0x268], 0x43
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 + 0x268], 0x45
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 + 0x268], 0x53
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 + 0x268], 0x55
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 + 0x268], 0x5f
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 + 0x268], 0x73
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 + 0x268], 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 + 0x268], 0x29
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 + 0x268], 0x2b
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 + 0x268], 0x37
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 + 0x268], 0x39
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 + 0x268], 0x49
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 + 0x268], 0x63
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 + 0x268], 0x65
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 + 0x268], 0x6f
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 + 0x268], 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 + 0x268], 0x2d
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 + 0x268], 0x61
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 + 0x268], 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 + 0x268], 0x3f
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 + 0x268], 0x21
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 + 0x268], 0x3d
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 + 0x268], 0x77
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 + 0x268], 0x15
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 + 0x268], 0x75
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 + 0x268], 0x31
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 + 0x268], 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 + 0x268], 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 + 0x268], 0x5b
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 + 0x268], 1
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, 0x14
lea esi, [ebp - 0x26c]
mov ebp, dword [esi + 0x258]
lea ecx, [esi + 0xa0]
call fcn.10014f60
add esp, 0x14
pop ebp
ret