Function at 0x100e7670
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xffffffc0
push edi
push esi
push ebx
sub esp, 0x134
inc dword [0x10210c88]
cmp dword [0x1020cbc4], 0
je 0x100e8aff
mov edi, dword [0x10282f80]
test edi, edi
jle 0x100e7913
mov eax, dword [0x10219190]
mov ecx, 1
mov edx, 0xa10
xor ebx, ebx
cmp dword [edx + eax + 0x474], 0
movsd xmm0, qword [edx + eax + 0x48]
movsd qword [edx + eax + 0x50], xmm0
jle 0x100e76fc
movsd xmm0, qword [edx + eax + 0x50]
mov dword [esp + 0x80], edi
mov esi, ebx
mov edi, dword [edx + eax + 0x114]
mov edi, dword [edi + esi*4]
subsd xmm0, qword [edi + 0x18]
movsd qword [edx + eax + 0x50], xmm0
inc esi
cmp esi, dword [edx + eax + 0x474]
jl 0x100e76d6
mov edi, dword [esp + 0x80]
add edx, 0xa10
inc ecx
cmp ecx, edi
jle 0x100e76b1
mov edx, 1
mov dword [esp + 0x80], edx
mov esi, 0xa10
lea ecx, [esi + eax]
mov edx, dword [ecx + 0x82c]
cmp edx, 1
jle 0x100e78f2
mov dword [esp + 0x84], ecx
mov dword [esp + 0x8c], esi
mov dword [esp + 0x90], eax
xor edi, edi
mov dword [esp + 0x88], edi
xor ebx, ebx
mov ecx, dword [esp + 0x8c]
mov eax, dword [esp + 0x90]
mov esi, dword [eax + ecx + 0x820]
mov edi, dword [eax + ecx + 0x824]
lea ecx, [ebx*8]
movsd xmm0, qword [edi + ecx]
lea eax, [esi + ebx*8]
movsd xmm2, qword [eax + 8]
comisd xmm0, xmm2
jb 0x100e7842
movsd xmm1, qword [esi + ecx]
movsd xmm0, qword [edi + ecx + 8]
comisd xmm0, xmm1
jb 0x100e7847
mov edx, dword [esp + 0x90]
minsd xmm1, xmm2
movsd qword [esi + ecx], xmm1
mov esi, dword [esp + 0x8c]
mov eax, dword [edx + esi + 0x824]
movsd xmm0, qword [eax + ecx]
maxsd xmm0, qword [eax + ecx + 8]
movsd qword [eax + ecx], xmm0
lea ecx, [ebx + 1]
mov edx, dword [edx + esi + 0x82c]
dec edx
cmp ecx, edx
jge 0x100e781c
mov eax, dword [esp + 0x84]
mov edx, dword [eax + 0x820]
movsd xmm0, qword [edx + ecx*8 + 8]
movsd qword [edx + ecx*8], xmm0
mov esi, dword [eax + 0x824]
movsd xmm1, qword [esi + ecx*8 + 8]
movsd qword [esi + ecx*8], xmm1
mov edi, dword [eax + 0x828]
movsd xmm2, qword [edi + ecx*8 + 8]
movsd qword [edi + ecx*8], xmm2
inc ecx
mov edx, dword [eax + 0x82c]
dec edx
cmp ecx, edx
jl 0x100e77dd
mov ecx, dword [esp + 0x8c]
mov eax, dword [esp + 0x90]
mov dword [esp + 0x88], 1
dec ebx
mov dword [eax + ecx + 0x82c], edx
jmp 0x100e78c9
movsd xmm1, qword [esi + ecx]
comisd xmm1, xmm2
jb 0x100e78c9
lea edx, [eax + 8]
push edx
push eax
call fcn.100e3df0
mov eax, dword [0x10219190]
mov edx, dword [esp + 0x94]
mov ecx, dword [eax + edx + 0x824]
lea edi, [ecx + ebx*8]
lea esi, [edi + 8]
push esi
push edi
call fcn.100e3df0
mov eax, dword [0x10219190]
mov edx, dword [esp + 0x9c]
mov ecx, dword [eax + edx + 0x828]
lea edi, [ecx + ebx*8]
lea esi, [edi + 8]
push esi
push edi
call fcn.100e3df0
add esp, 0x18
mov edx, dword [0x10219190]
mov eax, dword [esp + 0x8c]
mov dword [esp + 0x88], 1
lea ecx, [eax + edx]
mov dword [esp + 0x90], edx
mov edx, dword [ecx + 0x82c]
mov dword [esp + 0x84], ecx
inc ebx
lea eax, [edx - 1]
cmp ebx, eax
jl 0x100e774a
mov edi, dword [esp + 0x88]
mov esi, dword [esp + 0x8c]
mov eax, dword [esp + 0x90]
test edi, edi
jne 0x100e7718
mov edx, dword [esp + 0x80]
add esi, 0xa10
inc edx
cmp edx, dword [0x10282f80]
mov dword [esp + 0x80], edx
jle 0x100e7718
call fcn.10188b40
call fcn.100e9590
mov esi, dword [0x10282f80]
cvtsi2sd xmm1, esi
divsd xmm1, qword [0x101e7af0]
mov eax, dword [0x10219190]
mov edx, dword [0x102222a0]
cvttsd2si ecx, xmm1
test ecx, ecx
jg 0x100e7947
mov ecx, 1
imul ebx, dword [edx + ecx*4], 0xa10
movsd xmm1, qword [eax + ebx + 0x48]
test esi, esi
pxor xmm0, xmm0
jle 0x100e7a6a
mov ecx, 1
mov edx, 0xa10
movaps xmm5, xmm0
mov ebx, dword [edx + eax + 0x2c]
mov edi, dword [edx + eax + 0x24]
movsd xmm3, qword [ebx]
subsd xmm3, qword [edi]
mulsd xmm3, xmm3
mov ebx, dword [edx + eax + 0x30]
mov edi, dword [edx + eax + 0x28]
movsd xmm2, qword [ebx]
subsd xmm2, qword [edi]
mulsd xmm2, xmm2
add edx, 0xa10
inc ecx
addsd xmm3, xmm2
cmp ecx, esi
sqrtsd xmm4, xmm3
movaps xmm0, xmm4
maxsd xmm0, xmm5
jle 0x100e796a
movsd xmm2, qword [0x101e7af8]
mulsd xmm1, xmm2
mulsd xmm0, xmm2
mov edx, 1
mov ecx, 0xa10
comisd xmm1, xmmword [ecx + eax + 0x48]
mov ebx, dword [ecx + eax + 0x2c]
mov edi, dword [ecx + eax + 0x24]
movsd xmm3, qword [ebx]
subsd xmm3, qword [edi]
mulsd xmm3, xmm3
mov ebx, dword [ecx + eax + 0x30]
mov edi, dword [ecx + eax + 0x28]
movsd xmm2, qword [ebx]
subsd xmm2, qword [edi]
mulsd xmm2, xmm2
addsd xmm3, xmm2
sqrtsd xmm2, xmm3
jbe 0x100e7a0e
comisd xmm0, xmm2
jbe 0x100e7a0e
mov ebx, 1
jmp 0x100e7a10
xor ebx, ebx
mov dword [ecx + eax + 0x5c], ebx
add ecx, 0xa10
inc edx
cmp edx, esi
jle 0x100e79c9
mov ecx, 1
mov edx, 0xa10
movsd xmm2, qword [edx + eax + 0x48]
mov ebx, dword [edx + eax + 0x2c]
mov edi, dword [edx + eax + 0x24]
movsd xmm1, qword [ebx]
subsd xmm1, qword [edi]
mov ebx, dword [edx + eax + 0x30]
mov edi, dword [edx + eax + 0x28]
movsd xmm0, qword [ebx]
subsd xmm0, qword [edi]
mulsd xmm1, xmm0
divsd xmm2, xmm1
inc ecx
movsd qword [edx + eax + 0x68], xmm2
add edx, 0xa10
cmp ecx, esi
jle 0x100e7a29
test esi, esi
jle 0x100e7ae7
mov edx, 1
mov ebx, 0xa10
mov edi, esi
mov esi, edx
xor ecx, ecx
mov edx, dword [eax + ebx + 0x91c]
test edx, edx
jle 0x100e7ab9
mov dword [esp + 0x80], esi
mov edi, ecx
mov ecx, dword [eax + ebx + 0x918]
lea esi, [edi + edi*8]
cmp dword [ecx + esi*8 + 8], 0
jle 0x100e9366
inc edi
cmp edi, edx
jl 0x100e7a90
mov esi, dword [esp + 0x80]
mov edi, dword [0x10282f80]
xor ecx, ecx
add ebx, 0xa10
inc esi
cmp esi, edi
jle 0x100e7a7c
mov esi, edi
test esi, esi
jle 0x100e7ae7
mov ecx, 1
add eax, 0x1230
mov edx, eax
inc ecx
add eax, 0xa10
cmp ecx, esi
jle 0x100e7ad4
mov dword [esp + 0xec], edx
mov ecx, dword [0x10220314]
test ecx, ecx
jne 0x100e7b51
push 4
push esi
call fcn.101beb7a
mov dword [0x10220310], eax
push 4
push dword [0x10282f80]
call fcn.101beb7a
add esp, 0x10
mov esi, dword [0x10282f80]
mov ecx, dword [0x10220314]
mov dword [0x1022030c], eax
test esi, esi
jle 0x100e7b51
mov ebx, 1
mov edi, 0xa10
mov eax, dword [0x10219190]
cmp dword [eax + edi + 0x87c], 0
jl 0x100e8bdb
lea eax, [edi + 0xa10]
lea edx, [ebx + 1]
mov edi, eax
mov ebx, edx
cmp edx, esi
jle 0x100e7b2d
mov dword [0x102202e8], 0
xor ebx, ebx
test ecx, ecx
mov dword [0x102202e4], 0x7fffffff
jle 0x100e7c1e
xor edi, edi
mov esi, 0xffffffff
mov eax, dword [0x10220310]
mov ecx, dword [0x10219190]
movsd xmm0, qword [0x101e7b00]
mov edx, dword [eax + edi*4]
imul eax, dword [edx], 0xa10
movsd qword [esp + 4], xmm0
mov dword [esp + 0xc], esi
mov dword [esp + 0x10], esi
lea edx, [ecx + eax + 0x820]
mov dword [esp], edx
lea ecx, [esp + 0xa0]
mov dword [esp + 0x14], ecx
lea eax, [esp + 0xa4]
mov dword [esp + 0x18], eax
call fcn.100ee6e0
mov eax, dword [esp + 0xa4]
push dword [esp + 0xa0]
mov edx, dword [0x102202e8]
mov ecx, dword [0x102202e4]
cmp eax, edx
cmovge edx, eax
cmp eax, ecx
cmovl ecx, eax
mov dword [0x102202e8], edx
mov edx, dword [0x1022030c]
mov dword [0x102202e4], ecx
mov ecx, dword [edx + edi*4]
imul ecx, eax
add ebx, ecx
call fcn.101bceaa
pop ecx
mov ecx, dword [0x10220314]
inc edi
cmp edi, ecx
jl 0x100e7b76
mov esi, dword [0x10282f80]
mov eax, ebx
cdq
idiv esi
test esi, esi
mov dword [0x102202e0], eax
jle 0x100e8bd4
mov ebx, dword [0x10219190]
cmp esi, 4
jl 0x100e8bcb
movdqa xmm1, xmmword [0x101e7ae0]
mov edi, esi
and edi, 3
neg edi
add edi, esi
pxor xmm2, xmm2
movdqa xmm0, xmm2
xor edx, edx
lea eax, [ebx + 0x1294]
add edx, 4
movd xmm3, dword [eax + 0x1e30]
movd xmm5, dword [eax + 0xa10]
punpckldq xmm5, xmm3
movd xmm4, dword [eax + 0x1420]
movd xmm6, dword [eax]
punpckldq xmm6, xmm4
punpckldq xmm6, xmm5
pcmpeqd xmm6, xmm2
pandn xmm6, xmm1
paddd xmm0, xmm6
add eax, 0x2840
cmp edx, edi
jb 0x100e7c60
movdqa xmm1, xmm0
psrldq xmm1, 8
paddd xmm0, xmm1
movdqa xmm2, xmm0
psrldq xmm2, 4
paddd xmm0, xmm2
movd edx, xmm0
imul eax, edi, 0xa10
cmp edi, esi
jae 0x100e7cff
mov dword [esp + 0x94], ecx
mov dword [esp + 0xf0], esi
mov esi, dword [eax + ebx + 0x1294]
mov ecx, 1
test esi, esi
cmovne esi, ecx
add eax, 0xa10
inc edi
add edx, esi
cmp edi, dword [esp + 0xf0]
jb 0x100e7cd6
mov ecx, dword [esp + 0x94]
mov esi, 1
xor eax, eax
cmp edx, 0x12c
cmovle esi, eax
mov dword [0x102202f0], 0
push 4
push ecx
call fcn.101beb7a
mov dword [0x10220300], eax
push 4
push dword [0x10220314]
call fcn.101beb7a
mov dword [0x102202fc], eax
push 4
push dword [0x10220314]
call fcn.101beb7a
mov dword [0x102202f8], eax
push 4
push dword [0x10220314]
call fcn.101beb7a
mov dword [0x102202f4], eax
push 4
push dword [0x10220314]
call fcn.101beb7a
mov dword [0x10220308], eax
push 4
push dword [0x10220314]
call fcn.101beb7a
mov dword [0x10220304], eax
push 4
push dword [0x10220314]
call fcn.101beb7a
add esp, 0x38
mov ebx, eax
mov eax, dword [0x10220314]
test eax, eax
jle 0x100e8341
movsd xmm2, qword [0x101e7b20]
movsd xmm1, qword [0x101e7b28]
movsd xmm0, qword [0x101e7b38]
mov dword [esp + 0xd8], ebx
xor edi, edi
mov dword [esp + 0xdc], esi
mov ecx, dword [0x10220310]
mov ebx, dword [0x10219190]
mov edx, dword [ecx + edi*4]
imul edx, dword [edx], 0xa10
mov esi, dword [edx + ebx + 0xd0]
mov esi, dword [esi]
mov ebx, edi
cmp edi, eax
jge 0x100e832a
mov dword [esp + 0x98], esi
mov dword [esp + 0x9c], edx
mov edx, dword [ecx + ebx*4]
mov edx, dword [edx]
cmp edi, ebx
jne 0x100e7e4f
movsd xmm1, qword [0x101e7b38]
movsd qword [esp + 0xb0], xmm1
movsd qword [esp + 0xb8], xmm1
movsd qword [esp + 0xc0], xmm1
movsd qword [esp + 0xc8], xmm1
mov dword [esp + 0xd4], 0
pxor xmm0, xmm0
movsd qword [esp + 0xa8], xmm0
jmp 0x100e7f89
mov ecx, dword [esp + 0xd8]
cmp dword [ecx + edi*4], 0
je 0x100e7e66
cmp dword [ecx + ebx*4], 0
jne 0x100e8317
imul ecx, edx, 0xa10
mov edx, dword [esp + 0x98]
movsd xmm0, qword [edx + 0x18]
movsd qword [esp + 8], xmm0
mov dword [esp + 0xd0], ebx
mov ebx, dword [0x10219190]
mov esi, dword [ecx + ebx + 0xd0]
mov eax, dword [esi]
mov esi, dword [edx]
mov dword [esp], esi
mov esi, dword [edx + 0xc]
mov dword [esp + 4], esi
movsd xmm1, qword [edx + 0x48]
lea esi, [esp + 0x10]
movsd qword [esi], xmm1
movsd xmm2, qword [edx + 0x50]
movsd qword [esi + 8], xmm2
mov edx, dword [edx + 0x10]
mov esi, dword [esp + 0x9c]
movsd xmm3, qword [eax + 0x18]
movsd qword [esp + 0x34], xmm3
mov dword [esp + 0x20], edx
mov edx, dword [esi + ebx + 0x980]
mov dword [esp + 0x24], edx
lea edx, [ebx + esi + 0x820]
mov esi, dword [eax]
mov dword [esp + 0x28], edx
mov edx, dword [eax + 0xc]
mov dword [esp + 0x2c], esi
lea esi, [esp + 0x3c]
mov dword [esp + 0x30], edx
lea edx, [esp + 0xa8]
movsd xmm4, qword [eax + 0x48]
movsd qword [esi], xmm4
movsd xmm5, qword [eax + 0x50]
movsd qword [esi + 8], xmm5
mov eax, dword [eax + 0x10]
mov dword [esp + 0x4c], eax
mov eax, dword [ecx + ebx + 0x980]
mov dword [esp + 0x50], eax
lea eax, [esp + 0xd4]
lea ecx, [ebx + ecx + 0x820]
mov ebx, dword [esp + 0xdc]
mov dword [esp + 0x54], ecx
mov dword [esp + 0x58], ebx
mov dword [esp + 0x5c], eax
mov dword [esp + 0x60], edx
lea ecx, [esp + 0xc8]
mov dword [esp + 0x64], ecx
lea ebx, [esp + 0xc0]
mov dword [esp + 0x68], ebx
mov ebx, dword [esp + 0xd0]
lea esi, [esp + 0xb8]
mov dword [esp + 0x6c], esi
lea eax, [esp + 0xb0]
mov dword [esp + 0x70], eax
call fcn.101894f0
movsd xmm1, qword [esp + 0xc8]
comisd xmm1, xmmword [0x101e7b20]
jb 0x100e8312
movsd xmm0, qword [esp + 0xc0]
comisd xmm0, xmmword [0x101e7b28]
jb 0x100e8312
movsd xmm0, qword [esp + 0xb8]
comisd xmm0, xmmword [0x101e7b28]
jb 0x100e8312
mov edx, dword [esp + 0xd8]
cmp dword [edx + edi*4], 0
mov eax, dword [edx + ebx*4]
je 0x100e7ff2
mov ecx, dword [0x10219190]
mov edx, dword [esp + 0x9c]
mov esi, dword [edx + ecx + 0x888]
test eax, eax
je 0x100e8008
jmp 0x100e80e9
test eax, eax
jne 0x100e80e9
mov esi, dword [0x102202f0]
lea eax, [esi + 1]
mov dword [0x102202f0], eax
mov eax, dword [0x10220300]
mov ecx, dword [0x1022030c]
mov edx, dword [0x102202fc]
mov ecx, dword [ecx + ebx*4]
add ecx, dword [edx + esi*4]
shl ecx, 2
push ecx
push dword [eax + esi*4]
call fcn.101bcb76
add esp, 8
mov edx, dword [0x10220300]
mov dword [edx + esi*4], eax
mov eax, dword [0x1022030c]
cmp dword [eax + ebx*4], 0
jle 0x100e80a2
mov eax, dword [0x10220310]
mov dword [esp + 0x94], edi
xor ecx, ecx
mov edi, dword [0x10220300]
mov edx, dword [0x102202fc]
mov eax, dword [eax + ebx*4]
mov edx, dword [edx + esi*4]
mov edi, dword [edi + esi*4]
mov eax, dword [eax + ecx*4]
mov dword [edi + edx*4], eax
mov eax, dword [0x102202fc]
inc dword [eax + esi*4]
mov eax, dword [0x10220310]
mov edx, dword [eax + ebx*4]
imul edi, dword [edx + ecx*4], 0xa10
mov edx, dword [0x10219190]
mov dword [edi + edx + 0x888], esi
mov edi, dword [0x1022030c]
inc ecx
cmp ecx, dword [edi + ebx*4]
jl 0x100e8050
mov edi, dword [esp + 0x94]
mov eax, dword [0x102202f8]
mov edx, dword [0x102202f4]
mov ecx, dword [edx + esi*4]
lea edx, [ecx*4 + 4]
push edx
push dword [eax + esi*4]
call fcn.101bcb76
add esp, 8
mov edx, dword [0x102202f8]
mov dword [edx + esi*4], eax
mov ecx, dword [0x102202f8]
mov ecx, dword [ecx + esi*4]
mov eax, dword [0x102202f4]
mov eax, dword [eax + esi*4]
mov dword [ecx + eax*4], ebx
mov edx, dword [0x102202f4]
inc dword [edx + esi*4]
mov esi, dword [0x10220308]
mov eax, dword [0x10220304]
mov edx, dword [eax + edi*4]
lea ecx, [edx + edx*2]
shl ecx, 4
add ecx, 0x30
push ecx
push dword [esi + edi*4]
call fcn.101bcb76
add esp, 8
mov edx, dword [0x10220308]
movsd xmm0, qword [0x101e7b18]
mov dword [esp + 0xd0], ebx
mov dword [edx + edi*4], eax
mov eax, dword [0x10220308]
mov ecx, dword [0x10220304]
mov esi, dword [ecx + edi*4]
mov ecx, dword [eax + edi*4]
lea edx, [esi + esi*2]
shl edx, 4
mov dword [edx + ecx], ebx
mov eax, dword [0x10220308]
mov ebx, dword [0x10220304]
mov esi, dword [ebx + edi*4]
lea ecx, [esi + esi*2]
mov edx, dword [esp + 0xd4]
mov esi, dword [eax + edi*4]
shl ecx, 4
mov dword [ecx + esi + 4], edx
subsd xmm0, qword [esp + 0xa8]
mov edx, dword [ebx + edi*4]
mov esi, dword [eax + edi*4]
lea ecx, [edx + edx*2]
shl ecx, 4
movsd qword [ecx + esi + 8], xmm0
movsd xmm1, qword [esp + 0xc8]
mov edx, dword [ebx + edi*4]
mov esi, dword [eax + edi*4]
lea ecx, [edx + edx*2]
shl ecx, 4
movsd qword [ecx + esi + 0x10], xmm1
mov edx, dword [ebx + edi*4]
lea ecx, [edx + edx*2]
movsd xmm2, qword [esp + 0xb8]
mov esi, dword [eax + edi*4]
shl ecx, 4
movsd qword [ecx + esi + 0x20], xmm2
mov edx, dword [ebx + edi*4]
movsd xmm3, qword [esp + 0xc0]
mov esi, dword [eax + edi*4]
lea ecx, [edx + edx*2]
shl ecx, 4
movsd qword [ecx + esi + 0x18], xmm3
movsd xmm4, qword [esp + 0xb0]
mov edx, dword [ebx + edi*4]
mov eax, dword [eax + edi*4]
lea ecx, [edx + edx*2]
shl ecx, 4
movsd qword [ecx + eax + 0x28], xmm4
inc dword [ebx + edi*4]
mov ebx, dword [esp + 0xd0]
cmp edi, ebx
je 0x100e82f9
mov esi, dword [0x10220308]
mov eax, dword [0x10220304]
mov edx, dword [eax + ebx*4]
lea ecx, [edx + edx*2]
shl ecx, 4
add ecx, 0x30
push ecx
push dword [esi + ebx*4]
call fcn.101bcb76
add esp, 8
mov edx, dword [0x10220308]
mov dword [esp + 0x94], edi
mov dword [edx + ebx*4], eax
mov ecx, dword [0x10220304]
mov eax, dword [0x10220308]
mov esi, dword [ecx + ebx*4]
mov edx, dword [eax + ebx*4]
lea ecx, [esi + esi*2]
shl ecx, 4
mov dword [edx + ecx], edi
mov eax, dword [0x10220308]
mov edi, dword [0x10220304]
mov esi, dword [edi + ebx*4]
lea ecx, [esi + esi*2]
mov edx, dword [esp + 0xd4]
mov esi, dword [eax + ebx*4]
shl ecx, 4
mov dword [ecx + esi + 4], edx
mov edx, dword [edi + ebx*4]
movsd xmm0, qword [esp + 0xa8]
mov esi, dword [eax + ebx*4]
lea ecx, [edx + edx*2]
shl ecx, 4
movsd qword [ecx + esi + 8], xmm0
movsd xmm1, qword [esp + 0xc8]
mov edx, dword [edi + ebx*4]
mov esi, dword [eax + ebx*4]
lea ecx, [edx + edx*2]
shl ecx, 4
movsd qword [ecx + esi + 0x10], xmm1
movsd xmm2, qword [esp + 0xb8]
mov edx, dword [edi + ebx*4]
mov esi, dword [eax + ebx*4]
lea ecx, [edx + edx*2]
shl ecx, 4
movsd qword [ecx + esi + 0x20], xmm2
movsd xmm3, qword [esp + 0xc0]
mov edx, dword [edi + ebx*4]
mov esi, dword [eax + ebx*4]
lea ecx, [edx + edx*2]
shl ecx, 4
movsd qword [ecx + esi + 0x18], xmm3
mov edx, dword [edi + ebx*4]
lea ecx, [edx + edx*2]
movsd xmm4, qword [esp + 0xb0]
mov eax, dword [eax + ebx*4]
shl ecx, 4
movsd qword [ecx + eax + 0x28], xmm4
inc dword [edi + ebx*4]
mov edi, dword [esp + 0x94]
mov edx, dword [esp + 0xd8]
mov eax, 1
mov dword [edx + ebx*4], eax
mov dword [edx + edi*4], eax
mov eax, dword [0x10220314]
jmp 0x100e8317
mov eax, dword [0x10220314]
inc ebx
cmp ebx, eax
jge 0x100e832a
lea esi, [esi]
mov ecx, dword [0x10220310]
jmp 0x100e7dfd
inc edi
cmp edi, eax
jl 0x100e7dc7
mov ebx, dword [esp + 0xd8]
mov esi, dword [esp + 0xdc]
mov edx, dword [0x102202f0]
test edx, edx
jle 0x100e8425
mov eax, dword [0x102202fc]
mov dword [esp + 0xd8], ebx
mov dword [esp + 0xdc], esi
xor edi, edi
xor ebx, ebx
push 0x100adef0
mov edx, dword [0x10220300]
push 4
push dword [eax + edi*4]
push dword [edx + edi*4]
call fcn.101bec80
push 0x100adef0
mov edx, dword [0x102202f8]
mov eax, dword [0x102202f4]
push 4
push dword [eax + edi*4]
push dword [edx + edi*4]
call fcn.101bec80
add esp, 0x20
mov eax, dword [0x102202fc]
cmp dword [eax + edi*4], 0
jle 0x100e8403
mov ecx, dword [0x10219190]
mov esi, dword [0x10220300]
mov edx, ebx
mov ebx, dword [esi + edi*4]
imul ebx, dword [ebx + edx*4], 0xa10
test edx, edx
mov dword [ebx + ecx + 0x88c], edx
jne 0x100e83e3
mov ebx, dword [esi + edi*4]
imul ebx, dword [ebx + edx*4], 0xa10
mov dword [ebx + ecx + 0x890], 1
jmp 0x100e83f8
mov ebx, dword [esi + edi*4]
imul ebx, dword [ebx + edx*4], 0xa10
mov dword [ebx + ecx + 0x890], 0
inc edx
cmp edx, dword [eax + edi*4]
jl 0x100e83b7
lea esi, [esi]
xor ebx, ebx
mov edx, dword [0x102202f0]
inc edi
cmp edi, edx
jl 0x100e8366
mov ebx, dword [esp + 0xd8]
mov esi, dword [esp + 0xdc]
mov eax, dword [0x10220314]
test eax, eax
jle 0x100e845b
xor edi, edi
push 0x100adef0
mov edx, dword [0x10220308]
mov eax, dword [0x10220304]
push 0x30
push dword [eax + edi*4]
push dword [edx + edi*4]
call fcn.101bec80
add esp, 0x10
mov eax, dword [0x10220314]
inc edi
cmp edi, eax
jl 0x100e842b
mov edx, dword [0x102202f0]
test edx, edx
jle 0x100e88e8
mov ecx, dword [0x102202f4]
mov dword [esp + 0xd8], ebx
mov dword [esp + 0xdc], esi
xor eax, eax
xor ebx, ebx
cmp dword [ecx + eax*4], 0
jle 0x100e88d3
mov edx, dword [ecx + eax*4]
mov dword [esp + 0x120], eax
mov esi, ebx
mov dword [esp + 0x9c], ecx
lea ecx, [esi + 1]
mov ebx, ecx
mov eax, ebx
cmp ecx, edx
jge 0x100e88b3
mov dword [esp + 0x98], eax
mov dword [esp + 0x94], ecx
mov dword [esp + 0x124], edx
mov dword [esp + 0x11c], esi
mov esi, dword [0x102202f8]
mov edi, dword [esp + 0x120]
mov eax, dword [esp + 0x11c]
mov ecx, dword [0x10220304]
mov edx, dword [esi + edi*4]
mov esi, dword [edx + eax*4]
mov edi, dword [edx + ebx*4]
mov edx, dword [ecx + esi*4]
test edx, edx
jle 0x100e851c
mov ecx, dword [0x10220308]
mov ecx, dword [ecx + esi*4]
mov dword [esp + 0x118], ebx
xor eax, eax
lea ebx, [eax + eax*2]
shl ebx, 4
cmp edi, dword [ecx + ebx]
je 0x100e8bbf
jl 0x100e8515
inc eax
cmp eax, edx
jl 0x100e84ff
mov ebx, dword [esp + 0x118]
mov dword [esp + 0x118], ebx
mov ebx, dword [0x10220310]
mov ecx, dword [ebx + esi*4]
imul eax, dword [ecx], 0xa10
mov dword [esp + 0x110], edi
mov edi, dword [ebx + edi*4]
imul ecx, dword [edi], 0xa10
mov dword [esp + 0x114], esi
mov esi, dword [0x10219190]
mov edx, dword [eax + esi + 0xd0]
mov edx, dword [edx]
mov ebx, dword [ecx + esi + 0xd0]
mov edi, dword [ebx]
mov ebx, dword [edx]
movsd xmm0, qword [edx + 0x18]
movsd qword [esp + 8], xmm0
mov dword [esp], ebx
mov ebx, dword [edx + 0xc]
mov dword [esp + 4], ebx
movsd xmm1, qword [edx + 0x48]
lea ebx, [esp + 0x10]
movsd qword [ebx], xmm1
movsd xmm2, qword [edx + 0x50]
movsd qword [ebx + 8], xmm2
lea ebx, [esp + 0x3c]
mov edx, dword [edx + 0x10]
movsd xmm3, qword [edi + 0x18]
movsd qword [esp + 0x34], xmm3
mov dword [esp + 0x20], edx
mov edx, dword [eax + esi + 0x980]
mov dword [esp + 0x24], edx
mov edx, dword [edi + 0xc]
mov dword [esp + 0x30], edx
lea edx, [esp + 0xd0]
lea eax, [esi + eax + 0x820]
mov dword [esp + 0x28], eax
mov eax, dword [edi]
mov dword [esp + 0x2c], eax
movsd xmm4, qword [edi + 0x48]
movsd qword [ebx], xmm4
movsd xmm5, qword [edi + 0x50]
movsd qword [ebx + 8], xmm5
mov edi, dword [edi + 0x10]
mov eax, dword [ecx + esi + 0x980]
lea esi, [esi + ecx + 0x820]
mov dword [esp + 0x4c], edi
mov dword [esp + 0x50], eax
mov eax, dword [esp + 0xdc]
mov dword [esp + 0x54], esi
mov dword [esp + 0x58], eax
mov dword [esp + 0x5c], edx
lea ecx, [esp + 0xe0]
mov dword [esp + 0x60], ecx
lea ebx, [esp + 0xf0]
mov dword [esp + 0x64], ebx
mov ebx, dword [esp + 0x118]
lea esi, [esp + 0xf8]
mov dword [esp + 0x68], esi
mov esi, dword [esp + 0x114]
lea edi, [esp + 0x100]
mov dword [esp + 0x6c], edi
mov edi, dword [esp + 0x110]
lea eax, [esp + 0x108]
mov dword [esp + 0x70], eax
call fcn.101894f0
mov eax, dword [0x10220308]
mov edx, dword [0x10220304]
mov ecx, dword [edx + esi*4]
lea edx, [ecx + ecx*2]
shl edx, 4
add edx, 0x30
push edx
push dword [eax + esi*4]
call fcn.101bcb76
mov edx, dword [0x10220308]
movsd xmm0, qword [0x101e7b18]
mov dword [esp + 0x118], edi
mov dword [edx + esi*4], eax
mov eax, dword [0x10220308]
mov ecx, dword [0x10220304]
mov dword [esp + 0x120], ebx
mov ebx, dword [ecx + esi*4]
mov ecx, dword [eax + esi*4]
lea edx, [ebx + ebx*2]
shl edx, 4
mov dword [edx + ecx], edi
mov eax, dword [0x10220308]
mov edi, dword [0x10220304]
mov edx, dword [esp + 0xd8]
mov ebx, dword [edi + esi*4]
lea ecx, [ebx + ebx*2]
mov ebx, dword [eax + esi*4]
shl ecx, 4
mov dword [ecx + ebx + 4], edx
subsd xmm0, qword [esp + 0xe8]
mov edx, dword [edi + esi*4]
mov ebx, dword [eax + esi*4]
lea ecx, [edx + edx*2]
shl ecx, 4
movsd qword [ecx + ebx + 8], xmm0
mov edx, dword [edi + esi*4]
lea ecx, [edx + edx*2]
movsd xmm1, qword [esp + 0xf8]
mov ebx, dword [eax + esi*4]
shl ecx, 4
movsd qword [ecx + ebx + 0x10], xmm1
movsd xmm2, qword [esp + 0x108]
mov edx, dword [edi + esi*4]
mov ebx, dword [eax + esi*4]
lea ecx, [edx + edx*2]
shl ecx, 4
movsd qword [ecx + ebx + 0x20], xmm2
movsd xmm3, qword [esp + 0x100]
mov edx, dword [edi + esi*4]
mov ebx, dword [eax + esi*4]
lea ecx, [edx + edx*2]
shl ecx, 4
movsd qword [ecx + ebx + 0x18], xmm3
movsd xmm4, qword [esp + 0x110]
mov edx, dword [edi + esi*4]
mov eax, dword [eax + esi*4]
lea ecx, [edx + edx*2]
shl ecx, 4
movsd qword [ecx + eax + 0x28], xmm4
inc dword [edi + esi*4]
mov ebx, dword [0x10220308]
mov eax, dword [0x10220304]
mov edi, dword [esp + 0x118]
mov edx, dword [eax + edi*4]
lea ecx, [edx + edx*2]
shl ecx, 4
add ecx, 0x30
push ecx
push dword [ebx + edi*4]
mov ebx, dword [esp + 0x128]
call fcn.101bcb76
add esp, 0x10
mov edx, dword [0x10220308]
mov dword [esp + 0x118], ebx
mov dword [edx + edi*4], eax
mov eax, dword [0x10220308]
mov ecx, dword [0x10220304]
mov ebx, dword [ecx + edi*4]
mov ecx, dword [eax + edi*4]
lea edx, [ebx + ebx*2]
shl edx, 4
mov dword [edx + ecx], esi
mov eax, dword [0x10220308]
mov esi, dword [0x10220304]
mov ebx, dword [esi + edi*4]
lea ecx, [ebx + ebx*2]
mov edx, dword [esp + 0xd0]
mov ebx, dword [eax + edi*4]
shl ecx, 4
mov dword [ecx + ebx + 4], edx
mov edx, dword [esi + edi*4]
movsd xmm0, qword [esp + 0xe0]
mov ebx, dword [eax + edi*4]
lea ecx, [edx + edx*2]
shl ecx, 4
movsd qword [ecx + ebx + 8], xmm0
movsd xmm1, qword [esp + 0xf0]
mov edx, dword [esi + edi*4]
mov ebx, dword [eax + edi*4]
lea ecx, [edx + edx*2]
shl ecx, 4
movsd qword [ecx + ebx + 0x10], xmm1
movsd xmm2, qword [esp + 0x100]
mov edx, dword [esi + edi*4]
mov ebx, dword [eax + edi*4]
lea ecx, [edx + edx*2]
shl ecx, 4
movsd qword [ecx + ebx + 0x20], xmm2
movsd xmm3, qword [esp + 0xf8]
mov edx, dword [esi + edi*4]
mov ebx, dword [eax + edi*4]
lea ecx, [edx + edx*2]
shl ecx, 4
movsd qword [ecx + ebx + 0x18], xmm3
mov edx, dword [esi + edi*4]
lea ecx, [edx + edx*2]
movsd xmm4, qword [esp + 0x108]
mov ebx, dword [esp + 0x118]
mov eax, dword [eax + edi*4]
shl ecx, 4
movsd qword [ecx + eax + 0x28], xmm4
mov eax, dword [esp + 0x120]
inc dword [esi + edi*4]
mov edi, dword [0x102202f4]
mov edx, dword [edi + eax*4]
mov dword [esp + 0x9c], edi
mov dword [esp + 0x124], edx
inc ebx
cmp ebx, dword [esp + 0x124]
jl 0x100e84c3
mov eax, dword [esp + 0x98]
mov ecx, dword [esp + 0x94]
mov edx, dword [esp + 0x124]
mov esi, eax
cmp ecx, edx
jl 0x100e8498
mov eax, dword [esp + 0x120]
mov ecx, dword [esp + 0x9c]
mov edx, dword [0x102202f0]
xor ebx, ebx
inc eax
cmp eax, edx
jl 0x100e847b
mov ebx, dword [esp + 0xd8]
mov eax, dword [0x10220314]
test eax, eax
jle 0x100e8917
xor esi, esi
push 0x100adef0
mov edx, dword [0x10220308]
mov eax, dword [0x10220304]
push 0x30
push dword [eax + esi*4]
push dword [edx + esi*4]
call fcn.101bec80
add esp, 0x10
inc esi
cmp esi, dword [0x10220314]
jl 0x100e88ee
push ebx
call fcn.101bceaa
pop ecx
call fcn.10111360
mov ebx, dword [0x10282f80]
test ebx, ebx
jle 0x100e89a6
mov edx, dword [0x10219190]
mov ecx, 1
mov edi, 0xa10
xor eax, eax
cmp dword [edx + edi + 0x9f8], 0
jle 0x100e899b
mov dword [esp + 0x94], ecx
mov ebx, eax
mov esi, ebx
mov eax, dword [edx + edi + 0x9f4]
mov dword [eax + esi + 0x50], 1
mov eax, dword [edx + edi + 0x9f4]
mov ecx, dword [eax + esi]
cmp ecx, 2
je 0x100e8bb4
cmp ecx, 3
je 0x100e8b0c
add esi, 0x58
inc ebx
cmp ebx, dword [edx + edi + 0x9f8]
jl 0x100e8954
mov ecx, dword [esp + 0x94]
mov ebx, dword [0x10282f80]
xor eax, eax
add edi, 0xa10
inc ecx
cmp ecx, ebx
jle 0x100e893f
movsd xmm1, qword [0x102202d0]
movsd xmm2, qword [0x102202d8]
comisd xmm2, xmm1
jbe 0x100e89d7
movsd xmm0, qword [0x101e7b30]
comisd xmm0, xmm2
jbe 0x100e89d7
movsd qword [0x102202c0], xmm2
movaps xmm1, xmm2
jmp 0x100e89df
movsd qword [0x102202c0], xmm1
mov esi, dword [0x102202cc]
test esi, esi
je 0x100e8a6b
mov edi, dword [0x102202c8]
test edi, edi
jle 0x100e8a6b
movsd xmm0, qword [0x101e7b30]
mov dword [esp + 0x94], ebx
xor ecx, ecx
xor edx, edx
test ecx, ecx
jl 0x100e8a5f
mov eax, edx
movaps xmm3, xmm1
mov ebx, dword [esi + ecx*4]
mov edx, eax
shl edx, 4
movsd xmm2, qword [ebx + edx]
movaps xmm1, xmm2
maxsd xmm1, xmm3
movsd qword [0x102202c0], xmm1
mov ebx, dword [esi + ecx*4]
movsd xmm2, qword [edx + ebx + 8]
comisd xmm2, xmm1
jbe 0x100e8a4f
comisd xmm0, xmm2
jbe 0x100e8a4f
movsd qword [0x102202c0], xmm2
movaps xmm1, xmm2
inc eax
cmp eax, ecx
jle 0x100e8a10
mov esi, esi
lea edi, [edi]
xor edx, edx
inc ecx
cmp ecx, edi
jl 0x100e8a0a
mov ebx, dword [esp + 0x94]
movsd xmm1, qword [0x102202b0]
movsd xmm2, qword [0x102202b8]
comisd xmm2, xmm1
jbe 0x100e8a9c
movsd xmm0, qword [0x101e7b30]
comisd xmm0, xmm2
jbe 0x100e8a9c
movsd qword [0x10220298], xmm2
movaps xmm1, xmm2
jmp 0x100e8aa4
movsd qword [0x10220298], xmm1
mov edx, dword [0x102202a0]
test edx, edx
je 0x100e8aff
test ebx, ebx
jle 0x100e8aff
movsd xmm0, qword [0x101e7b30]
mov eax, 1
movaps xmm3, xmm1
mov ecx, eax
shl ecx, 4
movsd xmm2, qword [edx + ecx]
movaps xmm1, xmm2
movsd xmm2, qword [ecx + edx + 8]
maxsd xmm1, xmm3
comisd xmm2, xmm1
jbe 0x100e8af2
comisd xmm0, xmm2
jbe 0x100e8af2
movsd qword [0x10220298], xmm2
movaps xmm1, xmm2
jmp 0x100e8afa
movsd qword [0x10220298], xmm1
inc eax
cmp eax, ebx
jle 0x100e8abf
add esp, 0x134
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret
mov edx, dword [esi + eax + 0x40]
movsd xmm0, qword [esi + eax + 0x48]
mov eax, dword [esp + 0x94]
movsd qword [esp + 8], xmm0
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 0x10], 1
xor edx, edx
mov dword [esp + 0x14], edx
mov dword [esp + 0x18], edx
mov dword [esp + 0x1c], edx
mov dword [esp + 0x20], edx
mov dword [esp + 0x24], edx
mov dword [esp + 0x28], edx
lea ecx, [esp + 0x98]
mov dword [esp + 0x2c], ecx
call fcn.100dfc50
mov edx, dword [0x10219190]
movsd xmm2, qword [esp + 0x98]
movsd xmm1, qword [0x1020c0f8]
mov eax, dword [edx + edi + 0x9f4]
subsd xmm2, qword [eax + esi + 0x38]
addsd xmm2, qword [eax + esi + 0x30]
comisd xmm1, xmm2
jbe 0x100e8ba7
pxor xmm0, xmm0
subsd xmm0, xmm1
comisd xmm2, xmm0
jbe 0x100e8ba7
mov dword [eax + esi + 0x50], 3
jmp 0x100e897f
mov dword [eax + esi + 0x50], 2
jmp 0x100e897f
xor edx, edx
pxor xmm0, xmm0
jmp 0x100e8b16
mov ebx, dword [esp + 0x118]
jmp 0x100e8890
xor edx, edx
xor edi, edi
jmp 0x100e7cbe
xor esi, esi
jmp 0x100e7d0f
mov dword [eax + edi + 0x884], 1
mov dword [eax + edi + 0x87c], ecx
push 4
call fcn.101bcde0
pop ecx
mov ecx, dword [0x10220314]
mov edx, dword [0x10220310]
mov dword [edx + ecx*4], eax
mov esi, dword [0x10220314]
mov eax, dword [0x10220310]
mov eax, dword [eax + esi*4]
mov dword [eax], ebx
mov ecx, dword [0x10220314]
lea eax, [edi + 0xa10]
mov edx, dword [0x1022030c]
mov dword [edx + ecx*4], 1
mov ecx, dword [0x10220314]
mov esi, dword [0x10282f80]
mov dword [esp + 0xe4], eax
inc ecx
lea edx, [ebx + 1]
cmp edx, esi
mov dword [0x10220314], ecx
mov dword [esp + 0xe0], edx
jg 0x100e7b49
mov dword [esp + 0xf0], esi
mov esi, edx
mov dword [esp + 0xd0], edx
mov ecx, ebx
shl ecx, 4
mov dword [esp + 0xd4], ecx
mov dword [esp + 0xcc], eax
mov dword [esp + 0xd8], edi
mov edi, dword [esp + 0xe4]
mov dword [esp + 0xdc], ebx
mov eax, dword [0x10219190]
cmp dword [edi + eax + 0x87c], 0
jl 0x100e8cd0
add edi, 0xa10
inc esi
cmp esi, dword [esp + 0xf0]
jle 0x100e8c91
mov esi, dword [esp + 0xf0]
mov edx, dword [esp + 0xd0]
mov eax, dword [esp + 0xcc]
mov ecx, dword [0x10220314]
jmp 0x100e7b49
mov edx, dword [esp + 0xd8]
movsd xmm0, qword [eax + edx + 0x48]
ucomisd xmm0, qword [edi + eax + 0x48]
jne 0x100e8ca0
jp 0x100e8ca0
mov ecx, dword [eax + edx + 0x88]
mov ebx, dword [ecx]
mov ecx, dword [ebx + 0x10]
mov edx, dword [eax + edi + 0x88]
mov ebx, dword [edx]
cmp ecx, dword [ebx + 0x10]
jne 0x100e8ca0
movsd xmm2, qword [0x1020c110]
mov edx, dword [esp + 0xd8]
movsd xmm0, qword [eax + edx + 0x78]
subsd xmm0, qword [edi + eax + 0x78]
comisd xmm2, xmm0
jbe 0x100e8ca0
pxor xmm1, xmm1
subsd xmm1, xmm2
comisd xmm0, xmm1
jbe 0x100e8ca0
movsd xmm0, qword [eax + edx + 0x80]
subsd xmm0, qword [edi + eax + 0x80]
comisd xmm2, xmm0
jbe 0x100e8ca0
comisd xmm0, xmm1
jbe 0x100e8ca0
push esi
push dword [esp + 0xe0]
call fcn.100edec0
add esp, 8
test eax, eax
je 0x100e8d96
mov ecx, dword [0x102202a0]
test ecx, ecx
je 0x100e8dc8
mov eax, dword [esp + 0xd4]
movsd xmm0, qword [ecx + eax]
mov edx, esi
shl edx, 4
ucomisd xmm0, qword [ecx + edx]
jp 0x100e8d96
je 0x100e8da7
mov eax, dword [0x10282f80]
mov dword [esp + 0xf0], eax
jmp 0x100e8ca0
movsd xmm0, qword [ecx + eax + 8]
ucomisd xmm0, qword [edx + ecx + 8]
jp 0x100e8db7
je 0x100e8dc8
mov eax, dword [0x10282f80]
mov dword [esp + 0xf0], eax
jmp 0x100e8ca0
mov eax, dword [0x10219190]
mov edx, dword [esp + 0xd8]
mov dword [esp + 0xa4], eax
add edx, eax
movsd xmm0, qword [edx + 0x838]
add eax, edi
ucomisd xmm0, qword [eax + 0x838]
jp 0x100e8df3
je 0x100e8e04
mov eax, dword [0x10282f80]
mov dword [esp + 0xf0], eax
jmp 0x100e8ca0
mov ecx, dword [edx + 0x834]
cmp ecx, dword [eax + 0x834]
jne 0x100e8d96
mov ecx, dword [edx + 0x9f0]
mov dword [esp + 0xa0], ecx
test ecx, ecx
je 0x100e9348
mov ecx, dword [eax + 0x9f0]
mov dword [esp + 0x9c], ecx
test ecx, ecx
je 0x100e8e7e
mov ecx, dword [esp + 0xa0]
mov ebx, dword [ecx]
mov ecx, dword [esp + 0x9c]
cmp ebx, dword [ecx]
jne 0x100e8e7e
mov ecx, dword [esp + 0xa0]
mov ebx, dword [ecx + 0x10]
mov ecx, dword [esp + 0x9c]
cmp ebx, dword [ecx + 0x10]
jne 0x100e8e7e
mov ecx, dword [esp + 0xa0]
mov ebx, dword [esp + 0x9c]
movsd xmm0, qword [ecx + 8]
ucomisd xmm0, qword [ebx + 8]
jp 0x100e8e7e
je 0x100e8e8f
mov eax, dword [0x10282f80]
mov dword [esp + 0xf0], eax
jmp 0x100e8ca0
mov ecx, dword [edx + 0x960]
cmp ecx, dword [eax + 0x960]
je 0x100e8eae
mov eax, dword [0x10282f80]
mov dword [esp + 0xf0], eax
jmp 0x100e8ca0
mov ecx, 1
mov ebx, dword [edx + ecx*4 + 0x430]
cmp ebx, dword [eax + ecx*4 + 0x430]
jne 0x100e8d96
inc ecx
cmp ecx, 0x11
jle 0x100e8eb3
mov ebx, dword [esp + 0xa4]
movsd xmm0, qword [0x101e7b08]
movsd xmm1, qword [0x101e7b10]
mov ecx, dword [edx + 0xd0]
mov edx, dword [ecx]
mov eax, dword [ebx + edi + 0xd0]
mov eax, dword [eax]
mov ecx, dword [edx]
mov ebx, dword [edx + 0x10]
movsd qword [esp + 0x10], xmm0
movsd qword [esp + 0x18], xmm1
mov dword [esp], ecx
mov ecx, dword [eax]
add edx, 0x18
mov dword [esp + 4], ebx
mov ebx, dword [eax + 0x10]
mov dword [esp + 8], ecx
add eax, 0x18
mov dword [esp + 0xc], ebx
lea ecx, [esp + 0x88]
mov dword [esp + 0x20], ecx
lea ebx, [esp + 0x80]
mov dword [esp + 0x24], ebx
lea ecx, [esp + 0x8c]
mov dword [esp + 0x28], ecx
lea ebx, [esp + 0x90]
mov dword [esp + 0x2c], ebx
mov dword [esp + 0x30], edx
mov dword [esp + 0x34], eax
call fcn.100ef680
cmp dword [esp + 0x88], 0
je 0x100e8f74
mov eax, dword [0x10282f80]
mov dword [esp + 0xf0], eax
jmp 0x100e8ca0
mov eax, dword [0x10219190]
mov dword [esp + 0xc4], eax
mov ecx, eax
mov ebx, 1
xor edx, edx
mov dword [esp + 0xe0], esi
mov dword [esp + 0xe4], edi
mov eax, dword [esp + 0xd8]
lea esi, [eax + ebx*4]
cmp dword [ecx + esi + 0x430], 0
jle 0x100e90c1
mov eax, dword [esp + 0xe4]
mov edi, dword [esp + 0xd8]
mov esi, edx
lea eax, [eax + ebx*4]
lea edi, [edi + ebx*4]
mov dword [esp + 0x98], edi
mov dword [esp + 0x94], eax
mov edx, dword [esp + 0x94]
movsd xmm0, qword [0x101e7b08]
movsd xmm1, qword [0x101e7b10]
mov edi, dword [ecx + edx + 0xd0]
mov eax, dword [edi + esi*4]
mov edx, dword [esp + 0x98]
mov edi, dword [edx + ecx + 0xd0]
mov edi, dword [edi + esi*4]
mov edx, dword [edi]
movsd qword [esp + 0x10], xmm0
movsd qword [esp + 0x18], xmm1
mov dword [esp], edx
mov edx, dword [edi + 0x10]
mov edi, dword [eax]
mov eax, dword [eax + 0x10]
mov dword [esp + 4], edx
mov dword [esp + 8], edi
mov dword [esp + 0xc], eax
lea eax, [esp + 0x88]
mov dword [esp + 0x20], eax
lea edx, [esp + 0x80]
mov dword [esp + 0x24], edx
mov edx, dword [esp + 0xd8]
lea edi, [esp + 0x8c]
mov dword [esp + 0x28], edi
lea eax, [esp + 0x90]
mov dword [esp + 0x2c], eax
lea edi, [ecx + edx]
add ecx, dword [esp + 0xe4]
mov eax, dword [edi + ebx*4 + 0xd0]
mov edx, dword [eax + esi*4]
mov ecx, dword [ecx + ebx*4 + 0xd0]
mov eax, dword [ecx + esi*4]
add edx, 0x18
mov dword [esp + 0x30], edx
add eax, 0x18
mov dword [esp + 0x34], eax
call fcn.100ef680
cmp dword [esp + 0x88], 0
jne 0x100e9329
mov ecx, dword [0x10219190]
mov eax, dword [esp + 0x98]
inc esi
cmp esi, dword [eax + ecx + 0x430]
jl 0x100e8fd3
nop
lea esi, [esi]
xor edx, edx
inc ebx
cmp ebx, 0x11
jle 0x100e8f97
mov esi, dword [esp + 0xe0]
mov edi, dword [esp + 0xe4]
mov eax, dword [0x102202cc]
mov dword [esp + 0xc4], ecx
test eax, eax
mov dword [esp + 0xc8], eax
je 0x100e9318
mov ecx, dword [0x10282f80]
mov eax, dword [esp + 0xc4]
mov dword [esp + 0xf0], ecx
lea edx, [eax + edi]
test ecx, ecx
mov dword [esp + 0xc0], edx
jle 0x100e927e
movsd xmm1, qword [0x1020c110]
mov ecx, dword [esp + 0xdc]
mov eax, 1
mov edx, 0xa10
pxor xmm0, xmm0
subsd xmm0, xmm1
cmp ecx, eax
jne 0x100e914b
mov dword [esp + 0xdc], ecx
jmp 0x100e9262
cmp esi, eax
jne 0x100e915b
mov dword [esp + 0xdc], ecx
jmp 0x100e9262
mov dword [esp + 0xdc], ecx
mov dword [esp + 0xe4], edi
mov edi, dword [esp + 0xc0]
mov ecx, dword [edi + 0x898]
mov dword [esp + 0xb8], edx
mov dword [esp + 0xe0], esi
mov esi, dword [esp + 0xd8]
mov dword [esp + 0xbc], eax
mov eax, dword [esp + 0xc4]
mov ebx, dword [esi + eax + 0x898]
mov eax, dword [edx + eax + 0x898]
mov edx, dword [esp + 0xc8]
cmp ebx, eax
mov esi, ebx
cmovge ebx, eax
jge 0x100e91b9
mov esi, eax
mov edi, dword [edx + esi*4]
mov esi, dword [esp + 0xe0]
mov dword [esp + 0xa8], edi
shl ebx, 4
movsd xmm2, qword [ebx + edi]
mov edi, dword [esp + 0xe4]
mov dword [esp + 0xac], ebx
cmp ecx, eax
mov ebx, ecx
jge 0x100e91e8
mov ebx, eax
cmovl eax, ecx
mov edx, dword [edx + ebx*4]
shl eax, 4
subsd xmm2, qword [eax + edx]
mov dword [esp + 0xb4], edx
mov edx, dword [esp + 0xb8]
mov dword [esp + 0xb0], eax
mov eax, dword [esp + 0xbc]
comisd xmm1, xmm2
jbe 0x100e8ca0
comisd xmm2, xmm0
jbe 0x100e8ca0
mov ebx, dword [esp + 0xa8]
mov ecx, dword [esp + 0xac]
movsd xmm2, qword [ecx + ebx + 8]
mov ecx, dword [esp + 0xb0]
mov ebx, dword [esp + 0xb4]
subsd xmm2, qword [ecx + ebx + 8]
comisd xmm1, xmm2
jbe 0x100e8ca0
comisd xmm2, xmm0
jbe 0x100e8ca0
add edx, 0xa10
inc eax
cmp eax, dword [esp + 0xf0]
jg 0x100e927e
mov ecx, dword [esp + 0xdc]
jmp 0x100e913b
mov ebx, dword [0x10220314]
mov ecx, dword [esp + 0xc0]
mov edx, dword [0x1022030c]
lea eax, [ebx - 1]
mov dword [ecx + 0x87c], eax
mov eax, dword [edx + ebx*4 - 4]
mov dword [ecx + 0x884], 0
mov dword [ecx + 0x880], eax
mov edx, dword [edx + ebx*4 - 4]
lea ecx, [edx*4 + 4]
mov eax, dword [0x10220310]
push ecx
push dword [eax + ebx*4 - 4]
call fcn.101bcb76
add esp, 8
mov ecx, dword [0x10220314]
mov edx, dword [0x10220310]
mov dword [edx + ecx*4 - 4], eax
mov edx, dword [0x10220314]
mov ebx, dword [0x10220310]
mov eax, dword [0x1022030c]
mov eax, dword [eax + edx*4 - 4]
mov ebx, dword [ebx + edx*4 - 4]
mov dword [ebx + eax*4], esi
mov eax, dword [0x10220314]
mov ecx, dword [0x1022030c]
inc dword [ecx + eax*4 - 4]
mov edx, dword [0x10282f80]
mov dword [esp + 0xf0], edx
jmp 0x100e8ca0
mov eax, ecx
lea edx, [eax + edi]
mov dword [esp + 0xc0], edx
jmp 0x100e927e
mov esi, dword [esp + 0xe0]
mov edi, dword [esp + 0xe4]
mov eax, dword [0x10282f80]
mov dword [esp + 0xf0], eax
jmp 0x100e8ca0
cmp dword [eax + 0x9f0], 0
je 0x100e8e8f
mov eax, dword [0x10282f80]
mov dword [esp + 0xf0], eax
jmp 0x100e8ca0
mov edx, dword [ecx + esi*8 + 4]
mov dword [esp + 0xe8], edx
lea ecx, [ebx + eax + 0x820]
mov dword [esp + 0xec], ecx
lea eax, [esp + 0xe8]
call fcn.100e93c0
mov ecx, eax
mov eax, dword [0x10219190]
mov edx, dword [ebx + eax + 0x918]
mov dword [edx + esi*8 + 8], ecx
mov ecx, dword [ebx + eax + 0x918]
mov dword [ecx + esi*8 + 0xc], 0
mov edx, dword [eax + ebx + 0x91c]
jmp 0x100e7aa5