Function at 0x4eae40
Capabilities:
Parse pe header
Resolve function by parsing pe exports

Disassembly:
push ebx
mov ebx, esp
and esp, 0xffffffe0
push ebp
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push esi
push edi
sub esp, 0x8f0
mov edx, dword [ebx + 0xc]
mov ecx, dword [ebx + 0x10]
mov dword [ebp - 0xe4], edx
mov dword [ebp - 0x8dc], ecx
mov edx, dword [ebx + 0x1c]
mov ecx, dword [ebx + 0x20]
mov dword [ebp - 0x8d4], edx
mov dword [ebp - 0x38], ecx
mov edx, dword [ebx + 0x2c]
mov ecx, dword [ebx + 0x30]
mov dword [ebp - 0x7d8], edx
mov dword [ebp - 0x8e8], ecx
mov edx, dword [ebx + 0x3c]
mov ecx, dword [ebx + 0x40]
mov esi, dword [ebx + 0x14]
mov dword [ebp - 0x40], edx
mov dword [ebp - 0x44], ecx
mov edx, dword [ebx + 0x4c]
mov ecx, dword [ebx + 0x50]
mov dword [ebp - 0x8d8], esi
mov esi, dword [ebx + 0x24]
mov dword [ebp - 0x4c], edx
mov dword [ebp - 0x50], ecx
mov eax, dword [ebx + 0x18]
mov edx, dword [ebx + 0x5c]
mov ecx, dword [ebx + 0x60]
mov dword [ebp - 0x8e0], esi
mov dword [ebp - 0x34], eax
mov esi, dword [ebx + 0x34]
mov dword [ebp - 0x58], edx
mov dword [ebp - 0x5c], ecx
mov eax, dword [ebx + 0x28]
mov edx, dword [ebx + 0x6c]
mov ecx, dword [ebx + 0x70]
mov dword [ebp - 0x7dc], esi
mov dword [ebp - 0x3c], eax
mov esi, dword [ebx + 0x44]
mov dword [ebp - 0x68], edx
mov dword [ebp - 0x6c], ecx
mov eax, dword [ebx + 0x38]
mov edx, dword [ebx + 0x7c]
mov ecx, dword [ebx + 0x80]
mov dword [ebp - 0x8ec], esi
mov dword [ebp - 0x7e0], eax
mov esi, dword [ebx + 0x54]
mov dword [ebp - 0x74], edx
mov dword [ebp - 0x78], ecx
mov eax, dword [ebx + 0x48]
mov edx, dword [ebx + 0x8c]
mov ecx, dword [ebx + 0x90]
mov dword [ebp - 0x8e4], esi
mov dword [ebp - 0x48], eax
mov esi, dword [ebx + 0x64]
mov dword [ebp - 0x2c], edx
mov dword [ebp - 0x28], ecx
mov eax, dword [ebx + 0x58]
mov edx, dword [ebx + 0x98]
mov ecx, dword [ebx + 0x9c]
mov dword [ebp - 0x60], esi
mov dword [ebp - 0x54], eax
mov esi, dword [ebx + 0x74]
mov dword [ebp - 0x80], edx
mov dword [ebp - 0x7f0], ecx
mov eax, dword [ebx + 0x68]
mov edx, dword [ebx + 0xa4]
mov ecx, dword [ebx + 0xa8]
mov dword [ebp - 0x70], esi
mov edi, dword [ebx + 8]
mov dword [ebp - 0x64], eax
mov esi, dword [ebx + 0x84]
mov dword [ebp - 0x88], edx
mov dword [ebp - 0x8c], ecx
mov eax, dword [ebx + 0x78]
mov edx, dword [ebx + 0xb0]
mov ecx, dword [ebx + 0xb4]
mov dword [ebp - 0x24], esi
mov dword [ebp - 0x8f0], eax
mov esi, dword [ebx + 0x94]
mov dword [ebp - 0x90], edx
mov dword [ebp - 0x94], ecx
mov eax, dword [ebx + 0x88]
mov edx, dword [ebx + 0xc0]
mov ecx, dword [ebx + 0xc4]
mov dword [ebp - 0x7c], esi
mov esi, dword [ebx + 0xa0]
mov dword [ebp - 0x98], edx
mov dword [ebp - 0x8d0], ecx
movzx ecx, byte [edi]
movzx edx, byte [edi + 1]
shl ecx, 0x10
shl edx, 8
mov dword [ebp - 0x84], esi
or ecx, edx
mov esi, dword [ebx + 0xac]
mov dword [ebp - 0x30], eax
mov eax, dword [eax]
shl eax, 3
mov dword [ebp - 0x7e4], eax
mov dword [ebp - 0x7e8], esi
movzx eax, byte [edi + 2]
or ecx, eax
mov esi, dword [ebx + 0xb8]
mov dword [ebp - 0x7ec], esi
mov esi, dword [ebx + 0xbc]
mov dword [ebp - 0x8f8], ecx
cmp ecx, 0x454333
jne 0x4eb04b
mov dword [0x7cddfc], 0x2d334345
mov edx, 0xc
mov dword [0x7cde00], 0x20332d31
mov dword [0x7cde04], 0x30303032
mov dword [0x22d6648], 1
jmp 0x4eb1fd
add esp, 0xffffffe0
movq xmm0, qword [0x721628]
movq xmm1, qword [0x721630]
mov dword [esp], edi
movq qword [esp + 4], xmm0
mov dword [esp + 0xc], str.TRENTO
movq qword [esp + 0x10], xmm0
movq qword [esp + 0x18], xmm1
call fcn.005cd2b0
add esp, 0x20
test eax, eax
je 0x4eb0ef
mov eax, 0x54
mov edx, 0x20
mov byte [0x7cddfd], 0x52
mov byte [0x7cddfe], 0x45
mov byte [0x7cddff], 0x4e
mov byte [0x7cde01], 0x4f
mov dword [0x22d6648], 2
mov byte [0x7cddfc], al
mov byte [0x7cde00], al
mov byte [0x7cde02], dl
mov byte [0x7cde03], dl
mov byte [0x7cde04], dl
mov byte [0x7cde05], dl
mov byte [0x7cde06], dl
mov byte [0x7cde07], dl
mov edx, 6
jmp 0x4eb1fd
cmp dword [ebp - 0x8f8], 0x46454d
jne 0x4eb156
mov eax, 0x20
mov edx, 3
mov byte [0x7cddfc], 0x46
mov byte [0x7cddfd], 0x45
mov byte [0x7cddfe], 0x4d
mov dword [0x22d6648], 3
mov byte [0x7cddff], al
mov byte [0x7cde00], al
mov byte [0x7cde01], al
mov byte [0x7cde02], al
mov byte [0x7cde03], al
mov byte [0x7cde04], al
mov byte [0x7cde05], al
mov byte [0x7cde06], al
mov byte [0x7cde07], al
jmp 0x4eb1fd
add esp, 0xffffffe0
movq xmm0, qword [0x721638]
movq xmm1, qword [0x721630]
mov dword [esp], edi
movq qword [esp + 4], xmm0
mov dword [esp + 0xc], str.EN15512
movq qword [esp + 0x10], xmm0
movq qword [esp + 0x18], xmm1
call fcn.005cd2b0
add esp, 0x20
test eax, eax
je 0x4eb270
mov eax, 0x31
mov edx, 0x35
mov ecx, 0x20
mov byte [0x7cddfc], 0x45
mov byte [0x7cddfd], 0x4e
mov byte [0x7cde02], 0x32
mov dword [0x22d6648], 4
mov byte [0x7cddfe], al
mov byte [0x7cde01], al
mov byte [0x7cddff], dl
mov byte [0x7cde00], dl
mov edx, 7
mov byte [0x7cde03], cl
mov byte [0x7cde04], cl
mov byte [0x7cde05], cl
mov byte [0x7cde06], cl
mov byte [0x7cde07], cl
cmp dword [esi], 0x49125
je 0x4eb2c0
add esp, 0xffffffe8
lea eax, [ebp - 0x8f8]
movq xmm3, qword [0x721630]
movd xmm1, edx
pxor xmm0, xmm0
punpckldq xmm1, xmm0
mov dword [esp], eax
movq qword [esp + 4], xmm3
mov edx, dword [ebp - 0x98]
movq xmm2, qword [0x7216b0]
movq xmm4, qword [0x721640]
mov dword [esp + 0xc], edx
mov dword [eax], 0x7cddfc
movq qword [eax + 8], xmm1
mov dword [eax + 0x10], 0x7216e0
movq qword [eax + 0x18], xmm2
movq qword [esp + 0x10], xmm4
call fcn.005cd480
add esp, 0x18
jmp 0x4eb2b6
add esp, 0xffffffe4
mov eax, dword [ebp - 0x98]
movq xmm0, qword [0x721640]
movq xmm1, qword [0x721648]
mov dword [esp], eax
movq qword [esp + 4], xmm0
mov dword [esp + 0xc], str._CSTVEREC3CF2000:_CODE_UNKNOWN
movq qword [esp + 0x10], xmm1
mov dword [esp + 0x18], 0
call fcn.005cbf40
add esp, 0x1c
mov dword [esi], 1
lea esp, [ebp - 8]
pop edi
pop esi
pop ebp
mov esp, ebx
pop ebx
ret
mov ecx, dword [ebp - 0x7e8]
push 0x50
push dword [ebp - 0x8d0]
push dword [ebp - 0x98]
pxor xmm0, xmm0
pxor xmm1, xmm1
movsd qword [ecx], xmm0
mov ecx, dword [ebp - 0x7ec]
push esi
mov dword [esi], 0
movsd qword [ecx], xmm0
mov ecx, dword [ebp - 0x90]
movsd qword [ebp - 0xa0], xmm0
movups xmmword [0x7cdc40], xmm1
movsd qword [ecx], xmm0
mov ecx, dword [ebp - 0x94]
movups xmmword [0x7cdc50], xmm1
movsd qword [ecx], xmm0
mov ecx, dword [ebp - 0x84]
movsd qword [ecx], xmm0
mov ecx, dword [ebp - 0x88]
movsd qword [ecx], xmm0
mov ecx, dword [ebp - 0x8c]
movsd qword [ecx], xmm0
lea ecx, [ebp - 0x104]
push ecx
push dword [ebp - 0xe4]
push edi
mov dword [ecx + 0x10], edx
call fcn.00466c50
mov edx, dword [ebp - 0xf4]
add esp, 0x1c
cmp dword [esi], 0
jne 0x4eff00
mov ecx, dword [0x22d6648]
mov dword [ebp - 0x8f4], ecx
cmp ecx, 4
je 0x4f03a1
movsd xmm0, qword [0x721608]
movsd qword [ebp - 0xb8], xmm0
movsd qword [ebp - 0xb0], xmm0
movsd xmm0, qword [0x721600]
movups xmm1, xmmword [0x78dc68]
movsd qword [ebp - 0xa8], xmm0
movups xmm0, xmmword [0x7215e0]
cmpneqpd xmm0, xmm1
andps xmm1, xmm0
andnps xmm0, xmmword [ebp - 0xb8]
orps xmm1, xmm0
movsd xmm0, qword [0x78dc78]
movups xmmword [ebp - 0xb8], xmm1
ucomisd xmm0, qword [0x721610]
jp 0x4eb3d9
je 0x4eb3e1
movsd qword [ebp - 0xa8], xmm0
cmp dword [ebp - 0x8f4], 4
je 0x4f037c
test byte [ebp - 0x104], 1
je 0x4eb569
push 0x80120
push 0x786a6c
mov dword [ebp - 0xd8], 0
lea ecx, [ebp - 0xf0]
push ecx
mov ecx, dword [ecx + 0xc]
push 0x721148
push 0x8384ff00
mov ecx, dword [ecx]
mov dword [ebp - 0x8f8], ecx
push ecx
mov dword [ebp - 0xf0], 0xc
lea ecx, [ebp - 0xd8]
push ecx
mov dword [ecx - 0x14], 0x721714
mov dword [ecx - 0x1c], edx
call fcn.005d83f0
mov edx, dword [ebp - 0xf4]
add esp, 0x1c
mov dword [ebp - 0xd8], 0
movsd xmm0, qword [ebp - 0xb8]
cmp dword [ebp - 0x8f4], 4
je 0x4f0318
push 0x80120
push 0x785a34
movsd qword [ebp - 0x120], xmm0
lea ecx, [ebp - 0x120]
push ecx
push 0x721150
push 0x8384ff00
push dword [ebp - 0x8f8]
mov dword [ecx + 0x2c], edx
lea ecx, [ebp - 0xd8]
push ecx
call fcn.005d83f0
mov edx, dword [ebp - 0xf4]
add esp, 0x1c
movsd xmm0, qword [ebp - 0xb0]
lea ecx, [ebp - 0x110]
push ecx
push 0x721158
movsd qword [ecx], xmm0
lea ecx, [ebp - 0xd8]
push ecx
mov dword [ecx - 0x1c], edx
call fcn.005dab70
mov edx, dword [ebp - 0xf4]
add esp, 0xc
movsd xmm0, qword [ebp - 0xa8]
lea ecx, [ebp - 0x100]
movsd qword [ecx], xmm0
mov eax, 0x721160
push ecx
push eax
mov dword [ebp - 0xf4], edx
lea ecx, [ebp - 0xd8]
push ecx
call fcn.005dab70
mov edx, dword [ebp - 0xf4]
add esp, 0xc
push 0x80120
push 0x786a6c
mov dword [ebp - 0xd8], 0
lea ecx, [ebp - 0xe0]
push ecx
push 0x721168
mov dword [ecx], 0xc
lea ecx, [ebp - 0xd8]
mov dword [ecx - 4], 0x721724
push 0x8384ff00
push dword [ebp - 0x8f8]
push ecx
mov dword [ecx - 0x1c], edx
call fcn.005d83f0
mov edx, dword [ebp - 0xf4]
add esp, 0x1c
push 0x50
push 8
push 0x20
push 5
push dword [ebp - 0x98]
push esi
lea ecx, [ebp - 0x124]
push ecx
lea ecx, [ebp - 0x134]
push ecx
push 0x7cddf8
push dword [ebp - 0xe4]
lea ecx, [ebp - 0x104]
push ecx
push dword [ebp - 0x38]
push dword [ebp - 0x8d4]
push dword [ebp - 0x34]
push dword [ebp - 0x8d8]
push dword [ebp - 0x8dc]
push 0x721734
mov dword [ecx + 0x10], edx
call fcn.004c0080
mov edx, dword [ebp - 0xf4]
add esp, 0x44
cmp dword [esi], 0
je 0x4eb5e9
mov ecx, dword [ebp - 0x104]
and ecx, 1
mov dword [0x7cddf8], 0xffffffff
mov dword [ebp - 0x114], ecx
jmp 0x4ef438
test byte [ebp - 0x134], 1
je 0x4eba6f
pxor xmm0, xmm0
pxor xmm7, xmm7
cvtss2sd xmm0, dword [0x22d93fc]
cvtss2sd xmm7, dword [0x22d93f0]
movsd qword [0x22d66e0], xmm0
pxor xmm4, xmm4
pxor xmm0, xmm0
pxor xmm3, xmm3
cvtss2sd xmm4, dword [0x22d93f8]
cvtss2sd xmm0, dword [0x22d9408]
cvtss2sd xmm3, dword [0x22d93f4]
movsd qword [0x22d66a8], xmm7
pxor xmm7, xmm7
movsd qword [0x22d6690], xmm4
pxor xmm6, xmm6
cvtss2sd xmm7, dword [0x22d9404]
divsd xmm4, xmm0
movsd qword [0x22d6688], xmm3
pxor xmm1, xmm1
divsd xmm3, xmm7
cvtss2sd xmm6, dword [0x22d93ec]
cvtss2sd xmm1, dword [0x22d9410]
movsd qword [0x22d6680], xmm6
pxor xmm6, xmm6
movsd qword [0x22d6730], xmm0
pxor xmm0, xmm0
cvtss2sd xmm6, dword [0x22d9400]
cvtss2sd xmm0, dword [0x22d9464]
pxor xmm2, xmm2
pxor xmm5, xmm5
movsd qword [0x22d66e8], xmm1
subsd xmm1, xmm4
cvtss2sd xmm2, dword [0x22d9414]
movsd qword [0x22d6720], xmm6
pxor xmm6, xmm6
movsd qword [0x7cdd78], xmm0
pxor xmm0, xmm0
cvtss2sd xmm6, dword [0x22d940c]
cvtss2sd xmm0, dword [0x22d9498]
movsd qword [0x22d6708], xmm1
pxor xmm1, xmm1
movsd qword [0x22d66c0], xmm4
pxor xmm4, xmm4
movsd qword [0x22d66f0], xmm2
subsd xmm2, xmm3
cvtss2sd xmm1, dword [0x22d9454]
cvtss2sd xmm4, dword [0x22d9460]
movsd qword [0x22d66c8], xmm3
pxor xmm3, xmm3
cvtss2sd xmm3, dword [0x22d945c]
movsd qword [0x22d6738], xmm6
pxor xmm6, xmm6
movsd qword [0x7cdd80], xmm0
pxor xmm0, xmm0
cvtss2sd xmm6, dword [0x22d9478]
cvtss2sd xmm0, dword [0x22d9444]
movsd qword [0x7cdd88], xmm1
pxor xmm1, xmm1
movsd qword [0x7cdd90], xmm4
pxor xmm4, xmm4
movsd qword [0x7cdd98], xmm3
pxor xmm3, xmm3
cvtss2sd xmm1, dword [0x22d9468]
cvtss2sd xmm4, dword [0x22d9474]
cvtss2sd xmm3, dword [0x22d9470]
movsd qword [0x7cdda0], xmm6
movsd qword [0x7cdda8], xmm0
movss xmm6, dword [0x22d9450]
movss xmm0, dword [0x7216c0]
andps xmm0, xmm6
pxor xmm6, xmm0
movsd qword [0x7cddb0], xmm4
movsd qword [0x7cddb8], xmm1
pxor xmm1, xmm1
movsd qword [0x7cddc0], xmm3
movaps xmm3, xmm6
movss xmm4, dword [0x7216c4]
cvtss2sd xmm1, dword [0x22d9448]
cmpltss xmm3, xmm4
movsd qword [0x7cddc8], xmm1
andps xmm4, xmm3
movaps xmm1, xmm6
movsd qword [0x22d6698], xmm5
addss xmm1, xmm4
movsd qword [0x22d66a0], xmm5
subss xmm1, xmm4
movsd qword [0x22d66b0], xmm5
movaps xmm4, xmm1
movsd qword [0x22d66b8], xmm5
subss xmm4, xmm6
movsd qword [0x22d66d0], xmm5
movsd qword [0x22d66d8], xmm5
movsd qword [0x22d6660], xmm5
movsd qword [0x22d6668], xmm5
pxor xmm5, xmm5
cvtss2sd xmm5, dword [0x22d949c]
movsd qword [0x22d6728], xmm7
pxor xmm7, xmm7
cvtss2sd xmm7, dword [0x22d9494]
movsd qword [0x7cddd0], xmm5
movss xmm5, dword [0x7216c8]
movsd qword [0x7cddd8], xmm7
movaps xmm6, xmm5
movaps xmm7, xmm4
addss xmm6, xmm5
cmpnless xmm7, xmm5
cmpless xmm4, dword [0x7216cc]
movsd qword [0x22d6710], xmm2
pxor xmm2, xmm2
andps xmm7, xmm6
andps xmm4, xmm6
cvtss2sd xmm2, dword [0x22d9458]
subss xmm1, xmm7
movsd qword [0x7cdde0], xmm2
pxor xmm2, xmm2
cvtss2sd xmm2, dword [0x22d946c]
addss xmm1, xmm4
orps xmm1, xmm0
cvtss2si ecx, xmm1
movsd qword [0x7cdde8], xmm2
pxor xmm2, xmm2
cvtss2sd xmm2, dword [0x22d944c]
mov dword [0x78e5b0], 0xffffffff
movsd qword [0x7cddf0], xmm2
cmp ecx, 1
je 0x4f02ff
cmp ecx, 2
je 0x4eb97f
cmp ecx, 3
jne 0x4eb92a
mov dword [str.C], 0x52495f43
mov dword [0x78e5bc], 0x20202052
jmp 0x4eb993
cmp ecx, 4
jne 0x4eb945
mov dword [str.C], 0x20202043
mov dword [0x78e5bc], 0x20202020
jmp 0x4eb993
push 0x80120
push 1
push 0x22d
push 0x8384ff00
push 0
push 3
push 0x72173c
mov dword [0x7cddf8], 0xffffffff
mov dword [ebp - 0xf4], edx
call fcn.00609880
mov edx, dword [ebp - 0xf4]
add esp, 0x1c
jmp 0x4eb993
mov dword [str.C], 0x455f4332
mov dword [0x78e5bc], 0x20205453
pxor xmm0, xmm0
pxor xmm1, xmm1
pxor xmm2, xmm2
pxor xmm3, xmm3
cvtss2sd xmm0, dword [0x22d9418]
cvtss2sd xmm1, dword [0x22d941c]
cvtss2sd xmm2, dword [0x22d9420]
cvtss2sd xmm3, dword [0x22d9424]
movsd qword [0x22d6740], xmm0
pxor xmm4, xmm4
movsd qword [0x22d6748], xmm1
pxor xmm5, xmm5
movsd qword [0x22d6750], xmm2
pxor xmm6, xmm6
pxor xmm7, xmm7
pxor xmm0, xmm0
pxor xmm1, xmm1
pxor xmm2, xmm2
cvtss2sd xmm4, dword [0x22d9428]
cvtss2sd xmm5, dword [0x22d942c]
cvtss2sd xmm6, dword [0x22d9430]
cvtss2sd xmm7, dword [0x22d9434]
cvtss2sd xmm0, dword [0x22d9438]
cvtss2sd xmm1, dword [0x22d943c]
cvtss2sd xmm2, dword [0x22d9440]
movsd qword [0x22d6758], xmm3
movsd qword [0x22d6760], xmm4
movsd qword [0x22d6768], xmm5
movsd qword [0x22d6770], xmm6
movsd qword [0x22d6778], xmm7
movsd qword [0x22d6780], xmm0
movsd qword [0x22d6788], xmm1
movsd qword [0x22d6790], xmm2
add esp, 0xffffff8c
mov dword [0x7cddf8], 0
mov dword [esp], edi
mov ecx, dword [ebp - 0x8e0]
mov dword [esp + 4], ecx
mov edi, dword [ebp - 0x3c]
mov dword [esp + 8], edi
mov ecx, dword [ebp - 0x7d8]
mov dword [esp + 0xc], ecx
mov ecx, dword [ebp - 0x8e8]
mov dword [esp + 0x10], ecx
mov ecx, dword [ebp - 0x7dc]
mov dword [esp + 0x14], ecx
mov ecx, dword [ebp - 0x7e0]
mov dword [esp + 0x18], ecx
mov ecx, dword [ebp - 0x40]
mov dword [esp + 0x1c], ecx
mov ecx, dword [ebp - 0x44]
mov dword [esp + 0x20], ecx
mov ecx, dword [ebp - 0x8ec]
mov dword [esp + 0x24], ecx
mov ecx, dword [ebp - 0x48]
mov dword [esp + 0x28], ecx
mov ecx, dword [ebp - 0x4c]
mov dword [esp + 0x2c], ecx
mov ecx, dword [ebp - 0x50]
mov dword [esp + 0x30], ecx
mov ecx, dword [ebp - 0x8e4]
mov dword [esp + 0x34], ecx
mov ecx, dword [ebp - 0x54]
mov dword [esp + 0x38], ecx
mov ecx, dword [ebp - 0x58]
mov dword [esp + 0x3c], ecx
mov ecx, dword [ebp - 0x5c]
mov dword [esp + 0x40], ecx
mov ecx, dword [ebp - 0x60]
mov dword [esp + 0x44], ecx
mov ecx, dword [ebp - 0x64]
mov dword [esp + 0x48], ecx
mov ecx, dword [ebp - 0x68]
mov dword [esp + 0x4c], ecx
mov ecx, dword [ebp - 0x6c]
mov dword [esp + 0x50], ecx
mov ecx, dword [ebp - 0x70]
mov dword [esp + 0x54], ecx
lea ecx, [ebp - 0x124]
mov dword [esp + 0x58], ecx
lea ecx, [ebp - 0x104]
mov dword [esp + 0x5c], ecx
mov ecx, dword [ecx + 0x20]
mov dword [esp + 0x60], ecx
mov dword [esp + 0x64], esi
mov ecx, dword [ebp - 0x98]
mov dword [esp + 0x68], ecx
mov ecx, dword [ebp - 0x8d0]
mov dword [esp + 0x6c], ecx
mov dword [esp + 0x70], 0x50
mov dword [ebp - 0xf4], edx
call fcn.004c0b30
mov edx, dword [ebp - 0xf4]
add esp, 0x74
cmp dword [esi], 0
jne 0x4eff00
push 0x50
push 8
push dword [ebp - 0x98]
push esi
push dword [ebp - 0xe4]
lea ecx, [ebp - 0x104]
push ecx
push 0x7cddf0
push 0x7cdda8
push 0x7cddc8
push dword [ebp - 0x78]
push dword [ebp - 0x74]
push dword [ebp - 0x8f0]
mov dword [ecx + 0x10], edx
call fcn.004eaa50
mov edx, dword [ebp - 0xf4]
add esp, 0x30
cmp dword [esi], 0
jne 0x4eff00
push 0x50
push dword [ebp - 0x98]
push esi
push dword [ebp - 0xe4]
lea ecx, [ebp - 0x104]
push ecx
lea edi, [ebp - 0x124]
push edi
push dword [ebp - 0x7e0]
push dword [ebp - 0x7dc]
push dword [ebp - 0x3c]
push dword [ebp - 0x7f0]
push dword [ebp - 0x2c]
push dword [ebp - 0x30]
push dword [ebp - 0x24]
mov dword [ecx + 0x10], edx
call fcn.00466fd0
mov edx, dword [ebp - 0xf4]
add esp, 0x34
cmp dword [esi], 0
jne 0x4eff00
movss xmm3, dword [0x22d9450]
movss xmm0, dword [0x7216c0]
andps xmm0, xmm3
pxor xmm3, xmm0
movss xmm2, dword [0x7216c4]
movaps xmm1, xmm3
movss xmm4, dword [0x7216c8]
cmpltss xmm1, xmm2
andps xmm2, xmm1
movaps xmm1, xmm3
movaps xmm6, xmm4
addss xmm1, xmm2
addss xmm6, xmm4
subss xmm1, xmm2
movaps xmm7, xmm1
subss xmm7, xmm3
movaps xmm5, xmm7
cmpless xmm7, dword [0x7216cc]
cmpnless xmm5, xmm4
andps xmm5, xmm6
andps xmm7, xmm6
subss xmm1, xmm5
addss xmm1, xmm7
orps xmm1, xmm0
cvtss2si ecx, xmm1
cmp ecx, 1
je 0x4ebca1
cmp ecx, 5
jl 0x4ebcd2
cmp ecx, 8
jg 0x4ebcd2
mov ecx, dword [0x22d6648]
cmp ecx, 2
jg 0x4ebcd2
neg ecx
mov dword [0x22d6648], ecx
mov dword [0x7cddfc], 0x2d334345
mov dword [0x7cde00], 0x20312d31
mov dword [0x7cde04], 0x32393931
mov ecx, dword [ebp - 0x104]
mov dword [ebp - 0x114], ecx
test cl, 1
je 0x4ebf63
push 0x80120
push 0x786a6c
mov edi, dword [ebp - 0xe4]
lea ecx, [ebp - 0x338]
push ecx
push 0x721170
push 0x8384ff00
mov ecx, dword [edi]
mov dword [ebp - 0x8f8], ecx
push ecx
mov dword [ebp - 0xd8], 0
lea ecx, [ebp - 0xd8]
push ecx
mov dword [ebp - 0x338], 0xc
mov dword [ebp - 0x334], 0x721714
mov dword [ecx - 0x1c], edx
call fcn.005d83f0
mov edx, dword [ebp - 0xf4]
add esp, 0x1c
push 0x80120
push 0x786a6c
mov dword [ebp - 0xd8], 0
lea ecx, [ebp - 0x330]
push ecx
push 0x721178
mov dword [ecx], 1
lea edi, [ebp - 0xd8]
mov dword [ecx + 4], 0x721740
push 0x8384ff00
push dword [ebp - 0x8f8]
push edi
mov dword [edi - 0x1c], edx
call fcn.005d83f0
mov edx, dword [ebp - 0xf4]
add esp, 0x1c
movq xmm0, qword [0x721650]
movd xmm1, edx
movq qword [ebp - 0x5c0], xmm0
lea eax, [edx + 0x1a]
pxor xmm0, xmm0
punpckldq xmm1, xmm0
movq xmm2, qword [0x721658]
mov dword [ebp - 0x5c8], 0x721744
mov dword [ebp - 0x5b8], 0x7cddfc
movq qword [ebp - 0x5b0], xmm1
mov dword [ebp - 0x5a8], 0x721748
movq qword [ebp - 0x5a0], xmm2
mov dword [ebp - 0x8f8], esp
mov dword [ebp - 0x8ec], eax
add eax, 0x1f
and eax, 0xffffffe0
call fcn.00692d40
mov eax, esp
add esp, 0xffffffe8
lea ecx, [ebp - 0x5c8]
movd xmm2, dword [ebp - 0x8ec]
movq xmm1, qword [0x721660]
punpckldq xmm2, xmm0
mov dword [ebp - 0x8f4], eax
mov dword [esp], ecx
movq qword [esp + 4], xmm1
mov dword [esp + 0xc], eax
movq qword [esp + 0x10], xmm2
mov dword [ebp - 0xf4], edx
call fcn.005cd480
mov edx, dword [ebp - 0xf4]
add esp, 0x18
mov ecx, dword [ebp - 0x8ec]
push 0x80120
mov dword [ebp - 0x328], ecx
lea ecx, [ebp - 0x328]
push 0x786a6c
push ecx
mov ecx, dword [ebp - 0xe4]
push 0x721180
push 0x8384ff00
mov ecx, dword [ecx]
mov dword [ebp - 0x8f0], ecx
push ecx
mov edi, dword [ebp - 0x8f4]
lea ecx, [ebp - 0xd8]
push ecx
mov dword [ebp - 0x324], edi
mov dword [ecx], 0
mov dword [ecx - 0x1c], edx
call fcn.005d83f0
mov edx, dword [ebp - 0xf4]
add esp, 0x1c
mov eax, dword [ebp - 0x8f8]
mov esp, eax
push 0x80120
push 0x786a6c
mov dword [ebp - 0xd8], 0
lea ecx, [ebp - 0x320]
push ecx
push 0x721188
mov dword [ecx], 1
lea edi, [ebp - 0xd8]
mov dword [ecx + 4], 0x721764
push 0x8384ff00
push dword [ebp - 0x8f0]
push edi
mov dword [edi - 0x1c], edx
call fcn.005d83f0
mov edx, dword [ebp - 0xf4]
add esp, 0x1c
push 0x80120
push 0x786a6c
mov dword [ebp - 0xd8], 0
lea ecx, [ebp - 0x318]
push ecx
push 0x721190
mov dword [ecx], 0xc
lea edi, [ebp - 0xd8]
mov dword [ecx + 4], 0x721724
push 0x8384ff00
push dword [ebp - 0x8f0]
push edi
mov dword [edi - 0x1c], edx
call fcn.005d83f0
mov edx, dword [ebp - 0xf4]
add esp, 0x1c
mov ecx, dword [ebp - 0x104]
mov dword [ebp - 0x114], ecx
mov ecx, dword [ebp - 0x24]
and dword [ebp - 0x114], 1
mov edi, dword [ecx]
mov dword [ebp - 0x7f8], edi
test edi, edi
jle 0x4edf82
mov edi, dword [ebp - 0x28]
lea eax, [edx + 0x28]
mov ecx, dword [ebp - 0x7e4]
sub edi, ecx
neg ecx
add ecx, edi
mov dword [ebp - 0x844], edi
lea edi, [edx + 0x19]
mov dword [ebp - 0x848], ecx
lea ecx, [edx + 0x1f]
mov dword [ebp - 0x884], eax
lea eax, [edx + 0x17]
mov dword [ebp - 0x7f4], 1
mov dword [ebp - 0x888], eax
mov dword [ebp - 0xf4], edx
mov dword [ebp - 0x870], ecx
mov dword [ebp - 0x86c], edi
mov dword [ebp - 0x1ec], esi
mov eax, dword [ebp - 0x2c]
mov edx, dword [ebp - 0x7f4]
pxor xmm0, xmm0
mov ecx, dword [ebp - 0x7dc]
movups xmmword [0x7cdc60], xmm0
movsd xmm4, qword [eax + edx*8 - 8]
movsd xmm3, qword [ecx]
movups xmmword [0x7cdc70], xmm0
movups xmmword [0x7cdc80], xmm0
movsd qword [ebp - 0x840], xmm4
comisd xmm4, xmm3
jb 0x4ec062
mov eax, dword [ebp - 0x7e0]
movsd xmm0, qword [eax]
comisd xmm0, xmm4
jb 0x4ec062
mov eax, dword [ebp - 0x30]
mov edx, dword [eax]
test edx, edx
jle 0x4ec2f0
cmp edx, 0xc
jle 0x4ef724
mov eax, dword [ebp - 0x7e4]
imul eax, dword [ebp - 0x7f4]
shl edx, 3
add eax, dword [ebp - 0x844]
push edx
push eax
push 0x7cdc60
call fcn.0065d430
add esp, 0xc
jmp 0x4ec2f0
mov eax, edx
mov edx, dword [ebp - 0x24]
cmp eax, dword [edx]
jge 0x4ec1af
comisd xmm3, xmm4
jbe 0x4ec1af
mov edx, eax
mov eax, dword [ebp - 0x2c]
movsd xmm2, qword [eax + edx*8]
comisd xmm2, xmm3
jbe 0x4ec1af
mov eax, dword [ebp - 0x30]
mov edx, dword [eax]
mov dword [ebp - 0x8ac], edx
test edx, edx
jle 0x4ec1a0
cmp dword [ebp - 0x8ac], 4
jl 0x4ef78d
mov eax, edx
movaps xmm1, xmm3
and eax, 0xfffffffc
movaps xmm0, xmm2
mov dword [ebp - 0x8a8], eax
xor ecx, ecx
mov eax, dword [ebp - 0x7e4]
subsd xmm1, xmm4
imul eax, dword [ebp - 0x7f4]
subsd xmm0, xmm4
mov edx, dword [ebp - 0x28]
mov esi, dword [ebp - 0x8a8]
unpcklpd xmm1, xmm1
unpcklpd xmm0, xmm0
add edx, eax
add eax, dword [ebp - 0x844]
nop
movups xmm5, xmmword [eax + ecx*8]
movups xmm6, xmmword [edx + ecx*8]
movups xmm7, xmmword [eax + ecx*8 + 0x10]
subpd xmm6, xmm5
divpd xmm6, xmm0
mulpd xmm6, xmm1
addpd xmm6, xmm5
movups xmm5, xmmword [edx + ecx*8 + 0x10]
subpd xmm5, xmm7
divpd xmm5, xmm0
mulpd xmm5, xmm1
addpd xmm5, xmm7
movups xmmword [ecx*8 + 0x7cdc60], xmm6
movups xmmword [ecx*8 + 0x7cdc70], xmm5
add ecx, 4
cmp ecx, esi
jb 0x4ec0f0
mov dword [ebp - 0x8a8], esi
mov eax, dword [ebp - 0x8a8]
cmp eax, dword [ebp - 0x8ac]
jae 0x4ec1a0
mov ecx, eax
mov eax, dword [ebp - 0x7e4]
movaps xmm0, xmm3
imul eax, dword [ebp - 0x7f4]
subsd xmm2, xmm4
subsd xmm0, xmm4
mov edx, dword [ebp - 0x28]
mov esi, dword [ebp - 0x8ac]
add edx, eax
add eax, dword [ebp - 0x844]
movsd xmm5, qword [eax + ecx*8]
movsd xmm1, qword [edx + ecx*8]
subsd xmm1, xmm5
divsd xmm1, xmm2
mulsd xmm1, xmm0
addsd xmm5, xmm1
movsd qword [ecx*8 + 0x7cdc60], xmm5
inc ecx
cmp ecx, esi
jb 0x4ec178
movsd qword [ebp - 0x840], xmm3
mov eax, 0xffffffff
jmp 0x4ec1b1
xor eax, eax
test al, 1
jne 0x4ec2f0
cmp dword [ebp - 0x7f4], 1
jle 0x4edf5d
mov eax, dword [ebp - 0x7e0]
mov edx, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x7f4]
movsd xmm0, qword [eax]
movsd qword [ebp - 0x840], xmm0
movsd xmm1, qword [edx + ecx*8 - 0x10]
comisd xmm0, xmm1
jbe 0x4edf5d
comisd xmm4, xmmword [ebp - 0x840]
jbe 0x4edf5d
mov eax, dword [ebp - 0x30]
mov esi, dword [eax]
test esi, esi
jle 0x4ec2f0
cmp esi, 4
jl 0x4f02f8
movaps xmm2, xmm4
mov eax, dword [ebp - 0x7e4]
mov ecx, esi
imul eax, dword [ebp - 0x7f4]
subsd xmm0, xmm1
subsd xmm2, xmm1
mov edi, dword [ebp - 0x848]
and ecx, 0xfffffffc
unpcklpd xmm0, xmm0
xor edx, edx
unpcklpd xmm2, xmm2
add edi, eax
add eax, dword [ebp - 0x844]
nop word [eax + eax]
movups xmm3, xmmword [edi + edx*8]
movups xmm6, xmmword [edi + edx*8 + 0x10]
movups xmm5, xmmword [eax + edx*8]
movups xmm7, xmmword [eax + edx*8 + 0x10]
subpd xmm5, xmm3
subpd xmm7, xmm6
divpd xmm5, xmm2
divpd xmm7, xmm2
mulpd xmm5, xmm0
mulpd xmm7, xmm0
addpd xmm5, xmm3
addpd xmm7, xmm6
movups xmmword [edx*8 + 0x7cdc60], xmm5
movups xmmword [edx*8 + 0x7cdc70], xmm7
add edx, 4
cmp edx, ecx
jb 0x4ec250
cmp ecx, esi
jae 0x4ec2f0
mov eax, dword [ebp - 0x7e4]
subsd xmm4, xmm1
imul eax, dword [ebp - 0x7f4]
movsd xmm0, qword [ebp - 0x840]
mov edx, dword [ebp - 0x848]
subsd xmm0, xmm1
add edx, eax
add eax, dword [ebp - 0x844]
movsd xmm2, qword [edx + ecx*8]
movsd xmm1, qword [eax + ecx*8]
subsd xmm1, xmm2
divsd xmm1, xmm4
mulsd xmm1, xmm0
addsd xmm2, xmm1
movsd qword [ecx*8 + 0x7cdc60], xmm2
inc ecx
cmp ecx, esi
jb 0x4ec2c8
cmp dword [ebp - 0x114], 0
je 0x4ec424
mov eax, 0x10
mov edi, esp
mov eax, 0x20
call fcn.00692d40
mov eax, esp
push 0x10
push 0x721198
mov esi, eax
push esi
call fcn.006955a0
add esp, 0xc
push 0x80120
mov dword [ebp - 0x2ec], esi
lea esi, [ebp - 0x2f0]
push 0x786a6c
push esi
mov edx, dword [ebp - 0xe4]
lea ecx, [ebp - 0xd8]
push 0x7211ac
push 0x8384ff00
mov esi, dword [edx]
push esi
push ecx
mov dword [ecx], 0
mov dword [ebp - 0x2f0], 0x10
call fcn.005d83f0
add esp, 0x1c
mov eax, edi
mov esp, eax
push 0x80120
push 0x786a14
mov eax, dword [ebp - 0x7f4]
lea edx, [ebp - 0x208]
push edx
push 0x7211b4
push 0x8384ff00
push esi
mov dword [ebp - 0xd8], 0
lea ecx, [ebp - 0xd8]
push ecx
mov dword [edx], eax
call fcn.005d83f0
add esp, 0x1c
movsd xmm0, qword [ebp - 0x840]
lea eax, [ebp - 0x2e8]
push eax
push 0x7211bc
movsd qword [eax], xmm0
lea edx, [ebp - 0xd8]
push edx
call fcn.005dab70
add esp, 0xc
push 0x80120
push 0x786a6c
mov dword [ebp - 0xd8], 0
lea eax, [ebp - 0x2e0]
push eax
push 0x7211c4
push 0x8384ff00
push esi
mov dword [eax], 0xc
lea edx, [ebp - 0xd8]
push edx
mov dword [eax + 4], 0x721724
call fcn.005d83f0
add esp, 0x1c
mov eax, dword [ebp - 0x104]
and eax, 1
mov dword [ebp - 0x114], eax
movsd xmm0, qword [0x7cdc60]
pxor xmm2, xmm2
pxor xmm1, xmm1
movsd xmm3, qword [0x7cdc68]
movsd xmm4, qword [0x7cdc70]
movsd xmm5, qword [0x7cdc78]
movsd xmm6, qword [0x7cdc80]
movsd xmm7, qword [0x7cdc88]
movsd qword [ebp - 0x1e8], xmm0
movsd qword [ebp - 0x1b8], xmm2
movsd qword [ebp - 0x1b0], xmm2
movsd qword [ebp - 0x1a8], xmm2
movsd qword [ebp - 0x1a0], xmm2
movsd qword [ebp - 0x198], xmm2
movsd qword [ebp - 0x190], xmm2
movsd qword [ebp - 0x188], xmm2
movsd qword [ebp - 0x180], xmm2
movsd qword [ebp - 0x178], xmm2
movsd qword [ebp - 0x170], xmm2
movups xmmword [0x7cdbe0], xmm1
movups xmmword [0x7cdbf0], xmm1
movups xmmword [0x7cdc00], xmm1
movups xmmword [0x7cdc10], xmm1
movups xmmword [0x7cdc20], xmm1
movups xmmword [0x7cdc30], xmm1
movsd qword [ebp - 0x168], xmm2
movsd qword [ebp - 0x160], xmm2
movsd qword [ebp - 0x158], xmm2
movsd qword [ebp - 0x150], xmm2
movsd qword [ebp - 0x148], xmm2
movsd qword [ebp - 0x1e0], xmm3
movsd qword [ebp - 0x1d8], xmm4
movsd qword [ebp - 0x1d0], xmm5
movsd qword [ebp - 0x1c8], xmm6
movsd qword [ebp - 0x1c0], xmm7
comisd xmm0, xmm2
jbe 0x4ec762
mov eax, dword [ebp - 0x7d8]
movsd xmm0, qword [0x7216b8]
cmp dword [ebp - 0x114], 0
subsd xmm0, qword [eax]
mulsd xmm0, qword [0x22d6680]
movsd qword [ebp - 0x240], xmm0
je 0x4ec63f
mov eax, dword [ebp - 0xf4]
movq xmm0, qword [0x721668]
mov dword [ebp - 0x588], eax
mov eax, dword [ebp - 0x888]
mov dword [ebp - 0x590], 0x7cddfc
mov dword [ebp - 0x584], 0
mov dword [ebp - 0x580], 0x721768
movq qword [ebp - 0x578], xmm0
mov dword [ebp - 0x8a4], esp
add eax, 0x1f
and eax, 0xffffffe0
call fcn.00692d40
mov eax, esp
add esp, 0xffffffe8
mov esi, eax
movq xmm0, qword [0x721630]
lea eax, [ebp - 0x590]
mov dword [esp], eax
movq qword [esp + 4], xmm0
mov dword [esp + 0xc], esi
mov edx, dword [ebp - 0x888]
mov dword [esp + 0x10], edx
mov dword [esp + 0x14], 0
call fcn.005cd480
add esp, 0x18
push 0x80120
push 0x786a6c
mov ecx, dword [ebp - 0xe4]
lea edx, [ebp - 0x378]
push edx
push 0x7211cc
push 0x8384ff00
mov dword [edx + 4], esi
lea esi, [ebp - 0xd8]
push dword [ecx]
push esi
mov eax, dword [ebp - 0x888]
mov dword [esi], 0
mov dword [edx], eax
call fcn.005d83f0
add esp, 0x1c
mov eax, dword [ebp - 0x8a4]
mov esp, eax
push 0x50
push dword [ebp - 0x98]
push dword [ebp - 0x1ec]
lea eax, [ebp - 0x228]
push eax
lea edx, [ebp - 0x230]
push edx
lea ecx, [ebp - 0x168]
push ecx
lea esi, [ebp - 0x1b8]
push esi
lea edi, [ebp - 0x238]
push edi
push dword [ebp - 0xe4]
lea eax, [ebp - 0x104]
push eax
lea edx, [ebp - 0xa8]
push edx
lea ecx, [ebp - 0xb8]
push ecx
push 0x7cddf0
push 0x7cdda8
lea esi, [ebp - 0x240]
push esi
push 0x22d6680
lea edi, [ebp - 0x1e8]
push edi
push 0x22d6648
call fcn.004f03d0
add esp, 0x48
cmp eax, 1
je 0x4ef41d
movsd xmm3, qword [ebp - 0x1b8]
comisd xmm3, xmmword [0x721610]
jbe 0x4ec710
movsd xmm0, qword [0x721618]
pxor xmm1, xmm1
pxor xmm2, xmm2
movsd qword [0x7cdbe0], xmm0
movsd qword [0x7cdbe8], xmm3
movups xmmword [0x7cdbf0], xmm1
movups xmmword [0x7cdc00], xmm1
movsd qword [0x7cdc10], xmm2
movsd qword [ebp - 0x858], xmm3
jmp 0x4ec720
movsd xmm0, qword [0x721610]
movsd qword [ebp - 0x858], xmm0
comisd xmm3, xmmword [0x7cdc38]
jbe 0x4ec742
movsd xmm0, qword [0x721618]
movsd qword [0x7cdc30], xmm0
movsd qword [0x7cdc38], xmm3
mov edx, dword [ebp - 0x30]
mov eax, dword [ebp - 0x104]
and eax, 1
mov dword [ebp - 0x114], eax
cmp dword [edx], 1
je 0x4ef79c
jmp 0x4ec826
pxor xmm1, xmm1
comisd xmm1, xmm0
jbe 0x4ec816
movsd xmm0, qword [0x22d6748]
pxor xmm1, xmm1
ucomisd xmm0, xmm1
jp 0x4ec788
je 0x4ef7fe
pxor xmm4, xmm4
comisd xmm4, xmmword [0x721610]
jbe 0x4ec7d6
movsd xmm0, qword [0x721618]
pxor xmm1, xmm1
pxor xmm2, xmm2
movsd qword [0x7cdbe0], xmm0
movsd qword [0x7cdbe8], xmm4
movups xmmword [0x7cdbf0], xmm1
movups xmmword [0x7cdc00], xmm1
movsd qword [0x7cdc10], xmm2
movsd qword [ebp - 0x858], xmm4
jmp 0x4ec7e6
movsd xmm0, qword [0x721610]
movsd qword [ebp - 0x858], xmm0
comisd xmm4, xmmword [0x7cdc38]
jbe 0x4ec808
movsd xmm0, qword [0x721618]
movsd qword [0x7cdc30], xmm0
movsd qword [0x7cdc38], xmm4
mov eax, dword [ebp - 0x30]
cmp dword [eax], 1
je 0x4ef7cd
jmp 0x4ec826
movsd xmm0, qword [0x721610]
movsd qword [ebp - 0x858], xmm0
cmp dword [ebp - 0x114], 0
je 0x4ec90b
mov eax, dword [ebp - 0xf4]
movq xmm0, qword [0x721658]
mov dword [ebp - 0x558], eax
mov eax, dword [ebp - 0x86c]
mov dword [ebp - 0x560], 0x7cddfc
mov dword [ebp - 0x554], 0
mov dword [ebp - 0x550], 0x721780
mov dword [ebp - 0x894], esp
movq qword [ebp - 0x548], xmm0
add eax, 0x1f
and eax, 0xffffffe0
call fcn.00692d40
mov eax, esp
add esp, 0xffffffe8
mov esi, eax
movq xmm0, qword [0x721630]
lea eax, [ebp - 0x560]
mov dword [esp], eax
movq qword [esp + 4], xmm0
mov dword [esp + 0xc], esi
mov edx, dword [ebp - 0x86c]
mov dword [esp + 0x10], edx
mov dword [esp + 0x14], 0
call fcn.005cd480
add esp, 0x18
push 0x80120
push 0x786a6c
mov ecx, dword [ebp - 0xe4]
lea edx, [ebp - 0x340]
push edx
push 0x7211d4
push 0x8384ff00
mov dword [edx + 4], esi
lea esi, [ebp - 0xd8]
push dword [ecx]
push esi
mov eax, dword [ebp - 0x86c]
mov dword [esi], 0
mov dword [edx], eax
call fcn.005d83f0
add esp, 0x1c
mov eax, dword [ebp - 0x894]
mov esp, eax
movsd xmm0, qword [0x7cdd78]
pxor xmm1, xmm1
comisd xmm0, xmm1
jbe 0x4ec92f
movsd xmm0, qword [0x7cdd88]
pxor xmm1, xmm1
comisd xmm0, xmm1
ja 0x4ec945
movsd xmm0, qword [0x7cddd8]
pxor xmm1, xmm1
comisd xmm0, xmm1
jbe 0x4eca37
movsd xmm0, qword [ebp - 0x1e0]
pxor xmm1, xmm1
ucomisd xmm0, xmm1
jp 0x4ec95d
je 0x4eca37
push 1
lea eax, [ebp - 0x150]
push eax
lea edx, [ebp - 0x188]
push edx
lea ecx, [ebp - 0x358]
push ecx
push dword [ebp - 0xe4]
lea esi, [ebp - 0x104]
push esi
lea edi, [ebp - 0xb0]
push edi
lea eax, [ebp - 0xb8]
push eax
push 0x7cddc8
push 0x7cdda8
push 0x7cddd8
push 0x7cdd78
push 0x7cdd90
push 0x7cdd98
push 0x7cdde0
push 0x7cdd88
lea edx, [ebp - 0x1e0]
push edx
push 0x72179c
push 0x22d6648
call fcn.004f0960
add esp, 0x4c
movsd xmm3, qword [ebp - 0x188]
andps xmm3, xmmword [0x7215f0]
movsd qword [ebp - 0x188], xmm3
comisd xmm3, xmmword [ebp - 0x858]
jbe 0x4eca37
movsd xmm0, qword [0x721620]
pxor xmm1, xmm1
pxor xmm2, xmm2
movups xmmword [0x7cdc00], xmm1
movsd qword [0x7cdbe0], xmm0
movsd qword [0x7cdbe8], xmm2
movups xmmword [0x7cdbf0], xmm1
movsd qword [0x7cdc10], xmm2
movsd qword [0x7cdc08], xmm3
movsd qword [ebp - 0x858], xmm3
movsd xmm0, qword [0x7cdda0]
pxor xmm1, xmm1
comisd xmm0, xmm1
jbe 0x4eca5b
movsd xmm0, qword [0x7cddb8]
pxor xmm1, xmm1
comisd xmm0, xmm1
ja 0x4eca71
movsd xmm0, qword [0x7cdd80]
pxor xmm1, xmm1
comisd xmm0, xmm1
jbe 0x4ecb5d
movsd xmm0, qword [ebp - 0x1d8]
pxor xmm1, xmm1
ucomisd xmm0, xmm1
jp 0x4eca89
je 0x4ecb5d
push 1
lea eax, [ebp - 0x148]
push eax
lea edx, [ebp - 0x180]
push edx
lea ecx, [ebp - 0x350]
push ecx
push dword [ebp - 0xe4]
lea esi, [ebp - 0x104]
push esi
lea edi, [ebp - 0xb0]
push edi
lea eax, [ebp - 0xb8]
push eax
push 0x7cddc8
push 0x7cdda8
push 0x7cdd80
push 0x7cdda0
push 0x7cddb0
push 0x7cddc0
push 0x7cdde8
push 0x7cddb8
lea edx, [ebp - 0x1d8]
push edx
push 0x7217a0
push 0x22d6648
call fcn.004f0960
add esp, 0x4c
movsd xmm0, qword [ebp - 0x180]
andps xmm0, xmmword [0x7215f0]
movsd qword [ebp - 0x180], xmm0
comisd xmm0, xmmword [ebp - 0x858]
jbe 0x4ecb65
movsd xmm1, qword [0x721620]
pxor xmm2, xmm2
pxor xmm3, xmm3
movsd qword [0x7cdbe0], xmm1
movsd qword [0x7cdbe8], xmm2
movups xmmword [0x7cdbf0], xmm3
movups xmmword [0x7cdc00], xmm3
movsd qword [0x7cdc10], xmm0
movsd qword [ebp - 0x858], xmm0
jmp 0x4ecb65
movsd xmm0, qword [ebp - 0x180]
movsd xmm3, qword [ebp - 0x188]
movaps xmm1, xmm3
maxsd xmm1, xmm0
movsd qword [ebp - 0x850], xmm1
comisd xmm1, xmmword [0x7cdc28]
jbe 0x4ecba1
movaps xmm2, xmm1
movsd xmm1, qword [0x721620]
movsd qword [0x7cdc20], xmm1
movsd qword [0x7cdc28], xmm2
movsd xmm1, qword [ebp - 0x850]
comisd xmm1, xmmword [0x7216b8]
jbe 0x4eccd0
mov eax, dword [ebp - 0x104]
and eax, 1
mov dword [ebp - 0x114], eax
je 0x4ecc9f
push 0x80120
push 0x786a6c
mov eax, dword [ebp - 0xe4]
lea esi, [ebp - 0x468]
push esi
push 0x7211dc
push 0x8384ff00
mov esi, dword [eax]
lea edx, [ebp - 0xd8]
push esi
push edx
mov dword [edx], 0
mov dword [ebp - 0x468], 0xc
mov dword [ebp - 0x464], 0x721714
call fcn.005d83f0
add esp, 0x1c
push 0x80120
push 0x786f0c
mov eax, dword [ebp - 0xf4]
lea edx, [ebp - 0x460]
push edx
push 0x7211e4
push 0x8384ff00
push esi
mov dword [ebp - 0xd8], 0
lea ecx, [ebp - 0xd8]
push ecx
mov dword [edx], eax
mov dword [edx + 4], 0x7cddfc
call fcn.005d83f0
add esp, 0x1c
push 0x80120
push 0x786a6c
mov dword [ebp - 0xd8], 0
lea eax, [ebp - 0x458]
push eax
push 0x7211ec
push 0x8384ff00
push esi
mov dword [eax], 0xc
lea edx, [ebp - 0xd8]
push edx
mov dword [eax + 4], 0x721724
call fcn.005d83f0
add esp, 0x1c
movsd xmm0, qword [ebp - 0x190]
pxor xmm1, xmm1
movsd xmm3, qword [ebp - 0x1b8]
movsd xmm4, qword [ebp - 0x1b0]
movsd qword [ebp - 0x8e8], xmm0
movsd qword [ebp - 0x868], xmm1
jmp 0x4ed680
pxor xmm1, xmm1
ucomisd xmm3, xmm1
jp 0x4ecce0
je 0x4f02df
test byte [ebp - 0x104], 1
je 0x4ecdc2
mov eax, dword [ebp - 0xf4]
movq xmm0, qword [0x721670]
mov dword [ebp - 0x810], eax
mov eax, dword [ebp - 0x884]
mov dword [ebp - 0x818], 0x7cddfc
mov dword [ebp - 0x80c], 0
mov dword [ebp - 0x808], str._CSTVER:_START_AXIAL_REDUCTION_FOR_SHEAR
mov dword [ebp - 0x8b0], esp
movq qword [ebp - 0x800], xmm0
add eax, 0x1f
and eax, 0xffffffe0
call fcn.00692d40
mov eax, esp
add esp, 0xffffffe8
mov esi, eax
movq xmm0, qword [0x721630]
lea eax, [ebp - 0x818]
mov dword [esp], eax
movq qword [esp + 4], xmm0
mov dword [esp + 0xc], esi
mov edx, dword [eax - 0x6c]
mov dword [esp + 0x10], edx
mov dword [esp + 0x14], 0
call fcn.005cd480
add esp, 0x18
push 0x80120
push 0x786a6c
mov ecx, dword [ebp - 0xe4]
lea edx, [ebp - 0x480]
push edx
push 0x7211f4
push 0x8384ff00
mov dword [edx + 4], esi
lea esi, [ebp - 0xd8]
push dword [ecx]
push esi
mov eax, dword [ebp - 0x884]
mov dword [esi], 0
mov dword [edx], eax
call fcn.005d83f0
add esp, 0x1c
mov eax, dword [ebp - 0x8b0]
mov esp, eax
push 0x50
push dword [ebp - 0x98]
push dword [ebp - 0x1ec]
lea eax, [ebp - 0x310]
push eax
push dword [ebp - 0xe4]
lea edx, [ebp - 0x104]
push edx
lea ecx, [ebp - 0x180]
push ecx
lea esi, [ebp - 0x188]
push esi
lea edi, [ebp - 0x238]
push edi
push 0x7cdd80
push 0x7cddd8
push 0x22d6680
call fcn.004f1250
add esp, 0x30
cmp eax, 1
je 0x4ef41d
test byte [ebp - 0x104], 1
je 0x4ecefb
mov eax, dword [ebp - 0xf4]
movq xmm0, qword [0x721678]
mov dword [ebp - 0x830], eax
mov eax, dword [ebp - 0x870]
mov dword [ebp - 0x838], 0x7cddfc
mov dword [ebp - 0x82c], 0
mov dword [ebp - 0x828], 0x7217d0
mov dword [ebp - 0x8f4], esp
movq qword [ebp - 0x820], xmm0
add eax, 0x1f
and eax, 0xffffffe0
call fcn.00692d40
mov eax, esp
add esp, 0xffffffe8
mov esi, eax
movq xmm0, qword [0x721630]
lea eax, [ebp - 0x838]
mov dword [esp], eax
movq qword [esp + 4], xmm0
mov dword [esp + 0xc], esi
mov edx, dword [eax - 0x38]
mov dword [esp + 0x10], edx
mov dword [esp + 0x14], 0
call fcn.005cd480
add esp, 0x18
push 0x80120
push 0x786a6c
mov ecx, dword [ebp - 0xe4]
lea edx, [ebp - 0x540]
push edx
push 0x7211fc
push 0x8384ff00
mov dword [edx + 4], esi
lea esi, [ebp - 0xd8]
push dword [ecx]
push esi
mov eax, dword [ebp - 0x870]
mov dword [esi], 0
mov dword [edx], eax
call fcn.005d83f0
add esp, 0x1c
mov eax, dword [ebp - 0x8f4]
mov esp, eax
movsd xmm1, qword [ebp - 0x1e8]
pxor xmm0, xmm0
ucomisd xmm1, xmm0
jp 0x4ecf13
je 0x4f01bb
pxor xmm0, xmm0
comisd xmm1, xmm0
jbe 0x4ed0b2
add esp, 0xffffff90
lea edx, [ebp - 0x538]
movsd xmm0, qword [0x22d6680]
lea ecx, [ebp - 0xb8]
lea esi, [ebp - 0xb0]
lea edi, [ebp - 0xa8]
mov dword [esp], 0x22d6648
mov eax, dword [ebp - 0x7d8]
mov dword [esp + 4], edx
lea edx, [ebp - 0x530]
mov dword [esp + 8], 0x7cdda8
mov dword [esp + 0xc], 0x7cddc8
mov dword [esp + 0x10], 0x7cddf0
mov dword [esp + 0x14], ecx
lea ecx, [ebp - 0x528]
mov dword [esp + 0x18], esi
lea esi, [ebp - 0x1e8]
mulsd xmm0, qword [eax]
lea eax, [ebp - 0x310]
mov dword [esp + 0x1c], edi
lea edi, [ebp - 0x1c8]
mov dword [esp + 0x20], eax
lea eax, [ebp - 0x1c0]
mov dword [esp + 0x24], edx
lea edx, [ebp - 0x104]
mov dword [esp + 0x28], ecx
mov dword [esp + 0x2c], esi
lea esi, [ebp - 0x1a0]
mov dword [esp + 0x30], edi
lea edi, [ebp - 0x168]
mov dword [esp + 0x34], eax
lea eax, [ebp - 0x160]
mov dword [esp + 0x38], edx
lea edx, [ebp - 0x158]
mov ecx, dword [eax + 0x7c]
mov dword [esp + 0x3c], ecx
lea ecx, [ebp - 0x230]
mov dword [esp + 0x40], esi
lea esi, [ebp - 0x228]
mov dword [esp + 0x44], 0x7cdc90
mov dword [esp + 0x48], edi
lea edi, [ebp - 0x188]
mov dword [esp + 0x4c], eax
lea eax, [ebp - 0x180]
mov dword [esp + 0x50], edx
mov dword [esp + 0x54], ecx
mov dword [esp + 0x58], esi
mov dword [esp + 0x5c], edi
mov dword [esp + 0x60], eax
mov edx, dword [eax - 0x6c]
mov dword [esp + 0x64], edx
mov ecx, dword [ebp - 0x98]
mov dword [esp + 0x68], ecx
movsd qword [ebp - 0x538], xmm0
mov dword [esp + 0x6c], 0x50
call fcn.004f1540
add esp, 0x70
movsd xmm4, qword [ebp - 0x1a0]
comisd xmm4, xmmword [ebp - 0x858]
jbe 0x4ed09f
movups xmm0, xmmword [0x7cdc90]
movups xmm1, xmmword [0x7cdca0]
movups xmm2, xmmword [0x7cdcb0]
movsd xmm3, qword [0x7cdcc0]
movsd qword [ebp - 0x858], xmm4
movups xmmword [0x7cdbe0], xmm0
movups xmmword [0x7cdbf0], xmm1
movups xmmword [0x7cdc00], xmm2
movsd qword [0x7cdc10], xmm3
comisd xmm4, xmmword [0x7cdc38]
ja 0x4ed212
jmp 0x4ed22a
pxor xmm0, xmm0
comisd xmm0, xmm1
jbe 0x4ed22a
add esp, 0xffffff9c
lea eax, [ebp - 0xb8]
lea edx, [ebp - 0xb0]
lea ecx, [ebp - 0x310]
lea esi, [ebp - 0x530]
mov dword [esp], 0x22d6648
lea edi, [ebp - 0x528]
mov dword [esp + 4], 0x7cdda8
mov dword [esp + 8], 0x7cddc8
mov dword [esp + 0xc], eax
lea eax, [ebp - 0x1e8]
mov dword [esp + 0x10], edx
lea edx, [ebp - 0x1c8]
mov dword [esp + 0x14], ecx
lea ecx, [ebp - 0x1c0]
mov dword [esp + 0x18], esi
lea esi, [ebp - 0x104]
mov dword [esp + 0x1c], edi
mov dword [esp + 0x20], eax
lea eax, [ebp - 0x198]
mov dword [esp + 0x24], edx
lea edx, [ebp - 0x168]
mov dword [esp + 0x28], ecx
lea ecx, [ebp - 0x160]
mov dword [esp + 0x2c], esi
lea esi, [ebp - 0x158]
mov edi, dword [ecx + 0x7c]
mov dword [esp + 0x30], edi
lea edi, [ebp - 0x230]
mov dword [esp + 0x34], eax
lea eax, [ebp - 0x228]
mov dword [esp + 0x38], 0x7cdc90
mov dword [esp + 0x3c], edx
lea edx, [ebp - 0x188]
mov dword [esp + 0x40], ecx
lea ecx, [ebp - 0x180]
mov dword [esp + 0x44], esi
mov dword [esp + 0x48], edi
mov dword [esp + 0x4c], eax
mov dword [esp + 0x50], edx
mov dword [esp + 0x54], ecx
mov esi, dword [eax + 0x3c]
mov dword [esp + 0x58], esi
mov edi, dword [ebp - 0x98]
mov dword [esp + 0x5c], edi
mov dword [esp + 0x60], 0x50
call fcn.004f31e0
add esp, 0x64
movsd xmm4, qword [ebp - 0x198]
comisd xmm4, xmmword [ebp - 0x858]
jbe 0x4ed208
movups xmm0, xmmword [0x7cdc90]
movups xmm1, xmmword [0x7cdca0]
movups xmm2, xmmword [0x7cdcb0]
movsd xmm3, qword [0x7cdcc0]
movsd qword [ebp - 0x858], xmm4
movups xmmword [0x7cdbe0], xmm0
movups xmmword [0x7cdbf0], xmm1
movups xmmword [0x7cdc00], xmm2
movsd qword [0x7cdc10], xmm3
comisd xmm4, xmmword [0x7cdc38]
jbe 0x4ed22a
movsd xmm0, qword [0x7cdc90]
movsd qword [0x7cdc38], xmm4
movsd qword [0x7cdc30], xmm0
mov eax, dword [ebp - 0x1ec]
cmp dword [eax], 0
jne 0x4ef97b
cmp dword [0x22d6648], 0
jle 0x4f01aa
movsd xmm0, qword [ebp - 0x358]
pxor xmm1, xmm1
ucomisd xmm0, xmm1
jp 0x4ed25e
je 0x4ed382
movsd xmm0, qword [ebp - 0x1c0]
pxor xmm1, xmm1
ucomisd xmm0, xmm1
jp 0x4ed276
je 0x4ed382
movsd xmm0, qword [ebp - 0x1e0]
pxor xmm1, xmm1
ucomisd xmm0, xmm1
jp 0x4ed28e
je 0x4ed382
push 0x50
push 1
push 1
push dword [ebp - 0x98]
push dword [ebp - 0x1ec]
push 0x7cdc90
lea eax, [ebp - 0x178]
push eax
push dword [ebp - 0xe4]
lea edx, [ebp - 0x104]
push edx
lea ecx, [ebp - 0x1c0]
push ecx
lea esi, [ebp - 0x1e0]
push esi
lea edi, [ebp - 0xb0]
push edi
lea eax, [ebp - 0xb8]
push eax
push 0x7cddc8
push 0x7cdda8
lea edx, [ebp - 0x358]
push edx
push 0x7217f0
push 0x7217f4
push 0x22d6648
call fcn.004f4de0
add esp, 0x4c
movsd xmm4, qword [ebp - 0x178]
comisd xmm4, xmmword [ebp - 0x858]
jbe 0x4ed351
movups xmm0, xmmword [0x7cdc90]
movups xmm1, xmmword [0x7cdca0]
movups xmm2, xmmword [0x7cdcb0]
movsd xmm3, qword [0x7cdcc0]
movsd qword [ebp - 0x858], xmm4
movups xmmword [0x7cdbe0], xmm0
movups xmmword [0x7cdbf0], xmm1
movups xmmword [0x7cdc00], xmm2
movsd qword [0x7cdc10], xmm3
comisd xmm4, xmmword [0x7cdc38]
jbe 0x4ed373
movsd xmm0, qword [0x7cdc90]
movsd qword [0x7cdc38], xmm4
movsd qword [0x7cdc30], xmm0
mov eax, dword [ebp - 0x1ec]
cmp dword [eax], 0
jne 0x4ef97b
movsd xmm0, qword [ebp - 0x350]
pxor xmm1, xmm1
ucomisd xmm0, xmm1
jp 0x4ed39a
je 0x4ed4c0
movsd xmm0, qword [ebp - 0x1c8]
pxor xmm1, xmm1
ucomisd xmm0, xmm1
jp 0x4ed3b2
je 0x4ed4c0
movsd xmm0, qword [ebp - 0x1d8]
pxor xmm1, xmm1
ucomisd xmm0, xmm1
jp 0x4ed3ca
je 0x4ed4c0
push 0x50
push 1
push 1
push dword [ebp - 0x98]
push dword [ebp - 0x1ec]
push 0x7cdc90
lea eax, [ebp - 0x170]
push eax
push dword [ebp - 0xe4]
lea edx, [ebp - 0x104]
push edx
lea ecx, [ebp - 0x1c8]
push ecx
lea esi, [ebp - 0x1d8]
push esi
lea edi, [ebp - 0xb0]
push edi
lea eax, [ebp - 0xb8]
push eax
push 0x7cddc8
push 0x7cdda8
lea edx, [ebp - 0x350]
push edx
push 0x7217f8
push 0x7217fc
push 0x22d6648
call fcn.004f4de0
add esp, 0x4c
movsd xmm4, qword [ebp - 0x170]
comisd xmm4, xmmword [ebp - 0x858]
jbe 0x4ed48d
movups xmm0, xmmword [0x7cdc90]
movups xmm1, xmmword [0x7cdca0]
movups xmm2, xmmword [0x7cdcb0]
movsd xmm3, qword [0x7cdcc0]
movsd qword [ebp - 0x858], xmm4
movups xmmword [0x7cdbe0], xmm0
movups xmmword [0x7cdbf0], xmm1
movups xmmword [0x7cdc00], xmm2
movsd qword [0x7cdc10], xmm3
comisd xmm4, xmmword [0x7cdc38]
jbe 0x4ed4af
movsd xmm0, qword [0x7cdc90]
movsd qword [0x7cdc38], xmm4
movsd qword [0x7cdc30], xmm0
mov eax, dword [ebp - 0x1ec]
cmp dword [eax], 0
jne 0x4ef97b
jmp 0x4ed4c8
movsd xmm4, qword [ebp - 0x170]
movsd xmm0, qword [ebp - 0x178]
cmp dword [0x22d6648], 0
maxsd xmm0, xmm4
movsd qword [ebp - 0x868], xmm0
jle 0x4ed651
movsd xmm0, qword [ebp - 0x1d0]
pxor xmm1, xmm1
ucomisd xmm0, xmm1
jp 0x4ed501
je 0x4ed651
movsd xmm0, qword [0x7cddd0]
pxor xmm1, xmm1
ucomisd xmm0, xmm1
jp 0x4ed519
je 0x4ed651
push 0x50
push dword [ebp - 0x98]
push dword [ebp - 0x1ec]
push 0x7cdc90
lea eax, [ebp - 0x190]
push eax
push dword [ebp - 0xe4]
lea edx, [ebp - 0x104]
push edx
lea ecx, [ebp - 0x148]
push ecx
lea esi, [ebp - 0x150]
push esi
lea edi, [ebp - 0x158]
push edi
lea eax, [ebp - 0x160]
push eax
lea edx, [ebp - 0x168]
push edx
lea ecx, [ebp - 0xb8]
push ecx
lea esi, [ebp - 0x230]
push esi
lea edi, [ebp - 0x228]
push edi
lea eax, [ebp - 0x1d0]
push eax
push 0x7cddd0
push 0x22d6648
call fcn.004f5270
add esp, 0x48
movsd xmm0, qword [ebp - 0x190]
movsd qword [ebp - 0x8e8], xmm0
comisd xmm0, xmmword [ebp - 0x858]
jbe 0x4ed5e5
movups xmm0, xmmword [0x7cdc90]
movups xmm1, xmmword [0x7cdca0]
movups xmm2, xmmword [0x7cdcb0]
movsd xmm3, qword [0x7cdcc0]
movups xmmword [0x7cdbe0], xmm0
movups xmmword [0x7cdbf0], xmm1
movups xmmword [0x7cdc00], xmm2
movsd qword [0x7cdc10], xmm3
movsd xmm0, qword [ebp - 0x8e8]
comisd xmm0, xmmword [0x7cdc28]
jbe 0x4ed630
movsd xmm1, qword [0x7cdc90]
mov eax, dword [ebp - 0x104]
and eax, 1
movsd xmm3, qword [ebp - 0x1b8]
movsd xmm4, qword [ebp - 0x1b0]
movsd qword [0x7cdc28], xmm0
movsd qword [0x7cdc20], xmm1
mov dword [ebp - 0x114], eax
jmp 0x4ed680
mov eax, dword [ebp - 0x104]
and eax, 1
movsd xmm3, qword [ebp - 0x1b8]
movsd xmm4, qword [ebp - 0x1b0]
mov dword [ebp - 0x114], eax
jmp 0x4ed680
movsd xmm0, qword [ebp - 0x190]
mov eax, dword [ebp - 0x104]
and eax, 1
movsd xmm3, qword [ebp - 0x1b8]
movsd xmm4, qword [ebp - 0x1b0]
mov dword [ebp - 0x114], eax
movsd qword [ebp - 0x8e8], xmm0
movsd xmm5, qword [ebp - 0x850]
movaps xmm7, xmm4
movaps xmm6, xmm0
movsd xmm0, qword [ebp - 0x198]
movsd qword [ebp - 0x880], xmm0
movsd xmm1, qword [ebp - 0x1a0]
movsd qword [ebp - 0x878], xmm1
movsd xmm2, qword [ebp - 0x1a8]
movsd qword [ebp - 0x890], xmm2
mov eax, dword [ebp - 0x7e8]
mov edx, dword [ebp - 0x7ec]
cmp dword [ebp - 0x114], 0
maxsd xmm5, qword [ebp - 0x868]
maxsd xmm6, xmm5
movsd xmm5, qword [edx]
maxsd xmm0, xmm6
maxsd xmm1, xmm0
movaps xmm0, xmm3
maxsd xmm2, xmm1
movsd xmm1, qword [eax]
maxsd xmm7, xmm2
pxor xmm2, xmm2
maxsd xmm0, xmm7
maxsd xmm5, xmm2
maxsd xmm1, xmm0
movsd qword [ebp - 0x860], xmm0
movsd qword [eax], xmm1
movsd qword [edx], xmm5
je 0x4edf50
push 0x80120
push 0x786a6c
mov edx, dword [ebp - 0xe4]
lea eax, [ebp - 0x370]
push eax
push 0x721204
push 0x8384ff00
mov ecx, dword [edx]
lea esi, [ebp - 0xd8]
push ecx
push esi
mov dword [esi], 0
mov dword [eax], 0xc
mov dword [eax + 4], 0x721714
mov dword [ebp - 0x898], ecx
movsd qword [ebp - 0x8e0], xmm3
movsd qword [ebp - 0x8d8], xmm4
call fcn.005d83f0
movsd xmm4, qword [ebp - 0x8d8]
add esp, 0x1c
movsd xmm3, qword [ebp - 0x8e0]
push 0x80120
push 0x786a14
mov eax, dword [ebp - 0x7f4]
lea edx, [ebp - 0x2a8]
push edx
push 0x72120c
mov dword [ebp - 0xd8], 0
mov dword [edx], eax
push 0x8384ff00
push dword [ebp - 0x898]
push esi
movsd qword [ebp - 0x8e0], xmm3
movsd qword [ebp - 0x8d8], xmm4
call fcn.005d83f0
movsd xmm4, qword [ebp - 0x8d8]
add esp, 0x1c
movsd xmm3, qword [ebp - 0x8e0]
movsd xmm0, qword [ebp - 0x840]
lea eax, [ebp - 0x368]
push eax
push 0x721214
push esi
movsd qword [eax], xmm0
movsd qword [ebp - 0x8e0], xmm3
movsd qword [ebp - 0x8d8], xmm4
call fcn.005dab70
movsd xmm4, qword [ebp - 0x8d8]
add esp, 0xc
movsd xmm3, qword [ebp - 0x8e0]
mov eax, dword [0x22d6648]
add eax, 2
cmp eax, 5
ja 0x4edc94
movzx eax, word [eax*2 + 0x7215c6]
add eax, 0x4ed847
jmp eax
push 0x80120
xor eax, eax
push eax
push eax
push 0x8384ff00
push eax
push 0xb
push 0x721800
call fcn.00609880
add esp, 0x1c
jmp 0x4edf0f
push 0x80120
push 0x786a6c
mov dword [ebp - 0xd8], 0
lea eax, [ebp - 0x360]
push eax
push 0x72138c
mov dword [eax], 0xc
mov dword [eax + 4], 0x721724
push 0x8384ff00
push dword [ebp - 0x898]
push esi
call fcn.005d83f0
add esp, 0x1c
test byte [0x7d0d98], 1
jne 0x4eff30
mov eax, dword [ebp - 0x7f4]
inc eax
mov dword [ebp - 0x7f4], eax
cmp eax, dword [ebp - 0x7f8]
jle 0x4ebfd2
mov edx, dword [ebp - 0xf4]
mov esi, dword [ebp - 0x1ec]
cmp dword [ebp - 0x114], 0
je 0x4ee0be
push 0x80120
push 0x786a6c
mov edi, dword [ebp - 0xe4]
lea ecx, [ebp - 0x4a0]
push ecx
push 0x721394
push 0x8384ff00
mov ecx, dword [edi]
mov dword [ebp - 0x8f8], ecx
push ecx
mov dword [ebp - 0xd8], 0
lea ecx, [ebp - 0xd8]
push ecx
mov dword [ebp - 0x4a0], 0xc
mov dword [ebp - 0x49c], 0x721714
mov dword [ecx - 0x1c], edx
call fcn.005d83f0
mov edx, dword [ebp - 0xf4]
add esp, 0x1c
push 0x80120
mov ecx, dword [ebp - 0x7e8]
lea edi, [ebp - 0x498]
push 0x785b00
push edi
movsd xmm0, qword [ecx]
lea ecx, [ebp - 0xd8]
push 0x72139c
mov dword [ecx], 0
movsd qword [edi], xmm0
push 0x8384ff00
push dword [ebp - 0x8f8]
push ecx
mov dword [ecx - 0x1c], edx
call fcn.005d83f0
mov edx, dword [ebp - 0xf4]
add esp, 0x1c
mov ecx, dword [ebp - 0x7ec]
lea edi, [ebp - 0x490]
push edi
push 0x7213a4
movsd xmm0, qword [ecx]
lea ecx, [ebp - 0xd8]
push ecx
movsd qword [edi], xmm0
mov dword [ecx - 0x1c], edx
call fcn.005dab70
mov edx, dword [ebp - 0xf4]
add esp, 0xc
push 0x80120
push 0x786a6c
mov dword [ebp - 0xd8], 0
lea ecx, [ebp - 0x488]
push ecx
push 0x7213ac
mov dword [ecx], 0xc
lea edi, [ebp - 0xd8]
mov dword [ecx + 4], 0x721724
push 0x8384ff00
push dword [ebp - 0x8f8]
push edi
mov dword [edi - 0x1c], edx
call fcn.005d83f0
mov edx, dword [ebp - 0xf4]
add esp, 0x1c
mov ecx, dword [ebp - 0x40]
cmp dword [ecx], 0xffffffff
je 0x4efde3
cmp dword [ebp - 0x114], 0
je 0x4ee34b
push 0x80120
push 0x786a6c
mov edi, dword [ebp - 0xe4]
lea ecx, [ebp - 0x4d8]
push ecx
push 0x7213b4
push 0x8384ff00
mov ecx, dword [edi]
mov dword [ebp - 0x8f8], ecx
push ecx
mov dword [ebp - 0xd8], 0
lea ecx, [ebp - 0xd8]
push ecx
mov dword [ebp - 0x4d8], 0xc
mov dword [ebp - 0x4d4], 0x721714
mov dword [ecx - 0x1c], edx
call fcn.005d83f0
mov edx, dword [ebp - 0xf4]
add esp, 0x1c
push 0x80120
push 0x786a6c
mov dword [ebp - 0xd8], 0
lea ecx, [ebp - 0x4d0]
push ecx
push 0x7213bc
mov dword [ecx], 1
lea edi, [ebp - 0xd8]
mov dword [ecx + 4], 0x72180c
push 0x8384ff00
push dword [ebp - 0x8f8]
push edi
mov dword [edi - 0x1c], edx
call fcn.005d83f0
mov edx, dword [ebp - 0xf4]
add esp, 0x1c
movd xmm2, edx
lea eax, [edx + 0x1b]
pxor xmm1, xmm1
movq xmm0, qword [0x721650]
punpckldq xmm2, xmm1
movq xmm3, qword [0x721680]
mov dword [ebp - 0x868], 0x721810
movq qword [ebp - 0x860], xmm0
mov dword [ebp - 0x858], 0x7cddfc
movq qword [ebp - 0x850], xmm2
mov dword [ebp - 0x848], 0x721814
movq qword [ebp - 0x840], xmm3
mov dword [ebp - 0x8f8], esp
mov dword [ebp - 0x8ec], eax
add eax, 0x1f
and eax, 0xffffffe0
call fcn.00692d40
mov eax, esp
add esp, 0xffffffe8
lea ecx, [ebp - 0x868]
movd xmm2, dword [ebp - 0x8ec]
pxor xmm0, xmm0
movq xmm1, qword [0x721660]
punpckldq xmm2, xmm0
mov dword [ebp - 0x8f4], eax
mov dword [esp], ecx
movq qword [esp + 4], xmm1
mov dword [esp + 0xc], eax
movq qword [esp + 0x10], xmm2
mov dword [ebp - 0xf4], edx
call fcn.005cd480
mov edx, dword [ebp - 0xf4]
add esp, 0x18
mov ecx, dword [ebp - 0x8ec]
push 0x80120
mov dword [ebp - 0x4c8], ecx
lea ecx, [ebp - 0x4c8]
push 0x786a6c
push ecx
mov ecx, dword [ebp - 0xe4]
push 0x7213c4
push 0x8384ff00
mov ecx, dword [ecx]
mov dword [ebp - 0x8f0], ecx
push ecx
mov edi, dword [ebp - 0x8f4]
lea ecx, [ebp - 0xd8]
push ecx
mov dword [ebp - 0x4c4], edi
mov dword [ecx], 0
mov dword [ecx - 0x1c], edx
call fcn.005d83f0
mov edx, dword [ebp - 0xf4]
add esp, 0x1c
mov eax, dword [ebp - 0x8f8]
mov esp, eax
push 0x80120
push 0x786a6c
mov dword [ebp - 0xd8], 0
lea ecx, [ebp - 0x4c0]
push ecx
push 0x7213cc
mov dword [ecx], 1
lea edi, [ebp - 0xd8]
mov dword [ecx + 4], 0x721830
push 0x8384ff00
push dword [ebp - 0x8f0]
push edi
mov dword [edi - 0x1c], edx
call fcn.005d83f0
mov edx, dword [ebp - 0xf4]
add esp, 0x1c
push 0x80120
push 0x786a6c
mov dword [ebp - 0xd8], 0
lea ecx, [ebp - 0x4b8]
push ecx
push 0x7213d4
mov dword [ecx], 0xc
lea edi, [ebp - 0xd8]
mov dword [ecx + 4], 0x721724
push 0x8384ff00
push dword [ebp - 0x8f0]
push edi
mov dword [edi - 0x1c], edx
call fcn.005d83f0
mov edx, dword [ebp - 0xf4]
add esp, 0x1c
push 1
push 0x721834
mov dword [ebp - 0x20c], 4
mov dword [ebp - 0xf4], edx
call fcn.0052a660
mov edx, dword [ebp - 0xf4]
add esp, 8
push 1
push 0x721838
fstp qword [0x7cdcd0]
mov dword [ebp - 0xf4], edx
call fcn.0052a660
mov edx, dword [ebp - 0xf4]
add esp, 8
mov ecx, dword [ebp - 0x7f0]
pxor xmm1, xmm1
fstp qword [0x7cdcd8]
movsd xmm0, qword [ecx]
ucomisd xmm0, xmm1
jp 0x4ee3ad
je 0x4ee3d7
push 0x80120
xor ecx, ecx
push ecx
push ecx
push 0x8384ff00
push ecx
push 7
push 0x72183c
mov dword [ebp - 0xf4], edx
call fcn.00609880
mov edx, dword [ebp - 0xf4]
add esp, 0x1c
mov ecx, dword [ebp - 0x7f0]
pxor xmm1, xmm1
movsd xmm0, qword [ecx + 8]
ucomisd xmm0, xmm1
jp 0x4ee3ee
je 0x4ee418
push 0x80120
xor ecx, ecx
push ecx
push ecx
push 0x8384ff00
push ecx
push 0xe
push 0x721844
mov dword [ebp - 0xf4], edx
call fcn.00609880
mov edx, dword [ebp - 0xf4]
add esp, 0x1c
mov ecx, dword [ebp - 0x104]
mov dword [ebp - 0x204], ecx
pxor xmm0, xmm0
movsd qword [ebp - 0x348], xmm0
and ecx, 1
mov dword [ebp - 0x1f8], ecx
je 0x4ee4c3
push 0x80120
push 0x786dd4
mov edi, dword [ebp - 0xe4]
lea ecx, [ebp - 0x4b0]
push ecx
push 0x7213dc
push 0x8384ff00
push dword [edi]
mov dword [ebp - 0xd8], 0
lea ecx, [ebp - 0xd8]
push ecx
mov dword [ebp - 0x4b0], edx
mov dword [ebp - 0x4ac], 0x7cddfc
mov dword [ecx - 0x1c], edx
call fcn.005d83f0
mov edx, dword [ebp - 0xf4]
add esp, 0x1c
mov dword [ebp - 0xf4], edx
lea ecx, [ebp - 0x4a8]
push ecx
push 0x7213e4
pxor xmm0, xmm0
lea edi, [ebp - 0xd8]
push edi
movsd qword [ecx], xmm0
call fcn.005dab70
mov edx, dword [ebp - 0xf4]
add esp, 0xc
mov eax, 1
xor ecx, ecx
pxor xmm0, xmm0
pxor xmm1, xmm1
movups xmmword [0x7cdce0], xmm0
mov edi, eax
movups xmmword [0x7cdd00], xmm0
movups xmmword [0x7cdcf0], xmm0
movups xmmword [0x7cdd10], xmm0
movups xmmword [0x7cdd20], xmm0
movd xmm0, edx
punpckldq xmm0, xmm1
mov dword [ebp - 0x210], ecx
mov dword [ebp - 0x214], ecx
mov dword [ebp - 0x218], ecx
mov dword [ebp - 0x200], ecx
lea ecx, [edx + 0x18]
mov dword [ebp - 0x21c], ecx
lea ecx, [edx + 0x2e]
mov dword [ebp - 0x220], ecx
lea ecx, [edx + 0x27]
mov dword [ebp - 0x1fc], eax
mov dword [ebp - 0x244], ecx
movdqu xmmword [ebp - 0x478], xmm0
mov dword [ebp - 0xf4], edx
mov dword [ebp - 0x1ec], esi
mov esi, eax
mov edx, dword [ebp - 0x44]
mov ecx, dword [ebp - 0x1fc]
mov eax, dword [ebp - 0x50]
inc dword [ebp - 0x200]
movsd xmm2, qword [edx + ecx*8 - 8]
movsd xmm5, qword [edx + ecx*8]
movsd xmm1, qword [eax + esi*8 - 8]
mov eax, dword [ebp - 0x5c]
mov edx, dword [ebp - 0x50]
movsd qword [ebp - 0x288], xmm1
movsd xmm0, qword [eax + edi*8 - 8]
movsd xmm4, qword [eax + edi*8]
maxsd xmm1, xmm0
movsd xmm3, qword [edx + esi*8]
movsd qword [ebp - 0x290], xmm3
minsd xmm3, xmm4
movsd qword [ebp - 0x270], xmm2
maxsd xmm2, xmm1
movsd qword [ebp - 0x260], xmm5
minsd xmm5, xmm3
movsd qword [ebp - 0x278], xmm2
movsd qword [ebp - 0x2a0], xmm2
movsd qword [ebp - 0x268], xmm4
movsd qword [ebp - 0x280], xmm5
movsd qword [ebp - 0x298], xmm5
cmp dword [ebp - 0x1f8], 0
je 0x4ee8c6
movaps xmm1, xmm4
mov edx, dword [ebp - 0x60]
subsd xmm1, xmm0
movsd qword [ebp - 0x268], xmm1
cmp dword [edx + edi*4 - 4], 0
je 0x4ee60b
cmp dword [edx + edi*4], 0
jne 0x4ee624
movaps xmm0, xmm1
addsd xmm0, xmm0
movsd qword [ebp - 0x268], xmm0
movsd qword [ebp - 0x2d8], xmm0
jmp 0x4ee62f
movaps xmm0, xmm1
movsd qword [ebp - 0x2d8], xmm0
push 0x80120
push 0x786a6c
mov ecx, dword [ebp - 0xe4]
lea edx, [ebp - 0x3d8]
push edx
push 0x7213ec
push 0x8384ff00
mov edx, dword [ecx]
mov dword [ebp - 0x300], edx
push edx
mov dword [ebp - 0xd8], 0
lea edx, [ebp - 0xd8]
push edx
mov dword [ebp - 0x3d8], 0xc
mov dword [ebp - 0x3d4], 0x721714
call fcn.005d83f0
add esp, 0x1c
push 0x80120
push 0x786b30
mov edx, dword [ebp - 0xf4]
lea ecx, [ebp - 0x3d0]
push ecx
push 0x7213f4
mov dword [ebp - 0xd8], 0
mov dword [ecx], edx
lea edx, [ebp - 0xd8]
mov dword [ecx + 4], 0x7cddfc
push 0x8384ff00
push dword [ebp - 0x300]
push edx
call fcn.005d83f0
add esp, 0x1c
mov edx, dword [ebp - 0x200]
lea ecx, [ebp - 0x2f8]
push ecx
mov dword [ecx], edx
lea edx, [ebp - 0xd8]
push 0x7213fc
push edx
call fcn.005dab70
add esp, 0xc
movsd xmm0, qword [ebp - 0x278]
lea edx, [ebp - 0x3c8]
push edx
push 0x721404
movsd qword [edx], xmm0
lea ecx, [ebp - 0xd8]
push ecx
call fcn.005dab70
add esp, 0xc
movsd xmm0, qword [ebp - 0x280]
lea edx, [ebp - 0x3c0]
push edx
push 0x72140c
movsd qword [edx], xmm0
lea ecx, [ebp - 0xd8]
push ecx
call fcn.005dab70
add esp, 0xc
movsd xmm0, qword [ebp - 0x260]
mov edx, dword [ebp - 0x48]
mov ecx, dword [ebp - 0x1fc]
subsd xmm0, qword [ebp - 0x270]
mulsd xmm0, qword [edx + ecx*8 - 8]
lea edx, [ebp - 0x3b8]
push edx
push 0x721414
movsd qword [edx], xmm0
lea edx, [ebp - 0xd8]
push edx
call fcn.005dab70
add esp, 0xc
movsd xmm0, qword [ebp - 0x290]
lea ecx, [ebp - 0x3b0]
mov edx, dword [ebp - 0x54]
push ecx
push 0x72141c
subsd xmm0, qword [ebp - 0x288]
mulsd xmm0, qword [edx + esi*8 - 8]
lea edx, [ebp - 0xd8]
push edx
movsd qword [ecx], xmm0
call fcn.005dab70
add esp, 0xc
mov edx, dword [ebp - 0x3c]
mov ecx, dword [ebp - 0x68]
movsd xmm0, qword [edx]
lea edx, [ebp - 0x3a8]
movsd xmm1, qword [ecx]
mulsd xmm1, xmm0
push edx
push 0x721424
movsd qword [ebp - 0x8d8], xmm0
lea edx, [ebp - 0xd8]
push edx
movsd qword [ebp - 0x3a8], xmm1
call fcn.005dab70
add esp, 0xc
mov edx, dword [ebp - 0x6c]
lea ecx, [ebp - 0x3a0]
push ecx
push 0x72142c
movsd xmm0, qword [edx]
lea edx, [ebp - 0xd8]
mulsd xmm0, qword [ebp - 0x8d8]
push edx
movsd qword [ecx], xmm0
call fcn.005dab70
add esp, 0xc
mov edx, dword [ebp - 0x64]
lea ecx, [ebp - 0x398]
movsd xmm0, qword [ebp - 0x268]
push ecx
mulsd xmm0, qword [edx + edi*8 - 8]
lea edx, [ebp - 0xd8]
push 0x721434
push edx
movsd qword [ecx], xmm0
call fcn.005dab70
add esp, 0xc
mov edx, dword [ebp - 0x70]
lea ecx, [ebp - 0x390]
movsd xmm0, qword [ebp - 0x268]
push ecx
mulsd xmm0, qword [edx]
lea edx, [ebp - 0xd8]
push 0x72143c
push edx
movsd qword [ecx], xmm0
call fcn.005dab70
add esp, 0xc
push 0x80120
push 0x786a6c
mov dword [ebp - 0xd8], 0
lea edx, [ebp - 0x388]
push edx
push 0x721444
mov dword [edx], 0xc
lea ecx, [ebp - 0xd8]
mov dword [edx + 4], 0x721724
push 0x8384ff00
push dword [ebp - 0x300]
push ecx
call fcn.005d83f0
add esp, 0x1c
mov edx, dword [ebp - 0x30]
cmp dword [edx], 1
je 0x4ef0ed
cmp dword [ebp - 0x1f8], 0
je 0x4eeaf5
push 0x80120
push 0x786a6c
mov ecx, dword [ebp - 0xe4]
lea edx, [ebp - 0x450]
push edx
push 0x72144c
push 0x8384ff00
mov edx, dword [ecx]
mov dword [ebp - 0x56c], edx
push edx
mov dword [ebp - 0xd8], 0
lea edx, [ebp - 0xd8]
push edx
mov dword [ebp - 0x450], 0xc
mov dword [ebp - 0x44c], 0x721714
call fcn.005d83f0
add esp, 0x1c
push 0x80120
push 0x786a6c
mov dword [ebp - 0xd8], 0
lea edx, [ebp - 0x448]
push edx
push 0x721454
mov dword [edx], 1
lea ecx, [ebp - 0xd8]
mov dword [edx + 4], 0x721854
push 0x8384ff00
push dword [ebp - 0x56c]
push ecx
call fcn.005d83f0
add esp, 0x1c
movdqu xmm0, xmmword [ebp - 0x478]
movq xmm1, qword [0x721688]
mov eax, dword [ebp - 0x244]
mov dword [ebp - 0x628], 0x7cddfc
movq qword [ebp - 0x620], xmm0
mov dword [ebp - 0x618], 0x721858
movq qword [ebp - 0x610], xmm1
mov dword [ebp - 0x86c], esp
add eax, 0x1f
and eax, 0xffffffe0
call fcn.00692d40
mov eax, esp
add esp, 0xffffffe8
lea edx, [ebp - 0x628]
movq xmm0, qword [0x721630]
mov dword [ebp - 0x564], eax
mov dword [esp], edx
movq qword [esp + 4], xmm0
mov dword [esp + 0xc], eax
mov ecx, dword [ebp - 0x244]
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], 0
call fcn.005cd480
add esp, 0x18
mov edx, dword [ebp - 0x564]
push 0x80120
mov dword [ebp - 0x43c], edx
lea edx, [ebp - 0x440]
push 0x786a6c
push edx
mov edx, dword [ebp - 0xe4]
push 0x72145c
push 0x8384ff00
mov edx, dword [edx]
mov dword [ebp - 0x79c], edx
push edx
mov ecx, dword [ebp - 0x244]
lea edx, [ebp - 0xd8]
push edx
mov dword [edx], 0
mov dword [ebp - 0x440], ecx
call fcn.005d83f0
add esp, 0x1c
mov eax, dword [ebp - 0x86c]
mov esp, eax
push 0x80120
push 0x786a6c
mov dword [ebp - 0xd8], 0
lea edx, [ebp - 0x430]
push edx
push 0x721464
mov dword [edx], 1
lea ecx, [ebp - 0xd8]
mov dword [edx + 4], 0x721880
push 0x8384ff00
push dword [ebp - 0x79c]
push ecx
call fcn.005d83f0
add esp, 0x1c
push 0x80120
push 0x786a6c
mov dword [ebp - 0xd8], 0
lea edx, [ebp - 0x420]
push edx
push 0x72146c
mov dword [edx], 0xc
lea ecx, [ebp - 0xd8]
mov dword [edx + 4], 0x721724
push 0x8384ff00
push dword [ebp - 0x79c]
push ecx
call fcn.005d83f0
add esp, 0x1c
mov edx, dword [ebp - 0x1fc]
cmp edx, dword [ebp - 0x210]
je 0x4eec88
mov edx, 1
push edx
push edx
push 0x22d6648
mov ecx, dword [ebp - 0x44]
mov edx, dword [ebp - 0x1fc]
push 0x7cdd00
push 0x7cdce0
push dword [ebp - 0xe4]
lea edx, [ecx + edx*8]
mov dword [ebp - 0x248], edx
push edx
lea edx, [edx - 8]
mov dword [ebp - 0x254], edx
push edx
push 0x721884
push 0x721888
push 0x721474
push dword [ebp - 0x28]
push dword [ebp - 0x2c]
push dword [ebp - 0x30]
push dword [ebp - 0x24]
call fcn.0066b900
add esp, 0x3c
mov edx, dword [ebp - 0x1fc]
mov dword [ebp - 0x210], edx
call fcn.0052a820
mov dword [ebp - 0x1f4], 1
test eax, eax
jle 0x4eec88
mov dword [ebp - 0x8e0], edi
mov dword [ebp - 0x8dc], esi
mov esi, eax
mov edi, 1
lea edx, [ebp - 0x1f4]
push edx
push 1
lea ecx, [ebp - 0xf8]
push ecx
call fcn.0052a8f0
add esp, 0xc
cmp byte [ebp - 0xf8], 0x5a
jne 0x4eec67
lea edx, [ebp - 0x1f4]
push edx
call fcn.0052a8c0
mov dword [ebp - 0x2a4], eax
add esp, 4
lea edx, [ebp - 0x1f4]
push edx
push 1
lea ecx, [ebp - 0x138]
push ecx
call fcn.0052a8f0
add esp, 0xc
lea edx, [ebp - 0x1f4]
push edx
push 1
lea ecx, [ebp - 0x128]
push ecx
call fcn.0052a8f0
add esp, 0xc
mov edx, dword [ebp - 0x2a4]
mov dword [ebp - 0x2fc], edx
mov edx, dword [ebp - 0x1f4]
push edi
push edi
push 0x22d6648
lea ecx, [edx*8 + 0x7cdd08]
push ecx
lea edx, [edx*8 + 0x7cdce8]
push edx
push dword [ebp - 0xe4]
push dword [ebp - 0x248]
push dword [ebp - 0x254]
lea edx, [ebp - 0x128]
push edx
lea edx, [ebp - 0x138]
push edx
lea edx, [ebp - 0x2fc]
push edx
push dword [ebp - 0x28]
push dword [ebp - 0x2c]
push dword [ebp - 0x30]
push dword [ebp - 0x24]
call fcn.0066b900
add esp, 0x3c
mov edx, dword [ebp - 0x1f4]
inc edx
mov dword [ebp - 0x1f4], edx
cmp edx, esi
jle 0x4eeb99
mov edi, dword [ebp - 0x8e0]
mov esi, dword [ebp - 0x8dc]
cmp esi, dword [ebp - 0x214]
je 0x4eee03
mov edx, 1
push edx
push edx
push 0x22d6648
mov ecx, dword [ebp - 0x50]
push 0x7cdd08
push 0x7cdce8
push dword [ebp - 0xe4]
lea edx, [ecx + esi*8]
mov dword [ebp - 0x24c], edx
push edx
lea edx, [edx - 8]
mov dword [ebp - 0x250], edx
push edx
push 0x72188c
push 0x721890
push 0x721478
push dword [ebp - 0x28]
push dword [ebp - 0x2c]
push dword [ebp - 0x30]
push dword [ebp - 0x24]
call fcn.0066b900
add esp, 0x3c
mov dword [ebp - 0x214], esi
call fcn.0052a820
mov ecx, eax
mov dword [ebp - 0x1f4], 1
test ecx, ecx
jle 0x4eee03
mov dword [ebp - 0x1f0], ecx
lea eax, [ebp - 0x1f4]
mov dword [ebp - 0x8e0], edi
mov dword [ebp - 0x8dc], esi
mov esi, eax
mov edi, 1
push esi
push 1
lea edx, [ebp - 0xe8]
push edx
call fcn.0052a8f0
add esp, 0xc
cmp byte [ebp - 0xe8], 0x59
jne 0x4eedde
push esi
call fcn.0052a8c0
mov dword [ebp - 0x258], eax
add esp, 4
push esi
push 1
lea edx, [ebp - 0x118]
push edx
call fcn.0052a8f0
add esp, 0xc
push esi
push 1
lea edx, [ebp - 0x108]
push edx
call fcn.0052a8f0
add esp, 0xc
mov edx, dword [ebp - 0x258]
mov dword [ebp - 0x2f4], edx
mov edx, dword [ebp - 0x1f4]
push edi
push edi
push 0x22d6648
lea ecx, [edx*8 + 0x7cdd08]
push ecx
lea edx, [edx*8 + 0x7cdce8]
push edx
push dword [ebp - 0xe4]
push dword [ebp - 0x24c]
push dword [ebp - 0x250]
lea edx, [ebp - 0x108]
push edx
lea edx, [ebp - 0x118]
push edx
lea edx, [ebp - 0x2f4]
push edx
push dword [ebp - 0x28]
push dword [ebp - 0x2c]
push dword [ebp - 0x30]
push dword [ebp - 0x24]
call fcn.0066b900
add esp, 0x3c
mov edx, dword [ebp - 0x1f4]
inc edx
mov dword [ebp - 0x1f4], edx
cmp edx, dword [ebp - 0x1f0]
jle 0x4eed28
mov edi, dword [ebp - 0x8e0]
mov esi, dword [ebp - 0x8dc]
test byte [ebp - 0x104], 1
je 0x4ef021
push 0x80120
push 0x786a6c
mov ecx, dword [ebp - 0xe4]
lea edx, [ebp - 0x438]
push edx
push 0x72147c
push 0x8384ff00
mov edx, dword [ecx]
mov dword [ebp - 0x3dc], edx
push edx
mov dword [ebp - 0xd8], 0
lea edx, [ebp - 0xd8]
push edx
mov dword [ebp - 0x438], 0xc
mov dword [ebp - 0x434], 0x721714
call fcn.005d83f0
add esp, 0x1c
push 0x80120
push 0x786a6c
mov dword [ebp - 0xd8], 0
lea edx, [ebp - 0x428]
push edx
push 0x721484
mov dword [edx], 1
lea ecx, [ebp - 0xd8]
mov dword [edx + 4], 0x721894
push 0x8384ff00
push dword [ebp - 0x3dc]
push ecx
call fcn.005d83f0
add esp, 0x1c
movdqu xmm0, xmmword [ebp - 0x478]
movq xmm1, qword [0x721690]
mov eax, dword [ebp - 0x220]
mov dword [ebp - 0x608], 0x7cddfc
movq qword [ebp - 0x600], xmm0
mov dword [ebp - 0x5f8], 0x721898
movq qword [ebp - 0x5f0], xmm1
mov dword [ebp - 0x3f4], esp
add eax, 0x1f
and eax, 0xffffffe0
call fcn.00692d40
mov eax, esp
add esp, 0xffffffe8
lea edx, [ebp - 0x608]
movq xmm0, qword [0x721630]
mov dword [ebp - 0x3e4], eax
mov dword [esp], edx
movq qword [esp + 4], xmm0
mov dword [esp + 0xc], eax
mov ecx, dword [ebp - 0x220]
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], 0
call fcn.005cd480
add esp, 0x18
mov edx, dword [ebp - 0x3e4]
mov dword [ebp - 0x414], edx
lea edx, [ebp - 0x418]
push 0x80120
push edx
mov edx, dword [ebp - 0xe4]
push 0x72148c
push 0x8384ff00
mov edx, dword [edx]
mov dword [ebp - 0x3ec], edx
push edx
mov ecx, dword [ebp - 0x220]
lea edx, [ebp - 0xd8]
push edx
mov dword [edx], 0
mov dword [ebp - 0x418], ecx
call fcn.005d1be0
add esp, 0x18
mov eax, dword [ebp - 0x3f4]
mov esp, eax
push 0x80120
push 0x786a6c
mov dword [ebp - 0xd8], 0
lea edx, [ebp - 0x410]
push edx
push 0x721494
mov dword [edx], 1
lea ecx, [ebp - 0xd8]
mov dword [edx + 4], 0x7218c8
push 0x8384ff00
push dword [ebp - 0x3ec]
push ecx
call fcn.005d83f0
add esp, 0x1c
push 0x80120
push 0x786a6c
mov dword [ebp - 0xd8], 0
lea edx, [ebp - 0x408]
push edx
push 0x72149c
mov dword [edx], 0xc
lea ecx, [ebp - 0xd8]
mov dword [edx + 4], 0x721724
push 0x8384ff00
push dword [ebp - 0x3ec]
push ecx
call fcn.005d83f0
add esp, 0x1c
cmp edi, dword [ebp - 0x218]
je 0x4ef0e1
movsd xmm0, qword [0x7cdd00]
pxor xmm1, xmm1
comisd xmm0, xmm1
jb 0x4ef051
movsd xmm0, qword [0x22d6660]
movsd qword [ebp - 0x4e0], xmm0
jmp 0x4ef061
movsd xmm0, qword [0x22d6668]
movsd qword [ebp - 0x4e0], xmm0
mov edx, dword [ebp - 0x64]
mov ecx, dword [ebp - 0x70]
movsd xmm0, qword [edx + edi*8 - 8]
mov edx, dword [ebp - 0x5c]
movsd qword [ebp - 0x2c8], xmm0
movsd xmm1, qword [ecx]
movsd xmm0, qword [edx + edi*8]
movsd qword [ebp - 0x380], xmm1
subsd xmm0, qword [edx + edi*8 - 8]
mov edx, dword [ebp - 0x60]
cmp dword [edx + edi*4 - 4], 0
je 0x4ef09f
cmp dword [edx + edi*4], 0
jne 0x4ef0ad
addsd xmm0, xmm0
movsd qword [ebp - 0x2d8], xmm0
jmp 0x4ef0b5
movsd qword [ebp - 0x2d8], xmm0
call fcn.0052a760
test al, 1
jne 0x4ef997
pxor xmm0, xmm0
movups xmmword [0x7cdd20], xmm0
mov edx, dword [ebp - 0x104]
mov dword [ebp - 0x218], edi
mov dword [ebp - 0x204], edx
jmp 0x4ef0ed
mov edx, dword [ebp - 0x104]
mov dword [ebp - 0x204], edx
test byte [ebp - 0x204], 1
je 0x4ef1dc
movdqu xmm0, xmmword [ebp - 0x478]
movq xmm1, qword [0x721698]
mov eax, dword [ebp - 0x21c]
mov dword [ebp - 0x5e8], 0x7cddfc
movq qword [ebp - 0x5e0], xmm0
mov dword [ebp - 0x5d8], 0x7218cc
movq qword [ebp - 0x5d0], xmm1
mov dword [ebp - 0x308], esp
add eax, 0x1f
and eax, 0xffffffe0
call fcn.00692d40
mov eax, esp
add esp, 0xffffffe8
lea edx, [ebp - 0x5e8]
movq xmm0, qword [0x721630]
mov dword [ebp - 0x304], eax
mov dword [esp], edx
movq qword [esp + 4], xmm0
mov dword [esp + 0xc], eax
mov ecx, dword [ebp - 0x21c]
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], 0
call fcn.005cd480
add esp, 0x18
mov edx, dword [ebp - 0x304]
mov dword [ebp - 0x3fc], edx
lea edx, [ebp - 0x400]
push 0x80120
push edx
mov edx, dword [ebp - 0xe4]
push 0x7214a4
push 0x8384ff00
push dword [edx]
mov dword [ebp - 0xd8], 0
lea edx, [ebp - 0xd8]
mov ecx, dword [ebp - 0x21c]
push edx
mov dword [ebp - 0x400], ecx
call fcn.005d1be0
add esp, 0x18
mov eax, dword [ebp - 0x308]
mov esp, eax
mov edx, dword [ebp - 0x44]
add esp, 0xffffff5c
mov eax, dword [ebp - 0x1fc]
mov ecx, dword [ebp - 0x48]
movsd xmm5, qword [ebp - 0x298]
movsd xmm0, qword [edx + eax*8]
movsd xmm6, qword [ebp - 0x2c8]
mulsd xmm6, qword [ebp - 0x2d8]
subsd xmm0, qword [edx + eax*8 - 8]
subsd xmm5, qword [ebp - 0x2a0]
mulsd xmm0, qword [ecx + eax*8 - 8]
divsd xmm6, xmm5
mov edx, dword [ebp - 0x50]
mov ecx, dword [ebp - 0x54]
divsd xmm0, xmm5
movsd xmm1, qword [edx + esi*8]
movsd qword [ebp - 0x2d0], xmm5
movsd qword [0x7cdd30], xmm0
movsd qword [0x7cdd50], xmm6
subsd xmm1, qword [edx + esi*8 - 8]
mov edx, dword [ebp - 0x3c]
mulsd xmm1, qword [ecx + esi*8 - 8]
movsd xmm3, qword [edx]
mov edx, dword [ebp - 0x68]
divsd xmm1, xmm5
movsd xmm2, qword [edx]
mov edx, dword [ebp - 0x6c]
mulsd xmm2, xmm3
movsd xmm4, qword [edx]
lea edx, [ebp - 0x124]
mulsd xmm4, xmm3
divsd xmm2, xmm5
divsd xmm4, xmm5
mov dword [esp], 0x22d6648
mov dword [esp + 4], 0x7218e8
mov dword [esp + 8], edx
mov dword [esp + 0xc], str.C
mov edx, dword [ebp - 0x34]
mov dword [esp + 0x10], edx
mov dword [esp + 0x14], 0x22d6680
mov edx, dword [ebp - 0x38]
mov dword [esp + 0x18], edx
lea edx, [ebp - 0x2d0]
mov dword [esp + 0x1c], 0x22d6740
mov dword [esp + 0x20], 0x7cdcd0
mov dword [esp + 0x24], edx
mov dword [esp + 0x28], 0x7cdd30
mov edx, dword [ebp - 0x74]
mov dword [esp + 0x2c], edx
mov edx, dword [ebp - 0x78]
mov dword [esp + 0x30], edx
lea edx, [ebp - 0xb0]
mov dword [esp + 0x34], 0x7cdda8
mov dword [esp + 0x38], 0x7cddc8
mov dword [esp + 0x3c], edx
mov edx, dword [ebp - 0x28]
mov dword [esp + 0x40], edx
mov edx, dword [ebp - 0x2c]
mov dword [esp + 0x44], edx
mov edx, dword [ebp - 0x24]
mov dword [esp + 0x48], edx
mov edx, dword [ebp - 0x30]
mov dword [esp + 0x4c], edx
lea edx, [ebp - 0x20c]
mov dword [esp + 0x50], 0x7cdce0
mov dword [esp + 0x54], 0x7cdd00
mov dword [esp + 0x58], 0x7cdd20
mov dword [esp + 0x5c], 0x7214ac
mov dword [esp + 0x60], edx
lea edx, [ebp - 0x2a0]
mov dword [esp + 0x64], edx
lea edx, [ebp - 0x298]
mov dword [esp + 0x68], edx
mov edx, dword [ebp - 0xe4]
mov dword [esp + 0x6c], edx
mov edx, dword [ebp - 0x7c]
mov dword [esp + 0x70], edx
mov edx, dword [ebp - 0x80]
mov dword [esp + 0x74], edx
lea edx, [ebp - 0xa0]
mov dword [esp + 0x78], 0x7cdc40
mov dword [esp + 0x7c], edx
lea edx, [ebp - 0x2c0]
mov dword [esp + 0x80], edx
lea edx, [ebp - 0x2b8]
mov dword [esp + 0x84], edx
lea edx, [ebp - 0x2b0]
mov dword [esp + 0x88], edx
mov dword [esp + 0x8c], 0x7cdbe0
mov edx, dword [ebp - 0x1ec]
mov dword [esp + 0x90], edx
mov edx, dword [ebp - 0x98]
mov dword [esp + 0x94], edx
mov dword [esp + 0x98], 9
mov dword [esp + 0x9c], 8
movsd qword [0x7cdd38], xmm1
movsd qword [0x7cdd40], xmm2
movsd qword [0x7cdd48], xmm4
mov dword [esp + 0xa0], 0x50
call fcn.004f5a40
add esp, 0xa4
cmp eax, 1
jne 0x4ef5a8
mov ecx, dword [ebp - 0x104]
and ecx, 1
mov edx, dword [ebp - 0xf4]
mov esi, dword [ebp - 0x1ec]
mov dword [ebp - 0x114], ecx
test byte [0x7d0d98], 1
je 0x4ef4c0
mov ecx, dword [esi]
test ecx, ecx
jle 0x4ef4c0
push 0x80120
mov dword [ebp - 0x308], ecx
lea ecx, [ebp - 0x308]
push 0x786a78
push ecx
push 0x7214b0
push 0x8384ff00
push dword [0x78dba0]
mov dword [ebp - 0xd8], 0
lea esi, [ebp - 0xd8]
push esi
mov dword [esi - 0x1c], edx
call fcn.005d83f0
mov edx, dword [ebp - 0xf4]
add esp, 0x1c
mov ecx, dword [ebp - 0x98]
lea edi, [ebp - 0x478]
push edi
push 0x7214b8
push esi
mov dword [edi + 4], ecx
mov dword [edi], 0x50
mov dword [ebp - 0xf4], edx
call fcn.005dab70
mov edx, dword [ebp - 0xf4]
add esp, 0xc
cmp dword [ebp - 0x114], 0
je 0x4eb2b6
movd xmm0, edx
add edx, 0xf
pxor xmm2, xmm2
mov eax, edx
punpckldq xmm0, xmm2
movq xmm1, qword [0x7216a8]
mov dword [ebp - 0x86c], esp
mov dword [ebp - 0x290], 0x7cddfc
movq qword [ebp - 0x288], xmm0
mov dword [ebp - 0x280], 0x7218f4
movq qword [ebp - 0x278], xmm1
add eax, 0x1f
and eax, 0xffffffe0
call fcn.00692d40
mov eax, esp
add esp, 0xffffffe8
movd xmm1, edx
movq xmm0, qword [0x721630]
lea ecx, [ebp - 0x290]
punpckldq xmm1, xmm2
mov esi, eax
mov dword [esp], ecx
movq qword [esp + 4], xmm0
mov dword [esp + 0xc], esi
movq qword [esp + 0x10], xmm1
mov dword [ebp - 0xf4], edx
call fcn.005cd480
mov edx, dword [ebp - 0xf4]
add esp, 0x18
push 0x80120
mov dword [ebp - 0x470], edx
lea eax, [ebp - 0x470]
push eax
mov edx, dword [ebp - 0xe4]
lea ecx, [ebp - 0xd8]
push 0x7214c0
push 0x8384ff00
push dword [edx]
push ecx
mov dword [eax + 4], esi
mov dword [ecx], 0
call fcn.005d1be0
add esp, 0x18
mov eax, dword [ebp - 0x86c]
mov esp, eax
jmp 0x4eb2b6
mov edx, dword [ebp - 0x8c]
movsd xmm3, qword [0x7cdc48]
movsd xmm1, qword [0x7cdc40]
movsd xmm0, qword [edx]
mov ecx, dword [ebp - 0x84]
maxsd xmm0, qword [ebp - 0xa0]
maxsd xmm3, qword [0x7cdc58]
maxsd xmm1, qword [0x7cdc50]
movsd qword [edx], xmm0
mov edx, dword [ebp - 0x88]
movsd xmm2, qword [ecx]
movsd xmm0, qword [ebp - 0x2b8]
maxsd xmm2, xmm1
movsd xmm4, qword [edx]
movaps xmm5, xmm0
andps xmm5, xmmword [0x7215f0]
maxsd xmm4, xmm3
movsd qword [edx], xmm4
mov edx, dword [ebp - 0x90]
movsd qword [ecx], xmm2
movsd xmm6, qword [edx]
andps xmm6, xmmword [0x7215f0]
comisd xmm5, xmm6
jbe 0x4ef62f
movsd qword [edx], xmm0
mov edx, dword [ebp - 0x94]
movsd xmm2, qword [ebp - 0x2b0]
movaps xmm0, xmm2
movsd xmm1, qword [edx]
andps xmm0, xmmword [0x7215f0]
andps xmm1, xmmword [0x7215f0]
comisd xmm0, xmm1
jbe 0x4ef65c
movsd qword [edx], xmm2
test byte [0x7d0d98], 1
jne 0x4efad8
mov edx, dword [ebp - 0x40]
mov ecx, dword [edx]
dec ecx
cmp ecx, dword [ebp - 0x1fc]
jne 0x4ef68f
mov edx, dword [ebp - 0x4c]
mov ecx, dword [edx]
dec ecx
cmp esi, ecx
jne 0x4ef68f
mov edx, dword [ebp - 0x58]
mov ecx, dword [edx]
dec ecx
cmp edi, ecx
je 0x4ef41d
push 0x721140
mov ecx, dword [ebp - 0x44]
lea edx, [ebp - 0x298]
push edx
mov edx, dword [ebp - 0x1fc]
lea edx, [ecx + edx*8]
push edx
call fcn.004c1a00
add esp, 0xc
push 0x721140
test al, 1
lea edx, [ebp - 0x298]
push edx
mov edx, dword [ebp - 0x1fc]
lea ecx, [edx + 1]
cmovne edx, ecx
mov dword [ebp - 0x1fc], edx
mov edx, dword [ebp - 0x50]
lea edx, [edx + esi*8]
push edx
call fcn.004c1a00
add esp, 0xc
push 0x721140
test al, 1
lea edx, [ebp - 0x298]
push edx
mov edx, dword [ebp - 0x5c]
lea ecx, [esi + 1]
cmovne esi, ecx
lea edx, [edx + edi*8]
push edx
call fcn.004c1a00
add esp, 0xc
test al, 1
lea edx, [edi + 1]
mov ecx, dword [ebp - 0x104]
mov dword [ebp - 0x204], ecx
cmovne edi, edx
and ecx, 1
mov dword [ebp - 0x1f8], ecx
jmp 0x4ee54e
cmp edx, 2
jl 0x4ef789
mov ecx, dword [ebp - 0x7e4]
mov eax, edx
imul ecx, dword [ebp - 0x7f4]
and eax, 0xfffffffe
add ecx, dword [ebp - 0x844]
xor esi, esi
movups xmm0, xmmword [ecx + esi*8]
movups xmmword [esi*8 + 0x7cdc60], xmm0
add esi, 2
cmp esi, eax
jb 0x4ef743
cmp eax, edx
jae 0x4ec2f0
mov ecx, dword [ebp - 0x7e4]
imul ecx, dword [ebp - 0x7f4]
add ecx, dword [ebp - 0x844]
movsd xmm0, qword [ecx + eax*8]
movsd qword [eax*8 + 0x7cdc60], xmm0
inc eax
cmp eax, edx
jb 0x4ef771
jmp 0x4ec2f0
xor eax, eax
jmp 0x4ef756
mov dword [ebp - 0x8a8], 0
jmp 0x4ec13f
movsd xmm0, qword [ebp - 0x190]
pxor xmm1, xmm1
movsd xmm4, qword [ebp - 0x1b0]
movsd qword [ebp - 0x8e8], xmm0
movsd qword [ebp - 0x850], xmm1
movsd qword [ebp - 0x868], xmm1
jmp 0x4ed680
movsd xmm0, qword [ebp - 0x190]
pxor xmm1, xmm1
movsd xmm3, qword [ebp - 0x1b8]
movsd qword [ebp - 0x8e8], xmm0
movsd qword [ebp - 0x850], xmm1
movsd qword [ebp - 0x868], xmm1
jmp 0x4ed680
movsd xmm0, qword [0x22d6750]
pxor xmm1, xmm1
ucomisd xmm0, xmm1
jne 0x4ec788
jp 0x4ec788
cmp dword [ebp - 0x114], 0
je 0x4ef8f9
mov eax, dword [ebp - 0xf4]
movq xmm0, qword [0x721658]
mov dword [ebp - 0x8c8], eax
mov eax, dword [ebp - 0x86c]
mov dword [ebp - 0x8d0], 0x7cddfc
mov dword [ebp - 0x8c4], 0
mov dword [ebp - 0x8c0], 0x721904
movq qword [ebp - 0x8b8], xmm0
mov dword [ebp - 0x8f8], esp
add eax, 0x1f
and eax, 0xffffffe0
call fcn.00692d40
mov eax, esp
add esp, 0xffffffe8
mov esi, eax
movq xmm0, qword [0x721630]
lea eax, [ebp - 0x8d0]
mov dword [esp], eax
movq qword [esp + 4], xmm0
mov dword [esp + 0xc], esi
mov edx, dword [eax + 0x64]
mov dword [esp + 0x10], edx
mov dword [esp + 0x14], 0
call fcn.005cd480
add esp, 0x18
push 0x80120
push 0x786a6c
mov ecx, dword [ebp - 0xe4]
lea edx, [ebp - 0x8a0]
push edx
push 0x7214c8
push 0x8384ff00
mov dword [edx + 4], esi
lea esi, [ebp - 0xd8]
push dword [ecx]
push esi
mov eax, dword [edx + 0x34]
mov dword [esi], 0
mov dword [edx], eax
call fcn.005d83f0
add esp, 0x1c
mov eax, dword [ebp - 0x8f8]
mov esp, eax
lea eax, [ebp - 0x228]
push eax
lea edx, [ebp - 0x230]
push edx
lea ecx, [ebp - 0x168]
push ecx
lea esi, [ebp - 0x1b0]
push esi
lea edi, [ebp - 0x238]
push edi
push dword [ebp - 0xe4]
lea eax, [ebp - 0x104]
push eax
lea edx, [ebp - 0xb0]
push edx
lea ecx, [ebp - 0xb8]
push ecx
push 0x22d6740
push 0x22d6680
push 0x7cddc8
push 0x7cdda8
lea esi, [ebp - 0x1e8]
push esi
push 0x22d6648
call fcn.004f7660
add esp, 0x3c
mov eax, dword [ebp - 0x104]
and eax, 1
movsd xmm4, qword [ebp - 0x1b0]
mov dword [ebp - 0x114], eax
jmp 0x4ec78c
mov ecx, dword [ebp - 0x104]
and ecx, 1
mov edx, dword [ebp - 0xf4]
mov esi, eax
mov dword [ebp - 0x114], ecx
jmp 0x4ef438
call fcn.0052a820
mov dword [ebp - 0x8e8], eax
mov dword [ebp - 0x1f4], 1
cmp dword [ebp - 0x8e8], 0
jle 0x4ef0cd
mov edx, dword [ebp - 0x5c]
mov dword [ebp - 0x8e0], edi
mov dword [ebp - 0x8dc], esi
lea edx, [edx + edi*8]
mov edi, edx
lea eax, [edx - 8]
mov esi, eax
lea ecx, [ebp - 0x1f4]
push ecx
call fcn.0052a8c0
add esp, 0xffffffb0
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x884], eax
mov dword [esp], ecx
mov ecx, dword [ebp - 0x30]
mov dword [esp + 4], ecx
mov ecx, dword [ebp - 0x2c]
mov dword [esp + 8], ecx
mov ecx, dword [ebp - 0x28]
mov dword [esp + 0xc], ecx
lea ecx, [ebp - 0x884]
mov dword [esp + 0x10], ecx
lea ecx, [ebp - 0x2d8]
mov dword [esp + 0x14], esi
mov dword [esp + 0x18], edi
mov dword [esp + 0x1c], ecx
lea ecx, [ebp - 0x2c8]
mov dword [esp + 0x20], ecx
lea ecx, [ebp - 0x380]
mov dword [esp + 0x24], ecx
lea ecx, [ebp - 0x598]
mov dword [esp + 0x28], ecx
mov ecx, dword [ebp - 0x74]
mov dword [esp + 0x2c], ecx
mov ecx, dword [ebp - 0x78]
mov dword [esp + 0x30], ecx
lea ecx, [ebp - 0x348]
mov dword [esp + 0x34], 0x22d6680
mov dword [esp + 0x38], ecx
lea ecx, [ebp - 0x4e0]
mov dword [esp + 0x3c], ecx
mov ecx, dword [ebp - 0xe4]
mov dword [esp + 0x40], ecx
mov ecx, dword [ebp - 0x1f4]
lea ecx, [ecx*8 + 0x7cdd18]
mov dword [esp + 0x44], ecx
mov ecx, dword [ebp - 0x1ec]
mov dword [esp + 0x48], ecx
mov ecx, dword [ebp - 0x98]
mov dword [esp + 0x4c], ecx
mov dword [esp + 0x50], 0x50
call fcn.004fe1e0
add esp, 0x54
cmp eax, 1
je 0x4ef41d
mov ecx, dword [ebp - 0x1f4]
inc ecx
mov dword [ebp - 0x1f4], ecx
cmp ecx, dword [ebp - 0x8e8]
jle 0x4ef9d2
mov edi, dword [ebp - 0x8e0]
mov esi, dword [ebp - 0x8dc]
jmp 0x4ef0cd
push 0x7cdbe0
call fcn.0051fa70
add esp, 4
push 0x80120
push 0x786acc
mov dword [ebp - 0xd8], 0
lea edx, [ebp - 0x570]
push edx
push 0x7214d0
push 0x8384ff00
push dword [0x78dba0]
mov dword [edx], 2
lea ecx, [ebp - 0xd8]
push ecx
call fcn.005d83f0
add esp, 0x1c
movsd xmm0, qword [ebp - 0x2a0]
lea edx, [ebp - 0x8b0]
push edx
push 0x7214d8
movsd qword [edx], xmm0
lea ecx, [ebp - 0xd8]
push ecx
call fcn.005dab70
add esp, 0xc
movsd xmm0, qword [ebp - 0x298]
lea edx, [ebp - 0x8a8]
push edx
push 0x7214e0
movsd qword [edx], xmm0
lea ecx, [ebp - 0xd8]
push ecx
call fcn.005dab70
add esp, 0xc
movsd xmm0, qword [ebp - 0x2b8]
lea edx, [ebp - 0x7f8]
push edx
push 0x7214e8
movsd qword [edx], xmm0
lea ecx, [ebp - 0xd8]
push ecx
call fcn.005dab70
add esp, 0xc
mov edx, 1
lea ecx, [ebp - 0x898]
push ecx
mov dword [ecx], edx
mov dword [ecx + 8], edx
lea edx, [ebp - 0xd8]
push 0x7214f0
push edx
mov dword [ecx + 4], 0x7cdbe0
mov dword [ecx + 0xc], 4
mov dword [ecx + 0x10], 8
call fcn.005dab70
add esp, 0xc
mov edx, 0x7cdc00
push edx
call fcn.0051fa70
add esp, 4
push 0x80120
push 0x786acc
mov ecx, dword [0x78dba0]
lea edx, [ebp - 0x568]
push edx
push 0x7214f8
push 0x8384ff00
push ecx
mov dword [ebp - 0xd8], 0
lea edx, [ebp - 0xd8]
push edx
mov dword [ebp - 0x568], 3
mov dword [ebp - 0x8e4], ecx
call fcn.005d83f0
add esp, 0x1c
movsd xmm0, qword [ebp - 0x2a0]
lea edx, [ebp - 0x7f0]
push edx
push 0x721500
movsd qword [ebp - 0x8f0], xmm0
lea ecx, [ebp - 0xd8]
push ecx
movsd qword [edx], xmm0
call fcn.005dab70
add esp, 0xc
movsd xmm0, qword [ebp - 0x298]
lea edx, [ebp - 0x7e8]
push edx
push 0x721508
movsd qword [ebp - 0x8f8], xmm0
lea ecx, [ebp - 0xd8]
push ecx
movsd qword [edx], xmm0
call fcn.005dab70
add esp, 0xc
movsd xmm0, qword [ebp - 0x2b0]
lea edx, [ebp - 0x7e0]
push edx
push 0x721510
movsd qword [edx], xmm0
lea ecx, [ebp - 0xd8]
push ecx
call fcn.005dab70
add esp, 0xc
mov edx, 1
lea ecx, [ebp - 0x880]
push ecx
mov dword [ecx], edx
mov dword [ecx + 8], edx
lea edx, [ebp - 0xd8]
push 0x721518
push edx
mov dword [ecx + 4], 0x7cdc00
mov dword [ecx + 0xc], 4
mov dword [ecx + 0x10], 8
call fcn.005dab70
add esp, 0xc
push 0x80120
push 0x786aa0
movsd xmm0, qword [ebp - 0x8f0]
lea edx, [ebp - 0x7d8]
push edx
push 0x721520
mov dword [ebp - 0xd8], 0
lea ecx, [ebp - 0xd8]
movsd qword [edx], xmm0
push 0x8384ff00
push dword [ebp - 0x8e4]
push ecx
call fcn.005d83f0
add esp, 0x1c
movsd xmm0, qword [ebp - 0x8f8]
lea edx, [ebp - 0x7d0]
push edx
push 0x721528
movsd qword [edx], xmm0
lea ecx, [ebp - 0xd8]
push ecx
call fcn.005dab70
add esp, 0xc
movsd xmm0, qword [0x7cdc40]
lea edx, [ebp - 0x7c8]
push edx
push 0x721530
maxsd xmm0, qword [0x7cdc50]
movsd qword [edx], xmm0
lea ecx, [ebp - 0xd8]
push ecx
call fcn.005dab70
add esp, 0xc
movsd xmm0, qword [0x7cdc48]
lea edx, [ebp - 0x7c0]
push edx
push 0x721538
maxsd xmm0, qword [0x7cdc58]
movsd qword [edx], xmm0
lea ecx, [ebp - 0xd8]
push ecx
call fcn.005dab70
add esp, 0xc
movsd xmm0, qword [ebp - 0xa0]
lea edx, [ebp - 0x7b8]
push edx
push 0x721540
movsd qword [edx], xmm0
lea ecx, [ebp - 0xd8]
push ecx
call fcn.005dab70
add esp, 0xc
jmp 0x4ef669
mov ecx, dword [ebp - 0x4c]
cmp dword [ecx], 0xffffffff
jne 0x4ee0ca
mov ecx, dword [ebp - 0x58]
cmp dword [ecx], 0xffffffff
jne 0x4ee0ca
cmp dword [ebp - 0x114], 0
je 0x4eff14
movd xmm0, edx
lea eax, [edx + 0x1c]
pxor xmm2, xmm2
punpckldq xmm0, xmm2
movq xmm1, qword [0x7216a0]
mov dword [ebp - 0x8f8], 0x7cddfc
movq qword [ebp - 0x8f0], xmm0
mov dword [ebp - 0x8e8], 0x721920
movq qword [ebp - 0x8e0], xmm1
mov dword [ebp - 0x8b0], esp
mov dword [ebp - 0x8a8], eax
add eax, 0x1f
and eax, 0xffffffe0
call fcn.00692d40
mov eax, esp
add esp, 0xffffffe8
lea ecx, [ebp - 0x8f8]
movd xmm1, dword [ecx + 0x50]
movq xmm0, qword [0x721630]
punpckldq xmm1, xmm2
mov dword [ecx + 0x4c], eax
mov dword [esp], ecx
movq qword [esp + 4], xmm0
mov dword [esp + 0xc], eax
movq qword [esp + 0x10], xmm1
mov dword [ebp - 0xf4], edx
call fcn.005cd480
mov edx, dword [ebp - 0xf4]
add esp, 0x18
mov ecx, dword [ebp - 0x8a8]
mov dword [ebp - 0x8d8], ecx
lea ecx, [ebp - 0x8d8]
push 0x80120
push ecx
mov ecx, dword [ebp - 0xe4]
push 0x721548
push 0x8384ff00
push dword [ecx]
mov dword [ebp - 0xd8], 0
lea ecx, [ebp - 0xd8]
mov edi, dword [ebp - 0x8ac]
push ecx
mov dword [ebp - 0x8d4], edi
mov dword [ecx - 0x1c], edx
call fcn.005d1be0
mov edx, dword [ebp - 0xf4]
add esp, 0x18
mov eax, dword [ebp - 0x8b0]
mov esp, eax
mov ecx, dword [ebp - 0x104]
and ecx, 1
mov dword [ebp - 0x114], ecx
jmp 0x4ef438
test byte [0x7d0d98], 1
je 0x4eb2b6
mov ecx, dword [esi]
test ecx, ecx
jg 0x4ef447
jmp 0x4eb2b6
push 0x7cdbe0
call fcn.0051fa70
add esp, 4
push 0x80120
push 0x786ea4
mov edx, dword [0x78dba0]
lea eax, [ebp - 0x3f8]
push eax
push 0x721550
push 0x8384ff00
push edx
mov dword [ebp - 0xd8], 0
lea esi, [ebp - 0xd8]
push esi
mov dword [eax], 1
mov dword [ebp - 0x8f0], edx
call fcn.005d83f0
add esp, 0x1c
movsd xmm0, qword [ebp - 0x840]
lea eax, [ebp - 0x520]
push eax
push 0x721558
push esi
movsd qword [eax], xmm0
call fcn.005dab70
add esp, 0xc
movsd xmm0, qword [ebp - 0x860]
lea eax, [ebp - 0x518]
push eax
push 0x721560
push esi
movsd qword [eax], xmm0
call fcn.005dab70
add esp, 0xc
mov eax, 1
lea ecx, [ebp - 0x7b0]
push ecx
push 0x721568
push esi
mov dword [ecx], eax
mov dword [ecx + 4], 0x7cdbe0
mov dword [ecx + 8], eax
mov dword [ecx + 0xc], 7
mov dword [ecx + 0x10], 8
call fcn.005dab70
add esp, 0xc
push 0x80120
push 0x786ea4
mov dword [ebp - 0xd8], 0
lea eax, [ebp - 0x3f0]
push eax
push 0x721570
mov dword [eax], 4
push 0x8384ff00
push dword [ebp - 0x8f0]
push esi
call fcn.005d83f0
add esp, 0x1c
movsd xmm0, qword [ebp - 0x840]
lea eax, [ebp - 0x510]
push eax
push 0x721578
push esi
movsd qword [eax], xmm0
call fcn.005dab70
add esp, 0xc
lea eax, [ebp - 0x508]
push eax
push 0x721580
push esi
pxor xmm0, xmm0
movsd qword [eax], xmm0
call fcn.005dab70
add esp, 0xc
push 0x7cdc20
call fcn.0051fa70
add esp, 4
mov eax, 0x7cdc30
push eax
call fcn.0051fa70
add esp, 4
push 0x80120
push 0x786e44
mov edx, dword [0x78dba0]
lea eax, [ebp - 0x3e8]
push eax
push 0x721588
push 0x8384ff00
push edx
push esi
mov dword [ebp - 0xd8], 0
mov dword [eax], 5
mov dword [ebp - 0x8ec], edx
call fcn.005d83f0
add esp, 0x1c
movsd xmm0, qword [ebp - 0x840]
lea eax, [ebp - 0x500]
push eax
push 0x721590
push esi
movsd qword [eax], xmm0
call fcn.005dab70
add esp, 0xc
mov dword [ebp - 0x4f8], 0x20
lea eax, [ebp - 0x4f8]
push eax
push 0x721598
push esi
mov dword [eax + 4], 0x7cdc20
call fcn.005dab70
add esp, 0xc
push 0x80120
push 0x786e04
mov dword [ebp - 0xd8], 0
lea eax, [ebp - 0x3e0]
push eax
push 0x7215a0
mov dword [eax], 5
push 0x8384ff00
push dword [ebp - 0x8ec]
push esi
call fcn.005d83f0
add esp, 0x1c
movsd xmm0, qword [ebp - 0x840]
lea eax, [ebp - 0x4f0]
push eax
push 0x7215a8
push esi
movsd qword [eax], xmm0
call fcn.005dab70
add esp, 0xc
mov dword [ebp - 0x4e8], 0x18
lea eax, [ebp - 0x4e8]
push eax
push 0x7215b0
push esi
mov dword [eax + 4], 0x7cdd60
call fcn.005dab70
add esp, 0xc
mov eax, dword [ebp - 0x104]
and eax, 1
mov dword [ebp - 0x114], eax
jmp 0x4edf5d
pxor xmm0, xmm0
movsd qword [ebp - 0x868], xmm0
jmp 0x4ed651
movsd xmm0, qword [ebp - 0x1c8]
pxor xmm1, xmm1
ucomisd xmm0, xmm1
jp 0x4f01d3
je 0x4f02be
push 0x50
push dword [ebp - 0x98]
push dword [ebp - 0x1ec]
lea eax, [ebp - 0x180]
push eax
lea edx, [ebp - 0x188]
push edx
lea ecx, [ebp - 0x228]
push ecx
lea esi, [ebp - 0x230]
push esi
lea edi, [ebp - 0x158]
push edi
lea eax, [ebp - 0x160]
push eax
push 0x7cdc90
lea edx, [ebp - 0x1a8]
push edx
push dword [ebp - 0xe4]
lea ecx, [ebp - 0x104]
push ecx
lea esi, [ebp - 0x1c0]
push esi
lea edi, [ebp - 0x1c8]
push edi
lea eax, [ebp - 0xb0]
push eax
lea edx, [ebp - 0xb8]
push edx
push 0x7cddc8
push 0x7cdda8
push 0x22d6648
call fcn.004f7a90
add esp, 0x50
movsd xmm4, qword [ebp - 0x1a8]
comisd xmm4, xmmword [ebp - 0x858]
jbe 0x4f02ab
movups xmm0, xmmword [0x7cdc90]
movups xmm1, xmmword [0x7cdca0]
movups xmm2, xmmword [0x7cdcb0]
movsd xmm3, qword [0x7cdcc0]
movsd qword [ebp - 0x858], xmm4
movups xmmword [0x7cdbe0], xmm0
movups xmmword [0x7cdbf0], xmm1
movups xmmword [0x7cdc00], xmm2
movsd qword [0x7cdc10], xmm3
comisd xmm4, xmmword [0x7cdc38]
ja 0x4ed212
jmp 0x4ed22a
movsd xmm0, qword [ebp - 0x1c0]
pxor xmm1, xmm1
ucomisd xmm0, xmm1
jne 0x4f01d3
jp 0x4f01d3
jmp 0x4ed22a
pxor xmm1, xmm1
ucomisd xmm0, xmm1
jne 0x4ecce0
jp 0x4ecce0
jmp 0x4ece19
xor ecx, ecx
jmp 0x4ec299
mov dword [str.C], 0x495f4332
mov dword [0x78e5bc], 0x2020544e
jmp 0x4eb993
push 0x80120
push 0x785900
movsd qword [ebp - 0x140], xmm0
lea ecx, [ebp - 0x140]
push ecx
push 0x7215b8
push 0x8384ff00
push dword [ebp - 0x8f8]
mov dword [ecx + 0x4c], edx
lea ecx, [ebp - 0xd8]
push ecx
call fcn.005d83f0
mov edx, dword [ebp - 0xf4]
add esp, 0x1c
mov dword [ebp - 0x130], 0x18
lea ecx, [ebp - 0xb8]
mov dword [ecx - 0x74], ecx
mov eax, 0x7215c0
lea ecx, [ebp - 0x130]
jmp 0x4eb4fc
movsd xmm0, qword [0x78dc60]
ucomisd xmm0, qword [0x721610]
jp 0x4f0394
je 0x4eb3ee
movsd qword [ebp - 0xb8], xmm0
jmp 0x4eb3ee
movsd xmm0, qword [0x7216b8]
movsd qword [ebp - 0xb8], xmm0
movsd qword [ebp - 0xb0], xmm0
movsd xmm0, qword [0x721600]
jmp 0x4eb396