Function at 0x487d00
Capabilities:
Access peb ldr_data
Check for peb ntglobalflag flag
Encrypt data using rc4 ksa
Get number of processors
Resolve function by parsing pe exports

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x584606
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0xd00
mov eax, dword [0x5f3008]
xor eax, ebp
mov dword [ebp - 0x14], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x7f4], ecx
mov eax, dword [ebx + 0x24]
mov dword [ebp - 0x904], eax
mov eax, dword [ebx + 0x14]
mov dword [ebp - 0x814], eax
mov eax, dword [ebx + 0x38]
mov dword [ebp - 0x9a0], eax
movzx eax, ax
mov dword [ebp - 0x9cc], eax
mov eax, dword [ebx + 0x34]
mov dword [ebp - 0x990], eax
movzx eax, ax
mov dword [ebp - 0x9d0], eax
mov eax, dword [ebx + 8]
mov dword [ebp - 0x818], eax
mov eax, dword [ebx + 0xc]
movss xmm0, dword [ebx + 0x6c]
mov dword [ebp - 0x874], eax
movzx eax, word [ebx + 0x10]
mov edi, dword [ebx + 0x2c]
mov dword [ebp - 0x94c], eax
mov eax, dword [ebx + 0x18]
mov dword [ebp - 0x98c], eax
mov eax, dword [ebx + 0x1c]
mov dword [ebp - 0x88c], eax
mov eax, dword [ebx + 0x20]
mov dword [ebp - 0x79c], eax
mov eax, dword [ebx + 0x28]
mov dword [ebp - 0x794], eax
mov eax, dword [ebx + 0x30]
mov dword [ebp - 0x96c], eax
mov eax, dword [ebx + 0x3c]
mov dword [ebp - 0x980], eax
mov eax, dword [ebx + 0x4c]
mov dword [ebp - 0x910], eax
mov eax, dword [ebx + 0x54]
mov dword [ebp - 0x80c], eax
mov eax, dword [ebx + 0x58]
mov dword [ebp - 0x808], eax
mov eax, dword [ebx + 0x68]
movss dword [ebp - 0x7a4], xmm0
mov dword [ebp - 0x984], eax
mov dword [ebp - 4], 2
xorps xmm0, xmm0
mov eax, dword [ecx + 8]
movzx esi, word [ecx + 0xe]
mov dword [ebp - 0x988], eax
movzx eax, word [ecx + 0xc]
mov dword [ebp - 0x7d4], eax
xor eax, eax
mov dword [ebp - 0x868], eax
mov eax, dword [ecx + 0x10]
mov dword [ebp - 0x798], eax
mov eax, dword [ecx + 0x24]
movss dword [ebp - 0x7ac], xmm0
movss dword [ebp - 0x7c4], xmm0
movss dword [ebp - 0x9fc], xmm0
movss dword [ebp - 0x998], xmm0
movss dword [ebp - 0x7bc], xmm0
mov dword [ebp - 0x978], 0
mov dword [ebp - 0x790], 0
mov dword [ebp - 0x810], 0
mov dword [ebp - 0xa38], 0
mov byte [ebp - 0x875], 0
mov dword [ebp - 0x8f0], 0
movss dword [ebp - 0x7a8], xmm0
movss dword [ebp - 0x964], xmm0
mov dword [ebp - 0x7cc], 0
mov dword [ebp - 0xa40], 0
mov dword [ebp - 0x7f0], 0
mov dword [ebp - 0x7ec], eax
mov byte [ebp - 0x915], 1
mov dword [ebp - 0x8a8], 0
mov dword [ebp - 0x830], 0
mov dword [ebp - 0x9f8], 0
mov dword [ebp - 0x8cc], 0
mov dword [ebp - 0x8d0], 0
mov dword [ebp - 0x8b8], 0
mov dword [ebp - 0x8bc], 0
mov eax, 0x3042
movss xmm1, dword [0x5ea7b4]
mov word [ebp - 0x6c0], ax
xor dh, dh
mov eax, dword [ebp - 0x904]
mov byte [ebp - 0x785], dh
mov byte [ebp - 0x892], dh
movss dword [ebp - 0x99c], xmm1
mov eax, dword [eax]
mov ecx, eax
shr ecx, 8
and ecx, 0x1f
movss dword [ebp - 0x8fc], xmm1
mov dword [ebp - 0xa60], ecx
mov ecx, eax
shr ecx, 0xd
and ecx, 0x1f
movss dword [ebp - 0x880], xmm1
mov dword [ebp - 0xa58], ecx
xorps xmm1, xmm1
mov ecx, dword [ebp - 0x96c]
movss dword [ebp - 0x9c8], xmm1
movss xmm1, dword [0x5ea7b0]
movss dword [ebp - 0x914], xmm1
xorps xmm1, xmm1
movzx ecx, word [ecx]
mov dword [ebp - 0x6d8], eax
movzx edx, cl
mov dword [ebp - 0xbd8], edx
mov edx, eax
mov eax, dword [ebp - 0x794]
and edx, 3
mov dword [ebp - 0x9b0], edx
mov dword [ebp - 0x8c0], 0
mov dword [ebp - 0x8c4], 0
mov edx, dword [eax]
mov dword [ebp - 0x6e4], edx
movzx eax, word [edi]
mov dword [ebp - 0x6e0], eax
mov eax, ecx
mov dword [ebp - 0x6dc], eax
mov eax, dword [ebp - 0x7f4]
mov dword [ebp - 0x8c8], 0
mov dword [ebp - 0x8d4], 0
mov dword [ebp - 0x8e8], 0
mov eax, dword [eax + 4]
mov dword [ebp - 0x8f4], eax
mov eax, dword [ebp - 0x798]
mov dword [ebp - 0x8dc], 0
mov dword [ebp - 0x8e0], 0
mov dword [ebp - 0x8e4], 0
cmp dword [eax + 0xc], 0
mov dword [ebp - 0x8ec], 0
mov dword [ebp - 0x8d8], 0
movss dword [ebp - 0x7d0], xmm0
mov byte [ebp - 0x8f5], 0
mov byte [ebp - 0x8a4], 1
mov dword [ebp - 0x9a4], 0
mov dword [ebp - 0x974], 0
mov dword [ebp - 0xa3c], 0xffffffff
movss dword [ebp - 0x9b4], xmm0
mov byte [ebp - 0x8fe], 0
mov byte [ebp - 0x81d], 0
movss dword [ebp - 0x824], xmm0
movss dword [ebp - 0x854], xmm0
mov dword [ebp - 0x994], 0
mov byte [ebp - 0x92d], 0
mov byte [ebp - 0x92e], 0
mov dword [ebp - 0xa00], 0
mov byte [ebp - 0x7ad], 0
mov dword [ebp - 0x908], 0
mov dword [ebp - 0x8b4], 0
mov byte [ebp - 0x85d], 0
mov byte [ebp - 0x8f6], 0
mov byte [ebp - 0x935], 1
mov byte [ebp - 0x855], 0
movss dword [ebp - 0x9a8], xmm1
je 0x4a7468
mov cl, byte [eax + 8]
shr cl, 3
and cl, 1
test dl, 0x20
mov byte [ebp - 0x891], cl
mov ecx, 0
cmovne ecx, eax
shr edx, 0x18
and edx, 0xffffff01
mov dword [ebp - 0x970], ecx
push 0x2002
mov dword [ebp - 0x9ac], edx
call fcn.00560858
add esp, 4
mov dword [ebp - 0x7e8], eax
push 0x2002
call fcn.00560858
add esp, 4
mov dword [ebp - 0x890], eax
push 0x4004
call fcn.00560858
add esp, 4
mov dword [ebp - 0x7b4], eax
push 0x4004
call fcn.00560858
add esp, 4
mov dword [ebp - 0x898], eax
push 0x4004
call fcn.00560858
add esp, 4
mov dword [ebp - 0x850], eax
push 0x4004
call fcn.00560858
mov dword [ebp - 0x7f8], eax
add esp, 4
mov eax, dword [ebp - 0x794]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x798]
mov edx, dword [eax + 0xc]
mov eax, ecx
and ecx, 0xa00
cmp ecx, 0xa00
jne 0x488209
shr eax, 0x1c
mov dword [ebp - 0x82c], eax
mov ecx, dword [edx + eax*4 + 0x5e4]
inc eax
mov dword [ebp - 0x7a0], ecx
mov ecx, dword [edx + 0x3e0]
movzx eax, ax
mov dword [ebp - 0x8d0], ecx
mov dword [ebp - 0x8b4], eax
jmp 0x48834c
mov ecx, eax
and eax, 0x1200
cmp eax, 0x1200
jne 0x48824f
mov eax, dword [edx + 0x3e0]
shr ecx, 0x1c
mov dword [ebp - 0x82c], ecx
mov dword [ebp - 0x8b8], eax
mov eax, dword [ebp - 0x82c]
mov ecx, dword [edx + ecx*4 + 0x65c]
not eax
movzx eax, ax
mov dword [ebp - 0x7a0], ecx
mov dword [ebp - 0x8b4], eax
jmp 0x48834c
test ecx, 0x200
je 0x488274
mov ecx, dword [edx + 0x434]
mov eax, dword [edx + 0x3e0]
mov dword [ebp - 0x7a0], ecx
mov dword [ebp - 0x8bc], eax
jmp 0x488340
test ecx, 0x400
je 0x488299
mov ecx, dword [edx + 0x440]
mov eax, dword [edx + 0x3e0]
mov dword [ebp - 0x7a0], ecx
mov dword [ebp - 0x8c0], eax
jmp 0x488340
test ecx, 0x800
je 0x4882d5
mov eax, dword [edx + 0x3e0]
shr ecx, 0x1c
mov dword [ebp - 0x82c], ecx
mov dword [ebp - 0x8c4], eax
mov eax, dword [ebp - 0x82c]
mov ecx, dword [edx + ecx*4 + 0x4f4]
inc eax
movzx eax, ax
mov dword [ebp - 0x7a0], ecx
mov dword [ebp - 0x8b4], eax
jmp 0x48834c
test ecx, 0x1000
je 0x488312
mov eax, dword [edx + 0x3e0]
shr ecx, 0x1c
mov dword [ebp - 0x82c], ecx
mov dword [ebp - 0x8c8], eax
mov eax, dword [ebp - 0x82c]
mov ecx, dword [edx + ecx*4 + 0x56c]
not eax
movzx eax, ax
mov dword [ebp - 0x7a0], ecx
mov dword [ebp - 0x8b4], eax
jmp 0x48834c
test ecx, 0x100
je 0x488334
mov eax, dword [edx + 0x41c]
mov dword [ebp - 0x7a0], eax
mov eax, dword [edx + 0x3e0]
mov dword [ebp - 0x8cc], eax
jmp 0x488340
mov eax, dword [edx + 0x3e0]
mov dword [ebp - 0x7a0], eax
mov eax, dword [ebp - 0x978]
mov dword [ebp - 0x82c], eax
movzx eax, word [edx + 0x64]
movsd xmm0, qword [ebx + 0x70]
movsd xmm1, qword [ebx + 0x78]
mov dword [ebp - 0x84c], eax
movsd qword [ebp - 0xa28], xmm0
movsd qword [ebp - 0xa20], xmm1
cmp eax, 0x40
jne 0x488382
movaps xmm0, xmm1
movsd qword [ebp - 0x7e0], xmm1
jmp 0x48838a
movsd qword [ebp - 0x7e0], xmm0
movsd xmm2, qword [0x5ea528]
xorps xmm1, xmm1
mov ecx, dword [ebp - 0x874]
ucomisd xmm0, xmm1
movsd qword [ebp - 0xa70], xmm1
movsd xmm1, qword [0x5ea578]
lahf
movsd qword [ebp - 0xaa0], xmm2
movsd qword [ebp - 0x9d8], xmm1
test ah, 0x44
jp 0x4883e1
movsx eax, word [ecx + 4]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm2
addsd xmm0, xmm1
movsd qword [ebp - 0x7e0], xmm0
sub esp, 8
lea eax, [ebp - 0x6b1]
movsd qword [esp], xmm0
push eax
lea eax, [ebp - 0x774]
push eax
lea eax, [ebp - 0x6b9]
push eax
lea eax, [ebp - 0x730]
push eax
lea eax, [ebp - 0x720]
push eax
lea eax, [ebp - 0x700]
push eax
lea eax, [ebp - 0x6f0]
push eax
lea eax, [ebp - 0x710]
push eax
lea eax, [ebp - 0x718]
push eax
lea eax, [ebp - 0x6f8]
push eax
lea eax, [ebp - 0x6b8]
push eax
push dword [ebp - 0x94c]
push ecx
push dword [ebp - 0x798]
mov ecx, dword [ebp - 0x7f4]
call fcn.004e8ca0
movsd xmm5, qword [ebp - 0x7e0]
ucomisd xmm5, qword [ebp - 0x9d8]
mov dword [ebp - 0x9f4], eax
lahf
test ah, 0x44
jnp 0x488484
movd xmm0, dword [ebp - 0x6b8]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm5
cvttsd2si ecx, xmm0
mov dword [ebp - 0x6b8], ecx
mov eax, dword [ebp - 0x7f4]
mov ecx, dword [eax + 0x14]
movzx eax, word [ecx + 0x28]
cmp ax, 2
jne 0x4884bf
mov eax, dword [ebp - 0x798]
mov eax, dword [eax + 0xc]
movsd xmm1, qword [eax + 0xa60]
addsd xmm1, qword [eax + 0xa58]
addsd xmm1, qword [eax + 0xa68]
mulsd xmm1, qword [ecx + 0x30]
jmp 0x4884f9
cmp ax, word [ebp - 0x94c]
jne 0x4884cf
movsd xmm1, qword [ecx + 0x30]
jmp 0x4884f9
movsd xmm0, qword [ecx + 0x30]
mov ecx, dword [ebp - 0x874]
movaps xmm1, xmm0
test ax, ax
jne 0x4884e9
call fcn.00537bb0
jmp 0x4884ee
call fcn.00537bc0
movsd xmm5, qword [ebp - 0x7e0]
movaps xmm1, xmm0
mov eax, dword [ebp - 0x7f4]
test byte [eax + 0x20], 2
movsd xmm0, qword [eax + 0x18]
jne 0x488538
comisd xmm0, xmmword [ebp - 0xa70]
jbe 0x488526
addsd xmm1, qword [ebp - 0x6f8]
movsd qword [ebp - 0x948], xmm1
jmp 0x48855c
addsd xmm1, qword [ebp - 0x6f0]
movsd qword [ebp - 0x948], xmm1
jmp 0x48855c
comisd xmm0, xmmword [ebp - 0xa70]
jbe 0x48854c
movsd xmm0, qword [ebp - 0x6f8]
jmp 0x488554
movsd xmm0, qword [ebp - 0x6f0]
movsd qword [ebp - 0x948], xmm0
mov edx, dword [ebp - 0x79c]
movzx ecx, byte [edx + 0x7e8]
movzx eax, byte [edx + 0x7e9]
shl ecx, 8
or ecx, eax
movzx eax, byte [edx + 0x7ea]
shl ecx, 8
or ecx, eax
mov eax, dword [ebp - 0x794]
mov dword [ebp - 0x83c], ecx
and dword [eax], 0xfffdffff
cmp word [edi], 0
je 0x48863b
mov ecx, dword [ebp - 0x7a0]
lea edx, [ebp - 0x6c0]
push 0
push 1
call fcn.0043abc0
mov ecx, dword [ebp - 0x7a0]
push 0
lea ecx, [ecx + 0x100]
call fcn.00410b00
movzx edx, word [edi]
movss xmm2, dword [ebp - 0x7a4]
movsd xmm5, qword [ebp - 0x7e0]
mulss xmm2, dword [eax]
movzx ecx, dl
mov eax, ecx
shr dx, 8
mov dword [ebp - 0x9a4], eax
mov eax, dword [ebp - 0x798]
cvtps2pd xmm0, xmm2
mov eax, dword [eax + 0xc]
movss dword [ebp - 0x7d0], xmm2
movd xmm1, dword [eax + 0xa80]
cvtdq2pd xmm1, xmm1
movzx eax, dx
mov dword [ebp - 0x974], eax
xor eax, eax
mov word [edi], ax
mulsd xmm1, xmm5
addsd xmm1, xmm0
movd xmm0, ecx
cvtdq2pd xmm0, xmm0
mulsd xmm1, xmm0
cvtpd2ps xmm1, xmm1
movss dword [ebp - 0x9c8], xmm1
jmp 0x488643
movss xmm2, dword [ebp - 0x7d0]
mov edi, dword [ebx + 0x40]
mov dword [ebp - 0x8ac], edi
test di, di
jle 0x488657
cmp di, 0xa
jle 0x488660
lea ecx, [edi + 0xa]
cmp cx, 9
ja 0x488665
movzx edi, di
jmp 0x4886a5
lea eax, [edi - 0xb]
cmp ax, 9
ja 0x488676
lea eax, [edi - 0xa]
movzx edi, ax
jmp 0x4886a5
lea eax, [edi + 0x14]
cmp ax, 9
ja 0x488684
movzx edi, cx
jmp 0x4886a5
cmp di, 0x15
je 0x4886a0
cmp di, 0x16
je 0x4886a0
cmp di, 0x1f
je 0x48869c
cmp di, 0x20
jne 0x4886ab
xor edi, edi
jmp 0x4886a5
mov edi, 1
mov dword [ebp - 0x8b4], edi
cmp dword [ebp - 0x988], 0
je 0x4a7414
movsd xmm0, qword [0x5ea500]
mov eax, dword [ebp - 0x7e8]
movsd qword [ebp - 0x9f0], xmm0
movsd xmm0, qword [0x5ea4f8]
movsd qword [ebp - 0x9e8], xmm0
movsd xmm0, qword [0x5ea518]
lea ecx, [eax + 4]
movsd qword [ebp - 0x9e0], xmm0
movsd xmm0, qword [0x5ea660]
movsd qword [ebp - 0x8a0], xmm0
movsd xmm0, qword [0x5ea680]
movsd qword [ebp - 0x9c0], xmm0
movsd xmm0, qword [0x5ea548]
movsd qword [ebp - 0xa30], xmm0
movsd xmm0, qword [0x5ea550]
movsd qword [ebp - 0x960], xmm0
movsd xmm0, qword [0x5ea508]
movsd qword [ebp - 0xbe8], xmm0
movsd xmm0, qword [0x5ea540]
movsd qword [ebp - 0xa18], xmm0
movsd xmm0, qword [0x5ea520]
mov dword [ebp - 0x93c], ecx
lea ecx, [eax + 6]
add eax, 0xa
movsd qword [ebp - 0xbf0], xmm0
movsd xmm0, qword [0x5ea558]
mov dword [ebp - 0x934], eax
xor eax, eax
mov dword [ebp - 0x90c], eax
mov eax, dword [sym.imp.KERNEL32.dll_GetStringTypeExW]
movsd qword [ebp - 0xa10], xmm0
movsd xmm0, qword [0x5ea530]
mov dword [ebp - 0xbbc], eax
mov al, byte [ebp - 0x935]
movsd qword [ebp - 0xc68], xmm0
movss xmm0, dword [ebp - 0x99c]
mov byte [ebp - 0x8fd], al
mov eax, dword [ebp - 0x99c]
movss dword [ebp - 0x888], xmm0
movss xmm0, dword [ebp - 0x99c]
mov dword [ebp - 0xa04], eax
mov eax, dword [ebp - 0x99c]
mov dword [ebp - 0x954], eax
mov eax, dword [ebp - 0x99c]
movss dword [ebp - 0x8b0], xmm0
movss xmm0, dword [ebp - 0x99c]
mov dword [ebp - 0x884], ecx
mov cl, byte [ebp - 0x915]
mov dword [ebp - 0x92c], eax
mov eax, dword [ebp - 0x7d4]
mov dword [ebp - 0xbdc], 0x214
mov dword [ebp - 0xa44], 0xdc00
mov dword [ebp - 0xbd4], 0xdfff
mov dword [ebp - 0xbd0], 0xd800
mov dword [ebp - 0xa88], 0x3015
mov dword [ebp - 0xbc8], 0x4e09
mov dword [ebp - 0xa94], 0xff08
mov dword [ebp - 0xa08], 0x306f
mov dword [ebp - 0xa5c], 0xff0d
mov dword [ebp - 0xa54], 0x2212
mov dword [ebp - 0xa4c], 0x3099
mov dword [ebp - 0xa50], 0x309a
mov dword [ebp - 0xbc4], 0xab
mov dword [ebp - 0xbc0], 0xbb
mov dword [ebp - 0xbb8], 0x3033
mov dword [ebp - 0xb7c], 0x3035
mov dword [ebp - 0xa90], 0x3034
mov dword [ebp - 0xa84], 0x200b
mov dword [ebp - 0xa80], 0x309b
mov dword [ebp - 0xa8c], 0x309c
mov dword [ebp - 0xa7c], 0x91cd
movss dword [ebp - 0x7c8], xmm0
nop word [eax + eax]
test cl, cl
je 0x4a7414
movzx edx, ax
mov dword [ebp - 0x9c4], edx
mov edx, dword [ebp - 0x988]
cmp ax, word [edx]
jge 0x4a7378
test cl, cl
je 0x4a7378
mov edx, dword [ebp - 0x9c4]
movzx eax, si
mov dword [ebp - 0xa34], eax
mov eax, dword [ebp - 0x988]
movsx edi, dx
mov edx, dword [ebp - 0x79c]
mov eax, dword [eax + edi*4 + 4]
cmp si, word [eax]
jge 0x4a7352
mov esi, dword [ebp - 0x790]
nop dword [eax]
mov eax, dword [ebp - 0x9ac]
mov byte [ebp - 0x81e], al
movzx eax, si
mov dword [ebp - 0x78c], eax
movzx eax, si
mov dword [ebp - 0x828], eax
movzx eax, si
mov dword [ebp - 0x870], eax
test cl, cl
je 0x4a7352
cmp byte [edx + 0x2f4], 0
je 0x488c5a
mov edi, dword [ebp - 0x7f0]
test edi, edi
je 0x488c5a
movzx eax, word [edi + 8]
test al, 0x42
jne 0x488c5a
test al, 4
je 0x4889bd
and al, 0x14
cmp al, 0x14
je 0x4889bd
cmp byte [ebp - 0x7ad], 0
je 0x488c5a
mov eax, dword [ebp - 0x794]
mov ecx, dword [eax]
test cl, 0x20
jne 0x488c5a
cmp byte [ebp - 0x855], 0
jne 0x488c5a
test si, si
jne 0x488c5a
test cl, 0xc0
jne 0x488a5f
movzx eax, word [edi + 4]
xor edx, edx
xor esi, esi
mov ecx, eax
cmp dx, ax
jge 0x488a54
mov eax, dword [ebp - 0x810]
movsx edi, ax
mov dword [ebp - 0x7d4], edi
nop word [eax + eax]
mov eax, dword [ebp - 0x7e8]
movsx ecx, si
inc esi
mov ax, word [eax + ecx*2]
lea edx, [edi + ecx]
mov edi, dword [ebp - 0x890]
mov word [edi + edx*2], ax
mov eax, dword [ebp - 0x7b4]
mov edi, dword [ebp - 0x7d4]
mov eax, dword [eax + ecx*4]
mov ecx, dword [ebp - 0x850]
mov dword [ecx + edx*4], eax
mov eax, dword [ebp - 0x7f0]
movzx eax, word [eax + 4]
mov ecx, eax
cmp si, ax
jl 0x488a10
add dword [ebp - 0x810], ecx
jmp 0x488c5a
movss xmm3, dword [ebp - 0x854]
ucomiss xmm3, dword [ebp - 0x7ac]
lahf
test ah, 0x44
jnp 0x488b8c
mov eax, dword [ebp - 0x994]
test cl, 0x40
je 0x488a8d
cmp ax, 1
je 0x488b8c
test cl, cl
jns 0x488a9b
cmp ax, 2
je 0x488b8c
mov edx, dword [edi + 0xc]
movzx ecx, word [edi + 4]
movsx eax, cx
mov edi, ecx
movd xmm1, dword [edx + 0xa80]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
mulsd xmm1, xmm5
mulsd xmm1, xmm0
cvtpd2ps xmm0, xmm1
addss xmm0, xmm2
comiss xmm0, xmm3
jbe 0x488c40
mov eax, edi
xor esi, esi
xor edi, edi
cmp di, cx
jge 0x488b4a
mov eax, dword [ebp - 0x810]
movsx edi, ax
mov dword [ebp - 0x7d4], edi
nop
mov eax, dword [ebp - 0x7e8]
movsx ecx, si
mov ax, word [eax + ecx*2]
lea edx, [edi + ecx]
mov edi, dword [ebp - 0x890]
mov word [edi + edx*2], ax
mov eax, dword [ebp - 0x7b4]
mov edi, dword [ebp - 0x7d4]
mov eax, dword [eax + ecx*4]
mov ecx, dword [ebp - 0x850]
mov dword [ecx + edx*4], eax
test si, si
jne 0x488b35
movss xmm0, dword [ecx + edi*4]
subss xmm0, xmm3
movss dword [ecx + edi*4], xmm0
mov edx, dword [ebp - 0x7f0]
inc esi
movzx eax, word [edx + 4]
mov ecx, eax
cmp si, ax
jl 0x488af0
mov edx, dword [edx + 0xc]
movd xmm1, dword [edx + 0xa80]
movzx eax, ax
add dword [ebp - 0x810], eax
cwde
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
mulsd xmm1, xmm5
mulsd xmm1, xmm0
cvttsd2si eax, xmm1
movd xmm3, eax
cvtdq2ps xmm3, xmm3
addss xmm3, xmm2
movss dword [ebp - 0x854], xmm3
jmp 0x488c40
movzx eax, word [edi + 4]
xor edx, edx
xor esi, esi
mov ecx, eax
cmp dx, ax
jge 0x488bfa
mov eax, dword [ebp - 0x810]
movsx edi, ax
mov dword [ebp - 0x7d4], edi
nop word [eax + eax]
mov eax, dword [ebp - 0x7e8]
movsx ecx, si
inc esi
mov ax, word [eax + ecx*2]
lea edx, [edi + ecx]
mov edi, dword [ebp - 0x890]
mov word [edi + edx*2], ax
mov eax, dword [ebp - 0x7b4]
mov edi, dword [ebp - 0x7d4]
mov eax, dword [eax + ecx*4]
mov ecx, dword [ebp - 0x850]
mov dword [ecx + edx*4], eax
mov eax, dword [ebp - 0x7f0]
movzx eax, word [eax + 4]
mov ecx, eax
cmp si, ax
jl 0x488bb0
mov edi, dword [ebp - 0x7f0]
mov eax, dword [edi + 0xc]
movzx ecx, cx
add dword [ebp - 0x810], ecx
movd xmm1, dword [eax + 0xa80]
movsx eax, cx
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
mulsd xmm1, xmm5
mulsd xmm1, xmm0
cvttsd2si eax, xmm1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
addss xmm0, xmm2
addss xmm0, xmm3
movss dword [ebp - 0x854], xmm0
mov eax, dword [ebp - 0x794]
mov al, byte [eax]
and al, 0x40
movzx eax, al
neg eax
sbb eax, eax
add eax, 2
mov dword [ebp - 0x994], eax
mov eax, dword [ebp - 0x790]
mov edi, dword [ebp - 0x9c4]
movsx edx, ax
mov eax, dword [ebp - 0xa34]
movsx ecx, ax
mov eax, dword [ebp - 0x988]
movsx esi, di
mov edi, dword [ebp - 0x79c]
mov eax, dword [eax + esi*4 + 4]
mov esi, dword [ebp - 0x7e8]
mov ax, word [eax + ecx*2 + 2]
mov word [esi + edx*2], ax
mov al, byte [edi + 0x2f4]
test al, al
je 0x488d01
cmp byte [ebp - 0x9ac], 0
je 0x488cc3
push dword [ebp - 0x790]
mov ecx, dword [ebp - 0x7f4]
push esi
call fcn.004d5740
mov al, byte [edi + 0x2f4]
test al, al
je 0x488d01
cmp word [ebp - 0x84c], 0x40
jne 0x488d01
push dword [ebp - 0x790]
mov ecx, dword [ebp - 0x7f4]
push 0
push esi
call fcn.004d5810
test al, al
je 0x488d01
mov eax, dword [ebp - 0x798]
test byte [eax + 8], 0x40
je 0x488cfa
mov byte [ebp - 0x81d], 1
jmp 0x488d01
mov byte [ebp - 0x8fe], 1
push dword [ebp - 0x790]
mov ecx, dword [ebp - 0x7f4]
push esi
call fcn.004d5d80
mov eax, dword [ebp - 0x790]
inc eax
movzx ecx, ax
mov dword [ebp - 0x7d4], ecx
movzx ecx, ax
movzx eax, cx
mov dword [ebp - 0x7b8], eax
mov eax, dword [ebp - 0x798]
mov dword [ebp - 0x790], ecx
cmp cx, word [eax + 4]
jl 0x4a7307
mov cl, byte [edi + 0x2f4]
mov dl, cl
test cl, cl
je 0x488d88
mov ax, word [eax + 8]
and ax, word [ebp - 0xbdc]
cmp ax, 0x14
jne 0x488d88
cmp word [ebp - 0x790], 1
jne 0x488d88
mov cx, word [esi]
call fcn.0040d690
cwde
mov eax, dword [eax*4 + 0x591aa4]
mov ax, word [eax]
mov word [esi], ax
mov dl, byte [edi + 0x2f4]
mov byte [ebp - 0x855], 0
test dl, dl
je 0x488dbb
cmp byte [edi + 0x7e4], 0
mov edi, dword [ebp - 0x798]
je 0x488dc1
test byte [edi + 8], 0x40
jne 0x488dc1
mov eax, 0x2015
cmp word [esi], ax
jne 0x488dc1
mov byte [ebp - 0x801], 1
jmp 0x488dc8
mov edi, dword [ebp - 0x798]
mov byte [ebp - 0x801], 0
cmp word [ebp - 0x8ac], 0
je 0x488de9
cmp dword [ebx + 0x44], edi
jne 0x488de0
mov byte [ebp - 0x7ad], 1
jmp 0x488de9
cmp dword [ebx + 0x48], edi
je 0x4a73a3
xor al, al
cmp dword [ebp - 0x978], 0
mov byte [ebp - 0x968], al
jne 0x48928f
cmp word [edi + 0xa], 0
mov esi, dword [ebp - 0x7f4]
mov eax, dword [esi + 0x14]
jne 0x488e1e
test byte [esi + 0x20], 2
jne 0x488e1e
movsd xmm0, qword [eax + 0x2e8]
jmp 0x488e26
movsd xmm0, qword [eax + 0x2f0]
cmp word [ebp - 0x94c], 0
movaps xmm1, xmm0
mov ecx, dword [ebp - 0x874]
jne 0x488e5e
call fcn.00537b30
mov eax, dword [esi + 0x14]
mov ecx, dword [ebp - 0x874]
movss dword [ebp - 0x7c0], xmm0
movsd xmm1, qword [eax + 0x2f8]
call fcn.00537b30
jmp 0x488e81
call fcn.00537a50
mov eax, dword [esi + 0x14]
mov ecx, dword [ebp - 0x874]
movss dword [ebp - 0x7c0], xmm0
movsd xmm1, qword [eax + 0x2f8]
call fcn.00537a50
cmp word [ebp - 0x974], 0
movss xmm3, dword [ebp - 0x9c8]
movaps xmm2, xmm3
movss dword [ebp - 0x964], xmm0
addss xmm2, dword [ebp - 0x7c0]
movss dword [ebp - 0x7a8], xmm2
jle 0x489005
mov eax, dword [esi + 0x14]
movzx eax, word [eax + 8]
cmp ax, 2
je 0x489005
cmp ax, 1
je 0x489005
cmp word [ebp - 0x9a4], 0
jne 0x488fe0
movss xmm1, dword [ebp - 0x9a8]
ucomiss xmm1, dword [ebp - 0x7ac]
lahf
test ah, 0x44
jp 0x488f4b
mov esi, dword [ebp - 0x7a0]
lea edx, [ebp - 0x6c0]
push 0
push 1
mov ecx, esi
call fcn.0043abc0
push 0
lea ecx, [esi + 0x100]
call fcn.00410b00
movss xmm0, dword [ebp - 0x7a4]
movss xmm2, dword [ebp - 0x7a8]
movss xmm3, dword [ebp - 0x9c8]
mulss xmm0, dword [eax]
mov esi, dword [ebp - 0x7f4]
movaps xmm1, xmm0
movss dword [ebp - 0x7d0], xmm0
movss dword [ebp - 0x9a8], xmm1
jmp 0x488f56
movaps xmm0, xmm1
movss dword [ebp - 0x7d0], xmm1
cmp word [edi + 0xa], 0
jne 0x488fa2
test byte [esi + 0x20], 2
jne 0x488fa2
mov eax, dword [edi + 0xc]
cvtps2pd xmm0, xmm0
movd xmm1, dword [eax + 0xa80]
cvtdq2pd xmm1, xmm1
mulsd xmm1, qword [ebp - 0x7e0]
addsd xmm1, xmm0
movd xmm0, dword [ebp - 0xa60]
cvtdq2pd xmm0, xmm0
mulsd xmm1, xmm0
cvtpd2ps xmm1, xmm1
movss dword [ebp - 0x9b4], xmm1
movaps xmm0, xmm1
jmp 0x488fdc
mov eax, dword [edi + 0xc]
cvtps2pd xmm0, xmm0
movd xmm1, dword [eax + 0xa80]
cvtdq2pd xmm1, xmm1
mulsd xmm1, qword [ebp - 0x7e0]
addsd xmm1, xmm0
movd xmm0, dword [ebp - 0xa58]
cvtdq2pd xmm0, xmm0
mulsd xmm1, xmm0
cvtpd2ps xmm0, xmm1
movss dword [ebp - 0x9b4], xmm0
addss xmm2, xmm0
mov esi, dword [ebp - 0x6b8]
movzx eax, word [edi + 0xa]
mov dword [ebp - 0xa3c], eax
movd xmm0, esi
cvtdq2ps xmm0, xmm0
addss xmm0, xmm2
movss dword [ebp - 0x7a8], xmm0
jmp 0x48900b
mov esi, dword [ebp - 0x6b8]
mov eax, dword [ebp - 0x904]
movss xmm0, dword [ebp - 0x7ac]
mov edx, dword [eax]
mov ecx, edx
test dl, 8
je 0x489154
ucomiss xmm3, xmm0
lahf
test ah, 0x44
jp 0x489154
cmp word [ebp - 0x974], 0
jg 0x489154
movss xmm1, dword [ebp - 0x9a8]
ucomiss xmm1, xmm0
lahf
test ah, 0x44
jp 0x4890a5
mov esi, dword [ebp - 0x7a0]
lea edx, [ebp - 0x6c0]
push 0
push 1
mov ecx, esi
call fcn.0043abc0
push 0
lea ecx, [esi + 0x100]
call fcn.00410b00
movss xmm0, dword [ebp - 0x7a4]
mov esi, dword [ebp - 0x6b8]
movss xmm3, dword [ebp - 0x9c8]
mulss xmm0, dword [eax]
mov eax, dword [ebp - 0x904]
movaps xmm1, xmm0
mov ecx, dword [eax]
movss dword [ebp - 0x9a8], xmm1
jmp 0x4890a8
movaps xmm0, xmm1
cmp word [edi + 0xa], 0
movss dword [ebp - 0x7d0], xmm0
jne 0x489102
mov eax, dword [ebp - 0x7f4]
test byte [eax + 0x20], 2
jne 0x489102
mov eax, dword [edi + 0xc]
cvtps2pd xmm0, xmm0
movd xmm1, dword [eax + 0xa80]
cvtdq2pd xmm1, xmm1
mulsd xmm1, qword [ebp - 0x7e0]
addsd xmm1, xmm0
movd xmm0, dword [ebp - 0xa60]
cvtdq2pd xmm0, xmm0
mulsd xmm1, xmm0
cvtpd2ps xmm1, xmm1
movss dword [ebp - 0x9b4], xmm1
movaps xmm0, xmm1
jmp 0x48913c
mov eax, dword [edi + 0xc]
cvtps2pd xmm0, xmm0
movd xmm1, dword [eax + 0xa80]
cvtdq2pd xmm1, xmm1
mulsd xmm1, qword [ebp - 0x7e0]
addsd xmm1, xmm0
movd xmm0, dword [ebp - 0xa58]
cvtdq2pd xmm0, xmm0
mulsd xmm1, xmm0
cvtpd2ps xmm0, xmm1
movss dword [ebp - 0x9b4], xmm0
addss xmm0, dword [ebp - 0x7a8]
movss dword [ebp - 0x7a8], xmm0
movss xmm0, dword [ebp - 0x7ac]
test cl, 4
je 0x489250
ucomiss xmm3, xmm0
lahf
test ah, 0x44
jp 0x489250
cmp word [ebp - 0x974], 0
jg 0x489250
movss xmm1, dword [ebp - 0x9a8]
ucomiss xmm1, xmm0
lahf
test ah, 0x44
jp 0x4891d4
mov esi, dword [ebp - 0x7a0]
lea edx, [ebp - 0x6c0]
push 0
push 1
mov ecx, esi
call fcn.0043abc0
push 0
lea ecx, [esi + 0x100]
call fcn.00410b00
movss xmm0, dword [ebp - 0x7a4]
mov esi, dword [ebp - 0x6b8]
mulss xmm0, dword [eax]
movaps xmm1, xmm0
movss dword [ebp - 0x7d0], xmm0
movss dword [ebp - 0x9a8], xmm1
jmp 0x4891df
movaps xmm0, xmm1
movss dword [ebp - 0x7d0], xmm1
mov eax, dword [ebp - 0x7f4]
mov eax, dword [eax + 0x14]
movzx eax, word [eax + 8]
cmp ax, 2
je 0x489250
cmp ax, 1
je 0x489250
mov eax, dword [edi + 0xc]
xorps xmm1, xmm1
cvtps2pd xmm0, xmm0
cvtsi2sd xmm1, dword [eax + 0xa80]
xorps xmm2, xmm2
mulsd xmm1, qword [ebp - 0x7e0]
cvtsi2ss xmm2, esi
addsd xmm1, xmm0
xorps xmm0, xmm0
cvtsi2sd xmm0, dword [ebp - 0xbd8]
mulsd xmm1, xmm0
cvtpd2ps xmm0, xmm1
subss xmm2, xmm0
movaps xmm1, xmm2
movss dword [ebp - 0x9b4], xmm2
addss xmm1, dword [ebp - 0x7a8]
movss dword [ebp - 0x7a8], xmm1
jmp 0x489258
movss xmm1, dword [ebp - 0x7a8]
mov eax, dword [ebp - 0x7f4]
mov eax, dword [eax + 0x14]
movsx eax, word [eax + 8]
sub eax, 1
je 0x489275
sub eax, 1
jne 0x48928f
movd xmm0, esi
jmp 0x489280
mov eax, esi
cdq
sub eax, edx
sar eax, 1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
addss xmm0, xmm1
movss dword [ebp - 0x7a8], xmm0
mov eax, dword [ebp - 0x96c]
mov ecx, 0x4000
test word [eax], cx
je 0x48945b
cmp word [ebp - 0x84c], 0x40
mov ecx, dword [ebp - 0x818]
jne 0x4892d4
mov eax, dword [ecx + 8]
sub eax, dword [ecx]
mov ecx, dword [ebx + 0x50]
cmp ecx, eax
jge 0x4892cd
sub eax, ecx
cdq
sub eax, edx
mov esi, eax
sar esi, 1
jmp 0x48946d
xor esi, esi
jmp 0x48946d
mov eax, dword [ecx + 0xc]
sub eax, dword [ecx + 4]
mov ecx, dword [ebx + 0x50]
cmp ecx, eax
jge 0x489454
sub eax, ecx
cdq
sub eax, edx
mov edi, eax
sar edi, 1
cmp word [ebp - 0x94c], 0
mov esi, dword [ebp - 0x7f4]
mov ecx, dword [ebp - 0x874]
movsd xmm1, qword [esi + 0x18]
addsd xmm1, qword [ebp - 0x948]
jne 0x48979c
call fcn.00537b50
movaps xmm1, xmm0
mov ecx, dword [ebp - 0x874]
movd xmm0, edi
cvtdq2ps xmm0, xmm0
addss xmm1, xmm0
movss dword [ebp - 0x81c], xmm1
movsd xmm1, qword [ebp - 0x948]
subsd xmm1, qword [ebp - 0x6f0]
addsd xmm1, qword [esi + 0x18]
call fcn.00537b50
movaps xmm1, xmm0
mov ecx, dword [ebp - 0x874]
movd xmm0, edi
cvtdq2ps xmm0, xmm0
addss xmm1, xmm0
movss dword [ebp - 0x87c], xmm1
movsd xmm1, qword [ebp - 0x948]
subsd xmm1, qword [ebp - 0x6f8]
addsd xmm1, qword [esi + 0x18]
call fcn.00537b50
movaps xmm1, xmm0
mov ecx, dword [ebp - 0x874]
movd xmm0, edi
cvtdq2ps xmm0, xmm0
addss xmm1, xmm0
movss dword [ebp - 0x91c], xmm1
movsd xmm1, qword [ebp - 0x948]
addsd xmm1, qword [ebp - 0x700]
addsd xmm1, qword [esi + 0x18]
call fcn.00537b50
movaps xmm1, xmm0
movd xmm0, edi
cvtdq2ps xmm0, xmm0
addss xmm1, xmm0
movss dword [ebp - 0x864], xmm1
movsd xmm1, qword [ebp - 0x948]
addsd xmm1, qword [ebp - 0x718]
addsd xmm1, qword [ebp - 0x710]
addsd xmm1, qword [esi + 0x18]
mov esi, dword [ebp - 0x874]
mov ecx, esi
call fcn.00537b50
movaps xmm1, xmm0
mov ecx, esi
movd xmm0, edi
cvtdq2ps xmm0, xmm0
addss xmm1, xmm0
movss dword [ebp - 0x950], xmm1
movsd xmm1, qword [ebp - 0x6f0]
call fcn.00537b50
movsd xmm1, qword [ebp - 0x700]
mov ecx, esi
movss dword [ebp - 0x7fc], xmm0
call fcn.00537b50
movsd xmm1, qword [ebp - 0x720]
mov ecx, esi
movss dword [ebp - 0x85c], xmm0
call fcn.00537b50
jmp 0x4898d6
xor edi, edi
jmp 0x4892ee
xor edi, edi
xor esi, esi
cmp word [ebp - 0x84c], 0x40
jne 0x4892ee
cmp word [ebp - 0x94c], 0
mov edi, dword [ebp - 0x7f4]
mov ecx, dword [ebp - 0x874]
movsd xmm1, qword [edi + 0x18]
addsd xmm1, qword [ebp - 0x948]
jne 0x4895d4
call fcn.00537b30
mov ecx, dword [ebp - 0x874]
movd xmm1, esi
cvtdq2ps xmm1, xmm1
addss xmm0, xmm1
movsd xmm1, qword [ebp - 0x948]
subsd xmm1, qword [ebp - 0x6f0]
movss dword [ebp - 0x81c], xmm0
addsd xmm1, qword [edi + 0x18]
call fcn.00537b30
movaps xmm1, xmm0
mov ecx, dword [ebp - 0x874]
movd xmm0, esi
cvtdq2ps xmm0, xmm0
addss xmm1, xmm0
movss dword [ebp - 0x87c], xmm1
movsd xmm1, qword [ebp - 0x948]
subsd xmm1, qword [ebp - 0x6f8]
addsd xmm1, qword [edi + 0x18]
call fcn.00537b30
movaps xmm1, xmm0
mov ecx, dword [ebp - 0x874]
movd xmm0, esi
cvtdq2ps xmm0, xmm0
addss xmm1, xmm0
movss dword [ebp - 0x91c], xmm1
movsd xmm1, qword [ebp - 0x948]
addsd xmm1, qword [ebp - 0x700]
addsd xmm1, qword [edi + 0x18]
call fcn.00537b30
movaps xmm1, xmm0
mov ecx, dword [ebp - 0x874]
movd xmm0, esi
cvtdq2ps xmm0, xmm0
addss xmm1, xmm0
movss dword [ebp - 0x864], xmm1
movsd xmm1, qword [ebp - 0x948]
addsd xmm1, qword [ebp - 0x718]
addsd xmm1, qword [ebp - 0x710]
addsd xmm1, qword [edi + 0x18]
call fcn.00537b30
movaps xmm1, xmm0
movd xmm0, esi
mov esi, dword [ebp - 0x874]
mov ecx, esi
cvtdq2ps xmm0, xmm0
addss xmm1, xmm0
movss dword [ebp - 0x950], xmm1
movsd xmm1, qword [ebp - 0x6f0]
call fcn.00537b30
movsd xmm1, qword [ebp - 0x700]
mov ecx, esi
movss dword [ebp - 0x7fc], xmm0
call fcn.00537b30
movsd xmm1, qword [ebp - 0x720]
mov ecx, esi
movss dword [ebp - 0x85c], xmm0
call fcn.00537b30
jmp 0x489712
call fcn.00537a50
movaps xmm1, xmm0
mov ecx, dword [ebp - 0x874]
movd xmm0, esi
cvtdq2ps xmm0, xmm0
addss xmm1, xmm0
movss dword [ebp - 0x81c], xmm1
movsd xmm1, qword [ebp - 0x948]
subsd xmm1, qword [ebp - 0x6f0]
addsd xmm1, qword [edi + 0x18]
call fcn.00537a50
movaps xmm1, xmm0
mov ecx, dword [ebp - 0x874]
movd xmm0, esi
cvtdq2ps xmm0, xmm0
addss xmm1, xmm0
movss dword [ebp - 0x87c], xmm1
movsd xmm1, qword [ebp - 0x948]
subsd xmm1, qword [ebp - 0x6f8]
addsd xmm1, qword [edi + 0x18]
call fcn.00537a50
movaps xmm1, xmm0
mov ecx, dword [ebp - 0x874]
movd xmm0, esi
cvtdq2ps xmm0, xmm0
addss xmm1, xmm0
movss dword [ebp - 0x91c], xmm1
movsd xmm1, qword [ebp - 0x948]
addsd xmm1, qword [ebp - 0x700]
addsd xmm1, qword [edi + 0x18]
call fcn.00537a50
movaps xmm1, xmm0
mov ecx, dword [ebp - 0x874]
movd xmm0, esi
cvtdq2ps xmm0, xmm0
addss xmm1, xmm0
movss dword [ebp - 0x864], xmm1
movsd xmm1, qword [ebp - 0x948]
addsd xmm1, qword [ebp - 0x718]
addsd xmm1, qword [ebp - 0x710]
addsd xmm1, qword [edi + 0x18]
call fcn.00537a50
movaps xmm1, xmm0
movd xmm0, esi
mov esi, dword [ebp - 0x874]
mov ecx, esi
cvtdq2ps xmm0, xmm0
addss xmm1, xmm0
movss dword [ebp - 0x950], xmm1
movsd xmm1, qword [ebp - 0x6f0]
call fcn.00537a50
movsd xmm1, qword [ebp - 0x700]
mov ecx, esi
movss dword [ebp - 0x7fc], xmm0
call fcn.00537a50
movsd xmm1, qword [ebp - 0x720]
mov ecx, esi
movss dword [ebp - 0x85c], xmm0
call fcn.00537a50
mov esi, dword [ebp - 0x818]
mov edx, dword [ebp - 0x814]
movss dword [ebp - 0x834], xmm0
movd xmm2, dword [esi + 8]
movd xmm1, dword [edx]
cvtdq2ps xmm2, xmm2
cvtdq2ps xmm1, xmm1
movaps xmm0, xmm2
subss xmm0, dword [ebp - 0x87c]
subss xmm2, dword [ebp - 0x864]
subss xmm0, xmm1
subss xmm2, xmm1
cvttss2si eax, xmm0
mov dword [ebp - 0x6cc], eax
cvttss2si eax, xmm2
mov dword [ebp - 0x6d4], eax
mov ecx, dword [edx + 4]
movd xmm1, dword [esi + 0xc]
cvtdq2ps xmm1, xmm1
movd xmm0, ecx
subss xmm1, dword [ebp - 0x964]
cvtdq2ps xmm0, xmm0
subss xmm1, xmm0
cvttss2si eax, xmm1
mov dword [ebp - 0x6c8], eax
mov eax, dword [esi + 4]
sub eax, ecx
mov dword [ebp - 0x6d0], eax
jmp 0x489960
call fcn.00537a70
movaps xmm1, xmm0
mov ecx, dword [ebp - 0x874]
movd xmm0, edi
cvtdq2ps xmm0, xmm0
addss xmm1, xmm0
movss dword [ebp - 0x81c], xmm1
movsd xmm1, qword [ebp - 0x948]
subsd xmm1, qword [ebp - 0x6f0]
addsd xmm1, qword [esi + 0x18]
call fcn.00537a70
movaps xmm1, xmm0
mov ecx, dword [ebp - 0x874]
movd xmm0, edi
cvtdq2ps xmm0, xmm0
addss xmm1, xmm0
movss dword [ebp - 0x87c], xmm1
movsd xmm1, qword [ebp - 0x948]
subsd xmm1, qword [ebp - 0x6f8]
addsd xmm1, qword [esi + 0x18]
call fcn.00537a70
movaps xmm1, xmm0
mov ecx, dword [ebp - 0x874]
movd xmm0, edi
cvtdq2ps xmm0, xmm0
addss xmm1, xmm0
movss dword [ebp - 0x91c], xmm1
movsd xmm1, qword [ebp - 0x948]
addsd xmm1, qword [ebp - 0x700]
addsd xmm1, qword [esi + 0x18]
call fcn.00537a70
movaps xmm1, xmm0
movd xmm0, edi
cvtdq2ps xmm0, xmm0
addss xmm1, xmm0
movss dword [ebp - 0x864], xmm1
movsd xmm1, qword [ebp - 0x948]
addsd xmm1, qword [ebp - 0x718]
addsd xmm1, qword [ebp - 0x710]
addsd xmm1, qword [esi + 0x18]
mov esi, dword [ebp - 0x874]
mov ecx, esi
call fcn.00537a70
movaps xmm1, xmm0
mov ecx, esi
movd xmm0, edi
cvtdq2ps xmm0, xmm0
addss xmm1, xmm0
movss dword [ebp - 0x950], xmm1
movsd xmm1, qword [ebp - 0x6f0]
call fcn.00537a70
movsd xmm1, qword [ebp - 0x700]
mov ecx, esi
movss dword [ebp - 0x7fc], xmm0
call fcn.00537a70
movsd xmm1, qword [ebp - 0x720]
mov ecx, esi
movss dword [ebp - 0x85c], xmm0
call fcn.00537a70
mov edx, dword [ebp - 0x818]
mov ecx, dword [ebp - 0x814]
movss dword [ebp - 0x834], xmm0
mov edi, dword [ebp - 0x7f4]
movd xmm2, dword [edx + 4]
movd xmm1, dword [ecx + 4]
cvtdq2ps xmm2, xmm2
cvtdq2ps xmm1, xmm1
movaps xmm0, xmm2
addss xmm0, dword [ebp - 0x87c]
addss xmm2, dword [ebp - 0x864]
subss xmm0, xmm1
subss xmm2, xmm1
cvttss2si eax, xmm0
mov dword [ebp - 0x6d0], eax
cvttss2si eax, xmm2
mov dword [ebp - 0x6c8], eax
mov ecx, dword [ecx]
movd xmm1, dword [edx + 8]
cvtdq2ps xmm1, xmm1
movd xmm0, ecx
subss xmm1, dword [ebp - 0x964]
cvtdq2ps xmm0, xmm0
subss xmm1, xmm0
cvttss2si eax, xmm1
mov dword [ebp - 0x6cc], eax
mov eax, dword [edx]
sub eax, ecx
mov dword [ebp - 0x6d4], eax
mov esi, dword [ebp - 0x798]
movzx ecx, word [esi + 8]
test cl, 0x48
je 0x489982
mov eax, ecx
and eax, 0x210
cmp eax, 0x200
je 0x489982
test cl, 4
je 0x489989
mov byte [ebp - 0x891], 1
mov edx, dword [ebp - 0x98c]
lea eax, [ebp - 0x768]
push eax
lea ecx, [ebp - 0x6d4]
call fcn.00407380
add esp, 4
test al, al
jne 0x4899b2
cmp dword [edi + 4], 0
je 0x489fc1
cmp byte [ebp - 0x935], 0
je 0x489a04
mov edi, dword [ebp - 0x8f4]
test edi, edi
je 0x4899ed
mov esi, dword [ebp - 0x7f4]
nop dword [eax + eax]
mov al, byte [edi + 8]
and al, 0xf
cmp al, 0xa
jae 0x4899e1
push edi
mov ecx, esi
call fcn.004eed50
mov edi, dword [edi]
test edi, edi
jne 0x4899d0
mov esi, dword [ebp - 0x798]
mov eax, dword [ebp - 0x7f4]
mov eax, dword [eax + 4]
mov dword [ebp - 0x8f4], eax
xor al, al
mov byte [ebp - 0x935], al
movzx ecx, word [esi + 8]
mov dword [ebp - 0x86c], ecx
test cl, 2
je 0x489a6d
mov eax, dword [ebp - 0x794]
movss xmm0, dword [ebp - 0x7ac]
movaps xmm3, xmm0
movss dword [ebp - 0x824], xmm0
movss dword [ebp - 0x854], xmm3
mov eax, dword [eax]
and eax, 0x40000
mov byte [ebp - 0x892], 1
test eax, eax
je 0x489fc1
test ecx, 0x400
je 0x489fc1
mov eax, dword [esi]
mov edi, dword [ebp - 0x790]
test eax, eax
je 0x489adc
mov ecx, 0x400
or word [eax + 8], cx
jmp 0x489adc
mov al, cl
and al, 0x54
cmp al, 4
jne 0x489b32
cmp byte [ebp - 0x7ad], 0
jne 0x489b32
mov eax, dword [ebp - 0x794]
mov edi, dword [ebp - 0x790]
test byte [eax], 0x20
je 0x489adc
xor eax, eax
cmp ax, di
jge 0x489adc
mov edx, dword [ebp - 0x7e8]
movzx esi, di
mov edi, dword [ebp - 0x90c]
nop dword [eax]
cmp di, 0x14
jge 0x489ac2
mov ax, word [edx]
movsx ecx, di
inc edi
mov word [ebp + ecx*2 - 0x44], ax
add edx, 2
sub esi, 1
jne 0x489ab0
mov dword [ebp - 0x90c], edi
mov edi, dword [ebp - 0x790]
mov esi, dword [ebp - 0x798]
mov ecx, dword [ebp - 0x7a0]
mov eax, dword [ebp - 0x79c]
mov dword [ebp - 0x800], ecx
cmp byte [eax + 0x2f4], 0
je 0x4a66f6
test byte [esi + 8], 0x40
mov edx, dword [ebp - 0x7e8]
je 0x4a0189
movzx eax, word [edx]
mov ecx, 0x3014
cmp ax, cx
jne 0x4a00b5
cmp di, 1
jne 0x4a00e9
mov byte [ebp - 0x9ac], 1
jmp 0x4a00e9
mov edi, ecx
mov edx, ecx
and edi, 0x214
and edx, 0x20
cmp di, 0x10
jne 0x489fcc
movss xmm0, dword [ebp - 0x7ac]
mov edi, dword [ebp - 0x7ec]
movss dword [ebp - 0x824], xmm0
movss dword [ebp - 0x854], xmm0
test edi, edi
je 0x489ba0
mov eax, dword [ebp - 0x8f0]
movsx edx, ax
mov eax, dword [ebp - 0x790]
cwde
lea ecx, [edx + eax]
movsx eax, word [edi + 4]
cmp ecx, eax
jle 0x489ba0
movsx ecx, word [edi + 6]
movsx eax, word [edi + 4]
add ecx, eax
cmp ecx, edx
jg 0x489b9a
mov edi, dword [edi]
test edi, edi
jne 0x489b86
mov dword [ebp - 0x7ec], edi
cmp word [ebp - 0x84c], 0x40
mov ecx, dword [ebp - 0x814]
mov edx, dword [ebp - 0x818]
movss xmm2, dword [ebp - 0x81c]
movss xmm3, dword [ebp - 0x7a8]
movd xmm0, dword [ecx]
cvtdq2ps xmm0, xmm0
jne 0x489d34
movd xmm1, dword [edx + 8]
cvtdq2ps xmm1, xmm1
subss xmm1, xmm2
subss xmm1, xmm0
movd xmm0, dword [ecx + 4]
cvtdq2ps xmm0, xmm0
movss dword [ebp - 0x7c4], xmm1
movd xmm1, dword [edx + 4]
cvtdq2ps xmm1, xmm1
addss xmm1, xmm3
subss xmm1, xmm0
movss dword [ebp - 0x7bc], xmm1
test edi, edi
je 0x489eba
mov eax, dword [ebp - 0x790]
movsx esi, ax
mov eax, dword [ebp - 0x8f0]
cwde
add esi, eax
movsx eax, word [edi + 4]
cmp esi, eax
jle 0x489e98
mov eax, dword [ebp - 0x798]
mov ecx, dword [ebp - 0x874]
mov eax, dword [eax + 0xc]
cmp word [eax + 0xa50], 0
movsd xmm0, qword [eax + 0xa70]
movaps xmm1, xmm0
jne 0x489c5a
call fcn.00537b30
jmp 0x489c5f
call fcn.00537a50
mov ecx, dword [ebp - 0x7b4]
mov eax, ecx
movss dword [eax], xmm0
mov eax, dword [ebp - 0x798]
movsx eax, word [eax + 6]
movd xmm1, eax
cvtdq2ps xmm1, xmm1
comiss xmm0, xmm1
jbe 0x489c85
movss dword [ecx], xmm1
mov eax, dword [ebp - 0x88c]
mov dword [ecx + 4], 0
test eax, eax
je 0x489ca3
cmp edi, eax
je 0x489c9f
cmp dword [edi + 8], eax
jne 0x489ca3
mov al, 1
jmp 0x489ca5
xor al, al
push dword [ebp - 0x79c]
movss xmm0, dword [ebp - 0x7bc]
push ecx
mov ecx, dword [ebp - 0x8f0]
push eax
lea eax, [ebp - 0x6d4]
push eax
mov eax, dword [ebp - 0x790]
push eax
push ecx
push eax
push ecx
sub esp, 0xc
lea eax, [ebx + 0x64]
mov ecx, esp
movss dword [esp + 8], xmm0
movss xmm0, dword [ebp - 0x7c4]
movss dword [esp + 4], xmm0
push eax
call fcn.0043ce00
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
movss xmm3, dword [ebp - 0x7a4]
mov ecx, dword [ebp - 0x7f4]
call fcn.004a8160
movsx ecx, word [edi + 6]
movsx eax, word [edi + 4]
add ecx, eax
cmp esi, ecx
jl 0x489e98
mov edi, dword [edi]
mov dword [ebp - 0x7ec], edi
test edi, edi
jne 0x489c23
jmp 0x489e98
movd xmm1, dword [edx]
cvtdq2ps xmm1, xmm1
addss xmm1, xmm3
subss xmm1, xmm0
movd xmm0, dword [ecx + 4]
cvtdq2ps xmm0, xmm0
movss dword [ebp - 0x7c4], xmm1
movd xmm1, dword [edx + 4]
cvtdq2ps xmm1, xmm1
addss xmm1, xmm2
subss xmm1, xmm0
movss dword [ebp - 0x7bc], xmm1
test edi, edi
je 0x489eba
mov eax, dword [ebp - 0x790]
movsx esi, ax
mov eax, dword [ebp - 0x8f0]
cwde
add esi, eax
nop word [eax + eax]
movsx eax, word [edi + 4]
cmp esi, eax
jle 0x489e92
mov eax, dword [ebp - 0x798]
mov ecx, dword [ebp - 0x874]
mov eax, dword [eax + 0xc]
cmp word [eax + 0xa50], 0
movsd xmm0, qword [eax + 0xa70]
movaps xmm1, xmm0
jne 0x489dc7
call fcn.00537b30
jmp 0x489dcc
call fcn.00537a50
mov ecx, dword [ebp - 0x7b4]
mov eax, ecx
movss dword [eax], xmm0
mov eax, dword [ebp - 0x798]
movsx eax, word [eax + 6]
movd xmm1, eax
cvtdq2ps xmm1, xmm1
comiss xmm0, xmm1
jbe 0x489df2
movss dword [ecx], xmm1
mov eax, dword [ebp - 0x88c]
mov dword [ecx + 4], 0
test eax, eax
je 0x489e10
cmp edi, eax
je 0x489e0c
cmp dword [edi + 8], eax
jne 0x489e10
mov al, 1
jmp 0x489e12
xor al, al
push dword [ebp - 0x79c]
movss xmm0, dword [ebp - 0x7bc]
push ecx
mov ecx, dword [ebp - 0x8f0]
push eax
lea eax, [ebp - 0x6d4]
push eax
mov eax, dword [ebp - 0x790]
push eax
push ecx
push eax
push ecx
sub esp, 0xc
lea eax, [ebx + 0x64]
mov ecx, esp
movss dword [esp + 8], xmm0
movss xmm0, dword [ebp - 0x7c4]
movss dword [esp + 4], xmm0
push eax
call fcn.0043ce00
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
movss xmm3, dword [ebp - 0x7a4]
mov ecx, dword [ebp - 0x7f4]
call fcn.004a7c00
movsx ecx, word [edi + 6]
movsx eax, word [edi + 4]
add ecx, eax
cmp esi, ecx
jl 0x489e92
mov edi, dword [edi]
test edi, edi
jne 0x489d90
mov dword [ebp - 0x7ec], edi
mov edx, dword [ebp - 0x818]
mov ecx, dword [ebp - 0x814]
mov esi, dword [ebp - 0x798]
movss xmm3, dword [ebp - 0x7a8]
movss xmm2, dword [ebp - 0x81c]
mov eax, dword [ebp - 0x79c]
cmp byte [eax + 0x2f1], 0
je 0x489f9f
cmp word [ebp - 0x84c], 0x40
movd xmm0, dword [edx + 4]
movd xmm1, dword [ecx + 4]
cvtdq2ps xmm0, xmm0
push eax
cvtdq2ps xmm1, xmm1
jne 0x489f45
addss xmm0, xmm3
subss xmm0, xmm1
movd xmm1, dword [edx + 8]
cvtdq2ps xmm1, xmm1
cvttss2si eax, xmm0
movd xmm0, dword [ecx]
subss xmm1, xmm2
cvtdq2ps xmm0, xmm0
push eax
subss xmm1, xmm0
cvttss2si eax, xmm1
push eax
push dword [ebp - 0x874]
lea eax, [ebx + 0x64]
push esi
push ecx
mov ecx, esp
push eax
call fcn.0043ce00
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
movss xmm3, dword [ebp - 0x7a4]
mov ecx, dword [ebp - 0x7f4]
call fcn.004ea120
jmp 0x489f9f
addss xmm0, xmm2
subss xmm0, xmm1
movd xmm1, dword [edx]
cvtdq2ps xmm1, xmm1
cvttss2si eax, xmm0
movd xmm0, dword [ecx]
addss xmm1, xmm3
cvtdq2ps xmm0, xmm0
push eax
subss xmm1, xmm0
cvttss2si eax, xmm1
push eax
push dword [ebp - 0x874]
lea eax, [ebx + 0x64]
push esi
push ecx
mov ecx, esp
push eax
call fcn.0043ce00
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
movss xmm3, dword [ebp - 0x7a4]
mov ecx, dword [ebp - 0x7f4]
call fcn.004e9c40
movsx eax, word [esi + 6]
mov byte [ebp - 0x785], 1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
addss xmm0, dword [ebp - 0x7a8]
movss dword [ebp - 0x7a8], xmm0
mov edi, dword [ebp - 0x790]
jmp 0x489adc
test byte [ebp - 0x86c], 8
mov esi, dword [ebp - 0x79c]
mov cl, byte [esi + 0x2f4]
mov byte [ebp - 0x7ae], cl
je 0x48a45c
test cl, cl
je 0x48a01c
mov ecx, dword [ebp - 0x794]
mov eax, dword [ecx]
test eax, 0x100000
je 0x48a00f
and eax, 0xffeffdff
mov dword [ecx], eax
mov cl, byte [esi + 0x2f4]
test cl, cl
je 0x48a01c
cmp byte [ebp - 0x891], 0
je 0x489ad0
mov eax, dword [ebp - 0x910]
cmp word [eax], 1
jne 0x48a030
mov ecx, 2
mov word [eax], cx
mov edi, dword [ebp - 0x7ec]
mov esi, dword [ebp - 0x790]
test edi, edi
je 0x48a070
mov eax, dword [ebp - 0x8f0]
movsx edx, ax
movsx eax, word [edi + 4]
movsx ecx, si
add ecx, edx
cmp ecx, eax
jle 0x48a070
movsx ecx, word [edi + 6]
movsx eax, word [edi + 4]
add ecx, eax
cmp ecx, edx
jg 0x48a06a
mov edi, dword [edi]
test edi, edi
jne 0x48a056
mov dword [ebp - 0x7ec], edi
cmp word [ebp - 0x84c], 0x40
mov eax, dword [ebp - 0x814]
mov ecx, dword [ebp - 0x818]
movss xmm2, dword [ebp - 0x81c]
movss xmm3, dword [ebp - 0x7a8]
movd xmm0, dword [eax]
cvtdq2ps xmm0, xmm0
jne 0x48a1e7
movd xmm1, dword [ecx + 8]
cvtdq2ps xmm1, xmm1
subss xmm1, xmm2
subss xmm1, xmm0
movd xmm0, dword [eax + 4]
cvtdq2ps xmm0, xmm0
movss dword [ebp - 0x7c4], xmm1
movd xmm1, dword [ecx + 4]
cvtdq2ps xmm1, xmm1
addss xmm1, xmm3
subss xmm1, xmm0
movss dword [ebp - 0x7bc], xmm1
test edi, edi
je 0x48a336
mov eax, dword [ebp - 0x8f0]
movsx esi, si
cwde
add esi, eax
nop dword [eax]
movsx eax, word [edi + 4]
cmp esi, eax
jle 0x48a320
mov eax, dword [ebp - 0x798]
mov ecx, dword [ebp - 0x874]
mov eax, dword [eax + 0xc]
cmp word [eax + 0xa50], 0
movsd xmm0, qword [eax + 0xa70]
movaps xmm1, xmm0
jne 0x48a127
call fcn.00537b30
jmp 0x48a12c
call fcn.00537a50
mov ecx, dword [ebp - 0x7b4]
mov eax, ecx
movss dword [eax], xmm0
mov eax, dword [ebp - 0x88c]
mov dword [ecx + 4], 0
test eax, eax
je 0x48a156
cmp edi, eax
je 0x48a152
cmp dword [edi + 8], eax
jne 0x48a156
mov al, 1
jmp 0x48a158
xor al, al
push dword [ebp - 0x79c]
movss xmm0, dword [ebp - 0x7bc]
push ecx
mov ecx, dword [ebp - 0x8f0]
push eax
lea eax, [ebp - 0x6d4]
push eax
mov eax, dword [ebp - 0x790]
push eax
push ecx
push eax
push ecx
sub esp, 0xc
lea eax, [ebx + 0x64]
mov ecx, esp
movss dword [esp + 8], xmm0
movss xmm0, dword [ebp - 0x7c4]
movss dword [esp + 4], xmm0
push eax
call fcn.0043ce00
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
movss xmm3, dword [ebp - 0x7a4]
mov ecx, dword [ebp - 0x7f4]
call fcn.004a8160
movsx ecx, word [edi + 6]
movsx eax, word [edi + 4]
add ecx, eax
cmp esi, ecx
jl 0x48a320
mov edi, dword [edi]
mov dword [ebp - 0x7ec], edi
test edi, edi
jne 0x48a0f0
jmp 0x48a320
movd xmm1, dword [ecx]
cvtdq2ps xmm1, xmm1
addss xmm1, xmm3
subss xmm1, xmm0
movd xmm0, dword [eax + 4]
cvtdq2ps xmm0, xmm0
movss dword [ebp - 0x7c4], xmm1
movd xmm1, dword [ecx + 4]
cvtdq2ps xmm1, xmm1
addss xmm1, xmm2
subss xmm1, xmm0
movss dword [ebp - 0x7bc], xmm1
test edi, edi
je 0x48a336
mov eax, dword [ebp - 0x8f0]
movsx esi, si
cwde
add esi, eax
movsx eax, word [edi + 4]
cmp esi, eax
jle 0x48a31a
mov eax, dword [ebp - 0x798]
mov ecx, dword [ebp - 0x874]
mov eax, dword [eax + 0xc]
cmp word [eax + 0xa50], 0
movsd xmm0, qword [eax + 0xa70]
movaps xmm1, xmm0
jne 0x48a269
call fcn.00537b30
jmp 0x48a26e
call fcn.00537a50
mov ecx, dword [ebp - 0x7b4]
mov eax, ecx
movss dword [eax], xmm0
mov eax, dword [ebp - 0x88c]
mov dword [ecx + 4], 0
test eax, eax
je 0x48a298
cmp edi, eax
je 0x48a294
cmp dword [edi + 8], eax
jne 0x48a298
mov al, 1
jmp 0x48a29a
xor al, al
push dword [ebp - 0x79c]
movss xmm0, dword [ebp - 0x7bc]
push ecx
mov ecx, dword [ebp - 0x8f0]
push eax
lea eax, [ebp - 0x6d4]
push eax
mov eax, dword [ebp - 0x790]
push eax
push ecx
push eax
push ecx
sub esp, 0xc
lea eax, [ebx + 0x64]
mov ecx, esp
movss dword [esp + 8], xmm0
movss xmm0, dword [ebp - 0x7c4]
movss dword [esp + 4], xmm0
push eax
call fcn.0043ce00
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
movss xmm3, dword [ebp - 0x7a4]
mov ecx, dword [ebp - 0x7f4]
call fcn.004a7c00
movsx ecx, word [edi + 6]
movsx eax, word [edi + 4]
add ecx, eax
cmp esi, ecx
jl 0x48a31a
mov edi, dword [edi]
test edi, edi
jne 0x48a232
mov dword [ebp - 0x7ec], edi
mov eax, dword [ebp - 0x814]
movss xmm3, dword [ebp - 0x7a8]
movss xmm2, dword [ebp - 0x81c]
mov ecx, dword [ebp - 0x79c]
mov esi, dword [ebp - 0x798]
mov byte [ebp - 0x785], 1
cmp byte [ecx + 0x2f0], 0
je 0x489fc1
cmp word [ebp - 0x84c], 0x40
mov edx, dword [ebp - 0x818]
movd xmm1, dword [eax + 4]
cvtdq2ps xmm1, xmm1
push ecx
movd xmm0, dword [edx + 4]
cvtdq2ps xmm0, xmm0
jne 0x48a3ea
addss xmm0, xmm3
subss xmm0, xmm1
movd xmm1, dword [edx + 8]
cvtdq2ps xmm1, xmm1
cvttss2si eax, xmm0
subss xmm1, xmm2
push eax
mov eax, dword [ebp - 0x814]
movd xmm0, dword [eax]
cvtdq2ps xmm0, xmm0
subss xmm1, xmm0
cvttss2si eax, xmm1
push eax
push dword [ebp - 0x874]
lea eax, [ebx + 0x64]
push esi
push ecx
mov ecx, esp
push eax
call fcn.0043ce00
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
movss xmm3, dword [ebp - 0x7a4]
mov ecx, dword [ebp - 0x7f4]
call fcn.004e9710
mov edi, dword [ebp - 0x790]
mov byte [ebp - 0x785], 1
jmp 0x489adc
addss xmm0, xmm2
subss xmm0, xmm1
movd xmm1, dword [edx]
cvtdq2ps xmm1, xmm1
cvttss2si eax, xmm0
addss xmm1, xmm3
push eax
mov eax, dword [ebp - 0x814]
movd xmm0, dword [eax]
cvtdq2ps xmm0, xmm0
subss xmm1, xmm0
cvttss2si eax, xmm1
push eax
push dword [ebp - 0x874]
lea eax, [ebx + 0x64]
push esi
push ecx
mov ecx, esp
push eax
call fcn.0043ce00
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
movss xmm3, dword [ebp - 0x7a4]
mov ecx, dword [ebp - 0x7f4]
call fcn.004e91c0
mov edi, dword [ebp - 0x790]
mov byte [ebp - 0x785], 1
jmp 0x489adc
xor al, al
test cl, cl
je 0x48a475
mov esi, 0x214
movzx eax, al
cmp di, si
mov esi, 1
cmove eax, esi
cmp byte [ebp - 0x8fe], 0
je 0x48a5d5
cmp dword [ebp - 0x8d4], 0
jne 0x48be3f
mov esi, dword [ebp - 0x8ec]
test esi, esi
je 0x48a4a7
mov eax, esi
mov dword [ebp - 0x8ec], 0
jmp 0x48a4ad
mov eax, dword [ebp - 0x7a0]
mov edx, dword [ebp - 0x8d0]
test edx, edx
je 0x48a4c3
mov eax, edx
mov dword [ebp - 0x8d0], 0
mov esi, dword [ebp - 0x8d8]
test esi, esi
je 0x48a4d9
mov eax, esi
mov dword [ebp - 0x8d8], 0
mov edx, dword [ebp - 0x8b8]
test edx, edx
je 0x48a4ef
mov eax, edx
mov dword [ebp - 0x8b8], 0
mov esi, dword [ebp - 0x8dc]
test esi, esi
je 0x48a505
mov eax, esi
mov dword [ebp - 0x8dc], 0
mov edx, dword [ebp - 0x8bc]
test edx, edx
je 0x48a51b
mov eax, edx
mov dword [ebp - 0x8bc], 0
mov edx, dword [ebp - 0x8c0]
test edx, edx
je 0x48a531
mov eax, edx
mov dword [ebp - 0x8c0], 0
mov esi, dword [ebp - 0x8e0]
test esi, esi
je 0x48a547
mov eax, esi
mov dword [ebp - 0x8e0], 0
mov edx, dword [ebp - 0x8c4]
test edx, edx
je 0x48a55d
mov eax, edx
mov dword [ebp - 0x8c4], 0
mov esi, dword [ebp - 0x8e4]
test esi, esi
je 0x48a573
mov eax, esi
mov dword [ebp - 0x8e4], 0
mov edx, dword [ebp - 0x8c8]
test edx, edx
je 0x48a589
mov eax, edx
mov dword [ebp - 0x8c8], 0
mov edx, dword [ebp - 0x8cc]
test edx, edx
je 0x48a59f
mov eax, edx
mov dword [ebp - 0x8cc], 0
mov edx, dword [ebp - 0x8e8]
test edx, edx
je 0x48a5b5
mov eax, edx
mov dword [ebp - 0x8e8], 0
mov esi, dword [ebp - 0x798]
mov dword [ebp - 0x8d4], eax
mov eax, dword [esi + 0xc]
mov eax, dword [eax + 0x470]
mov dword [ebp - 0x7a0], eax
jmp 0x48be4b
mov ecx, dword [ebp - 0x794]
mov esi, dword [ecx]
mov ecx, esi
and ecx, 0x200
jne 0x48a5eb
test al, al
je 0x48a5f7
test esi, 0x800
jne 0x48ba72
cmp byte [ebp - 0x7ad], 0
je 0x48a618
cmp word [ebp - 0x8ac], 0xa
jle 0x48a618
cmp word [ebp - 0x8ac], 0x14
jle 0x48ba72
test ecx, ecx
jne 0x48a620
test al, al
je 0x48a62c
test esi, 0x1000
jne 0x48b699
cmp byte [ebp - 0x7ad], 0
je 0x48a64d
cmp word [ebp - 0x8ac], 0xfff6
jge 0x48a64d
cmp word [ebp - 0x8ac], 0xffec
jge 0x48b699
test ecx, ecx
jne 0x48b3da
test al, al
jne 0x48b3da
mov al, byte [ebp - 0x7ad]
mov ecx, dword [ebp - 0x8ac]
test al, al
je 0x48a677
cmp cx, 0x15
je 0x48b3da
test esi, 0x400
jne 0x48b281
test al, al
je 0x48a691
cmp cx, 0x16
je 0x48b281
test esi, 0x800
jne 0x48aed8
test al, al
je 0x48a6b0
test cx, cx
jle 0x48a6b0
cmp cx, 0xa
jle 0x48aed8
test esi, 0x1000
jne 0x48ab2b
test al, al
je 0x48a6cf
test cx, cx
jns 0x48a6cf
cmp cx, 0xfff6
jge 0x48ab2b
test esi, 0x100
jne 0x48a9d2
test dx, dx
jne 0x48a9d2
cmp byte [ebp - 0x801], dl
je 0x48a849
cmp dword [ebp - 0x8e8], 0
jne 0x48be39
mov ecx, dword [ebp - 0x8d4]
test ecx, ecx
je 0x48a715
mov eax, ecx
mov dword [ebp - 0x8d4], 0
jmp 0x48a71b
mov eax, dword [ebp - 0x7a0]
mov edx, dword [ebp - 0x8ec]
test edx, edx
je 0x48a731
mov eax, edx
mov dword [ebp - 0x8ec], 0
mov ecx, dword [ebp - 0x8d0]
test ecx, ecx
je 0x48a747
mov eax, ecx
mov dword [ebp - 0x8d0], 0
mov edx, dword [ebp - 0x8d8]
test edx, edx
je 0x48a75d
mov eax, edx
mov dword [ebp - 0x8d8], 0
mov ecx, dword [ebp - 0x8b8]
test ecx, ecx
je 0x48a773
mov eax, ecx
mov dword [ebp - 0x8b8], 0
mov edx, dword [ebp - 0x8dc]
test edx, edx
je 0x48a789
mov eax, edx
mov dword [ebp - 0x8dc], 0
mov ecx, dword [ebp - 0x8bc]
test ecx, ecx
je 0x48a79f
mov eax, ecx
mov dword [ebp - 0x8bc], 0
mov ecx, dword [ebp - 0x8c0]
test ecx, ecx
je 0x48a7b5
mov eax, ecx
mov dword [ebp - 0x8c0], 0
mov edx, dword [ebp - 0x8e0]
test edx, edx
je 0x48a7cb
mov eax, edx
mov dword [ebp - 0x8e0], 0
mov ecx, dword [ebp - 0x8c4]
test ecx, ecx
je 0x48a7e1
mov eax, ecx
mov dword [ebp - 0x8c4], 0
mov edx, dword [ebp - 0x8e4]
test edx, edx
je 0x48a7f7
mov eax, edx
mov dword [ebp - 0x8e4], 0
mov ecx, dword [ebp - 0x8c8]
test ecx, ecx
je 0x48a80d
mov eax, ecx
mov dword [ebp - 0x8c8], 0
mov edx, dword [ebp - 0x8cc]
test edx, edx
je 0x48a823
mov eax, edx
mov dword [ebp - 0x8cc], 0
mov esi, dword [ebp - 0x798]
mov dword [ebp - 0x8e8], eax
mov eax, dword [esi + 0xc]
mov ecx, dword [eax + 0x488]
mov dword [ebp - 0x7a0], ecx
mov cl, byte [ebp - 0x7ae]
jmp 0x48be45
mov eax, dword [ebp - 0x8d4]
test eax, eax
je 0x48a863
mov dword [ebp - 0x7a0], eax
mov dword [ebp - 0x8d4], 0
mov ecx, dword [ebp - 0x8ec]
test ecx, ecx
je 0x48a87d
mov dword [ebp - 0x7a0], ecx
mov dword [ebp - 0x8ec], 0
mov eax, dword [ebp - 0x8d0]
test eax, eax
je 0x48a897
mov dword [ebp - 0x7a0], eax
mov dword [ebp - 0x8d0], 0
mov ecx, dword [ebp - 0x8d8]
test ecx, ecx
je 0x48a8b1
mov dword [ebp - 0x7a0], ecx
mov dword [ebp - 0x8d8], 0
mov eax, dword [ebp - 0x8b8]
test eax, eax
je 0x48a8cb
mov dword [ebp - 0x7a0], eax
mov dword [ebp - 0x8b8], 0
mov ecx, dword [ebp - 0x8dc]
test ecx, ecx
je 0x48a8e5
mov dword [ebp - 0x7a0], ecx
mov dword [ebp - 0x8dc], 0
mov eax, dword [ebp - 0x8bc]
test eax, eax
je 0x48a8ff
mov dword [ebp - 0x7a0], eax
mov dword [ebp - 0x8bc], 0
mov eax, dword [ebp - 0x8c0]
test eax, eax
je 0x48a919
mov dword [ebp - 0x7a0], eax
mov dword [ebp - 0x8c0], 0
mov ecx, dword [ebp - 0x8e0]
test ecx, ecx
je 0x48a933
mov dword [ebp - 0x7a0], ecx
mov dword [ebp - 0x8e0], 0
mov eax, dword [ebp - 0x8c4]
test eax, eax
je 0x48a94d
mov dword [ebp - 0x7a0], eax
mov dword [ebp - 0x8c4], 0
mov ecx, dword [ebp - 0x8e4]
test ecx, ecx
je 0x48a967
mov dword [ebp - 0x7a0], ecx
mov dword [ebp - 0x8e4], 0
mov eax, dword [ebp - 0x8c8]
test eax, eax
je 0x48a981
mov dword [ebp - 0x7a0], eax
mov dword [ebp - 0x8c8], 0
mov eax, dword [ebp - 0x8cc]
test eax, eax
je 0x48a99b
mov dword [ebp - 0x7a0], eax
mov dword [ebp - 0x8cc], 0
mov eax, dword [ebp - 0x8e8]
mov cl, byte [ebp - 0x7ae]
mov esi, dword [ebp - 0x798]
mov dl, byte [ebp - 0x7ad]
test eax, eax
je 0x48a9c7
mov dword [ebp - 0x7a0], eax
mov dword [ebp - 0x8e8], 0
mov eax, dword [ebp - 0x7a0]
jmp 0x48be51
cmp dword [ebp - 0x8cc], 0
jne 0x48be39
mov ecx, dword [ebp - 0x8d4]
test ecx, ecx
je 0x48a9f7
mov eax, ecx
mov dword [ebp - 0x8d4], 0
jmp 0x48a9fd
mov eax, dword [ebp - 0x7a0]
mov edx, dword [ebp - 0x8ec]
test edx, edx
je 0x48aa13
mov eax, edx
mov dword [ebp - 0x8ec], 0
mov ecx, dword [ebp - 0x8d0]
test ecx, ecx
je 0x48aa29
mov eax, ecx
mov dword [ebp - 0x8d0], 0
mov edx, dword [ebp - 0x8d8]
test edx, edx
je 0x48aa3f
mov eax, edx
mov dword [ebp - 0x8d8], 0
mov ecx, dword [ebp - 0x8b8]
test ecx, ecx
je 0x48aa55
mov eax, ecx
mov dword [ebp - 0x8b8], 0
mov edx, dword [ebp - 0x8dc]
test edx, edx
je 0x48aa6b
mov eax, edx
mov dword [ebp - 0x8dc], 0
mov ecx, dword [ebp - 0x8bc]
test ecx, ecx
je 0x48aa81
mov eax, ecx
mov dword [ebp - 0x8bc], 0
mov ecx, dword [ebp - 0x8c0]
test ecx, ecx
je 0x48aa97
mov eax, ecx
mov dword [ebp - 0x8c0], 0
mov edx, dword [ebp - 0x8e0]
test edx, edx
je 0x48aaad
mov eax, edx
mov dword [ebp - 0x8e0], 0
mov ecx, dword [ebp - 0x8c4]
test ecx, ecx
je 0x48aac3
mov eax, ecx
mov dword [ebp - 0x8c4], 0
mov edx, dword [ebp - 0x8e4]
test edx, edx
je 0x48aad9
mov eax, edx
mov dword [ebp - 0x8e4], 0
mov ecx, dword [ebp - 0x8c8]
test ecx, ecx
je 0x48aaef
mov eax, ecx
mov dword [ebp - 0x8c8], 0
mov edx, dword [ebp - 0x8e8]
test edx, edx
je 0x48ab05
mov eax, edx
mov dword [ebp - 0x8e8], 0
mov esi, dword [ebp - 0x798]
mov dword [ebp - 0x8cc], eax
mov eax, dword [esi + 0xc]
mov ecx, dword [eax + 0x41c]
mov dword [ebp - 0x7a0], ecx
mov cl, byte [ebp - 0x7ae]
jmp 0x48be45
cmp byte [ebp - 0x801], 0
jne 0x48ad08
cmp dword [ebp - 0x8c8], 0
jne 0x48acb0
mov eax, dword [ebp - 0x8d4]
test eax, eax
je 0x48ab5b
mov dword [ebp - 0x8d4], 0
jmp 0x48ab61
mov eax, dword [ebp - 0x7a0]
mov edx, dword [ebp - 0x8ec]
test edx, edx
je 0x48ab77
mov eax, edx
mov dword [ebp - 0x8ec], 0
mov edx, dword [ebp - 0x8d0]
test edx, edx
je 0x48ab8d
mov eax, edx
mov dword [ebp - 0x8d0], 0
mov edx, dword [ebp - 0x8d8]
test edx, edx
je 0x48aba3
mov eax, edx
mov dword [ebp - 0x8d8], 0
mov edx, dword [ebp - 0x8b8]
test edx, edx
je 0x48abb9
mov eax, edx
mov dword [ebp - 0x8b8], 0
mov edx, dword [ebp - 0x8dc]
test edx, edx
je 0x48abcf
mov eax, edx
mov dword [ebp - 0x8dc], 0
mov edx, dword [ebp - 0x8bc]
test edx, edx
je 0x48abe5
mov eax, edx
mov dword [ebp - 0x8bc], 0
mov edx, dword [ebp - 0x8c0]
test edx, edx
je 0x48abfb
mov eax, edx
mov dword [ebp - 0x8c0], 0
mov edx, dword [ebp - 0x8e0]
test edx, edx
je 0x48ac11
mov eax, edx
mov dword [ebp - 0x8e0], 0
mov edx, dword [ebp - 0x8c4]
test edx, edx
je 0x48ac27
mov eax, edx
mov dword [ebp - 0x8c4], 0
mov edx, dword [ebp - 0x8e4]
test edx, edx
je 0x48ac3d
mov eax, edx
mov dword [ebp - 0x8e4], 0
mov edx, dword [ebp - 0x8cc]
test edx, edx
je 0x48ac53
mov eax, edx
mov dword [ebp - 0x8cc], 0
mov edx, dword [ebp - 0x8e8]
test edx, edx
je 0x48ac69
mov eax, edx
mov dword [ebp - 0x8e8], 0
cmp byte [ebp - 0x7ad], 0
je 0x48ac7e
test cx, cx
jns 0x48ac7e
movsx edx, cx
not edx
jmp 0x48ac83
mov edx, esi
shr edx, 0x1c
mov esi, dword [ebp - 0x798]
mov dword [ebp - 0x8c8], eax
mov dword [ebp - 0x82c], edx
mov eax, dword [esi + 0xc]
mov ecx, dword [eax + edx*4 + 0x56c]
mov dword [ebp - 0x7a0], ecx
mov cl, byte [ebp - 0x7ae]
jmp 0x48be45
test al, al
je 0x48acc0
test cx, cx
jns 0x48acc0
movsx esi, cx
not esi
jmp 0x48acc3
shr esi, 0x1c
mov dl, byte [ebp - 0x7ad]
cmp dword [ebp - 0x82c], esi
je 0x48bc46
mov eax, dword [ebp - 0x798]
mov dword [ebp - 0x82c], esi
mov eax, dword [eax + 0xc]
mov ecx, dword [eax + esi*4 + 0x56c]
mov esi, dword [ebp - 0x798]
mov dword [ebp - 0x7a0], ecx
mov cl, byte [ebp - 0x7ae]
mov eax, dword [ebp - 0x7a0]
jmp 0x48be51
cmp dword [ebp - 0x8e4], 0
jne 0x48ae80
mov eax, dword [ebp - 0x8d4]
test eax, eax
je 0x48ad2b
mov dword [ebp - 0x8d4], 0
jmp 0x48ad31
mov eax, dword [ebp - 0x7a0]
mov edx, dword [ebp - 0x8ec]
test edx, edx
je 0x48ad47
mov eax, edx
mov dword [ebp - 0x8ec], 0
mov edx, dword [ebp - 0x8d0]
test edx, edx
je 0x48ad5d
mov eax, edx
mov dword [ebp - 0x8d0], 0
mov edx, dword [ebp - 0x8d8]
test edx, edx
je 0x48ad73
mov eax, edx
mov dword [ebp - 0x8d8], 0
mov edx, dword [ebp - 0x8b8]
test edx, edx
je 0x48ad89
mov eax, edx
mov dword [ebp - 0x8b8], 0
mov edx, dword [ebp - 0x8dc]
test edx, edx
je 0x48ad9f
mov eax, edx
mov dword [ebp - 0x8dc], 0
mov edx, dword [ebp - 0x8bc]
test edx, edx
je 0x48adb5
mov eax, edx
mov dword [ebp - 0x8bc], 0
mov edx, dword [ebp - 0x8c0]
test edx, edx
je 0x48adcb
mov eax, edx
mov dword [ebp - 0x8c0], 0
mov edx, dword [ebp - 0x8e0]
test edx, edx
je 0x48ade1
mov eax, edx
mov dword [ebp - 0x8e0], 0
mov edx, dword [ebp - 0x8c4]
test edx, edx
je 0x48adf7
mov eax, edx
mov dword [ebp - 0x8c4], 0
mov edx, dword [ebp - 0x8c8]
test edx, edx
je 0x48ae0d
mov eax, edx
mov dword [ebp - 0x8c8], 0
mov edx, dword [ebp - 0x8cc]
test edx, edx
je 0x48ae23
mov eax, edx
mov dword [ebp - 0x8cc], 0
mov edx, dword [ebp - 0x8e8]
test edx, edx
je 0x48ae39
mov eax, edx
mov dword [ebp - 0x8e8], 0
cmp byte [ebp - 0x7ad], 0
je 0x48ae4e
test cx, cx
jns 0x48ae4e
movsx edx, cx
not edx
jmp 0x48ae53
mov edx, esi
shr edx, 0x1c
mov esi, dword [ebp - 0x798]
mov dword [ebp - 0x8e4], eax
mov dword [ebp - 0x82c], edx
mov eax, dword [esi + 0xc]
mov ecx, dword [eax + edx*4 + 0x92c]
mov dword [ebp - 0x7a0], ecx
mov cl, byte [ebp - 0x7ae]
jmp 0x48be45
test al, al
je 0x48ae90
test cx, cx
jns 0x48ae90
movsx esi, cx
not esi
jmp 0x48ae93
shr esi, 0x1c
mov dl, byte [ebp - 0x7ad]
cmp dword [ebp - 0x82c], esi
je 0x48bc46
mov eax, dword [ebp - 0x798]
mov dword [ebp - 0x82c], esi
mov eax, dword [eax + 0xc]
mov ecx, dword [eax + esi*4 + 0x92c]
mov esi, dword [ebp - 0x798]
mov dword [ebp - 0x7a0], ecx
mov cl, byte [ebp - 0x7ae]
mov eax, dword [ebp - 0x7a0]
jmp 0x48be51
cmp byte [ebp - 0x801], 0
jne 0x48b0b3
cmp dword [ebp - 0x8c4], 0
jne 0x48b05c
mov eax, dword [ebp - 0x8d4]
test eax, eax
je 0x48af08
mov dword [ebp - 0x8d4], 0
jmp 0x48af0e
mov eax, dword [ebp - 0x7a0]
mov edx, dword [ebp - 0x8ec]
test edx, edx
je 0x48af24
mov eax, edx
mov dword [ebp - 0x8ec], 0
mov edx, dword [ebp - 0x8d0]
test edx, edx
je 0x48af3a
mov eax, edx
mov dword [ebp - 0x8d0], 0
mov edx, dword [ebp - 0x8d8]
test edx, edx
je 0x48af50
mov eax, edx
mov dword [ebp - 0x8d8], 0
mov edx, dword [ebp - 0x8b8]
test edx, edx
je 0x48af66
mov eax, edx
mov dword [ebp - 0x8b8], 0
mov edx, dword [ebp - 0x8dc]
test edx, edx
je 0x48af7c
mov eax, edx
mov dword [ebp - 0x8dc], 0
mov edx, dword [ebp - 0x8bc]
test edx, edx
je 0x48af92
mov eax, edx
mov dword [ebp - 0x8bc], 0
mov edx, dword [ebp - 0x8c0]
test edx, edx
je 0x48afa8
mov eax, edx
mov dword [ebp - 0x8c0], 0
mov edx, dword [ebp - 0x8e0]
test edx, edx
je 0x48afbe
mov eax, edx
mov dword [ebp - 0x8e0], 0
mov edx, dword [ebp - 0x8e4]
test edx, edx
je 0x48afd4
mov eax, edx
mov dword [ebp - 0x8e4], 0
mov edx, dword [ebp - 0x8c8]
test edx, edx
je 0x48afea
mov eax, edx
mov dword [ebp - 0x8c8], 0
mov edx, dword [ebp - 0x8cc]
test edx, edx
je 0x48b000
mov eax, edx
mov dword [ebp - 0x8cc], 0
mov edx, dword [ebp - 0x8e8]
test edx, edx
je 0x48b016
mov eax, edx
mov dword [ebp - 0x8e8], 0
cmp byte [ebp - 0x7ad], 0
je 0x48b02a
test cx, cx
jle 0x48b02a
movsx edx, cx
dec edx
jmp 0x48b02f
mov edx, esi
shr edx, 0x1c
mov esi, dword [ebp - 0x798]
mov dword [ebp - 0x8c4], eax
mov dword [ebp - 0x82c], edx
mov eax, dword [esi + 0xc]
mov ecx, dword [eax + edx*4 + 0x4f4]
mov dword [ebp - 0x7a0], ecx
mov cl, byte [ebp - 0x7ae]
jmp 0x48be45
test al, al
je 0x48b06b
test cx, cx
jle 0x48b06b
movsx esi, cx
dec esi
jmp 0x48b06e
shr esi, 0x1c
mov dl, byte [ebp - 0x7ad]
cmp dword [ebp - 0x82c], esi
je 0x48bc46
mov eax, dword [ebp - 0x798]
mov dword [ebp - 0x82c], esi
mov eax, dword [eax + 0xc]
mov ecx, dword [eax + esi*4 + 0x4f4]
mov esi, dword [ebp - 0x798]
mov dword [ebp - 0x7a0], ecx
mov cl, byte [ebp - 0x7ae]
mov eax, dword [ebp - 0x7a0]
jmp 0x48be51
cmp dword [ebp - 0x8e0], 0
jne 0x48b22a
mov eax, dword [ebp - 0x8d4]
test eax, eax
je 0x48b0d6
mov dword [ebp - 0x8d4], 0
jmp 0x48b0dc
mov eax, dword [ebp - 0x7a0]
mov edx, dword [ebp - 0x8ec]
test edx, edx
je 0x48b0f2
mov eax, edx
mov dword [ebp - 0x8ec], 0
mov edx, dword [ebp - 0x8d0]
test edx, edx
je 0x48b108
mov eax, edx
mov dword [ebp - 0x8d0], 0
mov edx, dword [ebp - 0x8d8]
test edx, edx
je 0x48b11e
mov eax, edx
mov dword [ebp - 0x8d8], 0
mov edx, dword [ebp - 0x8b8]
test edx, edx
je 0x48b134
mov eax, edx
mov dword [ebp - 0x8b8], 0
mov edx, dword [ebp - 0x8dc]
test edx, edx
je 0x48b14a
mov eax, edx
mov dword [ebp - 0x8dc], 0
mov edx, dword [ebp - 0x8bc]
test edx, edx
je 0x48b160
mov eax, edx
mov dword [ebp - 0x8bc], 0
mov edx, dword [ebp - 0x8c0]
test edx, edx
je 0x48b176
mov eax, edx
mov dword [ebp - 0x8c0], 0
mov edx, dword [ebp - 0x8c4]
test edx, edx
je 0x48b18c
mov eax, edx
mov dword [ebp - 0x8c4], 0
mov edx, dword [ebp - 0x8e4]
test edx, edx
je 0x48b1a2
mov eax, edx
mov dword [ebp - 0x8e4], 0
mov edx, dword [ebp - 0x8c8]
test edx, edx
je 0x48b1b8
mov eax, edx
mov dword [ebp - 0x8c8], 0
mov edx, dword [ebp - 0x8cc]
test edx, edx
je 0x48b1ce
mov eax, edx
mov dword [ebp - 0x8cc], 0
mov edx, dword [ebp - 0x8e8]
test edx, edx
je 0x48b1e4
mov eax, edx
mov dword [ebp - 0x8e8], 0
cmp byte [ebp - 0x7ad], 0
je 0x48b1f8
test cx, cx
jle 0x48b1f8
movsx edx, cx
dec edx
jmp 0x48b1fd
mov edx, esi
shr edx, 0x1c
mov esi, dword [ebp - 0x798]
mov dword [ebp - 0x8e0], eax
mov dword [ebp - 0x82c], edx
mov eax, dword [esi + 0xc]
mov ecx, dword [eax + edx*4 + 0x8b4]
mov dword [ebp - 0x7a0], ecx
mov cl, byte [ebp - 0x7ae]
jmp 0x48be45
test al, al
je 0x48b239
test cx, cx
jle 0x48b239
movsx esi, cx
dec esi
jmp 0x48b23c
shr esi, 0x1c
mov dl, byte [ebp - 0x7ad]
cmp dword [ebp - 0x82c], esi
je 0x48bc46
mov eax, dword [ebp - 0x798]
mov dword [ebp - 0x82c], esi
mov eax, dword [eax + 0xc]
mov ecx, dword [eax + esi*4 + 0x8b4]
mov esi, dword [ebp - 0x798]
mov dword [ebp - 0x7a0], ecx
mov cl, byte [ebp - 0x7ae]
mov eax, dword [ebp - 0x7a0]
jmp 0x48be51
cmp dword [ebp - 0x8c0], 0
jne 0x48be39
mov ecx, dword [ebp - 0x8d4]
test ecx, ecx
je 0x48b2a6
mov eax, ecx
mov dword [ebp - 0x8d4], 0
jmp 0x48b2ac
mov eax, dword [ebp - 0x7a0]
mov edx, dword [ebp - 0x8ec]
test edx, edx
je 0x48b2c2
mov eax, edx
mov dword [ebp - 0x8ec], 0
mov ecx, dword [ebp - 0x8d0]
test ecx, ecx
je 0x48b2d8
mov eax, ecx
mov dword [ebp - 0x8d0], 0
mov edx, dword [ebp - 0x8d8]
test edx, edx
je 0x48b2ee
mov eax, edx
mov dword [ebp - 0x8d8], 0
mov ecx, dword [ebp - 0x8b8]
test ecx, ecx
je 0x48b304
mov eax, ecx
mov dword [ebp - 0x8b8], 0
mov edx, dword [ebp - 0x8dc]
test edx, edx
je 0x48b31a
mov eax, edx
mov dword [ebp - 0x8dc], 0
mov ecx, dword [ebp - 0x8bc]
test ecx, ecx
je 0x48b330
mov eax, ecx
mov dword [ebp - 0x8bc], 0
mov edx, dword [ebp - 0x8e0]
test edx, edx
je 0x48b346
mov eax, edx
mov dword [ebp - 0x8e0], 0
mov ecx, dword [ebp - 0x8c4]
test ecx, ecx
je 0x48b35c
mov eax, ecx
mov dword [ebp - 0x8c4], 0
mov edx, dword [ebp - 0x8e4]
test edx, edx
je 0x48b372
mov eax, edx
mov dword [ebp - 0x8e4], 0
mov ecx, dword [ebp - 0x8c8]
test ecx, ecx
je 0x48b388
mov eax, ecx
mov dword [ebp - 0x8c8], 0
mov ecx, dword [ebp - 0x8cc]
test ecx, ecx
je 0x48b39e
mov eax, ecx
mov dword [ebp - 0x8cc], 0
mov edx, dword [ebp - 0x8e8]
test edx, edx
je 0x48b3b4
mov eax, edx
mov dword [ebp - 0x8e8], 0
mov esi, dword [ebp - 0x798]
mov dword [ebp - 0x8c0], eax
mov eax, dword [esi + 0xc]
mov ecx, dword [eax + 0x440]
mov dword [ebp - 0x7a0], ecx
mov cl, byte [ebp - 0x7ae]
jmp 0x48be45
cmp byte [ebp - 0x801], 0
jne 0x48b540
cmp dword [ebp - 0x8bc], 0
jne 0x48be39
mov ecx, dword [ebp - 0x8d4]
test ecx, ecx
je 0x48b40c
mov eax, ecx
mov dword [ebp - 0x8d4], 0
jmp 0x48b412
mov eax, dword [ebp - 0x7a0]
mov edx, dword [ebp - 0x8ec]
test edx, edx
je 0x48b428
mov eax, edx
mov dword [ebp - 0x8ec], 0
mov ecx, dword [ebp - 0x8d0]
test ecx, ecx
je 0x48b43e
mov eax, ecx
mov dword [ebp - 0x8d0], 0
mov edx, dword [ebp - 0x8d8]
test edx, edx
je 0x48b454
mov eax, edx
mov dword [ebp - 0x8d8], 0
mov ecx, dword [ebp - 0x8b8]
test ecx, ecx
je 0x48b46a
mov eax, ecx
mov dword [ebp - 0x8b8], 0
mov edx, dword [ebp - 0x8dc]
test edx, edx
je 0x48b480
mov eax, edx
mov dword [ebp - 0x8dc], 0
mov ecx, dword [ebp - 0x8c0]
test ecx, ecx
je 0x48b496
mov eax, ecx
mov dword [ebp - 0x8c0], 0
mov edx, dword [ebp - 0x8e0]
test edx, edx
je 0x48b4ac
mov eax, edx
mov dword [ebp - 0x8e0], 0
mov ecx, dword [ebp - 0x8c4]
test ecx, ecx
je 0x48b4c2
mov eax, ecx
mov dword [ebp - 0x8c4], 0
mov edx, dword [ebp - 0x8e4]
test edx, edx
je 0x48b4d8
mov eax, edx
mov dword [ebp - 0x8e4], 0
mov ecx, dword [ebp - 0x8c8]
test ecx, ecx
je 0x48b4ee
mov eax, ecx
mov dword [ebp - 0x8c8], 0
mov ecx, dword [ebp - 0x8cc]
test ecx, ecx
je 0x48b504
mov eax, ecx
mov dword [ebp - 0x8cc], 0
mov edx, dword [ebp - 0x8e8]
test edx, edx
je 0x48b51a
mov eax, edx
mov dword [ebp - 0x8e8], 0
mov esi, dword [ebp - 0x798]
mov dword [ebp - 0x8bc], eax
mov eax, dword [esi + 0xc]
mov ecx, dword [eax + 0x434]
mov dword [ebp - 0x7a0], ecx
mov cl, byte [ebp - 0x7ae]
jmp 0x48be45
cmp dword [ebp - 0x8dc], 0
jne 0x48be39
mov ecx, dword [ebp - 0x8d4]
test ecx, ecx
je 0x48b565
mov eax, ecx
mov dword [ebp - 0x8d4], 0
jmp 0x48b56b
mov eax, dword [ebp - 0x7a0]
mov edx, dword [ebp - 0x8ec]
test edx, edx
je 0x48b581
mov eax, edx
mov dword [ebp - 0x8ec], 0
mov ecx, dword [ebp - 0x8d0]
test ecx, ecx
je 0x48b597
mov eax, ecx
mov dword [ebp - 0x8d0], 0
mov edx, dword [ebp - 0x8d8]
test edx, edx
je 0x48b5ad
mov eax, edx
mov dword [ebp - 0x8d8], 0
mov ecx, dword [ebp - 0x8b8]
test ecx, ecx
je 0x48b5c3
mov eax, ecx
mov dword [ebp - 0x8b8], 0
mov ecx, dword [ebp - 0x8bc]
test ecx, ecx
je 0x48b5d9
mov eax, ecx
mov dword [ebp - 0x8bc], 0
mov ecx, dword [ebp - 0x8c0]
test ecx, ecx
je 0x48b5ef
mov eax, ecx
mov dword [ebp - 0x8c0], 0
mov edx, dword [ebp - 0x8e0]
test edx, edx
je 0x48b605
mov eax, edx
mov dword [ebp - 0x8e0], 0
mov ecx, dword [ebp - 0x8c4]
test ecx, ecx
je 0x48b61b
mov eax, ecx
mov dword [ebp - 0x8c4], 0
mov edx, dword [ebp - 0x8e4]
test edx, edx
je 0x48b631
mov eax, edx
mov dword [ebp - 0x8e4], 0
mov ecx, dword [ebp - 0x8c8]
test ecx, ecx
je 0x48b647
mov eax, ecx
mov dword [ebp - 0x8c8], 0
mov ecx, dword [ebp - 0x8cc]
test ecx, ecx
je 0x48b65d
mov eax, ecx
mov dword [ebp - 0x8cc], 0
mov edx, dword [ebp - 0x8e8]
test edx, edx
je 0x48b673
mov eax, edx
mov dword [ebp - 0x8e8], 0
mov esi, dword [ebp - 0x798]
mov dword [ebp - 0x8dc], eax
mov eax, dword [esi + 0xc]
mov ecx, dword [eax + 0x4a0]
mov dword [ebp - 0x7a0], ecx
mov cl, byte [ebp - 0x7ae]
jmp 0x48be45
cmp byte [ebp - 0x801], 0
jne 0x48b88c
cmp dword [ebp - 0x8b8], 0
jne 0x48b82a
mov eax, dword [ebp - 0x8d4]
test eax, eax
je 0x48b6cb
mov ecx, eax
mov dword [ebp - 0x8d4], 0
jmp 0x48b6d1
mov ecx, dword [ebp - 0x7a0]
mov edx, dword [ebp - 0x8ec]
test edx, edx
je 0x48b6e7
mov ecx, edx
mov dword [ebp - 0x8ec], 0
mov eax, dword [ebp - 0x8d0]
test eax, eax
je 0x48b6fd
mov ecx, eax
mov dword [ebp - 0x8d0], 0
mov eax, dword [ebp - 0x8d8]
test eax, eax
je 0x48b713
mov ecx, eax
mov dword [ebp - 0x8d8], 0
mov edx, dword [ebp - 0x8dc]
test edx, edx
je 0x48b729
mov ecx, edx
mov dword [ebp - 0x8dc], 0
mov eax, dword [ebp - 0x8bc]
test eax, eax
je 0x48b73f
mov ecx, eax
mov dword [ebp - 0x8bc], 0
mov eax, dword [ebp - 0x8c0]
test eax, eax
je 0x48b755
mov ecx, eax
mov dword [ebp - 0x8c0], 0
mov edx, dword [ebp - 0x8e0]
test edx, edx
je 0x48b76b
mov ecx, edx
mov dword [ebp - 0x8e0], 0
mov eax, dword [ebp - 0x8c4]
test eax, eax
je 0x48b781
mov ecx, eax
mov dword [ebp - 0x8c4], 0
mov edx, dword [ebp - 0x8e4]
test edx, edx
je 0x48b797
mov ecx, edx
mov dword [ebp - 0x8e4], 0
mov eax, dword [ebp - 0x8c8]
test eax, eax
je 0x48b7ad
mov ecx, eax
mov dword [ebp - 0x8c8], 0
mov eax, dword [ebp - 0x8cc]
test eax, eax
je 0x48b7c3
mov ecx, eax
mov dword [ebp - 0x8cc], 0
mov eax, dword [ebp - 0x8e8]
test eax, eax
je 0x48b7d9
mov ecx, eax
mov dword [ebp - 0x8e8], 0
cmp byte [ebp - 0x7ad], 0
je 0x48b7f8
mov eax, dword [ebp - 0x8ac]
cmp ax, 0xfff6
jge 0x48b7f8
cwde
mov edx, 0xfffffff5
sub edx, eax
jmp 0x48b7fd
mov edx, esi
shr edx, 0x1c
mov esi, dword [ebp - 0x798]
mov dword [ebp - 0x8b8], ecx
mov dword [ebp - 0x82c], edx
mov eax, dword [esi + 0xc]
mov ecx, dword [eax + edx*4 + 0x65c]
mov dword [ebp - 0x7a0], ecx
mov cl, byte [ebp - 0x7ae]
jmp 0x48be45
mov dl, byte [ebp - 0x7ad]
test dl, dl
je 0x48b84a
mov eax, dword [ebp - 0x8ac]
cmp ax, 0xfff6
jge 0x48b84a
cwde
mov esi, 0xfffffff5
sub esi, eax
jmp 0x48b84d
shr esi, 0x1c
cmp dword [ebp - 0x82c], esi
je 0x48bc46
mov eax, dword [ebp - 0x798]
mov dword [ebp - 0x82c], esi
mov eax, dword [eax + 0xc]
mov ecx, dword [eax + esi*4 + 0x65c]
mov esi, dword [ebp - 0x798]
mov dword [ebp - 0x7a0], ecx
mov cl, byte [ebp - 0x7ae]
mov eax, dword [ebp - 0x7a0]
jmp 0x48be51
cmp dword [ebp - 0x8d8], 0
jne 0x48ba10
mov edx, dword [ebp - 0x8d4]
test edx, edx
je 0x48b8b1
mov ecx, edx
mov dword [ebp - 0x8d4], 0
jmp 0x48b8b7
mov ecx, dword [ebp - 0x7a0]
mov eax, dword [ebp - 0x8ec]
test eax, eax
je 0x48b8cd
mov ecx, eax
mov dword [ebp - 0x8ec], 0
mov edx, dword [ebp - 0x8d0]
test edx, edx
je 0x48b8e3
mov ecx, edx
mov dword [ebp - 0x8d0], 0
mov eax, dword [ebp - 0x8b8]
test eax, eax
je 0x48b8f9
mov ecx, eax
mov dword [ebp - 0x8b8], 0
mov edx, dword [ebp - 0x8dc]
test edx, edx
je 0x48b90f
mov ecx, edx
mov dword [ebp - 0x8dc], 0
mov eax, dword [ebp - 0x8bc]
test eax, eax
je 0x48b925
mov ecx, eax
mov dword [ebp - 0x8bc], 0
mov eax, dword [ebp - 0x8c0]
test eax, eax
je 0x48b93b
mov ecx, eax
mov dword [ebp - 0x8c0], 0
mov edx, dword [ebp - 0x8e0]
test edx, edx
je 0x48b951
mov ecx, edx
mov dword [ebp - 0x8e0], 0
mov eax, dword [ebp - 0x8c4]
test eax, eax
je 0x48b967
mov ecx, eax
mov dword [ebp - 0x8c4], 0
mov edx, dword [ebp - 0x8e4]
test edx, edx
je 0x48b97d
mov ecx, edx
mov dword [ebp - 0x8e4], 0
mov eax, dword [ebp - 0x8c8]
test eax, eax
je 0x48b993
mov ecx, eax
mov dword [ebp - 0x8c8], 0
mov eax, dword [ebp - 0x8cc]
test eax, eax
je 0x48b9a9
mov ecx, eax
mov dword [ebp - 0x8cc], 0
mov eax, dword [ebp - 0x8e8]
test eax, eax
je 0x48b9bf
mov ecx, eax
mov dword [ebp - 0x8e8], 0
cmp byte [ebp - 0x7ad], 0
je 0x48b9de
mov eax, dword [ebp - 0x8ac]
cmp ax, 0xfff6
jge 0x48b9de
cwde
mov edx, 0xfffffff5
sub edx, eax
jmp 0x48b9e3
mov edx, esi
shr edx, 0x1c
mov esi, dword [ebp - 0x798]
mov dword [ebp - 0x8d8], ecx
mov dword [ebp - 0x82c], edx
mov eax, dword [esi + 0xc]
mov ecx, dword [eax + edx*4 + 0xa1c]
mov dword [ebp - 0x7a0], ecx
mov cl, byte [ebp - 0x7ae]
jmp 0x48be45
mov dl, byte [ebp - 0x7ad]
test dl, dl
je 0x48ba30
mov eax, dword [ebp - 0x8ac]
cmp ax, 0xfff6
jge 0x48ba30
cwde
mov esi, 0xfffffff5
sub esi, eax
jmp 0x48ba33
shr esi, 0x1c
cmp dword [ebp - 0x82c], esi
je 0x48bc46
mov eax, dword [ebp - 0x798]
mov dword [ebp - 0x82c], esi
mov eax, dword [eax + 0xc]
mov ecx, dword [eax + esi*4 + 0xa1c]
mov esi, dword [ebp - 0x798]
mov dword [ebp - 0x7a0], ecx
mov cl, byte [ebp - 0x7ae]
mov eax, dword [ebp - 0x7a0]
jmp 0x48be51
cmp byte [ebp - 0x801], 0
jne 0x48bc5d
cmp dword [ebp - 0x8d0], 0
jne 0x48bc01
mov edx, dword [ebp - 0x8d4]
test edx, edx
je 0x48baa4
mov eax, edx
mov dword [ebp - 0x8d4], 0
jmp 0x48baaa
mov eax, dword [ebp - 0x7a0]
mov ecx, dword [ebp - 0x8ec]
test ecx, ecx
je 0x48bac0
mov eax, ecx
mov dword [ebp - 0x8ec], 0
mov edx, dword [ebp - 0x8d8]
test edx, edx
je 0x48bad6
mov eax, edx
mov dword [ebp - 0x8d8], 0
mov ecx, dword [ebp - 0x8b8]
test ecx, ecx
je 0x48baec
mov eax, ecx
mov dword [ebp - 0x8b8], 0
mov edx, dword [ebp - 0x8dc]
test edx, edx
je 0x48bb02
mov eax, edx
mov dword [ebp - 0x8dc], 0
mov ecx, dword [ebp - 0x8bc]
test ecx, ecx
je 0x48bb18
mov eax, ecx
mov dword [ebp - 0x8bc], 0
mov ecx, dword [ebp - 0x8c0]
test ecx, ecx
je 0x48bb2e
mov eax, ecx
mov dword [ebp - 0x8c0], 0
mov edx, dword [ebp - 0x8e0]
test edx, edx
je 0x48bb44
mov eax, edx
mov dword [ebp - 0x8e0], 0
mov ecx, dword [ebp - 0x8c4]
test ecx, ecx
je 0x48bb5a
mov eax, ecx
mov dword [ebp - 0x8c4], 0
mov edx, dword [ebp - 0x8e4]
test edx, edx
je 0x48bb70
mov eax, edx
mov dword [ebp - 0x8e4], 0
mov ecx, dword [ebp - 0x8c8]
test ecx, ecx
je 0x48bb86
mov eax, ecx
mov dword [ebp - 0x8c8], 0
mov ecx, dword [ebp - 0x8cc]
test ecx, ecx
je 0x48bb9c
mov eax, ecx
mov dword [ebp - 0x8cc], 0
mov ecx, dword [ebp - 0x8e8]
test ecx, ecx
je 0x48bbb2
mov eax, ecx
mov dword [ebp - 0x8e8], 0
cmp byte [ebp - 0x7ad], 0
je 0x48bbcf
mov ecx, dword [ebp - 0x8ac]
cmp cx, 0xa
jle 0x48bbcf
movsx edx, cx
sub edx, 0xb
jmp 0x48bbd4
mov edx, esi
shr edx, 0x1c
mov esi, dword [ebp - 0x798]
mov dword [ebp - 0x8d0], eax
mov dword [ebp - 0x82c], edx
mov eax, dword [esi + 0xc]
mov ecx, dword [eax + edx*4 + 0x5e4]
mov dword [ebp - 0x7a0], ecx
mov cl, byte [ebp - 0x7ae]
jmp 0x48be45
mov dl, byte [ebp - 0x7ad]
test dl, dl
je 0x48bc1f
mov eax, dword [ebp - 0x8ac]
cmp ax, 0xa
jle 0x48bc1f
movsx esi, ax
sub esi, 0xb
jmp 0x48bc22
shr esi, 0x1c
cmp dword [ebp - 0x82c], esi
je 0x48bc46
mov eax, dword [ebp - 0x798]
mov dword [ebp - 0x82c], esi
mov eax, dword [eax + 0xc]
mov ecx, dword [eax + esi*4 + 0x5e4]
mov dword [ebp - 0x7a0], ecx
mov cl, byte [ebp - 0x7ae]
mov eax, dword [ebp - 0x7a0]
mov esi, dword [ebp - 0x798]
jmp 0x48be51
cmp dword [ebp - 0x8ec], 0
jne 0x48bddc
mov edx, dword [ebp - 0x8d4]
test edx, edx
je 0x48bc82
mov eax, edx
mov dword [ebp - 0x8d4], 0
jmp 0x48bc88
mov eax, dword [ebp - 0x7a0]
mov ecx, dword [ebp - 0x8d0]
test ecx, ecx
je 0x48bc9e
mov eax, ecx
mov dword [ebp - 0x8d0], 0
mov edx, dword [ebp - 0x8d8]
test edx, edx
je 0x48bcb4
mov eax, edx
mov dword [ebp - 0x8d8], 0
mov ecx, dword [ebp - 0x8b8]
test ecx, ecx
je 0x48bcca
mov eax, ecx
mov dword [ebp - 0x8b8], 0
mov edx, dword [ebp - 0x8dc]
test edx, edx
je 0x48bce0
mov eax, edx
mov dword [ebp - 0x8dc], 0
mov ecx, dword [ebp - 0x8bc]
test ecx, ecx
je 0x48bcf6
mov eax, ecx
mov dword [ebp - 0x8bc], 0
mov ecx, dword [ebp - 0x8c0]
test ecx, ecx
je 0x48bd0c
mov eax, ecx
mov dword [ebp - 0x8c0], 0
mov edx, dword [ebp - 0x8e0]
test edx, edx
je 0x48bd22
mov eax, edx
mov dword [ebp - 0x8e0], 0
mov ecx, dword [ebp - 0x8c4]
test ecx, ecx
je 0x48bd38
mov eax, ecx
mov dword [ebp - 0x8c4], 0
mov edx, dword [ebp - 0x8e4]
test edx, edx
je 0x48bd4e
mov eax, edx
mov dword [ebp - 0x8e4], 0
mov ecx, dword [ebp - 0x8c8]
test ecx, ecx
je 0x48bd64
mov eax, ecx
mov dword [ebp - 0x8c8], 0
mov ecx, dword [ebp - 0x8cc]
test ecx, ecx
je 0x48bd7a
mov eax, ecx
mov dword [ebp - 0x8cc], 0
mov ecx, dword [ebp - 0x8e8]
test ecx, ecx
je 0x48bd90
mov eax, ecx
mov dword [ebp - 0x8e8], 0
cmp byte [ebp - 0x7ad], 0
je 0x48bdad
mov ecx, dword [ebp - 0x8ac]
cmp cx, 0xa
jle 0x48bdad
movsx edx, cx
sub edx, 0xb
jmp 0x48bdb2
mov edx, esi
shr edx, 0x1c
mov esi, dword [ebp - 0x798]
mov dword [ebp - 0x8ec], eax
mov dword [ebp - 0x82c], edx
mov eax, dword [esi + 0xc]
mov ecx, dword [eax + edx*4 + 0x9a4]
mov dword [ebp - 0x7a0], ecx
mov cl, byte [ebp - 0x7ae]
jmp 0x48be45
mov dl, byte [ebp - 0x7ad]
test dl, dl
je 0x48bdfa
mov eax, dword [ebp - 0x8ac]
cmp ax, 0xa
jle 0x48bdfa
movsx esi, ax
sub esi, 0xb
jmp 0x48bdfd
shr esi, 0x1c
cmp dword [ebp - 0x82c], esi
je 0x48bc46
mov eax, dword [ebp - 0x798]
mov dword [ebp - 0x82c], esi
mov eax, dword [eax + 0xc]
mov ecx, dword [eax + esi*4 + 0x9a4]
mov esi, dword [ebp - 0x798]
mov dword [ebp - 0x7a0], ecx
mov cl, byte [ebp - 0x7ae]
mov eax, dword [ebp - 0x7a0]
jmp 0x48be51
mov cl, byte [ebp - 0x7ae]
mov esi, dword [ebp - 0x798]
mov eax, dword [ebp - 0x7a0]
mov dl, byte [ebp - 0x7ad]
test byte [ebp - 0x86c], 0x40
mov dword [ebp - 0x7f0], eax
jne 0x48f18a
mov eax, dword [ebp - 0x794]
mov dword [ebp - 0x838], 0x18
mov eax, dword [eax]
test al, 0x20
jne 0x48bef7
test al, 0x40
jne 0x48c0ab
test dl, dl
je 0x48be94
cmp word [ebp - 0x8ac], 0x1f
je 0x48c0ab
mov ecx, dword [ebp - 0x86c]
mov edx, eax
and edx, 0x40000
je 0x48beb0
test ecx, 0x400
je 0x48c0ab
test al, al
js 0x48c03f
cmp byte [ebp - 0x7ad], 0
je 0x48becf
cmp word [ebp - 0x8ac], 0x20
je 0x48c03f
test edx, edx
je 0x48bedf
test ecx, 0x400
jne 0x48c03f
movss xmm0, dword [ebp - 0x7ac]
movss dword [ebp - 0x824], xmm0
movss dword [ebp - 0x854], xmm0
mov eax, dword [ebp - 0x7a0]
mov esi, eax
mov eax, dword [ebp - 0x79c]
mov dword [ebp - 0x800], esi
cmp byte [eax + 0x873], 0
je 0x48bf2e
cmp byte [eax + 0x79d], 0
je 0x48bf2e
mov eax, 0x210
mov byte [ebp - 0x97c], 0
cmp di, ax
je 0x48bf35
mov byte [ebp - 0x97c], 1
push dword [ebp - 0x97c]
mov edi, dword [ebp - 0x7e8]
mov ecx, edi
movss xmm0, dword [ebp - 0x7a4]
mov edx, dword [ebp - 0x7f8]
mov eax, dword [ebp - 0x7b4]
push ecx
movss dword [esp], xmm0
push dword [ebp - 0x7d4]
push edx
push eax
mov edx, esi
call fcn.0040ec40
mov ecx, dword [ebp - 0x7b4]
movaps xmm3, xmm0
movss xmm0, dword [ebp - 0x7ac]
add esp, 0x14
cmp byte [ebp - 0x8fe], 0
mov esi, dword [ebp - 0x7a0]
movss dword [ebp - 0x7d0], xmm3
jne 0x48c0ed
movss xmm1, dword [ecx]
ucomiss xmm1, xmm0
lahf
test ah, 0x44
jnp 0x48c0ed
mov eax, dword [ebp - 0x798]
mov eax, dword [eax + 0xc]
movd xmm0, dword [eax + 0xa80]
mov eax, dword [ebp - 0x7f8]
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0x7e0]
cvtpd2ps xmm0, xmm0
addss xmm0, xmm1
movss dword [ecx], xmm0
lea ecx, [esi + 0x100]
push dword [eax]
call fcn.00410b00
mov edx, dword [ebp - 0x798]
movss xmm2, dword [ebp - 0x7a4]
movsd xmm4, qword [ebp - 0x7e0]
cvtps2pd xmm0, xmm2
mov ecx, dword [edx + 0xc]
movd xmm1, dword [ecx + 0xa80]
cvtdq2pd xmm1, xmm1
mov ecx, dword [ebp - 0x7b4]
movss xmm3, dword [ebp - 0x7d0]
mulsd xmm1, xmm4
divsd xmm1, xmm0
cvtpd2ps xmm0, xmm1
addss xmm0, dword [eax]
movss dword [eax], xmm0
movss xmm0, dword [ebp - 0x7ac]
jmp 0x48c103
mov ecx, dword [ebp - 0x7a0]
mov dword [ebp - 0x9f8], ecx
mov ecx, dword [esi + 0xc]
mov dword [ebp - 0x838], 8
test eax, 0x400
je 0x48c067
mov eax, dword [ecx + 0x494]
jmp 0x48c06d
mov eax, dword [ecx + 0x410]
mov dword [ebp - 0x7a0], eax
test edx, edx
je 0x48bef7
mov eax, dword [ebp - 0x7cc]
mov ecx, 0x400
test word [eax + 8], cx
jne 0x48bef7
mov eax, dword [ebp - 0xa38]
movzx eax, ax
mov dword [ebp - 0x810], eax
mov byte [ebp - 0x875], 1
jmp 0x48bef7
mov ecx, dword [ebp - 0x7a0]
mov dword [ebp - 0x9f8], ecx
mov ecx, dword [esi + 0xc]
mov dword [ebp - 0x838], 0
test eax, 0x400
je 0x48c0dc
mov eax, dword [ecx + 0x494]
mov dword [ebp - 0x7a0], eax
jmp 0x48befd
mov eax, dword [ecx + 0x410]
mov dword [ebp - 0x7a0], eax
jmp 0x48befd
mov edx, dword [ebp - 0x798]
movsd xmm4, qword [ebp - 0x7e0]
movss xmm2, dword [ebp - 0x7a4]
mov eax, dword [ebp - 0x790]
add eax, 0xfffffffe
mov dword [ebp - 0x7d4], 0
mov byte [ebp - 0xa48], 0
cmp ax, 2
ja 0x48c1fc
mov eax, dword [ebp - 0x790]
cwde
movzx eax, word [edi + eax*2 - 2]
cmp ax, word [ebp - 0xa44]
jb 0x48c1fc
cmp ax, word [ebp - 0xbd4]
ja 0x48c1fc
mov eax, dword [edx + 0xc]
movd xmm0, dword [eax + 0xa80]
mov eax, dword [ebp - 0x7f8]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm4
cvtpd2ps xmm0, xmm0
addss xmm0, xmm3
movss dword [ecx], xmm0
lea ecx, [esi + 0x100]
push dword [eax]
call fcn.00410b00
mov ecx, dword [ebp - 0x798]
movss xmm2, dword [ebp - 0x7a4]
movsd xmm4, qword [ebp - 0x7e0]
cvtps2pd xmm0, xmm2
mov ecx, dword [ecx + 0xc]
movd xmm1, dword [ecx + 0xa80]
cvtdq2pd xmm1, xmm1
mulsd xmm1, xmm4
divsd xmm1, xmm0
cvtpd2ps xmm0, xmm1
addss xmm0, dword [eax]
movss dword [eax], xmm0
mov eax, 1
cmp ax, word [ebp - 0x790]
jge 0x48c1e7
mov eax, dword [ebp - 0x870]
mov edi, dword [ebp - 0x7b4]
movzx edx, ax
add edi, 4
mov ecx, edx
mov dword [ebp - 0x7d4], edx
xor eax, eax
rep stosd dword es:[edi], eax
movss xmm5, dword [ebp - 0x7d0]
movss dword [ebp - 0x7d0], xmm5
jmp 0x48c4e6
mov eax, 1
cmp ax, word [ebp - 0x790]
jge 0x48c4de
mov esi, dword [ebp - 0x7f8]
mov edx, edi
mov dword [ebp - 0x7f0], edi
mov dword [ebp - 0x844], ecx
movss dword [ebp - 0x7d0], xmm3
lea eax, [esi + 4]
sub esi, dword [ebp - 0x7b4]
mov dword [ebp - 0x870], esi
mov esi, dword [ebp - 0x828]
movzx esi, si
mov dword [ebp - 0x7b8], eax
mov dword [ebp - 0x7bc], esi
nop
cmp byte [ebp - 0x8fe], 0
jne 0x48c2fe
movss xmm1, dword [ecx + 4]
ucomiss xmm1, xmm0
lahf
test ah, 0x44
jnp 0x48c2f8
mov eax, dword [ebp - 0x798]
mov eax, dword [eax + 0xc]
movd xmm0, dword [eax + 0xa80]
mov eax, dword [ebp - 0x7b8]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm4
cvtpd2ps xmm0, xmm0
addss xmm0, xmm1
movss dword [ecx + 4], xmm0
mov ecx, dword [ebp - 0x7a0]
push dword [eax]
lea ecx, [ecx + 0x100]
call fcn.00410b00
mov ecx, dword [ebp - 0x798]
movss xmm2, dword [ebp - 0x7a4]
movsd xmm4, qword [ebp - 0x7e0]
cvtps2pd xmm0, xmm2
mov ecx, dword [ecx + 0xc]
mov edx, dword [ebp - 0x7f0]
movd xmm1, dword [ecx + 0xa80]
cvtdq2pd xmm1, xmm1
movss xmm3, dword [ebp - 0x7d0]
mulsd xmm1, xmm4
divsd xmm1, xmm0
cvtpd2ps xmm0, xmm1
addss xmm0, dword [eax]
movss dword [eax], xmm0
mov eax, dword [ebp - 0x7b8]
mov ecx, dword [ebp - 0x798]
mov ecx, dword [ecx + 0xc]
cmp byte [ecx + 0xa7c], 0
je 0x48c49e
movzx edi, word [edx]
mov eax, edi
and eax, 0xfc00
cmp ax, word [ebp - 0xbd0]
je 0x48c498
cmp ax, word [ebp - 0xa44]
je 0x48c498
cmp word [ecx + 0xa7e], 1
jne 0x48c498
movzx esi, word [edx + 2]
mov eax, 0x3001
cmp si, ax
jb 0x48c35e
mov eax, 0x3015
cmp si, ax
jbe 0x48c36e
lea eax, [esi + 0xf8]
cmp ax, 0x55
ja 0x48c492
xor edx, edx
mov eax, 0x300c
cmp di, ax
je 0x48c38b
inc edx
movsx eax, dx
movzx eax, word [eax*4 + 0x591aca]
test ax, ax
jne 0x48c375
xor ecx, ecx
mov eax, 0x300c
cmp si, ax
je 0x48c3a8
inc ecx
movsx eax, cx
movzx eax, word [eax*4 + 0x591aca]
test ax, ax
jne 0x48c392
movsx edx, dx
cmp word [edx*4 + 0x591aca], 0
je 0x48c48c
movsx eax, cx
cmp word [eax*4 + 0x591aca], 0
je 0x48c48c
movzx ecx, word [eax*4 + 0x591ac8]
movzx eax, word [edx*4 + 0x591ac8]
cmp ax, cx
je 0x48c3f5
cmp ax, 2
jne 0x48c48c
cmp cx, 1
jne 0x48c48c
mov ecx, dword [ebp - 0x844]
mov edx, 0x3002
mov eax, dword [ebp - 0x7f0]
movss xmm0, dword [ecx]
movaps xmm1, xmm0
mulss xmm1, dword [0x5ea4cc]
subss xmm0, xmm1
movss dword [ebp - 0x7c0], xmm1
movss dword [ecx], xmm0
movzx eax, word [eax]
cmp ax, dx
je 0x48c437
mov edx, 0x3001
cmp ax, dx
jne 0x48c43e
mov byte [ebp - 0xa48], 1
mov eax, dword [ebp - 0x870]
subss xmm3, xmm1
push dword [eax + ecx]
mov ecx, dword [ebp - 0x7a0]
movss dword [ebp - 0x7d0], xmm3
lea ecx, [ecx + 0x100]
call fcn.00410b00
movss xmm1, dword [ebp - 0x7c0]
movss xmm2, dword [ebp - 0x7a4]
divss xmm1, xmm2
movss xmm0, dword [eax]
movsd xmm4, qword [ebp - 0x7e0]
subss xmm0, xmm1
movss dword [eax], xmm0
mov edx, dword [ebp - 0x7f0]
mov esi, dword [ebp - 0x7bc]
mov eax, dword [ebp - 0x7b8]
mov ecx, dword [ebp - 0x844]
add edx, 2
movss xmm3, dword [ebp - 0x7d0]
add ecx, 4
movss xmm0, dword [ebp - 0x7ac]
add eax, 4
sub esi, 1
mov dword [ebp - 0x7f0], edx
mov dword [ebp - 0x844], ecx
mov dword [ebp - 0x7b8], eax
mov dword [ebp - 0x7bc], esi
jne 0x48c250
movss xmm5, dword [ebp - 0x7d0]
mov edx, dword [ebp - 0x7f4]
mov eax, dword [edx + 0x14]
cmp word [eax + 8], 3
jne 0x48c5b6
mov ecx, dword [ebp - 0x798]
movzx eax, word [ecx + 6]
test ax, ax
je 0x48c5b6
cmp dword [ebp - 0x6b8], 0
je 0x48c5b6
cmp byte [ebp - 0x6b9], 0
jne 0x48c5b6
mov esi, dword [ebp - 0x904]
test byte [esi], 4
jne 0x48c5b6
cmp word [ebp - 0x974], 0
mov edi, dword [ebp - 0x7e8]
jne 0x48c5bc
cmp ecx, dword [ebp - 0x774]
cwde
movd xmm0, eax
setne al
cvtdq2pd xmm0, xmm0
movzx eax, al
push eax
push dword [ebp - 0xa48]
mulsd xmm0, xmm4
push ecx
movss dword [esp], xmm2
push dword [ebp - 0x7f8]
push dword [ebp - 0x7a0]
cvttsd2si esi, xmm0
push ecx
mov ecx, edx
movd xmm0, esi
cvtdq2ps xmm0, xmm0
movss dword [esp], xmm0
push dword [ebp - 0x790]
push dword [ebp - 0x7b4]
push edi
call fcn.004a74b0
movd xmm0, esi
cvtdq2ps xmm5, xmm0
addss xmm5, dword [ebp - 0x7d0]
movss dword [ebp - 0x7d0], xmm5
jmp 0x48c5bc
mov edi, dword [ebp - 0x7e8]
cmp word [ebp - 0x84c], 0x40
jne 0x48c5d1
mov eax, dword [ebp - 0x794]
test byte [eax], 0x20
jne 0x48c624
mov esi, dword [ebp - 0x7ec]
test esi, esi
je 0x48c610
mov eax, dword [ebp - 0x8f0]
movsx edx, ax
mov eax, dword [ebp - 0x790]
cwde
lea ecx, [edx + eax]
movsx eax, word [esi + 4]
cmp ecx, eax
jle 0x48c610
movsx ecx, word [esi + 6]
movsx eax, word [esi + 4]
add ecx, eax
cmp ecx, edx
jg 0x48c60a
mov esi, dword [esi]
test esi, esi
jne 0x48c5f6
mov dword [ebp - 0x7ec], esi
cmp word [ebp - 0x84c], 0x40
mov eax, dword [ebp - 0x794]
jne 0x48df7a
mov eax, dword [eax]
mov edx, eax
and edx, 0x40
jne 0x48c97f
cmp byte [ebp - 0x7ad], dl
je 0x48c647
cmp word [ebp - 0x8ac], 0x1f
je 0x48c97f
mov esi, dword [ebp - 0x798]
mov ecx, eax
and ecx, 0x40000
je 0x48c66c
mov edi, 0x400
test word [esi + 8], di
mov edi, dword [ebp - 0x7e8]
je 0x48c985
mov edx, eax
and edx, 0x80
jne 0x48c82d
cmp byte [ebp - 0x7ad], dl
je 0x48c690
cmp word [ebp - 0x8ac], 0x20
je 0x48c82d
test ecx, ecx
je 0x48c6a3
mov ecx, 0x400
test word [esi + 8], cx
jne 0x48c82d
mov edx, dword [ebp - 0x818]
mov ecx, dword [ebp - 0x814]
movd xmm3, dword [edx + 8]
movd xmm0, dword [ecx]
movd xmm1, dword [edx + 4]
cvtdq2ps xmm3, xmm3
cvtdq2ps xmm0, xmm0
subss xmm3, dword [ebp - 0x81c]
cvtdq2ps xmm1, xmm1
subss xmm3, xmm0
movd xmm0, dword [ecx + 4]
addss xmm1, dword [ebp - 0x7a8]
cvtdq2ps xmm0, xmm0
movss dword [ebp - 0x7c4], xmm3
subss xmm1, xmm0
movss dword [ebp - 0x7bc], xmm1
test eax, 0x800
je 0x48c783
mov eax, dword [ebp - 0x82c]
movss xmm1, dword [ebp - 0x85c]
inc eax
cvtps2pd xmm1, xmm1
movd xmm2, eax
cvtdq2pd xmm2, xmm2
cvtps2pd xmm3, xmm3
mulsd xmm2, qword [ebp - 0x9f0]
movaps xmm0, xmm3
addsd xmm2, qword [ebp - 0x9d8]
mulsd xmm1, xmm2
subsd xmm0, xmm1
cvttsd2si eax, xmm0
movss xmm0, dword [ebp - 0x7fc]
cvtps2pd xmm0, xmm0
mov dword [ebp - 0x6b0], eax
mov eax, dword [ebp - 0x6d0]
mov dword [ebp - 0x6ac], eax
mov eax, dword [ebp - 0x6c8]
mov dword [ebp - 0x6a4], eax
mulsd xmm0, xmm2
addsd xmm0, xmm3
cvttsd2si eax, xmm0
mov dword [ebp - 0x6a8], eax
mov al, byte [ebp - 0x968]
jmp 0x48caf1
test eax, 0x1000
je 0x48c814
mov eax, dword [ebp - 0x82c]
movss xmm1, dword [ebp - 0x85c]
inc eax
movsd xmm2, qword [ebp - 0x9d8]
cvtps2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
cvtps2pd xmm3, xmm3
mulsd xmm0, qword [ebp - 0x9f0]
subsd xmm2, xmm0
movaps xmm0, xmm3
mulsd xmm1, xmm2
subsd xmm0, xmm1
cvttsd2si eax, xmm0
movss xmm0, dword [ebp - 0x7fc]
cvtps2pd xmm0, xmm0
mov dword [ebp - 0x6b0], eax
mov eax, dword [ebp - 0x6d0]
mov dword [ebp - 0x6ac], eax
mov eax, dword [ebp - 0x6c8]
mov dword [ebp - 0x6a4], eax
mulsd xmm0, xmm2
addsd xmm0, xmm3
cvttsd2si eax, xmm0
mov dword [ebp - 0x6a8], eax
mov al, byte [ebp - 0x968]
jmp 0x48caf1
movups xmm0, xmmword [ebp - 0x6d4]
mov al, byte [ebp - 0x968]
movups xmmword [ebp - 0x6b0], xmm0
jmp 0x48caf1
mov eax, dword [ebp - 0x818]
mov ecx, dword [ebp - 0x814]
mov eax, dword [eax + 8]
mov ecx, dword [ecx]
movd xmm3, eax
cvtdq2ps xmm3, xmm3
subss xmm3, dword [ebp - 0x864]
test edx, edx
je 0x48c85e
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
subss xmm3, xmm0
jmp 0x48c8b2
movss xmm7, dword [ebp - 0x834]
ucomiss xmm7, dword [ebp - 0x7ac]
movss xmm0, dword [ebp - 0x7fc]
movd xmm1, ecx
lahf
cvtps2pd xmm0, xmm0
cvtdq2ps xmm1, xmm1
test ah, 0x44
jnp 0x48c88f
mulsd xmm0, qword [ebp - 0x9e8]
jmp 0x48c897
mulsd xmm0, qword [ebp - 0x9e0]
cvttsd2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
subss xmm3, xmm0
subss xmm3, xmm1
movss dword [ebp - 0x888], xmm3
mov eax, dword [ebp - 0x818]
movss dword [ebp - 0x7c4], xmm3
movd xmm2, dword [eax + 4]
mov eax, dword [ebp - 0x814]
cvtdq2ps xmm2, xmm2
movd xmm0, dword [eax + 4]
addss xmm2, dword [ebp - 0x7a8]
cvtdq2ps xmm0, xmm0
subss xmm2, dword [ebp - 0x854]
cvttss2si eax, xmm3
subss xmm2, xmm0
mov dword [ebp - 0x6b0], eax
cvttss2si eax, xmm2
mov dword [ebp - 0x6ac], eax
mov eax, dword [ebp - 0x790]
movsx ecx, ax
mov eax, dword [esi + 0xc]
movd xmm0, ecx
movd xmm1, dword [eax + 0xa80]
cvtdq2pd xmm1, xmm1
cvtdq2pd xmm0, xmm0
mulsd xmm1, qword [ebp - 0x7e0]
mulsd xmm1, xmm0
movaps xmm0, xmm5
addss xmm0, xmm2
cvtpd2ps xmm1, xmm1
addss xmm1, xmm0
movss xmm0, dword [ebp - 0x85c]
addss xmm0, dword [ebp - 0x7fc]
cvttss2si eax, xmm1
cvtps2pd xmm1, xmm0
mov dword [ebp - 0x6a4], eax
mov eax, dword [esi + 0xc]
cvtps2pd xmm0, xmm3
mulsd xmm1, qword [eax + 0xad0]
divsd xmm1, qword [ebp - 0x8a0]
addsd xmm1, xmm0
cvttsd2si eax, xmm1
mov dword [ebp - 0x6a8], eax
jmp 0x48cae1
mov esi, dword [ebp - 0x798]
mov eax, dword [ebp - 0x818]
mov ecx, dword [ebp - 0x814]
mov eax, dword [eax + 8]
mov ecx, dword [ecx]
test edx, edx
je 0x48c9b6
movd xmm3, eax
cvtdq2ps xmm3, xmm3
movd xmm0, ecx
subss xmm3, dword [ebp - 0x87c]
cvtdq2ps xmm0, xmm0
subss xmm3, xmm0
jmp 0x48ca19
movss xmm7, dword [ebp - 0x834]
ucomiss xmm7, dword [ebp - 0x7ac]
movss xmm0, dword [ebp - 0x7fc]
movd xmm1, eax
cvtdq2ps xmm1, xmm1
lahf
movd xmm2, ecx
subss xmm1, dword [ebp - 0x87c]
cvtps2pd xmm0, xmm0
cvtdq2ps xmm2, xmm2
test ah, 0x44
jnp 0x48c9f6
mulsd xmm0, qword [ebp - 0x9e8]
jmp 0x48c9fe
mulsd xmm0, qword [ebp - 0x9e0]
cvttsd2si eax, xmm0
movd xmm3, eax
cvtdq2ps xmm3, xmm3
addss xmm3, xmm1
subss xmm3, xmm2
movss dword [ebp - 0x888], xmm3
mov eax, dword [ebp - 0x818]
cvtps2pd xmm1, xmm3
movd xmm2, dword [eax + 4]
mov eax, dword [ebp - 0x814]
cvtdq2ps xmm2, xmm2
movd xmm0, dword [eax + 4]
addss xmm2, dword [ebp - 0x7a8]
cvtdq2ps xmm0, xmm0
subss xmm2, dword [ebp - 0x854]
cvttss2si eax, xmm3
subss xmm2, xmm0
movss dword [ebp - 0x7c4], xmm3
movss xmm0, dword [ebp - 0x85c]
addss xmm0, dword [ebp - 0x7fc]
mov dword [ebp - 0x6a8], eax
cvttss2si eax, xmm2
cvtps2pd xmm0, xmm0
mov dword [ebp - 0x6ac], eax
mov eax, dword [esi + 0xc]
mulsd xmm0, qword [eax + 0xad0]
divsd xmm0, qword [ebp - 0x8a0]
subsd xmm1, xmm0
cvttsd2si eax, xmm1
mov dword [ebp - 0x6b0], eax
mov eax, dword [ebp - 0x790]
movsx ecx, ax
mov eax, dword [esi + 0xc]
movd xmm0, ecx
movd xmm1, dword [eax + 0xa80]
cvtdq2pd xmm1, xmm1
cvtdq2pd xmm0, xmm0
mulsd xmm1, qword [ebp - 0x7e0]
mulsd xmm1, xmm0
movaps xmm0, xmm5
addss xmm0, xmm2
cvtpd2ps xmm1, xmm1
addss xmm1, xmm0
cvttss2si eax, xmm1
mov dword [ebp - 0x6a4], eax
mov al, 1
movss dword [ebp - 0x7bc], xmm2
mov byte [ebp - 0x968], al
mov edx, dword [ebp - 0x79c]
mov byte [ebp - 0xbcc], al
mov eax, dword [ebp - 0x790]
mov byte [ebp - 0x785], 1
cmp byte [edx + 0x86d], 0
je 0x48cb1c
cmp ax, word [edx + 0x86e]
jle 0x48cb33
cmp byte [edx + 0x887], 0
je 0x48ce2e
cmp ax, 3
jg 0x48ce2e
mov ax, word [esi + 8]
shr ax, 0xb
movzx ecx, ax
mov dword [ebp - 0x8a8], ecx
cmp ax, 0x1f
jne 0x48ce2e
mov eax, dword [ebp - 0x794]
mov ecx, dword [eax]
test cl, 0xc0
jne 0x48cc04
mov eax, ecx
and eax, 0xa00
cmp eax, 0xa00
jne 0x48cb85
mov eax, dword [esi + 0xc]
shr ecx, 0x1c
mov dword [ebp - 0x82c], ecx
mov esi, dword [eax + ecx*4 + 0x7c4]
jmp 0x48cc0d
mov eax, ecx
and eax, 0x1200
cmp eax, 0x1200
mov eax, dword [esi + 0xc]
jne 0x48cba8
shr ecx, 0x1c
mov dword [ebp - 0x82c], ecx
mov esi, dword [eax + ecx*4 + 0x83c]
jmp 0x48cc0d
test ecx, 0x800
je 0x48cbc2
shr ecx, 0x1c
mov dword [ebp - 0x82c], ecx
mov esi, dword [eax + ecx*4 + 0x6d4]
jmp 0x48cc0d
test ecx, 0x1000
je 0x48cbdc
shr ecx, 0x1c
mov dword [ebp - 0x82c], ecx
mov esi, dword [eax + ecx*4 + 0x74c]
jmp 0x48cc0d
test ecx, 0x200
je 0x48cbec
mov esi, dword [eax + 0x458]
jmp 0x48cc0d
test ecx, 0x400
je 0x48cbfc
mov esi, dword [eax + 0x464]
jmp 0x48cc0d
mov esi, dword [eax + 0x428]
jmp 0x48cc0d
mov eax, dword [esi + 0xc]
mov esi, dword [eax + 0x44c]
cmp byte [edx + 0x887], 0
mov dword [ebp - 0x7a0], esi
je 0x48cc29
mov edx, dword [ebp - 0x790]
mov ecx, edi
call fcn.0040ef10
movss xmm0, dword [ebp - 0x7a4]
mov edx, esi
push 1
push ecx
movss dword [esp], xmm0
mov ecx, edi
push dword [ebp - 0x790]
push dword [ebp - 0x7f8]
push dword [ebp - 0x7b4]
call fcn.0040ec40
mov eax, dword [ebp - 0x794]
movaps xmm5, xmm0
mov ecx, dword [ebp - 0x818]
add esp, 0x14
movss xmm4, dword [0x5ea4cc]
movaps xmm2, xmm5
movss dword [ebp - 0x7d0], xmm5
mov eax, dword [eax]
mov edx, dword [ecx + 8]
mulss xmm2, xmm4
test al, 0x40
je 0x48ccda
mov eax, dword [ebp - 0x798]
xorps xmm3, xmm3
cvtsi2ss xmm3, edx
mov eax, dword [eax + 0xc]
subss xmm3, dword [ebp - 0x87c]
movss xmm0, dword [eax + 0xc40]
addss xmm0, dword [eax + 0xc3c]
mulss xmm0, xmm4
subss xmm3, xmm0
mov edi, dword [ebp - 0x814]
subss xmm3, xmm2
xorps xmm0, xmm0
mov esi, dword [edi]
cvtsi2ss xmm0, esi
subss xmm3, xmm0
xorps xmm0, xmm0
cvtsi2ss xmm0, dword [edi + 4]
jmp 0x48cd56
test al, al
jns 0x48cd10
mov eax, dword [ebp - 0x798]
xorps xmm0, xmm0
cvtsi2ss xmm0, edx
mov eax, dword [eax + 0xc]
subss xmm0, dword [ebp - 0x864]
movss xmm3, dword [eax + 0xc40]
addss xmm3, dword [eax + 0xc3c]
mulss xmm3, xmm4
addss xmm3, xmm0
jmp 0x48ccb6
movss xmm0, dword [ebp - 0x864]
xorps xmm3, xmm3
subss xmm0, dword [ebp - 0x87c]
mov eax, dword [ebp - 0x814]
cvtsi2ss xmm3, edx
mov esi, dword [eax]
mulss xmm0, xmm4
subss xmm3, dword [ebp - 0x87c]
subss xmm3, xmm0
xorps xmm0, xmm0
cvtsi2ss xmm0, esi
subss xmm3, xmm2
subss xmm3, xmm0
xorps xmm0, xmm0
cvtsi2ss xmm0, dword [eax + 4]
xorps xmm1, xmm1
mov eax, dword [ebp - 0x798]
cvtsi2ss xmm1, dword [ecx + 4]
mov dword [ebp - 0x838], 0
mov byte [ebp - 0x855], 1
movss dword [ebp - 0x7c4], xmm3
addss xmm1, dword [ebp - 0x7a8]
subss xmm1, xmm0
cvttss2si ecx, xmm1
movss dword [ebp - 0x7bc], xmm1
mov dword [ebp - 0x6ac], ecx
mov eax, dword [eax + 0xc]
movd xmm1, edx
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
mov edx, dword [ebp - 0x79c]
cvtdq2ps xmm1, xmm1
addss xmm0, dword [eax + 0xb94]
subss xmm1, dword [ebp - 0x87c]
cvttss2si eax, xmm0
movss xmm0, dword [ebp - 0x864]
subss xmm0, dword [ebp - 0x87c]
mov dword [ebp - 0x6a4], eax
mulss xmm0, xmm4
subss xmm1, xmm0
movd xmm0, esi
cvtdq2ps xmm0, xmm0
subss xmm1, xmm2
subss xmm1, xmm0
cvttss2si eax, xmm1
mov dword [ebp - 0x6b0], eax
movd xmm0, eax
cvtdq2ps xmm0, xmm0
addss xmm0, xmm5
cvttss2si eax, xmm0
movss xmm0, dword [ebp - 0x7ac]
mov dword [ebp - 0x6a8], eax
mov eax, dword [ebp - 0x800]
movss dword [ebp - 0x854], xmm0
mov dword [ebp - 0x830], eax
mov edi, dword [ebp - 0x7ec]
test edi, edi
je 0x48d02f
mov eax, dword [ebp - 0x790]
movsx esi, ax
mov eax, dword [ebp - 0x8f0]
cwde
add esi, eax
nop
movzx ecx, word [edi + 4]
movsx eax, cx
cmp esi, eax
jle 0x48d029
cmp byte [ebp - 0x855], 0
je 0x48cef4
mov eax, dword [ebp - 0x88c]
test eax, eax
je 0x48ce83
cmp edi, eax
je 0x48ce7f
cmp dword [edi + 8], eax
jne 0x48ce83
mov al, 1
jmp 0x48ce85
xor al, al
movss xmm0, dword [ebp - 0x7bc]
push edx
push dword [ebp - 0x7b4]
push eax
lea eax, [ebp - 0x6b0]
push eax
movzx eax, word [edi + 6]
push eax
push ecx
push dword [ebp - 0x790]
lea eax, [ebx + 0x64]
push dword [ebp - 0x8f0]
sub esp, 0xc
mov ecx, esp
movss dword [esp + 8], xmm0
movss xmm0, dword [ebp - 0x7c4]
movss dword [esp + 4], xmm0
push eax
call fcn.0043ce00
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
movss xmm3, dword [ebp - 0x7a4]
mov ecx, dword [ebp - 0x7f4]
call fcn.004a7c00
jmp 0x48d00b
mov eax, dword [ebp - 0x794]
test dword [eax], 0x400c0
mov eax, dword [ebp - 0x88c]
jne 0x48cf8e
test eax, eax
je 0x48cf1d
cmp edi, eax
je 0x48cf19
cmp dword [edi + 8], eax
jne 0x48cf1d
mov al, 1
jmp 0x48cf1f
xor al, al
movss xmm0, dword [ebp - 0x7bc]
push edx
push dword [ebp - 0x7b4]
push eax
lea eax, [ebp - 0x6b0]
push eax
movzx eax, word [edi + 6]
push eax
push ecx
push dword [ebp - 0x790]
lea eax, [ebx + 0x64]
push dword [ebp - 0x8f0]
sub esp, 0xc
mov ecx, esp
movss dword [esp + 8], xmm0
movss xmm0, dword [ebp - 0x7c4]
movss dword [esp + 4], xmm0
push eax
call fcn.0043ce00
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
movss xmm3, dword [ebp - 0x7a4]
mov ecx, dword [ebp - 0x7f4]
call fcn.004a8160
jmp 0x48d00b
test eax, eax
je 0x48cf9f
cmp edi, eax
je 0x48cf9b
cmp dword [edi + 8], eax
jne 0x48cf9f
mov al, 1
jmp 0x48cfa1
xor al, al
movss xmm0, dword [ebp - 0x7bc]
push edx
push dword [ebp - 0x7b4]
push eax
lea eax, [ebp - 0x6b0]
push eax
movzx eax, word [edi + 6]
push eax
push ecx
push dword [ebp - 0x790]
lea eax, [ebx + 0x64]
push dword [ebp - 0x8f0]
sub esp, 0xc
mov ecx, esp
movss dword [esp + 8], xmm0
movss xmm0, dword [ebp - 0x7c4]
movss dword [esp + 4], xmm0
push eax
call fcn.0043ce00
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
movss xmm3, dword [ebp - 0x7a4]
mov ecx, dword [ebp - 0x7f4]
call fcn.004a8360
movsx ecx, word [edi + 6]
movsx eax, word [edi + 4]
add ecx, eax
cmp esi, ecx
jl 0x48d029
mov edi, dword [edi]
mov edx, dword [ebp - 0x79c]
test edi, edi
jne 0x48ce50
mov dword [ebp - 0x7ec], edi
mov eax, dword [ebp - 0x8f0]
xor esi, esi
movzx edx, ax
xor edi, edi
mov eax, dword [ebp - 0x790]
movzx ecx, ax
mov dword [ebp - 0x828], edx
mov dword [ebp - 0x7f0], ecx
mov dword [ebp - 0x844], esi
mov dword [ebp - 0x7b8], edi
cmp dword [ebp - 0x8f4], esi
je 0x48d5b1
mov ecx, dword [ebp - 0x8f4]
nop
mov al, byte [ecx + 8]
and al, 0xf
cmp al, 0xa
jae 0x48d09b
movzx eax, word [ecx + 6]
cmp ax, 0xffff
je 0x48d0b0
movsx ecx, word [ecx + 4]
cwde
add ecx, eax
mov eax, dword [ebp - 0x8f0]
cwde
cmp eax, ecx
jl 0x48d0b0
mov ecx, dword [ebp - 0x8f4]
mov ecx, dword [ecx]
mov dword [ebp - 0x8f4], ecx
test ecx, ecx
jne 0x48d070
jmp 0x48d5a5
mov eax, dword [ebp - 0x8f4]
mov ecx, dword [ebp - 0x7f0]
movzx edi, cx
movsx ecx, cx
movzx edx, word [eax + 4]
mov eax, dword [ebp - 0x828]
cwde
add ecx, eax
movzx esi, si
movsx eax, dx
mov dword [ebp - 0x800], edx
cmp ecx, eax
jle 0x48d599
mov eax, dword [ebp - 0x8f4]
mov dl, byte [ebp - 0x855]
movzx ecx, word [eax + 6]
mov eax, dword [ebp - 0x7b4]
test dl, dl
je 0x48d107
movss xmm0, dword [ebp - 0x7ac]
jmp 0x48d10f
movss xmm0, dword [ebp - 0x7a8]
push dword [ebp - 0xbcc]
push dword [ebp - 0x7b8]
push esi
lea esi, [ebp - 0x6a0]
push esi
push dword [ebp - 0x814]
push eax
lea eax, [ebp - 0x6b0]
push eax
push ecx
movss dword [esp], xmm0
push ecx
push dword [ebp - 0x800]
mov ecx, dword [ebp - 0x828]
movzx eax, cx
mov ecx, dword [ebp - 0x7f4]
push edi
push eax
movzx eax, dl
push eax
call fcn.004ee780
movzx edx, ax
mov byte [ebp - 0x801], 0
mov esi, edx
mov dword [ebp - 0x86c], esi
cmp dx, 2
jl 0x48d1bf
movsx ecx, dx
mov eax, edx
mov dword [ebp - 0x86c], eax
lea eax, [ecx*8]
sub eax, ecx
cmp byte [ebp + eax*4 - 0x6a8], 0
jne 0x48d1ca
add ecx, 0xfffffffe
mov eax, edx
mov dword [ebp - 0x86c], eax
lea eax, [ecx*8]
sub eax, ecx
cmp byte [ebp + eax*4 - 0x68c], 0
je 0x48d1ca
lea eax, [edx - 1]
mov byte [ebp - 0x801], 1
movzx esi, ax
mov dword [ebp - 0x86c], esi
xor eax, eax
cmp ax, si
jge 0x48d4e8
mov eax, dword [ebp - 0x844]
lea esi, [ebp - 0x6a0]
movsx edi, ax
mov eax, dword [ebp - 0x86c]
movzx eax, ax
mov dword [ebp - 0x924], edi
mov dword [ebp - 0x870], eax
nop
cmp byte [esi + 0x14], 0
je 0x48d236
mov ecx, dword [ebp - 0x7f4]
lea eax, [esi + 4]
push eax
push dword [ebp - 0x8f4]
call fcn.004eedb0
mov edx, dword [ebp - 0x79c]
movzx ecx, byte [edx + 0x81b]
movzx eax, byte [edx + 0x81c]
shl ecx, 8
or ecx, eax
movzx eax, byte [edx + 0x81d]
shl ecx, 8
or ecx, eax
mov dword [ebp - 0x83c], ecx
push dword [ebp - 0x97c]
movsx ecx, word [esi]
movzx eax, word [esi + 2]
movss xmm0, dword [ebp - 0x7a4]
mov edx, dword [ebp - 0x7a0]
push ecx
movss dword [esp], xmm0
push eax
push dword [ebp - 0x7f8]
lea eax, [edi + ecx]
mov ecx, dword [ebp - 0x7e8]
push dword [ebp - 0x898]
lea ecx, [ecx + eax*2]
call fcn.0040ec40
add esp, 0x14
cmp byte [ebp - 0x855], 0
je 0x48d2e3
push dword [ebp - 0x83c]
movsx eax, word [esi + 2]
mov ecx, dword [ebp - 0x7e8]
movss xmm0, dword [ebp - 0x7a4]
movd xmm1, dword [esi + 0x18]
push eax
movsx eax, word [esi]
add eax, edi
cvtdq2ps xmm1, xmm1
lea eax, [ecx + eax*2]
push eax
sub esp, 0xc
movss dword [esp + 8], xmm0
movss xmm0, dword [ebp - 0x7bc]
movss dword [esp + 4], xmm0
movd xmm0, dword [ebp - 0x7b8]
cvtdq2ps xmm0, xmm0
addss xmm0, dword [ebp - 0x7c4]
addss xmm1, xmm0
movss dword [esp], xmm1
jmp 0x48d3fa
movzx eax, word [esi + 2]
xor ecx, ecx
xor edx, edx
mov dword [ebp - 0x7c0], ecx
cmp dx, ax
jge 0x48d3a0
mov edx, dword [ebp - 0x924]
movsx eax, word [esi]
add eax, edx
movsx edi, cx
mov ecx, dword [ebp - 0x7b4]
add eax, edi
movss xmm0, dword [ecx + eax*4]
mov eax, dword [ebp - 0x898]
mov ecx, dword [ebp - 0x7c0]
ucomiss xmm0, dword [eax + edi*4]
lahf
test ah, 0x44
jnp 0x48d386
mov eax, dword [ebp - 0x7f8]
mov ecx, dword [ebp - 0x7a0]
push dword [eax + edi*4]
lea ecx, [ecx + 0x100]
call fcn.00410b00
mov edx, dword [ebp - 0x898]
movsx ecx, word [esi]
add ecx, dword [ebp - 0x924]
add ecx, edi
movss xmm0, dword [eax]
movss xmm1, dword [edx + edi*4]
mov edi, dword [ebp - 0x7b4]
mov edx, dword [ebp - 0x924]
subss xmm1, dword [edi + ecx*4]
mov ecx, dword [ebp - 0x7c0]
divss xmm1, dword [ebp - 0x7a4]
subss xmm0, xmm1
movss dword [eax], xmm0
movzx eax, word [esi + 2]
inc ecx
mov dword [ebp - 0x7c0], ecx
cmp cx, ax
jl 0x48d300
mov edi, dword [ebp - 0x924]
push dword [ebp - 0x83c]
mov ecx, dword [ebp - 0x7e8]
movss xmm0, dword [ebp - 0x7a4]
movd xmm1, dword [esi + 0x18]
cwde
push eax
movsx eax, word [esi]
add eax, edi
cvtdq2ps xmm1, xmm1
lea eax, [ecx + eax*2]
push eax
sub esp, 0xc
movss dword [esp + 8], xmm0
movd xmm0, dword [ebp - 0x7b8]
cvtdq2ps xmm0, xmm0
addss xmm0, dword [ebp - 0x7bc]
addss xmm1, xmm0
movss xmm0, dword [ebp - 0x7c4]
movss dword [esp + 4], xmm1
movss dword [esp], xmm0
push dword [ebp - 0x838]
lea eax, [ebx + 0x64]
push ecx
mov ecx, esp
push eax
call fcn.0043ce00
push ecx
mov ecx, esp
push dword [ebp - 0x80c]
call fcn.004a86c0
push ecx
mov ecx, esp
push dword [ebp - 0x808]
call fcn.004a86c0
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
mov ecx, dword [ebp - 0x7a0]
xor edx, edx
call fcn.0043a210
cmp byte [esi + 0x14], 0
je 0x48d4d2
mov eax, dword [ebp - 0x8f4]
test byte [eax + 8], 0x10
je 0x48d4a7
cmp byte [ebp - 0x855], 0
lea eax, [esi + 4]
movss xmm0, dword [ebp - 0x7a4]
push ecx
movss dword [esp], xmm0
push dword [ebp - 0x79c]
push dword [ebp - 0x814]
push eax
lea eax, [ebx + 0x64]
je 0x48d485
push 1
jmp 0x48d487
push 0
push ecx
mov ecx, esp
push eax
call fcn.0043ce00
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
mov ecx, dword [ebp - 0x7f4]
call fcn.004eeb40
mov edx, dword [ebp - 0x79c]
movzx ecx, byte [edx + 0x7e8]
movzx eax, byte [edx + 0x7e9]
shl ecx, 8
or ecx, eax
movzx eax, byte [edx + 0x7ea]
shl ecx, 8
or ecx, eax
mov dword [ebp - 0x83c], ecx
add esi, 0x1c
sub dword [ebp - 0x870], 1
jne 0x48d1f0
mov esi, dword [ebp - 0x86c]
cmp byte [ebp - 0x801], 0
je 0x48d7ed
mov edx, dword [ebp - 0x828]
mov edi, dword [ebp - 0x7b8]
movsx eax, si
mov esi, dword [ebp - 0x844]
lea ecx, [eax*8]
sub ecx, eax
movzx eax, word [ebp + ecx*4 - 0x6a0]
sub dword [ebp - 0x7f0], eax
add edx, eax
add esi, eax
mov dword [ebp - 0x828], edx
add edi, dword [ebp + ecx*4 - 0x688]
mov ecx, dword [ebp - 0x8f4]
mov dword [ebp - 0x844], esi
mov dword [ebp - 0x7b8], edi
nop dword [eax]
nop dword [eax + eax]
movzx eax, word [ecx + 6]
cmp ax, 0xffff
je 0x48d0b0
movsx ecx, word [ecx + 4]
cwde
add ecx, eax
movsx eax, dx
cmp eax, ecx
jl 0x48d0b0
mov ecx, dword [ebp - 0x8f4]
mov ecx, dword [ecx]
mov dword [ebp - 0x8f4], ecx
test ecx, ecx
je 0x48d5a5
mov al, byte [ecx + 8]
and al, 0xf
cmp al, 0xa
jb 0x48d550
mov ecx, dword [ecx]
mov dword [ebp - 0x8f4], ecx
test ecx, ecx
jne 0x48d582
jmp 0x48d5a5
mov esi, dword [ebp - 0x844]
mov edi, dword [ebp - 0x7b8]
mov eax, dword [ebp - 0x790]
mov ecx, dword [ebp - 0x7f0]
cmp byte [ebp - 0x855], 0
je 0x48d65a
test si, si
jne 0x48d609
cmp cx, ax
jne 0x48d609
push dword [ebp - 0x83c]
cwde
push eax
push dword [ebp - 0x7e8]
movss xmm0, dword [ebp - 0x7a4]
sub esp, 0xc
movss dword [esp + 8], xmm0
movss xmm0, dword [ebp - 0x7bc]
movss dword [esp + 4], xmm0
movd xmm0, edi
cvtdq2ps xmm0, xmm0
addss xmm0, dword [ebp - 0x7c4]
jmp 0x48d7a1
push dword [ebp - 0x97c]
movss xmm0, dword [ebp - 0x7a4]
mov edx, dword [ebp - 0x7e8]
push ecx
movss dword [esp], xmm0
push ecx
push dword [ebp - 0x7f8]
movsx eax, si
push dword [ebp - 0x898]
lea esi, [edx + eax*2]
mov edx, dword [ebp - 0x7a0]
mov ecx, esi
call fcn.0040ec40
mov eax, dword [ebp - 0x7f0]
add esp, 0x14
cwde
push dword [ebp - 0x83c]
push eax
push esi
jmp 0x48d5d6
test si, si
jne 0x48d68c
cmp cx, ax
jne 0x48d68c
push dword [ebp - 0x83c]
movss xmm0, dword [ebp - 0x7a4]
cwde
push eax
push dword [ebp - 0x7e8]
sub esp, 0xc
movss dword [esp + 8], xmm0
movd xmm0, edi
jmp 0x48d788
push dword [ebp - 0x97c]
movss xmm0, dword [ebp - 0x7a4]
mov eax, dword [ebp - 0x7e8]
mov edx, dword [ebp - 0x7a0]
push ecx
movss dword [esp], xmm0
movsx edi, si
mov esi, dword [ebp - 0x898]
push ecx
push dword [ebp - 0x7f8]
lea eax, [eax + edi*2]
push esi
mov ecx, eax
mov dword [ebp - 0x7c0], eax
call fcn.0040ec40
mov eax, dword [ebp - 0x7f0]
xor ecx, ecx
add esp, 0x14
cmp cx, ax
jge 0x48d761
mov ecx, dword [ebp - 0x7b4]
mov edx, dword [ebp - 0x7f8]
sub edx, esi
mov dword [ebp - 0x800], edx
lea edi, [ecx + edi*4]
movzx ecx, ax
mov dword [ebp - 0x870], ecx
movss xmm0, dword [edi]
ucomiss xmm0, dword [esi]
lahf
test ah, 0x44
jnp 0x48d74a
mov ecx, dword [ebp - 0x7a0]
push dword [edx + esi]
lea ecx, [ecx + 0x100]
call fcn.00410b00
movss xmm1, dword [esi]
subss xmm1, dword [edi]
mov ecx, dword [ebp - 0x870]
movss xmm0, dword [eax]
mov edx, dword [ebp - 0x800]
divss xmm1, dword [ebp - 0x7a4]
subss xmm0, xmm1
movss dword [eax], xmm0
add esi, 4
add edi, 4
sub ecx, 1
mov dword [ebp - 0x870], ecx
jne 0x48d701
mov eax, dword [ebp - 0x7f0]
push dword [ebp - 0x83c]
movss xmm0, dword [ebp - 0x7a4]
cwde
push eax
push dword [ebp - 0x7c0]
sub esp, 0xc
movss dword [esp + 8], xmm0
movd xmm0, dword [ebp - 0x7b8]
cvtdq2ps xmm0, xmm0
addss xmm0, dword [ebp - 0x7bc]
movss dword [esp + 4], xmm0
movss xmm0, dword [ebp - 0x7c4]
movss dword [esp], xmm0
lea eax, [ebx + 0x64]
push dword [ebp - 0x838]
push ecx
mov ecx, esp
push eax
call fcn.0043ce00
push ecx
mov ecx, esp
push dword [ebp - 0x80c]
call fcn.004a86c0
push ecx
mov ecx, esp
push dword [ebp - 0x808]
call fcn.004a86c0
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
mov ecx, dword [ebp - 0x7a0]
xor edx, edx
call fcn.0043a210
mov esi, dword [ebp - 0x79c]
cmp byte [esi + 0x2f4], 0
je 0x48dcff
cmp byte [esi + 0x6fb], 0
mov edi, dword [ebp - 0x798]
mov ah, byte [ebp - 0x855]
je 0x48dafd
test byte [edi + 8], 0x80
je 0x48dafd
test ah, ah
jne 0x48dafd
mov eax, dword [ebp - 0x794]
test byte [eax], 0x20
jne 0x48daf7
mov eax, dword [ebp - 0x790]
xor ecx, ecx
cwde
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.00560858
movzx esi, byte [esi + 0x7ee]
mov edi, eax
mov eax, dword [ebp - 0x79c]
add esp, 4
shl esi, 8
mov edx, edi
mov dword [ebp - 0x924], edi
movzx ecx, byte [eax + 0x7ef]
push dword [ebp - 0x790]
or esi, ecx
movzx ecx, byte [eax + 0x7f0]
mov eax, dword [ebp - 0x798]
shl esi, 8
or esi, ecx
mov dword [ebp - 0x828], esi
mov cx, word [eax + 8]
shr cx, 0xb
movzx eax, cx
mov dword [ebp - 0x86c], eax
movzx eax, cx
mov ecx, dword [ebp - 0x7e8]
push eax
mov dword [ebp - 0x8a8], eax
call fcn.0040a350
mov eax, dword [ebp - 0x7a0]
add esp, 8
movss xmm0, dword [ebp - 0x7a4]
mov dword [ebp - 0x830], eax
mov eax, dword [ebp - 0x798]
push 1
push ecx
movss dword [esp], xmm0
mov ecx, edi
push dword [ebp - 0x790]
mov eax, dword [eax + 0xc]
push dword [ebp - 0x7f8]
push dword [ebp - 0x898]
mov eax, dword [eax + 0x3ec]
mov edx, eax
mov dword [ebp - 0x7c0], eax
call fcn.0040ec40
mov edx, dword [ebp - 0x790]
xor eax, eax
add esp, 0x14
cmp ax, dx
jge 0x48d994
mov ecx, dword [ebp - 0x7c0]
mov edi, dword [ebp - 0x7b4]
add ecx, 0x100
movzx eax, dx
xor esi, esi
mov dword [ebp - 0x844], ecx
mov dword [ebp - 0x870], eax
movss xmm0, dword [edi]
push esi
movss dword [ebp - 0x800], xmm0
call fcn.00410b00
movss xmm0, dword [ebp - 0x800]
lea edi, [edi + 4]
movss xmm3, dword [ebp - 0x7a4]
inc esi
sub dword [ebp - 0x870], 1
divss xmm0, xmm3
mov ecx, dword [ebp - 0x844]
movss dword [eax], xmm0
jne 0x48d943
mov esi, dword [ebp - 0x828]
mov edi, dword [ebp - 0x924]
mov edx, dword [ebp - 0x790]
jmp 0x48d99c
movss xmm3, dword [ebp - 0x7a4]
mov ecx, dword [ebp - 0x7b4]
mov eax, dword [ebp - 0x79c]
movsd xmm1, qword [ebp - 0x8a0]
movss xmm4, dword [ebp - 0x7fc]
movss xmm0, dword [ecx]
subsd xmm1, qword [eax + 0x278]
cvtps2pd xmm0, xmm0
push esi
movss xmm2, dword [ebp - 0x834]
mulsd xmm1, xmm0
movss xmm0, dword [ebp - 0x7bc]
cvtps2pd xmm0, xmm0
divsd xmm1, qword [ebp - 0x9c0]
cvtps2pd xmm2, xmm2
addsd xmm1, xmm0
cvtpd2ps xmm0, xmm1
cvtps2pd xmm1, xmm4
mulsd xmm1, qword [eax + 0x708]
movsx eax, dx
push eax
push edi
sub esp, 0xc
lea eax, [ebx + 0x64]
cmp word [ebp - 0x86c], 8
divsd xmm1, qword [ebp - 0x8a0]
movss dword [esp + 8], xmm3
movss dword [esp + 4], xmm0
ja 0x48da51
mulsd xmm2, qword [ebp - 0xa30]
movaps xmm0, xmm4
addss xmm0, dword [ebp - 0x7c4]
cvtps2pd xmm0, xmm0
subsd xmm0, xmm1
subsd xmm0, xmm2
cvtpd2ps xmm0, xmm0
movss dword [esp], xmm0
push 8
jmp 0x48da7f
movss xmm0, dword [ebp - 0x7c4]
subss xmm0, dword [ebp - 0x85c]
mulsd xmm2, qword [ebp - 0x960]
cvtps2pd xmm0, xmm0
addsd xmm0, xmm1
addsd xmm0, xmm2
cvtpd2ps xmm0, xmm0
movss dword [esp], xmm0
push 0
push ecx
mov ecx, esp
push eax
call fcn.0043ce00
push ecx
mov ecx, esp
push dword [ebp - 0x80c]
call fcn.004a86c0
push ecx
mov ecx, esp
push dword [ebp - 0x808]
call fcn.004a86c0
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
mov ecx, dword [ebp - 0x7c0]
xor edx, edx
call fcn.0043a210
mov esi, dword [ebp - 0x79c]
push edi
movzx ecx, byte [esi + 0x7e8]
movzx eax, byte [esi + 0x7e9]
shl ecx, 8
or ecx, eax
movzx eax, byte [esi + 0x7ea]
shl ecx, 8
or ecx, eax
mov dword [ebp - 0x83c], ecx
call fcn.00560853
mov edi, dword [ebp - 0x798]
add esp, 4
mov ah, byte [ebp - 0x855]
mov al, byte [esi + 0x6fc]
mov cl, al
test al, al
je 0x48dc04
movzx edx, word [edi + 8]
test edx, 0x100
je 0x48dc04
test ah, ah
jne 0x48dc04
mov eax, dword [ebp - 0x794]
test byte [eax], 0x20
jne 0x48dc0a
movss xmm0, dword [ebp - 0x7fc]
sub esp, 8
cvtps2pd xmm0, xmm0
shr dx, 0xb
movzx edx, dx
mov dword [ebp - 0x8a8], edx
movsd xmm2, qword [ebp - 0x7e0]
mulsd xmm0, qword [esi + 0x710]
movsd qword [esp], xmm2
push esi
divsd xmm0, qword [ebp - 0x8a0]
cvttsd2si eax, xmm0
movzx eax, ax
push eax
mov eax, dword [ebp - 0x790]
movsx ecx, ax
mov eax, dword [edi + 0xc]
movd xmm0, ecx
movd xmm1, dword [eax + 0xa80]
cvtdq2pd xmm1, xmm1
cvtdq2pd xmm0, xmm0
mulsd xmm1, xmm2
mulsd xmm1, xmm0
cvtpd2ps xmm0, xmm1
addss xmm0, dword [ebp - 0x7d0]
cvttss2si eax, xmm0
movss xmm0, dword [ebp - 0x7a4]
push eax
cvttss2si eax, dword [ebp - 0x7bc]
push eax
lea eax, [ebp - 0x6d4]
push eax
push edx
sub esp, 8
lea eax, [ebx + 0x64]
mov ecx, esp
movss dword [esp + 4], xmm0
push eax
call fcn.0043ce00
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
push ecx
lea eax, [ebx + 0x5c]
mov ecx, esp
push eax
call fcn.0043ce00
mov ecx, dword [ebp - 0x7f4]
call fcn.004eb070
mov cl, byte [esi + 0x6fc]
mov eax, dword [ebp - 0x794]
mov esi, dword [ebp - 0x7a0]
mov dword [ebp - 0x7a0], esi
test cl, cl
je 0x48dcff
test dword [eax], 0x40000
mov dword [ebp - 0x7a0], esi
jne 0x48dcff
mov eax, 0x400
mov dword [ebp - 0x7a0], esi
test word [edi + 8], ax
je 0x48dcff
movss xmm0, dword [ebp - 0x7fc]
sub esp, 8
mov eax, dword [ebp - 0x79c]
cvtps2pd xmm0, xmm0
movsd xmm2, qword [ebp - 0x7e0]
mulsd xmm0, qword [eax + 0x710]
movsd qword [esp], xmm2
push eax
divsd xmm0, qword [ebp - 0x8a0]
cvttsd2si eax, xmm0
movzx eax, ax
push eax
mov eax, dword [ebp - 0x790]
movsx ecx, ax
mov eax, dword [edi + 0xc]
movd xmm0, ecx
movd xmm1, dword [eax + 0xa80]
cvtdq2pd xmm1, xmm1
cvtdq2pd xmm0, xmm0
mulsd xmm1, xmm2
mulsd xmm1, xmm0
cvtpd2ps xmm0, xmm1
addss xmm0, dword [ebp - 0x7d0]
cvttss2si eax, xmm0
push eax
cvttss2si eax, dword [ebp - 0x7bc]
push eax
lea eax, [ebp - 0x6d4]
push eax
push dword [ebp - 0x8a8]
lea eax, [ebx + 0x64]
push ecx
mov ecx, esp
push eax
call fcn.0043ce00
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
movss xmm3, dword [ebp - 0x7a4]
mov ecx, dword [ebp - 0x7f4]
call fcn.004ebb20
mov dword [ebp - 0x7a0], esi
cmp byte [ebp - 0x855], 0
je 0x48eff9
cmp byte [ebp - 0x8a4], 0
je 0x48dd6d
mov eax, dword [ebp - 0x818]
xor esi, esi
xor dh, dh
mov dword [ebp - 0x810], esi
mov byte [ebp - 0x8a4], 0
mov byte [ebp - 0x785], dh
movd xmm1, dword [eax + 8]
mov eax, dword [ebp - 0x814]
cvtdq2ps xmm1, xmm1
movd xmm0, dword [eax]
subss xmm1, dword [ebp - 0x81c]
cvtdq2ps xmm0, xmm0
subss xmm1, xmm0
movss xmm0, dword [ebp - 0x7bc]
movss dword [ebp - 0x8b0], xmm0
movss dword [ebp - 0x888], xmm1
jmp 0x48dd73
mov esi, dword [ebp - 0x810]
mov eax, dword [ebp - 0x794]
mov ecx, dword [eax]
test cl, 0xc0
jne 0x48dea3
mov eax, ecx
and eax, 0xa00
cmp eax, 0xa00
jne 0x48dddb
mov eax, dword [ebp - 0x798]
mov ecx, dword [ebp - 0x82c]
movss xmm3, dword [ebp - 0x7a8]
mov eax, dword [eax + 0xc]
movd xmm0, dword [eax + 0xa80]
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0x7e0]
cvtpd2ps xmm0, xmm0
addss xmm0, dword [eax + ecx*4 + 0xb9c]
addss xmm3, xmm0
movss dword [ebp - 0x7a8], xmm3
jmp 0x48dee0
mov eax, ecx
and eax, 0x1200
cmp eax, 0x1200
mov eax, dword [ebp - 0x798]
jne 0x48de1e
mov eax, dword [eax + 0xc]
mov ecx, dword [ebp - 0x82c]
movd xmm0, dword [eax + 0xa80]
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0x7e0]
cvtpd2ps xmm0, xmm0
addss xmm0, dword [eax + ecx*4 + 0xc14]
jmp 0x48decc
test ecx, 0x800
je 0x48de52
mov eax, dword [eax + 0xc]
mov ecx, dword [ebp - 0x82c]
movd xmm0, dword [eax + 0xa80]
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0x7e0]
cvtpd2ps xmm0, xmm0
addss xmm0, dword [eax + ecx*4 + 0xbc4]
jmp 0x48decc
mov edx, dword [eax + 0xc]
movss xmm1, dword [ebp - 0x7a8]
movd xmm0, dword [edx + 0xa80]
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0x7e0]
test ecx, 0x1000
je 0x48de8e
mov eax, dword [ebp - 0x82c]
cvtpd2ps xmm0, xmm0
addss xmm0, dword [edx + eax*4 + 0xbec]
jmp 0x48ded4
cvttsd2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
addss xmm0, dword [edx + 0xb94]
jmp 0x48ded4
mov eax, dword [ebp - 0x798]
mov eax, dword [eax + 0xc]
movd xmm0, dword [eax + 0xa80]
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0x7e0]
cvtpd2ps xmm0, xmm0
addss xmm0, dword [eax + 0xb98]
movss xmm1, dword [ebp - 0x7a8]
addss xmm1, xmm0
movss dword [ebp - 0x7a8], xmm1
mov eax, dword [ebp - 0x830]
mov edi, dword [ebp - 0x790]
mov dword [ebp - 0x7a0], eax
xor eax, eax
cmp ax, di
jge 0x48df38
mov edx, dword [ebp - 0x850]
mov ecx, dword [ebp - 0x7e8]
movsx eax, si
mov esi, dword [ebp - 0x890]
movzx edi, di
lea edx, [edx + eax*4]
lea esi, [esi + eax*2]
mov ax, word [ecx]
lea edx, [edx + 4]
mov word [esi], ax
lea ecx, [ecx + 2]
mov dword [edx - 4], 0
lea esi, [esi + 2]
sub edi, 1
jne 0x48df17
mov edi, dword [ebp - 0x790]
mov edx, dword [ebp - 0x810]
mov ecx, dword [ebp - 0x850]
movsx eax, dx
add edx, edi
mov dword [ebp - 0x810], edx
movss dword [ecx + eax*4], xmm0
mov eax, dword [ebp - 0x794]
test byte [eax], 0xc0
je 0x489ad6
mov ecx, dword [ebp - 0x9f8]
mov esi, dword [ebp - 0x798]
mov dword [ebp - 0x7a0], ecx
jmp 0x489ae2
mov eax, dword [eax]
mov edx, eax
and edx, 0x40
jne 0x48e22b
mov edi, dword [ebp - 0x8ac]
cmp byte [ebp - 0x7ad], dl
je 0x48df9f
cmp di, 0x1f
je 0x48e22b
mov esi, dword [ebp - 0x798]
mov ecx, eax
and ecx, 0x40000
je 0x48dfc4
mov edi, 0x400
test word [esi + 8], di
mov edi, dword [ebp - 0x8ac]
je 0x48e231
mov edx, eax
and edx, 0x80
jne 0x48e112
cmp byte [ebp - 0x7ad], dl
je 0x48dfe4
cmp di, 0x20
je 0x48e112
test ecx, ecx
je 0x48dff7
mov ecx, 0x400
test word [esi + 8], cx
jne 0x48e112
mov edx, dword [ebp - 0x818]
mov ecx, dword [ebp - 0x814]
movd xmm3, dword [edx]
movd xmm0, dword [ecx]
movd xmm4, dword [edx + 4]
mov edx, dword [ebp - 0x790]
cvtdq2ps xmm3, xmm3
cvtdq2ps xmm0, xmm0
addss xmm3, dword [ebp - 0x7a8]
cvtdq2ps xmm4, xmm4
subss xmm3, xmm0
movd xmm0, dword [ecx + 4]
addss xmm4, dword [ebp - 0x81c]
cvtdq2ps xmm0, xmm0
movss dword [ebp - 0x7c4], xmm3
subss xmm4, xmm0
movss dword [ebp - 0x7bc], xmm4
test eax, 0x800
je 0x48e077
mov eax, dword [ebp - 0x82c]
inc eax
movd xmm2, eax
cvtdq2pd xmm2, xmm2
mulsd xmm2, qword [ebp - 0x9f0]
addsd xmm2, qword [ebp - 0x9d8]
jmp 0x48e0a5
test eax, 0x1000
je 0x48e0ff
mov eax, dword [ebp - 0x82c]
movsd xmm2, qword [ebp - 0x9d8]
inc eax
movd xmm0, eax
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0x9f0]
subsd xmm2, xmm0
movss xmm0, dword [ebp - 0x85c]
cvtps2pd xmm0, xmm0
cvtps2pd xmm1, xmm4
mulsd xmm0, xmm2
addsd xmm0, xmm1
cvttsd2si eax, xmm0
movss xmm0, dword [ebp - 0x7fc]
cvtps2pd xmm0, xmm0
mov dword [ebp - 0x6a4], eax
mov eax, dword [ebp - 0x6d4]
mov dword [ebp - 0x6b0], eax
mov eax, dword [ebp - 0x6cc]
mov dword [ebp - 0x6a8], eax
mulsd xmm0, xmm2
subsd xmm1, xmm0
cvttsd2si eax, xmm1
mov dword [ebp - 0x6ac], eax
jmp 0x48e392
movups xmm0, xmmword [ebp - 0x6d4]
movups xmmword [ebp - 0x6b0], xmm0
jmp 0x48e392
cmp word [ebp - 0x994], 2
mov eax, dword [ebp - 0x818]
mov ecx, dword [ebp - 0x814]
movd xmm3, dword [eax]
movd xmm0, dword [ecx]
cvtdq2ps xmm3, xmm3
cvtdq2ps xmm0, xmm0
addss xmm3, dword [ebp - 0x7a8]
je 0x48e146
subss xmm3, dword [ebp - 0x854]
mov eax, dword [eax + 4]
subss xmm3, xmm0
mov ecx, dword [ecx + 4]
movss dword [ebp - 0x7c4], xmm3
test edx, edx
je 0x48e178
movd xmm4, eax
cvtdq2ps xmm4, xmm4
movd xmm0, ecx
addss xmm4, dword [ebp - 0x864]
cvtdq2ps xmm0, xmm0
subss xmm4, xmm0
jmp 0x48e1db
movss xmm7, dword [ebp - 0x834]
ucomiss xmm7, dword [ebp - 0x7ac]
movss xmm0, dword [ebp - 0x7fc]
movd xmm1, eax
cvtdq2ps xmm1, xmm1
lahf
movd xmm2, ecx
addss xmm1, dword [ebp - 0x864]
cvtps2pd xmm0, xmm0
cvtdq2ps xmm2, xmm2
test ah, 0x44
jnp 0x48e1b8
mulsd xmm0, qword [ebp - 0x9e8]
jmp 0x48e1c0
mulsd xmm0, qword [ebp - 0x9e0]
cvttsd2si eax, xmm0
movd xmm4, eax
cvtdq2ps xmm4, xmm4
addss xmm4, xmm1
subss xmm4, xmm2
movss dword [ebp - 0x8b0], xmm4
movss xmm0, dword [ebp - 0x85c]
addss xmm0, dword [ebp - 0x7fc]
cvttss2si eax, xmm3
cvtps2pd xmm0, xmm0
mov dword [ebp - 0x6b0], eax
cvttss2si eax, xmm4
cvtps2pd xmm1, xmm4
mov dword [ebp - 0x6a4], eax
mov eax, dword [esi + 0xc]
mulsd xmm0, qword [eax + 0xad0]
divsd xmm0, qword [ebp - 0x8a0]
subsd xmm1, xmm0
cvttsd2si eax, xmm1
mov dword [ebp - 0x6ac], eax
jmp 0x48e336
mov esi, dword [ebp - 0x798]
cmp word [ebp - 0x994], 1
mov eax, dword [ebp - 0x818]
mov ecx, dword [ebp - 0x814]
movd xmm3, dword [eax]
movd xmm0, dword [ecx]
cvtdq2ps xmm3, xmm3
cvtdq2ps xmm0, xmm0
addss xmm3, dword [ebp - 0x7a8]
je 0x48e265
subss xmm3, dword [ebp - 0x854]
mov eax, dword [eax + 4]
subss xmm3, xmm0
mov ecx, dword [ecx + 4]
movd xmm4, eax
movss dword [ebp - 0x7c4], xmm3
cvtdq2ps xmm4, xmm4
addss xmm4, dword [ebp - 0x87c]
test edx, edx
je 0x48e297
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
subss xmm4, xmm0
jmp 0x48e2eb
movss xmm7, dword [ebp - 0x834]
ucomiss xmm7, dword [ebp - 0x7ac]
movss xmm0, dword [ebp - 0x7fc]
movd xmm1, ecx
lahf
cvtps2pd xmm0, xmm0
cvtdq2ps xmm1, xmm1
test ah, 0x44
jnp 0x48e2c8
mulsd xmm0, qword [ebp - 0x9e8]
jmp 0x48e2d0
mulsd xmm0, qword [ebp - 0x9e0]
cvttsd2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
subss xmm4, xmm0
subss xmm4, xmm1
movss dword [ebp - 0x8b0], xmm4
movss xmm0, dword [ebp - 0x85c]
addss xmm0, dword [ebp - 0x7fc]
cvttss2si eax, xmm3
cvtps2pd xmm1, xmm0
mov dword [ebp - 0x6b0], eax
cvttss2si eax, xmm4
cvtps2pd xmm0, xmm4
mov dword [ebp - 0x6ac], eax
mov eax, dword [esi + 0xc]
mulsd xmm1, qword [eax + 0xad0]
divsd xmm1, qword [ebp - 0x8a0]
addsd xmm1, xmm0
cvttsd2si eax, xmm1
mov dword [ebp - 0x6a4], eax
mov eax, dword [esi + 0xc]
mov edx, dword [ebp - 0x790]
movsx ecx, dx
movss dword [ebp - 0x7bc], xmm4
movd xmm1, dword [eax + 0xa80]
cvtdq2pd xmm1, xmm1
movd xmm0, ecx
mulsd xmm1, qword [ebp - 0x7e0]
cvtdq2pd xmm0, xmm0
mulsd xmm1, xmm0
movaps xmm0, xmm5
addss xmm0, xmm3
cvttsd2si eax, xmm1
movd xmm1, eax
cvtdq2ps xmm1, xmm1
addss xmm1, xmm0
cvttss2si eax, xmm1
mov dword [ebp - 0x6a8], eax
mov al, 1
mov byte [ebp - 0x968], al
mov edi, dword [ebp - 0x7ec]
test edi, edi
je 0x48e4e3
mov eax, dword [ebp - 0x8f0]
movsx esi, dx
cwde
add esi, eax
nop dword [eax]
movzx ecx, word [edi + 4]
movsx eax, cx
cmp esi, eax
jle 0x48e4dd
mov eax, dword [ebp - 0x794]
test dword [eax], 0x400c0
mov eax, dword [ebp - 0x88c]
jne 0x48e442
test eax, eax
je 0x48e3e4
cmp edi, eax
je 0x48e3e0
cmp dword [edi + 8], eax
jne 0x48e3e4
mov al, 1
jmp 0x48e3e6
xor al, al
push dword [ebp - 0x79c]
push dword [ebp - 0x7b4]
push eax
lea eax, [ebp - 0x6b0]
push eax
movzx eax, word [edi + 6]
push eax
push ecx
push edx
push dword [ebp - 0x8f0]
lea eax, [ebx + 0x64]
sub esp, 0xc
mov ecx, esp
movss dword [esp + 8], xmm4
movss dword [esp + 4], xmm3
push eax
call fcn.0043ce00
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
movss xmm3, dword [ebp - 0x7a4]
mov ecx, dword [ebp - 0x7f4]
call fcn.004a7c00
jmp 0x48e4af
test eax, eax
je 0x48e453
cmp edi, eax
je 0x48e44f
cmp dword [edi + 8], eax
jne 0x48e453
mov al, 1
jmp 0x48e455
xor al, al
push dword [ebp - 0x79c]
push dword [ebp - 0x7b4]
push eax
lea eax, [ebp - 0x6b0]
push eax
movzx eax, word [edi + 6]
push eax
push ecx
push edx
push dword [ebp - 0x8f0]
lea eax, [ebx + 0x64]
sub esp, 0xc
mov ecx, esp
movss dword [esp + 8], xmm4
movss dword [esp + 4], xmm3
push eax
call fcn.0043ce00
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
movss xmm3, dword [ebp - 0x7a4]
mov ecx, dword [ebp - 0x7f4]
call fcn.004a7e00
movsx ecx, word [edi + 6]
movsx eax, word [edi + 4]
mov edx, dword [ebp - 0x790]
add ecx, eax
cmp esi, ecx
jl 0x48e4dd
mov edi, dword [edi]
movss xmm3, dword [ebp - 0x7c4]
movss xmm4, dword [ebp - 0x7bc]
test edi, edi
jne 0x48e3b0
mov dword [ebp - 0x7ec], edi
mov eax, dword [ebp - 0x8f0]
xor edi, edi
mov ecx, dword [ebp - 0x8f4]
movzx esi, ax
movzx eax, dx
mov dword [ebp - 0x924], esi
mov dword [ebp - 0x7f0], eax
mov dword [ebp - 0x86c], edi
mov dword [ebp - 0x7b8], edi
test ecx, ecx
je 0x48ea7c
mov al, byte [ecx + 8]
and al, 0xf
cmp al, 0xa
jae 0x48e542
movzx eax, word [ecx + 6]
cmp ax, 0xffff
je 0x48e553
movsx ecx, word [ecx + 4]
cwde
add ecx, eax
mov eax, dword [ebp - 0x8f0]
cwde
cmp eax, ecx
mov ecx, dword [ebp - 0x8f4]
jl 0x48e553
mov ecx, dword [ecx]
mov dword [ebp - 0x8f4], ecx
test ecx, ecx
jne 0x48e517
jmp 0x48ea7c
movzx edx, word [ecx + 4]
mov ecx, dword [ebp - 0x7f0]
movsx eax, si
movsx ecx, cx
add ecx, eax
movsx eax, dx
cmp ecx, eax
jle 0x48e979
push dword [ebp - 0x968]
movss xmm0, dword [ebp - 0x7a8]
lea eax, [ebp - 0x6a0]
push dword [ebp - 0x7b8]
push edi
push eax
push dword [ebp - 0x814]
lea eax, [ebp - 0x6b0]
push dword [ebp - 0x7b4]
push eax
mov eax, dword [ebp - 0x8f4]
push ecx
mov ecx, dword [ebp - 0x7f4]
movss dword [esp], xmm0
movzx eax, word [eax + 6]
push eax
mov eax, dword [ebp - 0x7f0]
push edx
push eax
push esi
push 1
call fcn.004ee780
movzx edx, ax
mov dword [ebp - 0x828], edx
mov byte [ebp - 0x801], 0
cmp dx, 2
jl 0x48e616
movsx ecx, dx
lea eax, [ecx*8]
sub eax, ecx
cmp byte [ebp + eax*4 - 0x6a8], 0
jne 0x48e621
add ecx, 0xfffffffe
lea eax, [ecx*8]
sub eax, ecx
cmp byte [ebp + eax*4 - 0x68c], 0
je 0x48e621
dec edx
mov byte [ebp - 0x801], 1
mov dword [ebp - 0x828], edx
xor eax, eax
cmp ax, dx
jge 0x48e8d0
movd xmm0, dword [ebp - 0x7b8]
lea esi, [ebp - 0x6a0]
cvtdq2ps xmm0, xmm0
movsx edi, di
movzx eax, dx
mov dword [ebp - 0x844], edi
mov dword [ebp - 0x870], eax
addss xmm0, dword [ebp - 0x7c4]
movss dword [ebp - 0x7e4], xmm0
cmp byte [esi + 0x14], 0
je 0x48e69a
mov ecx, dword [ebp - 0x7f4]
lea eax, [esi + 4]
push eax
push dword [ebp - 0x8f4]
call fcn.004eedb0
mov edx, dword [ebp - 0x79c]
movzx ecx, byte [edx + 0x81b]
movzx eax, byte [edx + 0x81c]
shl ecx, 8
or ecx, eax
movzx eax, byte [edx + 0x81d]
shl ecx, 8
or ecx, eax
mov dword [ebp - 0x83c], ecx
push dword [ebp - 0x97c]
movss xmm0, dword [ebp - 0x7a4]
movzx eax, word [esi + 2]
mov edx, dword [ebp - 0x7a0]
push ecx
mov ecx, dword [ebp - 0x7e8]
movss dword [esp], xmm0
push eax
movsx eax, word [esi]
push dword [ebp - 0x7f8]
add eax, edi
push dword [ebp - 0x898]
lea ecx, [ecx + eax*2]
call fcn.0040ec40
movzx eax, word [esi + 2]
xor ecx, ecx
xor edx, edx
mov dword [ebp - 0x7c0], ecx
add esp, 0x14
cmp dx, ax
jge 0x48e79c
movzx edx, word [esi]
movzx eax, dx
mov edx, eax
movsx edi, cx
mov ecx, dword [ebp - 0x7b4]
cwde
add eax, dword [ebp - 0x844]
add eax, edi
movss xmm0, dword [ecx + eax*4]
mov eax, dword [ebp - 0x898]
mov ecx, dword [ebp - 0x7c0]
ucomiss xmm0, dword [eax + edi*4]
lahf
test ah, 0x44
jnp 0x48e77f
mov eax, dword [ebp - 0x7f8]
mov ecx, dword [ebp - 0x7a0]
push dword [eax + edi*4]
lea ecx, [ecx + 0x100]
call fcn.00410b00
mov edx, dword [ebp - 0x898]
movsx ecx, word [esi]
add ecx, dword [ebp - 0x844]
add ecx, edi
movss xmm0, dword [eax]
movss xmm1, dword [edx + edi*4]
mov edx, dword [ebp - 0x7b4]
subss xmm1, dword [edx + ecx*4]
mov ecx, dword [ebp - 0x7c0]
divss xmm1, dword [ebp - 0x7a4]
subss xmm0, xmm1
movss dword [eax], xmm0
movzx edx, word [esi]
movzx eax, word [esi + 2]
inc ecx
mov dword [ebp - 0x7c0], ecx
movzx edx, dx
cmp cx, ax
jl 0x48e6f5
mov edi, dword [ebp - 0x844]
push dword [ebp - 0x83c]
mov ecx, dword [ebp - 0x7e8]
movss xmm0, dword [ebp - 0x7a4]
cwde
push eax
movsx eax, word [esi]
add eax, edi
lea eax, [ecx + eax*2]
push eax
sub esp, 0xc
lea eax, [ebx + 0x64]
movss dword [esp + 8], xmm0
movss xmm0, dword [ebp - 0x7bc]
movss dword [esp + 4], xmm0
movd xmm0, dword [esi + 0x18]
cvtdq2ps xmm0, xmm0
addss xmm0, dword [ebp - 0x7e4]
movss dword [esp], xmm0
push dword [ebp - 0x838]
push ecx
mov ecx, esp
push eax
call fcn.0043ce00
push ecx
mov ecx, esp
push dword [ebp - 0x80c]
call fcn.004a86c0
push ecx
mov ecx, esp
push dword [ebp - 0x808]
call fcn.004a86c0
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
mov ecx, dword [ebp - 0x7a0]
xor edx, edx
call fcn.0043a210
cmp byte [esi + 0x14], 0
je 0x48e8ae
mov eax, dword [ebp - 0x8f4]
test byte [eax + 8], 0x10
je 0x48e883
movss xmm0, dword [ebp - 0x7a4]
lea eax, [esi + 4]
push ecx
movss dword [esp], xmm0
push dword [ebp - 0x79c]
push dword [ebp - 0x814]
push eax
push 1
push ecx
lea eax, [ebx + 0x64]
mov ecx, esp
push eax
call fcn.0043ce00
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
mov ecx, dword [ebp - 0x7f4]
call fcn.004eeb40
mov edx, dword [ebp - 0x79c]
movzx ecx, byte [edx + 0x7e8]
movzx eax, byte [edx + 0x7e9]
shl ecx, 8
or ecx, eax
movzx eax, byte [edx + 0x7ea]
shl ecx, 8
or ecx, eax
mov dword [ebp - 0x83c], ecx
add esi, 0x1c
sub dword [ebp - 0x870], 1
jne 0x48e654
mov edx, dword [ebp - 0x828]
mov esi, dword [ebp - 0x924]
mov edi, dword [ebp - 0x86c]
cmp byte [ebp - 0x801], 0
je 0x48eb0a
movsx eax, dx
mov edx, dword [ebp - 0x7f0]
lea ecx, [eax*8]
sub ecx, eax
movzx eax, word [ebp + ecx*4 - 0x6a0]
add esi, eax
add edi, eax
sub edx, eax
mov dword [ebp - 0x924], esi
mov eax, dword [ebp - 0x7b8]
add eax, dword [ebp + ecx*4 - 0x688]
mov ecx, dword [ebp - 0x8f4]
mov dword [ebp - 0x86c], edi
mov dword [ebp - 0x7f0], edx
mov dword [ebp - 0x7b8], eax
nop dword [eax + eax]
movzx eax, word [ecx + 6]
cmp ax, 0xffff
je 0x48e553
movsx ecx, word [ecx + 4]
cwde
add ecx, eax
movsx eax, si
cmp eax, ecx
mov ecx, dword [ebp - 0x8f4]
jl 0x48e553
mov ecx, dword [ecx]
mov dword [ebp - 0x8f4], ecx
test ecx, ecx
je 0x48e97f
mov al, byte [ecx + 8]
and al, 0xf
cmp al, 0xa
jb 0x48e930
mov ecx, dword [ecx]
mov dword [ebp - 0x8f4], ecx
test ecx, ecx
jne 0x48e962
jmp 0x48e97f
mov edx, dword [ebp - 0x7f0]
test di, di
jne 0x48e991
cmp dx, word [ebp - 0x790]
je 0x48ea76
push dword [ebp - 0x97c]
movss xmm0, dword [ebp - 0x7a4]
mov eax, dword [ebp - 0x7e8]
mov esi, dword [ebp - 0x898]
push ecx
movss dword [esp], xmm0
push edx
push dword [ebp - 0x7f8]
mov edx, dword [ebp - 0x7a0]
movsx edi, di
push esi
lea eax, [eax + edi*2]
mov ecx, eax
mov dword [ebp - 0x7c0], eax
call fcn.0040ec40
mov eax, dword [ebp - 0x7f0]
xor ecx, ecx
add esp, 0x14
cmp cx, ax
jge 0x48ea66
mov ecx, dword [ebp - 0x7b4]
mov edx, dword [ebp - 0x7f8]
sub edx, esi
mov dword [ebp - 0x7e4], edx
lea edi, [ecx + edi*4]
movzx ecx, ax
mov dword [ebp - 0x870], ecx
movss xmm0, dword [edi]
ucomiss xmm0, dword [esi]
lahf
test ah, 0x44
jnp 0x48ea4f
mov ecx, dword [ebp - 0x7a0]
push dword [edx + esi]
lea ecx, [ecx + 0x100]
call fcn.00410b00
movss xmm1, dword [esi]
subss xmm1, dword [edi]
mov ecx, dword [ebp - 0x870]
movss xmm0, dword [eax]
mov edx, dword [ebp - 0x7e4]
divss xmm1, dword [ebp - 0x7a4]
subss xmm0, xmm1
movss dword [eax], xmm0
add esi, 4
add edi, 4
sub ecx, 1
mov dword [ebp - 0x870], ecx
jne 0x48ea06
mov eax, dword [ebp - 0x7f0]
push dword [ebp - 0x83c]
cwde
push eax
push dword [ebp - 0x7c0]
jmp 0x48ea8c
mov edx, dword [ebp - 0x790]
push dword [ebp - 0x83c]
movsx eax, dx
push eax
push dword [ebp - 0x7e8]
movss xmm0, dword [ebp - 0x7a4]
lea eax, [ebx + 0x64]
sub esp, 0xc
movss dword [esp + 8], xmm0
movss xmm0, dword [ebp - 0x7bc]
movss dword [esp + 4], xmm0
movd xmm0, dword [ebp - 0x7b8]
cvtdq2ps xmm0, xmm0
addss xmm0, dword [ebp - 0x7c4]
movss dword [esp], xmm0
push dword [ebp - 0x838]
push ecx
mov ecx, esp
push eax
call fcn.0043ce00
push ecx
mov ecx, esp
push dword [ebp - 0x80c]
call fcn.004a86c0
push ecx
mov ecx, esp
push dword [ebp - 0x808]
call fcn.004a86c0
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
mov ecx, dword [ebp - 0x7a0]
xor edx, edx
call fcn.0043a210
mov edx, dword [ebp - 0x79c]
cmp byte [edx + 0x2f4], 0
je 0x48eff9
cmp byte [edx + 0x6fb], 0
mov edi, dword [ebp - 0x798]
je 0x48ee09
test byte [edi + 8], 0x80
je 0x48ee09
mov eax, dword [ebp - 0x790]
xor ecx, ecx
cwde
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.00560858
mov edi, eax
add esp, 4
mov eax, dword [ebp - 0x79c]
mov edx, edi
mov dword [ebp - 0x924], edi
push dword [ebp - 0x790]
movzx esi, byte [eax + 0x7ee]
movzx ecx, byte [eax + 0x7ef]
shl esi, 8
or esi, ecx
movzx ecx, byte [eax + 0x7f0]
mov eax, dword [ebp - 0x798]
shl esi, 8
or esi, ecx
mov dword [ebp - 0x828], esi
mov cx, word [eax + 8]
shr cx, 0xb
movzx eax, cx
mov dword [ebp - 0x86c], eax
movzx eax, cx
mov ecx, dword [ebp - 0x7e8]
push eax
mov dword [ebp - 0x8a8], eax
call fcn.0040a350
mov eax, dword [ebp - 0x7a0]
add esp, 8
movss xmm0, dword [ebp - 0x7a4]
mov dword [ebp - 0x830], eax
mov eax, dword [ebp - 0x798]
push 1
push ecx
movss dword [esp], xmm0
mov ecx, edi
push dword [ebp - 0x790]
mov eax, dword [eax + 0xc]
push dword [ebp - 0x7f8]
push dword [ebp - 0x898]
mov eax, dword [eax + 0x3ec]
mov edx, eax
mov dword [ebp - 0x7c0], eax
call fcn.0040ec40
mov edx, dword [ebp - 0x790]
xor eax, eax
add esp, 0x14
cmp ax, dx
jge 0x48eca1
mov ecx, dword [ebp - 0x7c0]
mov edi, dword [ebp - 0x7b4]
add ecx, 0x100
movzx eax, dx
xor esi, esi
mov dword [ebp - 0x844], ecx
mov dword [ebp - 0x870], eax
nop word [eax + eax]
movss xmm0, dword [edi]
push esi
movss dword [ebp - 0x7e4], xmm0
call fcn.00410b00
movss xmm0, dword [ebp - 0x7e4]
lea edi, [edi + 4]
movss xmm4, dword [ebp - 0x7a4]
inc esi
sub dword [ebp - 0x870], 1
divss xmm0, xmm4
mov ecx, dword [ebp - 0x844]
movss dword [eax], xmm0
jne 0x48ec50
mov esi, dword [ebp - 0x828]
mov edi, dword [ebp - 0x924]
mov edx, dword [ebp - 0x790]
jmp 0x48eca9
movss xmm4, dword [ebp - 0x7a4]
movss xmm5, dword [ebp - 0x7fc]
mov eax, dword [ebp - 0x79c]
movsd xmm1, qword [ebp - 0x8a0]
cvtps2pd xmm2, xmm5
push esi
subsd xmm1, qword [eax + 0x278]
mulsd xmm2, qword [eax + 0x708]
mov eax, dword [ebp - 0x7b4]
movss xmm3, dword [ebp - 0x834]
cvtps2pd xmm3, xmm3
movss xmm0, dword [eax]
cvtps2pd xmm0, xmm0
movsx eax, dx
push eax
lea eax, [ebx + 0x64]
push edi
sub esp, 0xc
cmp word [ebp - 0x86c], 8
mulsd xmm3, qword [ebp - 0x960]
mulsd xmm1, xmm0
movss xmm0, dword [ebp - 0x7c4]
divsd xmm2, qword [ebp - 0x8a0]
divsd xmm1, qword [ebp - 0x9c0]
cvtps2pd xmm0, xmm0
movss dword [esp + 8], xmm4
addsd xmm1, xmm0
cvtpd2ps xmm1, xmm1
ja 0x48ed5f
movss xmm0, dword [ebp - 0x7bc]
subss xmm0, xmm5
cvtps2pd xmm0, xmm0
addsd xmm0, xmm2
addsd xmm0, xmm3
cvtpd2ps xmm0, xmm0
movss dword [esp + 4], xmm0
movss dword [esp], xmm1
push 8
jmp 0x48ed8b
movss xmm0, dword [ebp - 0x85c]
addss xmm0, dword [ebp - 0x7bc]
cvtps2pd xmm0, xmm0
subsd xmm0, xmm2
subsd xmm0, xmm3
cvtpd2ps xmm0, xmm0
movss dword [esp + 4], xmm0
movss dword [esp], xmm1
push 0
push ecx
mov ecx, esp
push eax
call fcn.0043ce00
push ecx
mov ecx, esp
push dword [ebp - 0x80c]
call fcn.004a86c0
push ecx
mov ecx, esp
push dword [ebp - 0x808]
call fcn.004a86c0
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
mov ecx, dword [ebp - 0x7c0]
xor edx, edx
call fcn.0043a210
mov edx, dword [ebp - 0x79c]
push edi
movzx ecx, byte [edx + 0x7e8]
movzx eax, byte [edx + 0x7e9]
shl ecx, 8
or ecx, eax
movzx eax, byte [edx + 0x7ea]
shl ecx, 8
or ecx, eax
mov dword [ebp - 0x83c], ecx
call fcn.00560853
mov edx, dword [ebp - 0x79c]
add esp, 4
mov edi, dword [ebp - 0x798]
mov al, byte [edx + 0x6fc]
test al, al
je 0x48eefd
movzx ecx, word [edi + 8]
test ecx, 0x100
je 0x48eefd
movss xmm0, dword [ebp - 0x7fc]
sub esp, 8
cvtps2pd xmm0, xmm0
shr cx, 0xb
movzx esi, cx
mov dword [ebp - 0x8a8], esi
movsd xmm2, qword [ebp - 0x7e0]
mulsd xmm0, qword [edx + 0x710]
movsd qword [esp], xmm2
push edx
divsd xmm0, qword [ebp - 0x8a0]
cvttsd2si eax, xmm0
movzx eax, ax
push eax
mov eax, dword [ebp - 0x790]
movsx ecx, ax
mov eax, dword [edi + 0xc]
movd xmm0, ecx
movd xmm1, dword [eax + 0xa80]
cvtdq2pd xmm1, xmm1
cvtdq2pd xmm0, xmm0
mulsd xmm1, xmm2
mulsd xmm1, xmm0
cvtpd2ps xmm0, xmm1
addss xmm0, dword [ebp - 0x7d0]
cvttss2si eax, xmm0
movss xmm0, dword [ebp - 0x7a4]
push eax
cvttss2si eax, dword [ebp - 0x7c4]
push eax
lea eax, [ebp - 0x6d4]
push eax
push esi
sub esp, 8
lea eax, [ebx + 0x64]
mov ecx, esp
movss dword [esp + 4], xmm0
push eax
call fcn.0043ce00
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
push ecx
lea eax, [ebx + 0x5c]
mov ecx, esp
push eax
call fcn.0043ce00
mov ecx, dword [ebp - 0x7f4]
call fcn.004ea7b0
mov edx, dword [ebp - 0x79c]
mov al, byte [edx + 0x6fc]
mov esi, dword [ebp - 0x800]
mov dword [ebp - 0x7a0], esi
test al, al
je 0x48eff9
mov eax, dword [ebp - 0x794]
mov dword [ebp - 0x7a0], esi
test dword [eax], 0x40000
jne 0x48eff9
mov eax, 0x400
mov dword [ebp - 0x7a0], esi
test word [edi + 8], ax
je 0x48eff9
movss xmm0, dword [ebp - 0x7fc]
sub esp, 8
cvtps2pd xmm0, xmm0
movsd xmm2, qword [ebp - 0x7e0]
mulsd xmm0, qword [edx + 0x710]
movsd qword [esp], xmm2
push edx
divsd xmm0, qword [ebp - 0x8a0]
cvttsd2si eax, xmm0
movzx eax, ax
push eax
mov eax, dword [ebp - 0x790]
movsx ecx, ax
mov eax, dword [edi + 0xc]
movd xmm0, ecx
movd xmm1, dword [eax + 0xa80]
cvtdq2pd xmm1, xmm1
cvtdq2pd xmm0, xmm0
mulsd xmm1, xmm2
mulsd xmm1, xmm0
cvttsd2si eax, xmm1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
addss xmm0, dword [ebp - 0x7d0]
cvttss2si eax, xmm0
push eax
cvttss2si eax, dword [ebp - 0x7c4]
push eax
lea eax, [ebp - 0x6d4]
push eax
push dword [ebp - 0x8a8]
lea eax, [ebx + 0x64]
push ecx
mov ecx, esp
push eax
call fcn.0043ce00
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
movss xmm3, dword [ebp - 0x7a4]
mov ecx, dword [ebp - 0x7f4]
call fcn.004eb6f0
mov dword [ebp - 0x7a0], esi
mov edx, dword [ebp - 0x794]
mov byte [ebp - 0x785], 1
mov ecx, dword [edx]
test cl, 0x20
jne 0x489ad0
test ecx, 0x400c0
jne 0x48f079
mov esi, dword [ebp - 0x798]
mov edi, dword [ebp - 0x790]
movsx ecx, di
sub ecx, dword [ebp - 0x7d4]
mov eax, dword [esi + 0xc]
movd xmm0, ecx
movd xmm1, dword [eax + 0xa80]
cvtdq2pd xmm1, xmm1
cvtdq2pd xmm0, xmm0
mulsd xmm1, qword [ebp - 0x7e0]
mulsd xmm1, xmm0
cvtpd2ps xmm0, xmm1
addss xmm0, dword [ebp - 0x7d0]
mov byte [ebp - 0x785], 1
addss xmm0, dword [ebp - 0x7a8]
movss dword [ebp - 0x7a8], xmm0
jmp 0x489adc
movss xmm3, dword [ebp - 0x854]
ucomiss xmm3, dword [ebp - 0x7ac]
mov eax, dword [ebp - 0x9f8]
mov dword [ebp - 0x7a0], eax
lahf
test ah, 0x44
jnp 0x48f148
mov eax, dword [ebp - 0x994]
test cl, 0x40
je 0x48f0b3
cmp ax, 1
je 0x48f148
test cl, cl
jns 0x48f0c1
cmp ax, 2
je 0x48f148
mov esi, dword [ebp - 0x798]
mov edi, dword [ebp - 0x790]
movsx ecx, di
movss xmm2, dword [ebp - 0x7d0]
mov eax, dword [esi + 0xc]
mov byte [ebp - 0x785], 1
movd xmm0, ecx
cvtdq2pd xmm0, xmm0
mov ecx, dword [ebp - 0x7a0]
movd xmm1, dword [eax + 0xa80]
cvtdq2pd xmm1, xmm1
mulsd xmm1, qword [ebp - 0x7e0]
mulsd xmm1, xmm0
cvttsd2si eax, xmm1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
addss xmm0, xmm2
comiss xmm0, xmm3
jbe 0x489ae2
cvtpd2ps xmm0, xmm1
mov byte [ebp - 0x785], 1
addss xmm0, xmm2
subss xmm0, xmm3
addss xmm0, dword [ebp - 0x7a8]
movss dword [ebp - 0x7a8], xmm0
jmp 0x489ae2
mov esi, dword [ebp - 0x798]
mov edi, dword [ebp - 0x790]
movsx ecx, di
mov eax, dword [esi + 0xc]
movd xmm0, ecx
cvtdq2pd xmm0, xmm0
movd xmm1, dword [eax + 0xa80]
cvtdq2pd xmm1, xmm1
mulsd xmm1, qword [ebp - 0x7e0]
mulsd xmm1, xmm0
cvttsd2si eax, xmm1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
jmp 0x48f055
test cl, cl
je 0x489fc1
cmp dword [ebp - 0x9b0], 2
je 0x489fc1
mov edx, dword [ebp - 0x7e8]
mov eax, 0xff3b
movzx esi, word [edx]
mov dword [ebp - 0x86c], esi
cmp si, ax
jne 0x48fab0
mov eax, 0xff03
cmp word [edx + 2], ax
jne 0x48fab0
movzx eax, word [edx + 6]
mov ecx, 0xff3d
cmp ax, cx
je 0x48f397
mov edi, 0x30ec
cmp ax, di
je 0x48f36f
mov edi, 0x4e00
cmp ax, di
mov edi, 0x4e8c
je 0x48f374
cmp ax, di
je 0x48f374
cmp ax, word [ebp - 0xbc8]
je 0x48f374
mov edi, 0xff08
lea eax, [edx + 4]
cmp word [eax], di
mov edi, dword [ebp - 0x790]
jne 0x48fab9
movsx eax, di
mov ecx, 0xff09
cmp word [edx + eax*2 - 4], cx
mov ecx, 0xff3d
jne 0x48fab6
cmp word [edx + eax*2 - 2], cx
jne 0x48fab6
xor ecx, ecx
add eax, 0xfffffffc
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.00560858
mov ecx, dword [ebp - 0x884]
lea edx, [edi - 5]
add esp, 4
mov dword [ebp - 0x844], eax
push 1
push eax
call fcn.0040c7c0
movss xmm0, dword [ebp - 0x7a4]
add esp, 8
movzx edi, ax
mov eax, dword [ebp - 0x7a0]
mov dword [ebp - 0x830], eax
mov eax, dword [ebp - 0x798]
push 1
push ecx
mov ecx, dword [ebp - 0x844]
mov eax, dword [eax + 0xc]
movss dword [esp], xmm0
push edi
push dword [ebp - 0x7f8]
mov esi, dword [eax + 0x410]
mov edx, esi
push dword [ebp - 0x7b4]
mov dword [ebp - 0x7c0], edi
mov dword [ebp - 0x7d4], esi
call fcn.0040ec40
add esp, 0x14
movss dword [ebp - 0x7d0], xmm0
test di, di
jle 0x48f5a0
mov eax, dword [ebp - 0x798]
lea ecx, [esi + 0x100]
mov eax, dword [eax + 0xc]
movd xmm0, dword [eax + 0xa80]
mov eax, dword [ebp - 0x7b4]
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0x7e0]
cvtpd2ps xmm0, xmm0
addss xmm0, dword [eax]
movss dword [eax], xmm0
mov eax, dword [ebp - 0x7f8]
push dword [eax]
call fcn.00410b00
mov edx, dword [ebp - 0x798]
movss xmm3, dword [ebp - 0x7a4]
movsd xmm2, qword [ebp - 0x7e0]
cvtps2pd xmm0, xmm3
mov ecx, dword [edx + 0xc]
movd xmm1, dword [ecx + 0xa80]
cvtdq2pd xmm1, xmm1
mulsd xmm1, xmm2
divsd xmm1, xmm0
cvtpd2ps xmm0, xmm1
addss xmm0, dword [eax]
movss dword [eax], xmm0
jmp 0x48f5b6
mov edi, 0x4e8c
cmp word [edx + 8], cx
jne 0x48f214
mov ecx, 0x30ec
cmp ax, cx
je 0x48f3a6
mov ecx, 0x4e00
cmp ax, cx
je 0x48f3a6
cmp ax, di
je 0x48f3a6
mov ecx, 0x4e09
mov edi, 1
cmp ax, cx
jne 0x48f3ab
mov edi, 2
movss xmm0, dword [ebp - 0x7a4]
movzx eax, di
mov dword [ebp - 0x7d4], eax
mov eax, dword [ebp - 0x7a0]
mov dword [ebp - 0x830], eax
mov eax, dword [ebp - 0x798]
push 1
push ecx
mov ecx, dword [ebp - 0x93c]
mov eax, dword [eax + 0xc]
movss dword [esp], xmm0
push edi
push dword [ebp - 0x7f8]
mov esi, dword [eax + 0x410]
mov edx, esi
push dword [ebp - 0x7b4]
mov dword [ebp - 0x844], edi
mov dword [ebp - 0x800], esi
call fcn.0040ec40
mov eax, dword [ebp - 0x798]
add esp, 0x14
mov ecx, dword [ebp - 0x7f8]
movss dword [ebp - 0x7d0], xmm0
mov eax, dword [eax + 0xc]
movd xmm0, dword [eax + 0xa80]
mov eax, dword [ebp - 0x7b4]
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0x7e0]
cvtpd2ps xmm0, xmm0
addss xmm0, dword [eax]
movss dword [eax], xmm0
push dword [ecx]
lea ecx, [esi + 0x100]
call fcn.00410b00
mov ecx, dword [ebp - 0x798]
mov edx, 1
movss xmm3, dword [ebp - 0x7a4]
movsd xmm2, qword [ebp - 0x7e0]
cvtps2pd xmm1, xmm3
mov ecx, dword [ecx + 0xc]
add ecx, 0xa80
movd xmm0, dword [ecx]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm2
divsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
addss xmm0, dword [eax]
movss dword [eax], xmm0
mov eax, dword [ebp - 0x7d4]
cmp dx, ax
jae 0x48f545
mov eax, dword [ebp - 0x7b4]
mov edx, dword [ebp - 0x7f8]
sub edx, eax
mov dword [ebp - 0x7e4], edx
lea esi, [eax + 4]
lea eax, [edi - 1]
movzx edi, ax
movd xmm0, dword [ecx]
mov ecx, dword [ebp - 0x800]
cvtdq2pd xmm0, xmm0
lea ecx, [ecx + 0x100]
mulsd xmm0, xmm2
cvtpd2ps xmm0, xmm0
addss xmm0, dword [esi]
movss dword [esi], xmm0
push dword [edx + esi]
call fcn.00410b00
mov ecx, dword [ebp - 0x798]
add esi, 4
movss xmm3, dword [ebp - 0x7a4]
movsd xmm2, qword [ebp - 0x7e0]
cvtps2pd xmm1, xmm3
mov ecx, dword [ecx + 0xc]
add ecx, 0xa80
mov edx, dword [ebp - 0x7e4]
movd xmm0, dword [ecx]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm2
divsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
addss xmm0, dword [eax]
movss dword [eax], xmm0
sub edi, 1
jne 0x48f4c1
mov edi, dword [ebp - 0x844]
mov eax, dword [ebp - 0x7d4]
cmp word [ebp - 0x84c], 0x40
xorps xmm2, xmm2
mov edx, dword [ebp - 0x818]
xorps xmm1, xmm1
mov ecx, dword [ebp - 0x814]
cvtsi2ss xmm2, dword [edx + 4]
jne 0x48f8b0
cvtsi2ss xmm1, dword [edx + 8]
movss xmm0, dword [ebp - 0x7fc]
subss xmm1, dword [ebp - 0x81c]
addss xmm2, dword [ebp - 0x7a8]
mulss xmm0, dword [0x5ea4c8]
subss xmm2, dword [ebp - 0x824]
subss xmm1, xmm0
jmp 0x48f8cc
movss xmm3, dword [ebp - 0x7a4]
movsd xmm2, qword [ebp - 0x7e0]
mov edx, dword [ebp - 0x798]
mov eax, 1
cmp ax, di
jge 0x48f66e
mov eax, dword [ebp - 0x7b4]
mov ecx, dword [edx + 0xc]
mov edx, dword [ebp - 0x7f8]
add ecx, 0xa80
sub edx, eax
lea esi, [eax + 4]
mov dword [ebp - 0x7e4], edx
lea eax, [edi - 1]
movzx edi, ax
nop word [eax + eax]
movd xmm0, dword [ecx]
mov ecx, dword [ebp - 0x7d4]
cvtdq2pd xmm0, xmm0
lea ecx, [ecx + 0x100]
mulsd xmm0, xmm2
cvtpd2ps xmm0, xmm0
addss xmm0, dword [esi]
movss dword [esi], xmm0
push dword [esi + edx]
call fcn.00410b00
mov ecx, dword [ebp - 0x798]
add esi, 4
movss xmm3, dword [ebp - 0x7a4]
movsd xmm2, qword [ebp - 0x7e0]
cvtps2pd xmm0, xmm3
mov ecx, dword [ecx + 0xc]
add ecx, 0xa80
mov edx, dword [ebp - 0x7e4]
movd xmm1, dword [ecx]
cvtdq2pd xmm1, xmm1
mulsd xmm1, xmm2
divsd xmm1, xmm0
cvtpd2ps xmm0, xmm1
addss xmm0, dword [eax]
movss dword [eax], xmm0
sub edi, 1
jne 0x48f5f0
mov edi, dword [ebp - 0x7c0]
cmp word [ebp - 0x84c], 0x40
xorps xmm2, xmm2
mov ecx, dword [ebp - 0x818]
xorps xmm1, xmm1
mov eax, dword [ebp - 0x814]
cvtsi2ss xmm2, dword [ecx + 4]
jne 0x48f6cd
cvtsi2ss xmm1, dword [ecx + 8]
movss xmm0, dword [ebp - 0x7fc]
subss xmm1, dword [ebp - 0x87c]
mulss xmm0, dword [0x5ea4cc]
addss xmm2, dword [ebp - 0x7a8]
subss xmm1, xmm0
xorps xmm0, xmm0
cvtsi2ss xmm0, dword [eax]
subss xmm2, dword [ebp - 0x824]
subss xmm1, xmm0
jmp 0x48f708
cvtsi2ss xmm1, dword [ecx]
xorps xmm0, xmm0
addss xmm1, dword [ebp - 0x7a8]
cvtsi2ss xmm0, dword [eax]
subss xmm1, dword [ebp - 0x824]
addss xmm2, dword [ebp - 0x87c]
subss xmm1, xmm0
movss xmm0, dword [ebp - 0x7fc]
divss xmm0, dword [0x5ea608]
addss xmm2, xmm0
push dword [ebp - 0x83c]
xorps xmm0, xmm0
movsx esi, di
cvtsi2ss xmm0, dword [eax + 4]
push esi
lea eax, [ebx + 0x64]
push dword [ebp - 0x844]
subss xmm2, xmm0
movss dword [ebp - 0x7c4], xmm1
sub esp, 0xc
movss dword [esp + 8], xmm3
movss dword [esp + 4], xmm2
movss dword [esp], xmm1
push 0x18
push ecx
mov ecx, esp
movss dword [ebp - 0x7bc], xmm2
push eax
call fcn.0043ce00
push ecx
mov ecx, esp
push dword [ebp - 0x80c]
call fcn.004a86c0
push ecx
mov ecx, esp
push dword [ebp - 0x808]
call fcn.004a86c0
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
mov ecx, dword [ebp - 0x7d4]
xor edx, edx
call fcn.0043a210
mov ecx, dword [ebp - 0x798]
movss xmm2, dword [ebp - 0x824]
ucomiss xmm2, dword [ebp - 0x7ac]
mov eax, dword [ecx + 0xc]
movd xmm1, dword [eax + 0xa80]
mov eax, dword [ebp - 0x830]
cvtdq2pd xmm1, xmm1
mov dword [ebp - 0x7a0], eax
movd xmm0, esi
mulsd xmm1, qword [ebp - 0x7e0]
cvtdq2pd xmm0, xmm0
lahf
mulsd xmm1, xmm0
cvtpd2ps xmm1, xmm1
addss xmm1, dword [ebp - 0x7d0]
test ah, 0x44
jp 0x48f7e5
xor ecx, ecx
jmp 0x48f7eb
mov ecx, dword [ebp - 0xa04]
comiss xmm1, xmm2
jbe 0x48f88c
mov eax, dword [ebp - 0x810]
movaps xmm0, xmm1
subss xmm0, xmm2
sub eax, ecx
xor ecx, ecx
mov dword [ebp - 0x810], eax
addss xmm0, dword [ebp - 0x7a8]
movss dword [ebp - 0x7a8], xmm0
cmp cx, di
jge 0x48f87c
mov esi, dword [ebp - 0x850]
mov edi, dword [ebp - 0x890]
mov ecx, dword [ebp - 0x7b4]
mov edx, dword [ebp - 0x844]
cwde
lea esi, [esi + eax*4]
lea edi, [edi + eax*2]
mov eax, dword [ebp - 0x7c0]
movzx eax, ax
mov dword [ebp - 0x7d4], eax
nop
mov ax, word [edx]
lea edx, [edx + 2]
mov word [edi], ax
lea edi, [edi + 2]
mov eax, dword [ecx]
lea esi, [esi + 4]
add ecx, 4
mov dword [esi - 4], eax
sub dword [ebp - 0x7d4], 1
jne 0x48f850
mov edi, dword [ebp - 0x7c0]
mov eax, dword [ebp - 0x810]
add eax, edi
movss dword [ebp - 0x824], xmm1
mov dword [ebp - 0x810], eax
push dword [ebp - 0x844]
movzx eax, di
mov dword [ebp - 0xa04], eax
call fcn.00560853
movsd xmm5, qword [ebp - 0x7e0]
add esp, 4
jmp 0x48fa5d
cvtsi2ss xmm1, dword [edx]
addss xmm2, dword [ebp - 0x864]
addss xmm1, dword [ebp - 0x7a8]
subss xmm1, dword [ebp - 0x824]
push dword [ebp - 0x83c]
xorps xmm0, xmm0
movzx esi, ax
cvtsi2ss xmm0, dword [ecx]
push esi
lea eax, [ebx + 0x64]
push dword [ebp - 0x93c]
subss xmm1, xmm0
xorps xmm0, xmm0
cvtsi2ss xmm0, dword [ecx + 4]
sub esp, 0xc
movss dword [esp + 8], xmm3
subss xmm2, xmm0
movss dword [ebp - 0x7c4], xmm1
movss dword [esp + 4], xmm2
movss dword [esp], xmm1
push 0x18
push ecx
mov ecx, esp
movss dword [ebp - 0x7bc], xmm2
push eax
call fcn.0043ce00
push ecx
mov ecx, esp
push dword [ebp - 0x80c]
call fcn.004a86c0
push ecx
mov ecx, esp
push dword [ebp - 0x808]
call fcn.004a86c0
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
mov ecx, dword [ebp - 0x800]
xor edx, edx
call fcn.0043a210
mov eax, dword [ebp - 0x830]
movsd xmm5, qword [ebp - 0x7e0]
movss xmm2, dword [ebp - 0x824]
ucomiss xmm2, dword [ebp - 0x7ac]
mov dword [ebp - 0x7a0], eax
mov eax, dword [ebp - 0x798]
mov eax, dword [eax + 0xc]
movd xmm0, esi
movd xmm1, dword [eax + 0xa80]
cvtdq2pd xmm1, xmm1
cvtdq2pd xmm0, xmm0
mulsd xmm1, xmm5
lahf
mulsd xmm1, xmm0
cvtpd2ps xmm1, xmm1
addss xmm1, dword [ebp - 0x7d0]
test ah, 0x44
jp 0x48f9b8
xor ecx, ecx
jmp 0x48f9be
mov ecx, dword [ebp - 0xa04]
comiss xmm1, xmm2
jbe 0x48fa54
mov eax, dword [ebp - 0x810]
movaps xmm0, xmm1
mov edx, dword [ebp - 0x850]
subss xmm0, xmm2
mov esi, dword [ebp - 0x890]
sub eax, ecx
mov ecx, dword [ebp - 0x7b4]
mov edi, dword [ebp - 0x93c]
mov dword [ebp - 0x810], eax
addss xmm0, dword [ebp - 0x7a8]
cwde
lea edx, [edx + eax*4]
movss dword [ebp - 0x7a8], xmm0
lea esi, [esi + eax*2]
mov eax, dword [ebp - 0x844]
movzx eax, ax
mov dword [ebp - 0x7d4], eax
nop word [eax + eax]
mov ax, word [edi]
lea edi, [edi + 2]
mov word [esi], ax
lea esi, [esi + 2]
mov eax, dword [ecx]
lea edx, [edx + 4]
add ecx, 4
mov dword [edx - 4], eax
sub dword [ebp - 0x7d4], 1
jne 0x48fa20
mov edi, dword [ebp - 0x844]
add dword [ebp - 0x810], edi
movss dword [ebp - 0x824], xmm1
movzx eax, di
mov dword [ebp - 0xa04], eax
cmp byte [ebp - 0x8f5], 0
movss xmm2, dword [ebp - 0x7ac]
movss xmm4, dword [ebp - 0x7a8]
movss xmm0, dword [ebp - 0x7c8]
mov esi, dword [ebp - 0x79c]
mov edi, dword [ebp - 0x790]
mov eax, dword [ebp - 0x794]
movss dword [ebp - 0x854], xmm2
jne 0x4a5a6d
xor cl, cl
mov byte [ebp - 0x8a4], 1
mov byte [ebp - 0x785], cl
jmp 0x49d3c0
mov edi, dword [ebp - 0x790]
lea eax, [edx + 4]
cmp byte [ebp - 0x892], 0
je 0x49314e
xor ecx, ecx
mov dword [ebp - 0x830], 0
mov esi, 0x300c
mov byte [ebp - 0x81e], 0
mov byte [ebp - 0x801], 0
mov dword [ebp - 0x800], ecx
cmp word [eax], si
jne 0x48fb1d
mov esi, 0x203b
cmp word [edx + 6], si
jne 0x48fb1d
mov eax, 0x300d
cmp word [edx + 8], ax
jne 0x48fb1d
mov esi, 0x306f
mov eax, 4
cmp word [edx + 0xa], si
cmove ecx, eax
mov dword [ebp - 0x800], ecx
mov edi, dword [0x59d2a0]
xor esi, esi
mov dword [ebp - 0x7b8], esi
cmp word [edi], si
je 0x48fc2e
lea edx, [edx + ecx*2]
mov dword [ebp - 0x7d4], ecx
xor esi, esi
mov dword [ebp - 0x954], 0
xor eax, eax
mov byte [ebp - 0x8fd], 1
add edx, 4
mov ecx, dword [ebp - 0x954]
movzx eax, word [edi + eax]
inc ecx
mov dword [ebp - 0x954], ecx
movzx ecx, cx
mov dword [ebp - 0x7e4], ecx
movzx ecx, word [edx]
cmp cx, word [ebp - 0xa5c]
cmove ecx, dword [ebp - 0xa54]
cmp ax, word [ebp - 0xa5c]
cmove eax, dword [ebp - 0xa54]
cmp cx, ax
jne 0x48fbf2
mov ecx, dword [ebp - 0x7d4]
inc esi
movsx eax, si
inc ecx
add eax, eax
mov dword [ebp - 0x7d4], ecx
add edx, 2
cmp word [edi + eax], 0
jne 0x48fb55
mov edx, dword [ebp - 0x7e8]
mov esi, 0x3001
mov eax, dword [ebp - 0x7e4]
movzx edi, ax
mov dword [ebp - 0x954], edi
movzx ecx, word [edx + ecx*2 + 4]
cmp cx, si
je 0x48fc28
movzx esi, ax
mov dword [ebp - 0x954], esi
mov esi, 0xff3d
cmp cx, si
je 0x48fc28
movzx eax, ax
mov dword [ebp - 0x954], eax
jmp 0x48fbf8
mov edx, dword [ebp - 0x7e8]
mov esi, dword [ebp - 0x7b8]
mov ecx, dword [ebp - 0x800]
inc esi
movsx eax, si
mov dword [ebp - 0x7b8], esi
mov byte [ebp - 0x8fd], 0
mov edi, dword [eax*4 + 0x59d2a0]
cmp word [edi], 0
jne 0x48fb34
jmp 0x48fc2e
mov esi, dword [ebp - 0x7b8]
xor cl, cl
xor dl, dl
mov byte [ebp - 0x892], dl
mov byte [ebp - 0x7ae], cl
cmp byte [ebp - 0x8fd], cl
jne 0x48fcb6
mov edi, dword [ebp - 0x7e8]
lea eax, [ebp - 0x76c]
mov edx, dword [ebp - 0x790]
mov ecx, edi
push eax
lea eax, [ebp - 0x770]
push eax
lea eax, [ebp - 0x6c4]
push eax
call fcn.0040a9d0
mov dl, al
add esp, 0xc
mov byte [ebp - 0x892], dl
test dl, dl
je 0x48fc85
mov cl, byte [ebp - 0x7ae]
jmp 0x48fcaf
mov edx, dword [ebp - 0x790]
lea eax, [ebp - 0x1c]
push eax
mov ecx, edi
call fcn.0040b2d0
mov cl, al
add esp, 4
mov byte [ebp - 0x7ae], cl
test cl, cl
je 0x4927e8
mov dl, byte [ebp - 0x892]
mov byte [ebp - 0x8fd], 1
mov eax, dword [ebp - 0x794]
mov edi, dword [ebp - 0x84c]
mov eax, dword [eax]
cmp di, 0x40
jne 0x48fdde
test al, 0x20
je 0x48fdde
test cl, cl
je 0x48fd05
xor edx, edx
cmp word [ebp - 0x1a], dx
setne dl
inc edx
mov dword [ebp - 0x838], edx
mov ecx, dword [ebp - 0x7cc]
mov ax, dx
sub ax, word [ecx + 4]
movzx edi, ax
mov dword [ebp - 0x92c], edi
jmp 0x490b14
test dl, dl
je 0x48fd90
movsx eax, word [ebp - 0x770]
xor edx, edx
mov dword [ebp - 0x838], edx
lea ecx, [eax + eax*2]
movsx eax, word [ebp - 0x76c]
shl ecx, 5
add ecx, eax
cmp word [ebp - 0x6c4], 3
jne 0x48fd61
mov ecx, dword [ecx*4 + 0x5a5888]
cmp word [ecx], dx
je 0x490b14
inc edx
movsx eax, dx
cmp word [ecx + eax*2], 0
jne 0x48fd45
mov dword [ebp - 0x838], edx
test dx, dx
jle 0x490b14
jmp 0x48fcea
mov ecx, dword [ecx*4 + 0x59ab68]
cmp word [ecx], dx
je 0x490b14
inc edx
movsx eax, dx
cmp word [ecx + eax*2], 0
jne 0x48fd71
mov dword [ebp - 0x838], edx
test dx, dx
jle 0x490b14
jmp 0x48fcea
movsx eax, si
xor edx, edx
mov dword [ebp - 0x838], edx
mov ecx, dword [eax*4 + 0x592508]
cmp word [ecx], dx
je 0x48fdc1
inc edx
movsx eax, dx
cmp word [ecx + eax*2], 0
jne 0x48fda7
mov dword [ebp - 0x838], edx
test dx, dx
jg 0x48fcea
mov ecx, dword [ebp - 0x7cc]
mov eax, 1
sub ax, word [ecx + 4]
movzx edi, ax
mov dword [ebp - 0x92c], edi
jmp 0x490b14
test cl, cl
je 0x48ff7b
test al, 0xc0
jne 0x48fdf1
test eax, 0x40000
je 0x48fe14
mov eax, dword [ebp - 0x7a0]
mov dword [ebp - 0x830], eax
mov eax, dword [ebp - 0x798]
mov eax, dword [eax + 0xc]
mov esi, dword [eax + 0x410]
mov dword [ebp - 0x7a0], esi
jmp 0x48fe1a
mov esi, dword [ebp - 0x7a0]
movss xmm0, dword [ebp - 0x7a4]
xor eax, eax
cmp word [ebp - 0x1a], ax
mov edx, esi
mov edi, dword [ebp - 0x7b4]
push 1
push ecx
setne al
movss dword [esp], xmm0
inc eax
lea ecx, [ebp - 0x1c]
push eax
push dword [ebp - 0x7f8]
mov dword [ebp - 0x838], eax
push edi
call fcn.0040ec40
mov edx, dword [ebp - 0x798]
movaps xmm2, xmm0
movsd xmm3, qword [ebp - 0x7e0]
add esp, 0x14
mov eax, dword [edx + 0xc]
movd xmm1, dword [eax + 0xa80]
cvtdq2pd xmm1, xmm1
mulsd xmm1, xmm3
cvtpd2ps xmm1, xmm1
addss xmm1, dword [edi]
movss dword [edi], xmm1
movd xmm0, dword [eax + 0xa80]
mov eax, dword [ebp - 0x7f4]
cvtdq2pd xmm0, xmm0
mov eax, dword [eax + 0x14]
cmp word [eax + 8], 3
mulsd xmm0, xmm3
cvtpd2ps xmm0, xmm0
addss xmm0, xmm2
movss dword [ebp - 0x7d0], xmm0
jne 0x48ff57
movzx ecx, word [edx + 6]
test cx, cx
je 0x48ff57
cmp dword [ebp - 0x6b8], 0
je 0x48ff57
cmp edx, dword [ebp - 0x774]
movss xmm0, dword [ebp - 0x7a4]
setne al
movzx eax, al
push eax
push 0
push ecx
movss dword [esp], xmm0
push dword [ebp - 0x7f8]
movsx eax, cx
push esi
mov esi, dword [ebp - 0x838]
push ecx
mov ecx, dword [ebp - 0x7f4]
movd xmm0, eax
lea eax, [ebp - 0x1c]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm3
cvtpd2ps xmm0, xmm0
movss dword [esp], xmm0
push esi
push edi
push eax
call fcn.004a74b0
mov ecx, dword [ebp - 0x798]
movsx eax, word [ecx + 6]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0x7e0]
cvtpd2ps xmm0, xmm0
addss xmm0, dword [ebp - 0x7d0]
movss dword [ebp - 0x7d0], xmm0
jmp 0x48ff5d
mov esi, dword [ebp - 0x838]
mov ecx, dword [ebp - 0x7cc]
mov edi, dword [ebp - 0x84c]
sub si, word [ecx + 4]
movzx edx, si
mov dword [ebp - 0x92c], edx
jmp 0x490ac2
test dl, dl
je 0x4904a9
movsx eax, word [ebp - 0x770]
xor edx, edx
mov dword [ebp - 0x838], edx
lea ecx, [eax + eax*2]
movsx eax, word [ebp - 0x76c]
shl ecx, 5
add ecx, eax
cmp word [ebp - 0x6c4], 3
jne 0x490225
mov ecx, dword [ecx*4 + 0x5a5888]
cmp word [ecx], dx
je 0x490abc
nop
movzx edi, dx
inc edx
movsx eax, dx
cmp word [ecx + eax*2], 0
jne 0x48ffc0
mov dword [ebp - 0x838], edx
test dx, dx
jle 0x490b98
mov eax, dword [ebp - 0x794]
mov eax, dword [eax]
test al, 0xc0
jne 0x48fff0
test eax, 0x40000
je 0x490013
mov eax, dword [ebp - 0x7a0]
mov dword [ebp - 0x830], eax
mov eax, dword [ebp - 0x798]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0x410]
mov dword [ebp - 0x7a0], eax
jmp 0x490019
mov eax, dword [ebp - 0x7a0]
movss xmm0, dword [ebp - 0x7a4]
push 1
push ecx
movss dword [esp], xmm0
push edx
push dword [ebp - 0x7f8]
mov edx, eax
push dword [ebp - 0x7b4]
call fcn.0040ec40
mov eax, dword [ebp - 0x798]
movaps xmm2, xmm0
movsd xmm3, qword [ebp - 0x7e0]
add esp, 0x14
mov edx, dword [ebp - 0x7b4]
mov esi, dword [ebp - 0x838]
mov eax, dword [eax + 0xc]
movd xmm1, dword [eax + 0xa80]
cvtdq2pd xmm1, xmm1
mulsd xmm1, xmm3
cvtpd2ps xmm1, xmm1
addss xmm1, dword [edx]
movss dword [edx], xmm1
movd xmm0, dword [eax + 0xa80]
mov eax, 1
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm3
cvtpd2ps xmm1, xmm0
movaps xmm0, xmm1
addss xmm0, xmm2
movss dword [ebp - 0x7d0], xmm0
cmp ax, si
jge 0x49013c
lea esi, [eax + 1]
add edx, 4
movsx eax, word [ebp - 0x770]
lea ecx, [eax + eax*2]
movsx eax, word [ebp - 0x76c]
shl ecx, 5
add ecx, eax
mov eax, dword [ecx*4 + 0x5a5888]
mov ecx, 0xfc00
and cx, word [eax + esi]
mov eax, 0xd800
cmp cx, ax
je 0x490125
mov eax, 0xdc00
cmp cx, ax
je 0x490125
mov ecx, dword [ebp - 0x798]
addss xmm1, dword [edx]
mov eax, dword [ecx + 0xc]
movss dword [edx], xmm1
movd xmm0, dword [eax + 0xa80]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm3
cvtpd2ps xmm1, xmm0
movaps xmm0, xmm1
addss xmm0, dword [ebp - 0x7d0]
movss dword [ebp - 0x7d0], xmm0
add esi, 2
add edx, 4
sub edi, 1
jne 0x4900b3
mov esi, dword [ebp - 0x838]
mov edx, dword [ebp - 0x7b4]
mov eax, dword [ebp - 0x7f4]
mov eax, dword [eax + 0x14]
cmp word [eax + 8], 3
jne 0x490204
mov edi, dword [ebp - 0x798]
movzx ecx, word [edi + 6]
test cx, cx
je 0x490204
cmp dword [ebp - 0x6b8], 0
je 0x490204
cmp edi, dword [ebp - 0x774]
movss xmm0, dword [ebp - 0x7a4]
setne al
movzx eax, al
push eax
push 0
push ecx
movss dword [esp], xmm0
push dword [ebp - 0x7f8]
movsx eax, cx
push dword [ebp - 0x7a0]
push ecx
movd xmm0, eax
movsx eax, word [ebp - 0x770]
cvtdq2pd xmm0, xmm0
lea ecx, [eax + eax*2]
movsx eax, word [ebp - 0x76c]
shl ecx, 5
add ecx, eax
mulsd xmm0, xmm3
cvtpd2ps xmm0, xmm0
movss dword [esp], xmm0
push esi
push edx
push dword [ecx*4 + 0x5a5888]
mov ecx, dword [ebp - 0x7f4]
call fcn.004a74b0
movsx eax, word [edi + 6]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0x7e0]
cvtpd2ps xmm0, xmm0
addss xmm0, dword [ebp - 0x7d0]
movss dword [ebp - 0x7d0], xmm0
mov ecx, dword [ebp - 0x7cc]
mov ax, si
mov edi, dword [ebp - 0x84c]
sub ax, word [ecx + 4]
movzx edx, ax
mov dword [ebp - 0x92c], edx
jmp 0x490ac2
mov ecx, dword [ecx*4 + 0x59ab68]
cmp word [ecx], dx
je 0x490abc
movzx edi, dx
inc edx
movsx eax, dx
cmp word [ecx + eax*2], 0
jne 0x490235
mov dword [ebp - 0x838], edx
test dx, dx
jle 0x490ab6
mov eax, dword [ebp - 0x794]
mov eax, dword [eax]
test al, 0xc0
jne 0x490265
test eax, 0x40000
je 0x490288
mov eax, dword [ebp - 0x7a0]
mov dword [ebp - 0x830], eax
mov eax, dword [ebp - 0x798]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0x410]
mov dword [ebp - 0x7a0], eax
jmp 0x49028e
mov eax, dword [ebp - 0x7a0]
movss xmm0, dword [ebp - 0x7a4]
push 1
push ecx
movss dword [esp], xmm0
push edx
push dword [ebp - 0x7f8]
mov edx, eax
push dword [ebp - 0x7b4]
call fcn.0040ec40
mov eax, dword [ebp - 0x798]
movaps xmm2, xmm0
movsd xmm3, qword [ebp - 0x7e0]
add esp, 0x14
mov edx, dword [ebp - 0x7b4]
mov esi, dword [ebp - 0x838]
mov eax, dword [eax + 0xc]
movd xmm1, dword [eax + 0xa80]
cvtdq2pd xmm1, xmm1
mulsd xmm1, xmm3
cvtpd2ps xmm1, xmm1
addss xmm1, dword [edx]
movss dword [edx], xmm1
movd xmm0, dword [eax + 0xa80]
mov eax, 1
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm3
cvtpd2ps xmm1, xmm0
movaps xmm0, xmm1
addss xmm0, xmm2
movss dword [ebp - 0x7d0], xmm0
cmp ax, si
jge 0x4903b9
lea esi, [eax + 1]
add edx, 4
nop dword [eax + eax]
movsx eax, word [ebp - 0x770]
lea ecx, [eax + eax*2]
movsx eax, word [ebp - 0x76c]
shl ecx, 5
add ecx, eax
mov eax, dword [ecx*4 + 0x59ab68]
mov ecx, 0xfc00
and cx, word [eax + esi]
mov eax, 0xd800
cmp cx, ax
je 0x4903a2
mov eax, 0xdc00
cmp cx, ax
je 0x4903a2
mov ecx, dword [ebp - 0x798]
addss xmm1, dword [edx]
mov eax, dword [ecx + 0xc]
movss dword [edx], xmm1
movd xmm0, dword [eax + 0xa80]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm3
cvtpd2ps xmm1, xmm0
movaps xmm0, xmm1
addss xmm0, dword [ebp - 0x7d0]
movss dword [ebp - 0x7d0], xmm0
add esi, 2
add edx, 4
sub edi, 1
jne 0x490330
mov esi, dword [ebp - 0x838]
mov edx, dword [ebp - 0x7b4]
mov eax, dword [ebp - 0x7f4]
mov eax, dword [eax + 0x14]
cmp word [eax + 8], 3
jne 0x490488
mov edi, dword [ebp - 0x798]
movzx ecx, word [edi + 6]
test cx, cx
je 0x490488
cmp dword [ebp - 0x6b8], 0
je 0x490488
cmp edi, dword [ebp - 0x774]
movss xmm0, dword [ebp - 0x7a4]
setne al
movzx eax, al
push eax
push 0
push ecx
movss dword [esp], xmm0
push dword [ebp - 0x7f8]
movsx eax, cx
push dword [ebp - 0x7a0]
push ecx
movd xmm0, eax
movsx eax, word [ebp - 0x770]
cvtdq2pd xmm0, xmm0
lea ecx, [eax + eax*2]
movsx eax, word [ebp - 0x76c]
shl ecx, 5
add ecx, eax
mulsd xmm0, xmm3
cvtpd2ps xmm0, xmm0
movss dword [esp], xmm0
push esi
push edx
push dword [ecx*4 + 0x59ab68]
mov ecx, dword [ebp - 0x7f4]
call fcn.004a74b0
movsx eax, word [edi + 6]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0x7e0]
cvttsd2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
addss xmm0, dword [ebp - 0x7d0]
movss dword [ebp - 0x7d0], xmm0
mov ecx, dword [ebp - 0x7cc]
mov ax, si
mov edi, dword [ebp - 0x84c]
sub ax, word [ecx + 4]
movzx edx, ax
mov dword [ebp - 0x92c], edx
jmp 0x490ac2
movsx edi, si
xor edx, edx
shl edi, 2
mov dword [ebp - 0x838], edx
mov dword [ebp - 0x7c0], edi
mov esi, dword [edi + 0x592508]
movzx ecx, word [esi]
test cx, cx
je 0x490906
nop
movzx edi, dx
inc edx
movsx eax, dx
cmp word [esi + eax*2], 0
jne 0x4904d0
mov dword [ebp - 0x838], edx
test dx, dx
jle 0x4908f8
cmp word [ebp - 0x84c], 0x40
jne 0x490627
cmp dx, 2
jne 0x490521
movzx eax, word [esi + 2]
cmp ax, word [ebp - 0xa4c]
je 0x490517
cmp ax, word [ebp - 0xa50]
jne 0x490521
mov al, 1
mov byte [ebp - 0x801], al
jmp 0x490527
mov al, byte [ebp - 0x801]
cmp cx, word [ebp - 0xbc4]
je 0x490604
cmp cx, word [ebp - 0xbc0]
je 0x490604
test al, al
jne 0x490553
mov eax, 0x100
cmp cx, ax
jae 0x490627
mov eax, dword [ebp - 0x794]
mov byte [ebp - 0x81e], 1
mov eax, dword [eax]
test eax, 0x400c0
jne 0x4905e1
test eax, 0x200
je 0x49059a
mov eax, dword [ebp - 0x798]
mov ecx, dword [ebp - 0x7f0]
mov dword [ebp - 0x830], ecx
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0x458]
mov dword [ebp - 0x7a0], eax
jmp 0x490642
mov ecx, dword [ebp - 0x798]
mov ecx, dword [ecx + 0xc]
test eax, 0x400
je 0x4905c7
mov eax, dword [ecx + 0x464]
mov ecx, dword [ebp - 0x7f0]
mov dword [ebp - 0x7a0], eax
mov dword [ebp - 0x830], ecx
jmp 0x490642
mov eax, dword [ecx + 0x428]
mov ecx, dword [ebp - 0x7f0]
mov dword [ebp - 0x7a0], eax
mov dword [ebp - 0x830], ecx
jmp 0x490642
mov eax, dword [ebp - 0x798]
mov ecx, dword [ebp - 0x7f0]
mov dword [ebp - 0x830], ecx
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0x44c]
mov dword [ebp - 0x7a0], eax
jmp 0x490642
mov eax, dword [ebp - 0x7a0]
mov dword [ebp - 0x830], eax
mov eax, dword [ebp - 0x798]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0x41c]
mov dword [ebp - 0x7a0], eax
jmp 0x490648
mov eax, dword [ebp - 0x794]
mov eax, dword [eax]
test al, 0xc0
jne 0x4906b3
test eax, 0x40000
jne 0x4906b3
mov eax, dword [ebp - 0x7a0]
cmp byte [ebp - 0x801], 0
je 0x4906d4
mov ecx, 0x3099
cmp word [esi + 2], cx
jne 0x4906d4
movss xmm0, dword [ebp - 0x7a4]
mov edx, eax
push 1
push ecx
movss dword [esp], xmm0
mov ecx, esi
push 1
push dword [ebp - 0x7f8]
push dword [ebp - 0x7b4]
call fcn.0040ec40
mov ecx, dword [ebp - 0x7b4]
movaps xmm5, xmm0
movss dword [ebp - 0x7d0], xmm5
movss xmm0, dword [ecx]
mulss xmm0, dword [0x5ea4cc]
movss dword [ecx + 4], xmm0
movss dword [ecx], xmm0
jmp 0x49070b
mov eax, dword [ebp - 0x7a0]
mov dword [ebp - 0x830], eax
mov eax, dword [ebp - 0x798]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0x410]
mov dword [ebp - 0x7a0], eax
movss xmm0, dword [ebp - 0x7a4]
push 1
push ecx
movss dword [esp], xmm0
mov ecx, esi
push edx
push dword [ebp - 0x7f8]
mov edx, eax
push dword [ebp - 0x7b4]
call fcn.0040ec40
mov ecx, dword [ebp - 0x7b4]
movaps xmm5, xmm0
movss dword [ebp - 0x7d0], xmm0
mov dl, byte [ebp - 0x81e]
add esp, 0x14
movsd xmm3, qword [ebp - 0x7e0]
test dl, dl
jne 0x490765
mov eax, dword [ebp - 0x798]
mov eax, dword [eax + 0xc]
movd xmm0, dword [eax + 0xa80]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm3
cvtpd2ps xmm0, xmm0
addss xmm0, dword [ecx]
movss dword [ecx], xmm0
movd xmm0, dword [eax + 0xa80]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm3
cvtpd2ps xmm0, xmm0
addss xmm5, xmm0
movss dword [ebp - 0x7d0], xmm5
mov esi, dword [ebp - 0x838]
mov eax, 1
cmp ax, si
jge 0x490813
mov eax, dword [ebp - 0x7c0]
add ecx, 4
mov esi, edi
mov edi, 0xd800
mov edx, dword [eax + 0x592508]
add edx, 2
mov eax, 0xfc00
and ax, word [edx]
cmp ax, di
je 0x4907f4
mov edi, 0xdc00
cmp ax, di
mov edi, 0xd800
je 0x4907f4
cmp byte [ebp - 0x81e], 0
jne 0x4907f4
mov eax, dword [ebp - 0x798]
mov eax, dword [eax + 0xc]
movd xmm0, dword [eax + 0xa80]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm3
cvtpd2ps xmm0, xmm0
addss xmm0, dword [ecx]
movss dword [ecx], xmm0
movd xmm0, dword [eax + 0xa80]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm3
cvtpd2ps xmm0, xmm0
addss xmm5, xmm0
add edx, 2
add ecx, 4
sub esi, 1
jne 0x490792
mov esi, dword [ebp - 0x838]
mov dl, byte [ebp - 0x81e]
movss dword [ebp - 0x7d0], xmm5
mov eax, dword [ebp - 0x7f4]
mov eax, dword [eax + 0x14]
cmp word [eax + 8], 3
jne 0x4908d7
mov edi, dword [ebp - 0x798]
movzx ecx, word [edi + 6]
test cx, cx
je 0x4908d7
test dl, dl
jne 0x4908d7
cmp dword [ebp - 0x6b8], 0
je 0x4908d7
cmp edi, dword [ebp - 0x774]
movss xmm0, dword [ebp - 0x7a4]
setne al
movzx eax, al
push eax
push 0
push ecx
movss dword [esp], xmm0
push dword [ebp - 0x7f8]
movsx eax, cx
push dword [ebp - 0x7a0]
push ecx
movd xmm0, eax
mov eax, dword [ebp - 0x7c0]
mov ecx, dword [ebp - 0x7f4]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm3
cvtpd2ps xmm0, xmm0
movss dword [esp], xmm0
push esi
push dword [ebp - 0x7b4]
push dword [eax + 0x592508]
call fcn.004a74b0
movsx eax, word [edi + 6]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0x7e0]
cvtpd2ps xmm5, xmm0
addss xmm5, dword [ebp - 0x7d0]
movss dword [ebp - 0x7d0], xmm5
mov ecx, dword [ebp - 0x7cc]
mov ax, si
mov edi, dword [ebp - 0x84c]
sub ax, word [ecx + 4]
movzx edx, ax
mov dword [ebp - 0x92c], edx
jmp 0x490aca
mov eax, dword [ebp - 0x794]
mov edi, dword [ebp - 0x7c0]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x798]
mov ecx, dword [ecx + 0xc]
test eax, 0x400c0
jne 0x49091e
mov edx, dword [ecx + 0x404]
jmp 0x490924
mov edx, dword [ecx + 0x410]
movss xmm0, dword [ebp - 0x7a4]
mov eax, dword [ebp - 0x954]
push 1
push ecx
mov ecx, dword [edi + 0x59d2a0]
movss dword [esp], xmm0
add ecx, 0xfffffffe
push 1
push dword [ebp - 0x7f8]
movsx esi, ax
push dword [ebp - 0x7b4]
add esi, esi
mov dword [ebp - 0x7a0], edx
add ecx, esi
call fcn.0040ec40
mov eax, dword [ebp - 0x798]
movaps xmm2, xmm0
movsd xmm3, qword [ebp - 0x7e0]
add esp, 0x14
mov edx, dword [ebp - 0x7b4]
mov eax, dword [eax + 0xc]
movd xmm1, dword [eax + 0xa80]
cvtdq2pd xmm1, xmm1
mulsd xmm1, xmm3
cvtpd2ps xmm1, xmm1
addss xmm1, dword [edx]
movss dword [edx], xmm1
movd xmm0, dword [eax + 0xa80]
mov eax, dword [ebp - 0x7f4]
cvtdq2pd xmm0, xmm0
mov eax, dword [eax + 0x14]
cmp word [eax + 8], 3
mulsd xmm0, xmm3
cvtpd2ps xmm5, xmm0
addss xmm5, xmm2
movss dword [ebp - 0x7d0], xmm5
jne 0x490a8a
mov eax, dword [ebp - 0x798]
movzx ecx, word [eax + 6]
test cx, cx
je 0x490a8a
cmp dword [ebp - 0x6b8], 0
je 0x490a8a
cmp byte [ebp - 0x6b9], 0
jne 0x490a8a
cmp eax, dword [ebp - 0x774]
movss xmm0, dword [ebp - 0x7a4]
setne al
movzx eax, al
push eax
push 0
push ecx
movss dword [esp], xmm0
push dword [ebp - 0x7f8]
movsx eax, cx
push dword [ebp - 0x7a0]
push ecx
movd xmm0, eax
mov eax, dword [edi + 0x59d2a0]
mov ecx, dword [ebp - 0x7f4]
add eax, 0xfffffffe
cvtdq2pd xmm0, xmm0
add eax, esi
mulsd xmm0, xmm3
cvtpd2ps xmm0, xmm0
movss dword [esp], xmm0
push 1
push edx
push eax
call fcn.004a74b0
mov ecx, dword [ebp - 0x798]
movsx eax, word [ecx + 6]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0x7e0]
cvtpd2ps xmm0, xmm0
addss xmm0, dword [ebp - 0x7d0]
movaps xmm5, xmm0
movss dword [ebp - 0x7d0], xmm0
mov ecx, dword [ebp - 0x7cc]
mov eax, 1
mov edi, dword [ebp - 0x84c]
sub ax, word [ecx + 4]
movzx eax, ax
mov dword [ebp - 0x92c], eax
mov eax, dword [ebp - 0x7f0]
mov dword [ebp - 0x830], eax
jmp 0x490aca
mov edi, dword [ebp - 0x84c]
mov ecx, dword [ebp - 0x7cc]
movss xmm5, dword [ebp - 0x7d0]
mov esi, dword [ebp - 0x7ec]
test esi, esi
je 0x490b0a
movsx edx, word [ebp - 0x868]
movsx ecx, word [ecx + 4]
movsx eax, word [esi + 4]
add ecx, edx
cmp ecx, eax
jle 0x490b0a
nop dword [eax]
movsx ecx, word [esi + 6]
movsx eax, word [esi + 4]
add ecx, eax
cmp ecx, edx
jg 0x490b04
mov esi, dword [esi]
test esi, esi
jne 0x490af0
mov dword [ebp - 0x7ec], esi
cmp di, 0x40
jne 0x491d1a
mov eax, dword [ebp - 0x794]
mov ecx, dword [eax]
test cl, 0x20
jne 0x491583
mov edx, ecx
and edx, 0x40
cmp byte [ebp - 0x81e], 0
je 0x490f68
test edx, edx
jne 0x490b58
mov eax, dword [ebp - 0x798]
mov esi, ecx
and esi, 0x40000
je 0x490bb1
movzx eax, word [eax + 8]
mov edi, eax
test eax, 0x400
jne 0x490bb5
mov esi, dword [ebp - 0x818]
mov edi, dword [ebp - 0x814]
mov eax, dword [esi + 8]
mov ecx, dword [edi]
test edx, edx
je 0x490e51
movd xmm3, eax
cvtdq2ps xmm3, xmm3
movd xmm0, ecx
subss xmm3, dword [ebp - 0x87c]
cvtdq2ps xmm0, xmm0
subss xmm3, dword [ebp - 0x7d0]
subss xmm3, xmm0
jmp 0x490eb4
movss xmm5, dword [ebp - 0x7d0]
mov ecx, dword [ebp - 0x7cc]
mov edi, dword [ebp - 0x84c]
jmp 0x490aca
movzx edi, word [eax + 8]
movzx eax, di
and ecx, 0x80
jne 0x490d1e
test esi, esi
je 0x490bd3
test eax, 0x400
jne 0x490d1e
cmp byte [ebp - 0x801], 0
mov esi, dword [ebp - 0x818]
mov edi, dword [ebp - 0x814]
movd xmm5, dword [esi + 8]
movd xmm1, dword [edi]
cvtdq2ps xmm5, xmm5
cvtdq2ps xmm1, xmm1
movaps xmm3, xmm5
je 0x490c18
movss xmm0, dword [ebp - 0x834]
subss xmm3, dword [ebp - 0x864]
mulss xmm0, dword [0x5ea4cc]
addss xmm3, xmm0
jmp 0x490c5c
movss xmm0, dword [ebp - 0x864]
subss xmm0, dword [ebp - 0x87c]
movss xmm2, dword [0x5ea4cc]
subss xmm3, dword [ebp - 0x87c]
mulss xmm0, xmm2
subss xmm3, xmm0
movss xmm0, dword [ebp - 0x7d0]
mulss xmm0, xmm2
subss xmm3, xmm0
movss xmm0, dword [ebp - 0x834]
mulss xmm0, xmm2
mov ecx, dword [esi + 4]
subss xmm3, xmm1
mov edx, dword [edi + 4]
movss xmm4, dword [ebp - 0x7a8]
subss xmm5, dword [ebp - 0x81c]
subss xmm4, xmm0
movd xmm2, ecx
cvtdq2ps xmm2, xmm2
subss xmm5, xmm1
movd xmm0, edx
cvtdq2ps xmm0, xmm0
addss xmm2, xmm4
movd xmm1, ecx
cvtdq2ps xmm1, xmm1
subss xmm2, xmm0
movss dword [ebp - 0x7c4], xmm3
movd xmm0, edx
addss xmm1, xmm4
cvtdq2ps xmm0, xmm0
cvttss2si eax, xmm5
subss xmm1, xmm0
movss dword [ebp - 0x7a8], xmm4
movss xmm0, dword [ebp - 0x7d0]
addss xmm0, xmm5
mov dword [ebp - 0x6b0], eax
movss dword [ebp - 0x9fc], xmm5
cvttss2si ecx, xmm1
cvttss2si eax, xmm0
mov dword [ebp - 0x6ac], ecx
movd xmm0, ecx
mov dword [ebp - 0x6a8], eax
mov eax, dword [ebp - 0x798]
cvtdq2ps xmm0, xmm0
mov eax, dword [eax + 0xc]
addss xmm0, dword [eax + 0xb94]
cvttss2si eax, xmm0
movaps xmm0, xmm3
mov dword [ebp - 0x6a4], eax
movss dword [ebp - 0x998], xmm0
jmp 0x491270
mov esi, dword [ebp - 0x818]
mov edi, dword [ebp - 0x814]
mov eax, dword [esi + 8]
mov edx, dword [edi]
movd xmm3, eax
cvtdq2ps xmm3, xmm3
subss xmm3, dword [ebp - 0x864]
test ecx, ecx
je 0x490d4f
movd xmm0, edx
cvtdq2ps xmm0, xmm0
subss xmm3, xmm0
jmp 0x490d9b
movss xmm7, dword [ebp - 0x834]
ucomiss xmm7, dword [ebp - 0x7ac]
movss xmm0, dword [ebp - 0x7fc]
movd xmm1, edx
lahf
cvtps2pd xmm0, xmm0
cvtdq2ps xmm1, xmm1
test ah, 0x44
jnp 0x490d80
mulsd xmm0, qword [ebp - 0x9e8]
jmp 0x490d88
mulsd xmm0, qword [ebp - 0x9e0]
cvttsd2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
subss xmm3, xmm0
subss xmm3, xmm1
movd xmm2, dword [esi + 4]
movd xmm0, dword [edi + 4]
cvtdq2ps xmm2, xmm2
mov esi, dword [ebp - 0x798]
cvtdq2ps xmm0, xmm0
addss xmm2, dword [ebp - 0x7a8]
cvttss2si edx, xmm3
subss xmm2, dword [ebp - 0x854]
mov dword [ebp - 0x6b0], edx
movss dword [ebp - 0x7c4], xmm3
movss dword [ebp - 0x9fc], xmm3
subss xmm2, xmm0
cvttss2si ecx, xmm2
mov dword [ebp - 0x6ac], ecx
mov eax, dword [esi + 0xc]
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
addss xmm0, dword [eax + 0xb98]
cvttss2si eax, xmm0
movss xmm0, dword [ebp - 0x85c]
addss xmm0, dword [ebp - 0x7fc]
mov dword [ebp - 0x6a4], eax
mov eax, dword [esi + 0xc]
cvtps2pd xmm1, xmm0
movd xmm0, edx
mulsd xmm1, qword [eax + 0xad0]
cvtdq2pd xmm0, xmm0
divsd xmm1, qword [ebp - 0x8a0]
addsd xmm1, xmm0
movaps xmm0, xmm3
movss dword [ebp - 0x998], xmm0
cvttsd2si eax, xmm1
mov dword [ebp - 0x6a8], eax
jmp 0x491270
movss xmm7, dword [ebp - 0x834]
ucomiss xmm7, dword [ebp - 0x7ac]
movss xmm0, dword [ebp - 0x7fc]
movd xmm1, eax
cvtdq2ps xmm1, xmm1
lahf
movd xmm2, ecx
subss xmm1, dword [ebp - 0x87c]
cvtps2pd xmm0, xmm0
cvtdq2ps xmm2, xmm2
test ah, 0x44
jnp 0x490e91
mulsd xmm0, qword [ebp - 0x9e8]
jmp 0x490e99
mulsd xmm0, qword [ebp - 0x9e0]
cvttsd2si eax, xmm0
movd xmm3, eax
cvtdq2ps xmm3, xmm3
addss xmm3, xmm1
subss xmm3, xmm2
movss dword [ebp - 0x888], xmm3
movd xmm2, dword [esi + 4]
movd xmm0, dword [edi + 4]
cvtdq2ps xmm2, xmm2
mov esi, dword [ebp - 0x798]
cvtdq2ps xmm0, xmm0
addss xmm2, dword [ebp - 0x7a8]
cvttss2si edx, xmm3
subss xmm2, dword [ebp - 0x854]
mov dword [ebp - 0x6a8], edx
movss dword [ebp - 0x7c4], xmm3
movss dword [ebp - 0x9fc], xmm3
movd xmm1, edx
subss xmm2, xmm0
cvtdq2pd xmm1, xmm1
cvttss2si ecx, xmm2
mov dword [ebp - 0x6ac], ecx
mov eax, dword [esi + 0xc]
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
addss xmm0, dword [eax + 0xb98]
cvttss2si eax, xmm0
movss xmm0, dword [ebp - 0x85c]
addss xmm0, dword [ebp - 0x7fc]
mov dword [ebp - 0x6a4], eax
mov eax, dword [esi + 0xc]
cvtps2pd xmm0, xmm0
mulsd xmm0, qword [eax + 0xad0]
divsd xmm0, qword [ebp - 0x8a0]
subsd xmm1, xmm0
cvttsd2si eax, xmm1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [ebp - 0x998], xmm0
jmp 0x49126a
test edx, edx
jne 0x490f89
mov eax, dword [ebp - 0x798]
mov esi, ecx
and esi, 0x40000
je 0x490fc1
movzx eax, word [eax + 8]
mov edi, eax
test eax, 0x400
jne 0x490fc5
mov esi, dword [ebp - 0x818]
mov edi, dword [ebp - 0x814]
mov eax, dword [esi + 8]
mov ecx, dword [edi]
test edx, edx
je 0x49116a
movd xmm3, eax
cvtdq2ps xmm3, xmm3
movd xmm0, ecx
subss xmm3, dword [ebp - 0x87c]
cvtdq2ps xmm0, xmm0
subss xmm3, xmm0
jmp 0x4911cd
movzx edi, word [eax + 8]
movzx eax, di
and ecx, 0x80
jne 0x491045
test esi, esi
je 0x490fdf
test eax, 0x400
jne 0x491045
mov esi, dword [ebp - 0x818]
mov edi, dword [ebp - 0x814]
movd xmm3, dword [esi + 8]
movd xmm0, dword [edi]
movd xmm2, dword [esi + 4]
cvtdq2ps xmm3, xmm3
cvtdq2ps xmm0, xmm0
subss xmm3, dword [ebp - 0x81c]
cvtdq2ps xmm2, xmm2
subss xmm3, xmm0
movd xmm0, dword [edi + 4]
addss xmm2, dword [ebp - 0x7a8]
cvtdq2ps xmm0, xmm0
movss dword [ebp - 0x7c4], xmm3
subss xmm2, xmm0
movups xmm0, xmmword [ebp - 0x6d4]
movups xmmword [ebp - 0x6b0], xmm0
movss xmm0, dword [ebp - 0x998]
jmp 0x491270
mov esi, dword [ebp - 0x818]
mov edi, dword [ebp - 0x814]
mov eax, dword [esi + 8]
mov edx, dword [edi]
movd xmm3, eax
cvtdq2ps xmm3, xmm3
subss xmm3, dword [ebp - 0x864]
test ecx, ecx
je 0x491076
movd xmm0, edx
cvtdq2ps xmm0, xmm0
subss xmm3, xmm0
jmp 0x4910c2
movss xmm7, dword [ebp - 0x834]
ucomiss xmm7, dword [ebp - 0x7ac]
movss xmm0, dword [ebp - 0x7fc]
movd xmm1, edx
lahf
cvtps2pd xmm0, xmm0
cvtdq2ps xmm1, xmm1
test ah, 0x44
jnp 0x4910a7
mulsd xmm0, qword [ebp - 0x9e8]
jmp 0x4910af
mulsd xmm0, qword [ebp - 0x9e0]
cvttsd2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
subss xmm3, xmm0
subss xmm3, xmm1
movd xmm2, dword [esi + 4]
movd xmm0, dword [edi + 4]
cvtdq2ps xmm2, xmm2
cvtdq2ps xmm0, xmm0
addss xmm2, dword [ebp - 0x7a8]
cvttss2si ecx, xmm3
subss xmm2, dword [ebp - 0x854]
mov dword [ebp - 0x6b0], ecx
movss dword [ebp - 0x7c4], xmm3
subss xmm2, xmm0
cvttss2si eax, xmm2
mov dword [ebp - 0x6ac], eax
movd xmm0, eax
cvtdq2ps xmm0, xmm0
addss xmm0, dword [ebp - 0x7d0]
cvttss2si eax, xmm0
movss xmm0, dword [ebp - 0x85c]
addss xmm0, dword [ebp - 0x7fc]
mov dword [ebp - 0x6a4], eax
mov eax, dword [ebp - 0x798]
cvtps2pd xmm1, xmm0
mov eax, dword [eax + 0xc]
movd xmm0, ecx
mulsd xmm1, qword [eax + 0xad0]
cvtdq2pd xmm0, xmm0
divsd xmm1, qword [ebp - 0x8a0]
addsd xmm1, xmm0
movss xmm0, dword [ebp - 0x998]
cvttsd2si eax, xmm1
mov dword [ebp - 0x6a8], eax
jmp 0x491270
movss xmm7, dword [ebp - 0x834]
ucomiss xmm7, dword [ebp - 0x7ac]
movss xmm0, dword [ebp - 0x7fc]
movd xmm1, eax
cvtdq2ps xmm1, xmm1
lahf
movd xmm2, ecx
subss xmm1, dword [ebp - 0x87c]
cvtps2pd xmm0, xmm0
cvtdq2ps xmm2, xmm2
test ah, 0x44
jnp 0x4911aa
mulsd xmm0, qword [ebp - 0x9e8]
jmp 0x4911b2
mulsd xmm0, qword [ebp - 0x9e0]
cvttsd2si eax, xmm0
movd xmm3, eax
cvtdq2ps xmm3, xmm3
addss xmm3, xmm1
subss xmm3, xmm2
movss dword [ebp - 0x888], xmm3
movd xmm2, dword [esi + 4]
movd xmm0, dword [edi + 4]
cvtdq2ps xmm2, xmm2
cvtdq2ps xmm0, xmm0
addss xmm2, dword [ebp - 0x7a8]
cvttss2si ecx, xmm3
subss xmm2, dword [ebp - 0x854]
mov dword [ebp - 0x6a8], ecx
movss dword [ebp - 0x7c4], xmm3
movd xmm1, ecx
subss xmm2, xmm0
cvtdq2pd xmm1, xmm1
cvttss2si eax, xmm2
mov dword [ebp - 0x6ac], eax
movd xmm0, eax
cvtdq2ps xmm0, xmm0
addss xmm0, dword [ebp - 0x7d0]
cvttss2si eax, xmm0
movss xmm0, dword [ebp - 0x85c]
addss xmm0, dword [ebp - 0x7fc]
mov dword [ebp - 0x6a4], eax
mov eax, dword [ebp - 0x798]
cvtps2pd xmm0, xmm0
mov eax, dword [eax + 0xc]
mulsd xmm0, qword [eax + 0xad0]
divsd xmm0, qword [ebp - 0x8a0]
subsd xmm1, xmm0
movss xmm0, dword [ebp - 0x998]
cvttsd2si eax, xmm1
mov dword [ebp - 0x6b0], eax
mov ecx, dword [ebp - 0x7ec]
movss dword [ebp - 0x7bc], xmm2
test ecx, ecx
je 0x491583
mov eax, dword [ebp - 0x7cc]
movsx edi, word [ebp - 0x868]
movzx eax, word [eax + 4]
nop word [eax + eax]
movzx esi, word [ecx + 4]
movsx edx, ax
movsx eax, si
lea ecx, [edi + edx]
cmp ecx, eax
jle 0x491583
mov eax, dword [ebp - 0x794]
mov ecx, dword [ebp - 0x88c]
test dword [eax], 0x400c0
jne 0x491400
cmp byte [ebp - 0x81e], 0
je 0x49136d
test ecx, ecx
je 0x4912f1
mov eax, dword [ebp - 0x7ec]
cmp eax, ecx
je 0x4912ed
cmp dword [eax + 8], ecx
jne 0x4912f1
mov al, 1
jmp 0x4912f3
xor al, al
push dword [ebp - 0x79c]
push dword [ebp - 0x7b4]
push eax
lea eax, [ebp - 0x6b0]
push eax
mov eax, dword [ebp - 0x92c]
movsx ecx, ax
mov eax, dword [ebp - 0x7ec]
mov ax, word [eax + 6]
add ax, cx
add cx, dx
movzx eax, ax
push eax
push esi
movzx eax, cx
push eax
push dword [ebp - 0x868]
lea eax, [ebx + 0x64]
sub esp, 0xc
mov ecx, esp
movss dword [esp + 8], xmm2
movss dword [esp + 4], xmm3
push eax
call fcn.0043ce00
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
movss xmm3, dword [ebp - 0x7a4]
mov ecx, dword [ebp - 0x7f4]
call fcn.004a7c00
jmp 0x49152e
test ecx, ecx
je 0x491384
mov eax, dword [ebp - 0x7ec]
cmp eax, ecx
je 0x491380
cmp dword [eax + 8], ecx
jne 0x491384
mov al, 1
jmp 0x491386
xor al, al
push dword [ebp - 0x79c]
push dword [ebp - 0x7b4]
push eax
lea eax, [ebp - 0x6b0]
push eax
mov eax, dword [ebp - 0x92c]
movsx ecx, ax
mov eax, dword [ebp - 0x7ec]
mov ax, word [eax + 6]
add ax, cx
add cx, dx
movzx eax, ax
push eax
push esi
movzx eax, cx
push eax
push dword [ebp - 0x868]
lea eax, [ebx + 0x64]
sub esp, 0xc
mov ecx, esp
movss dword [esp + 8], xmm2
movss dword [esp + 4], xmm3
push eax
call fcn.0043ce00
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
movss xmm3, dword [ebp - 0x7a4]
mov ecx, dword [ebp - 0x7f4]
call fcn.004a8160
jmp 0x49152e
cmp byte [ebp - 0x81e], 0
je 0x4914a0
test ecx, ecx
je 0x491424
mov eax, dword [ebp - 0x7ec]
cmp eax, ecx
je 0x491420
cmp dword [eax + 8], ecx
jne 0x491424
mov al, 1
jmp 0x491426
xor al, al
push dword [ebp - 0x79c]
push dword [ebp - 0x7b4]
push eax
lea eax, [ebp - 0x6b0]
push eax
mov eax, dword [ebp - 0x92c]
movsx ecx, ax
mov eax, dword [ebp - 0x7ec]
mov ax, word [eax + 6]
add ax, cx
add cx, dx
movzx eax, ax
push eax
push esi
movzx eax, cx
push eax
push dword [ebp - 0x868]
lea eax, [ebx + 0x64]
sub esp, 0xc
mov ecx, esp
movss dword [esp + 8], xmm2
movss dword [esp + 4], xmm0
push eax
call fcn.0043ce00
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
movss xmm3, dword [ebp - 0x7a4]
mov ecx, dword [ebp - 0x7f4]
call fcn.004a7e00
jmp 0x49152e
test ecx, ecx
je 0x4914b7
mov eax, dword [ebp - 0x7ec]
cmp eax, ecx
je 0x4914b3
cmp dword [eax + 8], ecx
jne 0x4914b7
mov al, 1
jmp 0x4914b9
xor al, al
push dword [ebp - 0x79c]
push dword [ebp - 0x7b4]
push eax
lea eax, [ebp - 0x6b0]
push eax
mov eax, dword [ebp - 0x92c]
movsx ecx, ax
mov eax, dword [ebp - 0x7ec]
mov ax, word [eax + 6]
add ax, cx
add cx, dx
movzx eax, ax
push eax
push esi
movzx eax, cx
push eax
push dword [ebp - 0x868]
lea eax, [ebx + 0x64]
sub esp, 0xc
mov ecx, esp
movss dword [esp + 8], xmm2
movss dword [esp + 4], xmm3
push eax
call fcn.0043ce00
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
movss xmm3, dword [ebp - 0x7a4]
mov ecx, dword [ebp - 0x7f4]
call fcn.004a8360
mov eax, dword [ebp - 0x7cc]
movzx ecx, word [eax + 4]
mov eax, dword [ebp - 0x7ec]
mov esi, ecx
movsx edx, word [eax + 6]
movsx eax, word [eax + 4]
add edx, eax
movsx eax, cx
add eax, edi
cmp eax, edx
jl 0x491583
mov ecx, dword [ebp - 0x7ec]
mov eax, esi
movss xmm3, dword [ebp - 0x7c4]
movss xmm2, dword [ebp - 0x7bc]
movss xmm0, dword [ebp - 0x998]
mov ecx, dword [ecx]
mov dword [ebp - 0x7ec], ecx
test ecx, ecx
jne 0x4912a0
mov ecx, dword [ebp - 0x794]
mov al, byte [ebp - 0x7ae]
mov ecx, dword [ecx]
test al, al
je 0x4916e3
test cl, 0x20
je 0x4921cc
mov ecx, dword [ebp - 0x838]
xor edx, edx
cmp dx, cx
jge 0x4915ec
mov edi, dword [ebp - 0x90c]
lea edx, [ebp - 0x1c]
movzx esi, cx
nop dword [eax + eax]
cmp di, 0x14
jge 0x4915d2
mov ax, word [edx]
movsx ecx, di
inc edi
mov word [ebp + ecx*2 - 0x44], ax
add edx, 2
sub esi, 1
jne 0x4915c0
mov dword [ebp - 0x90c], edi
mov ecx, dword [ebp - 0x838]
mov al, byte [ebp - 0x7ae]
mov esi, dword [ebp - 0x7b8]
cmp byte [ebp - 0x8a4], 0
mov dl, byte [ebp - 0x81e]
je 0x49247c
test dl, dl
je 0x492443
movss xmm0, dword [ebp - 0x9fc]
jmp 0x49244b
movzx esi, word [eax + 8]
movzx eax, si
test cl, cl
js 0x491630
test edx, edx
je 0x491639
test eax, 0x400
je 0x491639
mov edi, 8
jmp 0x491639
xor edi, edi
push dword [ebp - 0x83c]
mov edx, dword [ebp - 0x838]
movsx eax, dx
push eax
lea eax, [ebp - 0x1c]
push eax
movss xmm0, dword [ebp - 0x7a4]
lea eax, [ebx + 0x64]
sub esp, 0xc
movss dword [esp + 8], xmm0
movss xmm0, dword [ebp - 0x7bc]
movss dword [esp + 4], xmm0
movss xmm0, dword [ebp - 0x7c4]
movss dword [esp], xmm0
push edi
push ecx
mov ecx, esp
push eax
call fcn.0043ce00
push ecx
mov ecx, esp
push dword [ebp - 0x80c]
call fcn.004a86c0
push ecx
mov ecx, esp
push dword [ebp - 0x808]
call fcn.004a86c0
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
mov ecx, dword [ebp - 0x7a0]
xor edx, edx
call fcn.0043a210
mov ecx, dword [ebp - 0x794]
mov eax, dword [ecx]
test al, 0xc0
jne 0x4916d2
test eax, 0x40000
je 0x4915e0
mov eax, dword [ebp - 0x830]
mov dword [ebp - 0x7a0], eax
jmp 0x4915e0
mov eax, ecx
and eax, 0x20
cmp byte [ebp - 0x892], 0
je 0x4918cc
cmp word [ebp - 0x6c4], 3
jne 0x4917eb
test eax, eax
je 0x491773
mov ecx, dword [ebp - 0x838]
xor eax, eax
cmp ax, cx
jge 0x4915e6
movsx eax, word [ebp - 0x770]
movzx esi, cx
mov ecx, dword [ebp - 0x90c]
lea edi, [eax + eax*2]
movsx eax, word [ebp - 0x76c]
shl edi, 5
add edi, eax
xor edx, edx
nop dword [eax]
cmp cx, 0x14
jge 0x491766
mov eax, dword [edi*4 + 0x5a5888]
movsx ecx, cx
mov ax, word [edx + eax]
mov word [ebp + ecx*2 - 0x44], ax
mov ecx, dword [ebp - 0x90c]
inc ecx
mov dword [ebp - 0x90c], ecx
add edx, 2
sub esi, 1
jne 0x491740
jmp 0x4915e0
mov edi, 0x18
test cl, 0x40
jne 0x49179a
mov eax, dword [ebp - 0x798]
mov edx, ecx
and edx, 0x40000
je 0x4917ce
movzx eax, word [eax + 8]
mov esi, eax
test eax, 0x400
jne 0x4917d2
xor edi, edi
push dword [ebp - 0x83c]
mov edx, dword [ebp - 0x838]
movsx eax, dx
push eax
movsx eax, word [ebp - 0x770]
lea ecx, [eax + eax*2]
movsx eax, word [ebp - 0x76c]
shl ecx, 5
add ecx, eax
push dword [ecx*4 + 0x5a5888]
jmp 0x49164d
movzx esi, word [eax + 8]
movzx eax, si
test cl, cl
js 0x4917e4
test edx, edx
je 0x49179c
test eax, 0x400
je 0x49179c
mov edi, 8
jmp 0x49179c
test eax, eax
je 0x491854
mov ecx, dword [ebp - 0x838]
xor eax, eax
cmp ax, cx
jge 0x4915e6
movsx eax, word [ebp - 0x770]
movzx esi, cx
mov ecx, dword [ebp - 0x90c]
lea edi, [eax + eax*2]
movsx eax, word [ebp - 0x76c]
shl edi, 5
add edi, eax
xor edx, edx
cmp cx, 0x14
jge 0x491847
mov eax, dword [edi*4 + 0x59ab68]
movsx ecx, cx
mov ax, word [edx + eax]
mov word [ebp + ecx*2 - 0x44], ax
mov ecx, dword [ebp - 0x90c]
inc ecx
mov dword [ebp - 0x90c], ecx
add edx, 2
sub esi, 1
jne 0x491821
jmp 0x4915e0
mov edi, 0x18
test cl, 0x40
jne 0x49187b
mov eax, dword [ebp - 0x798]
mov edx, ecx
and edx, 0x40000
je 0x4918af
movzx eax, word [eax + 8]
mov esi, eax
test eax, 0x400
jne 0x4918b3
xor edi, edi
push dword [ebp - 0x83c]
mov edx, dword [ebp - 0x838]
movsx eax, dx
push eax
movsx eax, word [ebp - 0x770]
lea ecx, [eax + eax*2]
movsx eax, word [ebp - 0x76c]
shl ecx, 5
add ecx, eax
push dword [ecx*4 + 0x59ab68]
jmp 0x49164d
movzx esi, word [eax + 8]
movzx eax, si
test cl, cl
js 0x4918c5
test edx, edx
je 0x49187d
test eax, 0x400
je 0x49187d
mov edi, 8
jmp 0x49187d
mov esi, dword [ebp - 0x838]
test si, si
jle 0x491b93
test eax, eax
je 0x49192f
mov edx, dword [ebp - 0x7b8]
mov ecx, dword [ebp - 0x90c]
movsx edi, dx
xor edx, edx
movzx esi, si
cmp cx, 0x14
jge 0x491919
mov eax, dword [edi*4 + 0x592508]
movsx ecx, cx
mov ax, word [edx + eax]
mov word [ebp + ecx*2 - 0x44], ax
mov ecx, dword [ebp - 0x90c]
inc ecx
mov dword [ebp - 0x90c], ecx
add edx, 2
movzx eax, cx
sub esi, 1
jne 0x4918f3
mov dword [ebp - 0x90c], eax
jmp 0x4915e0
mov eax, ecx
mov edi, 0x18
and eax, 0x40
cmp byte [ebp - 0x81e], 0
jne 0x49196b
test eax, eax
jne 0x49196b
mov eax, dword [ebp - 0x798]
mov edx, ecx
and edx, 0x40000
je 0x491b6b
movzx eax, word [eax + 8]
mov esi, eax
test eax, 0x400
jne 0x491b6f
xor edi, edi
cmp byte [ebp - 0x801], 0
mov edx, dword [ebp - 0x838]
movsx ecx, dx
mov edx, dword [ebp - 0x7b8]
je 0x4919a0
movsx eax, dx
mov esi, 0x3099
mov eax, dword [eax*4 + 0x592508]
cmp word [eax + 2], si
mov eax, 1
cmove ecx, eax
push dword [ebp - 0x83c]
movss xmm0, dword [ebp - 0x7a4]
lea eax, [ebx + 0x64]
push ecx
movsx esi, dx
push dword [esi*4 + 0x592508]
sub esp, 0xc
movss dword [esp + 8], xmm0
movss xmm0, dword [ebp - 0x7bc]
movss dword [esp + 4], xmm0
movss xmm0, dword [ebp - 0x7c4]
movss dword [esp], xmm0
push edi
push ecx
mov ecx, esp
push eax
call fcn.0043ce00
push ecx
mov ecx, esp
push dword [ebp - 0x80c]
call fcn.004a86c0
push ecx
mov ecx, esp
push dword [ebp - 0x808]
call fcn.004a86c0
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
mov edi, dword [ebp - 0x7a0]
xor edx, edx
mov ecx, edi
call fcn.0043a210
cmp byte [ebp - 0x801], 0
je 0x491b52
mov eax, dword [esi*4 + 0x592508]
mov ecx, 0x3099
cmp word [eax + 2], cx
jne 0x491b52
movzx eax, word [eax]
mov ecx, 0x3095
movss xmm0, dword [ebp - 0x7ac]
movss dword [ebp - 0x7d4], xmm0
cmp ax, cx
je 0x491a75
mov ecx, 0x30f5
cmp ax, cx
je 0x491a75
mov ecx, 0x3063
cmp ax, cx
jne 0x491a8d
movss xmm0, dword [ebp - 0x7fc]
divss xmm0, dword [0x5ea6b4]
movss dword [ebp - 0x7d4], xmm0
movss xmm0, dword [ebp - 0x7a4]
mov edx, edi
push 1
push ecx
movss dword [esp], xmm0
mov ecx, 0x5b2c18
push 1
push dword [ebp - 0x7f8]
push dword [ebp - 0x898]
call fcn.0040ec40
movss xmm0, dword [ebp - 0x7a4]
lea eax, [ebx + 0x64]
add esp, 0x14
push dword [ebp - 0x83c]
push 1
push 0x5b2c18
sub esp, 0xc
movss dword [esp + 8], xmm0
movss xmm0, dword [ebp - 0x7d4]
addss xmm0, dword [ebp - 0x7bc]
movss dword [esp + 4], xmm0
movss xmm0, dword [ebp - 0x7fc]
mulss xmm0, dword [0x5ea608]
mulss xmm0, dword [0x5ea4c8]
addss xmm0, dword [ebp - 0x7c4]
movss dword [esp], xmm0
push 0
push ecx
mov ecx, esp
push eax
call fcn.0043ce00
push ecx
mov ecx, esp
push dword [ebp - 0x80c]
call fcn.004a86c0
push ecx
mov ecx, esp
push dword [ebp - 0x808]
call fcn.004a86c0
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
xor edx, edx
mov ecx, edi
call fcn.0043a210
mov eax, dword [ebp - 0x830]
test eax, eax
je 0x4915e0
mov dword [ebp - 0x7a0], eax
jmp 0x4915e0
movzx esi, word [eax + 8]
movzx eax, si
test cl, cl
js 0x491b89
test edx, edx
je 0x49196d
test eax, 0x400
je 0x49196d
mov edi, 8
jmp 0x49196d
test eax, eax
je 0x491be5
mov edi, dword [ebp - 0x90c]
cmp di, 0x14
jge 0x4916d2
mov edx, dword [ebp - 0x7b8]
mov ecx, dword [ebp - 0x954]
movsx eax, dx
movsx edx, cx
movsx ecx, di
inc edi
mov dword [ebp - 0x90c], edi
mov eax, dword [eax*4 + 0x59d2a0]
mov ax, word [eax + edx*2 - 2]
mov word [ebp + ecx*2 - 0x44], ax
mov eax, dword [ebp - 0x830]
mov dword [ebp - 0x7a0], eax
jmp 0x4915e0
mov edi, 0x18
test cl, 0x40
jne 0x491c14
mov eax, dword [ebp - 0x798]
mov edx, ecx
and edx, 0x40000
je 0x491cf2
movzx eax, word [eax + 8]
mov esi, eax
test eax, 0x400
jne 0x491cf6
xor edi, edi
mov edx, dword [ebp - 0x7b8]
push dword [ebp - 0x83c]
mov ecx, dword [ebp - 0x954]
movss xmm0, dword [ebp - 0x7a4]
movss xmm1, dword [ebp - 0x7fc]
movsx eax, dx
movsx ecx, cx
push 1
cvtps2pd xmm1, xmm1
mov eax, dword [eax*4 + 0x59d2a0]
lea eax, [eax + ecx*2]
add eax, 0xfffffffe
mulsd xmm1, qword [ebp - 0xbe8]
push eax
sub esp, 0xc
lea eax, [ebx + 0x64]
movss dword [esp + 8], xmm0
movss xmm0, dword [ebp - 0x7bc]
movss dword [esp + 4], xmm0
movss xmm0, dword [ebp - 0x7c4]
cvtps2pd xmm0, xmm0
addsd xmm1, xmm0
movss xmm0, dword [ebp - 0x834]
cvtps2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0x9f0]
addsd xmm1, xmm0
cvtpd2ps xmm0, xmm1
movss dword [esp], xmm0
push edi
push ecx
mov ecx, esp
push eax
call fcn.0043ce00
push ecx
mov ecx, esp
push dword [ebp - 0x80c]
call fcn.004a86c0
push ecx
mov ecx, esp
push dword [ebp - 0x808]
call fcn.004a86c0
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
mov ecx, dword [ebp - 0x7a0]
xor edx, edx
call fcn.0043a210
mov eax, dword [ebp - 0x830]
mov dword [ebp - 0x7a0], eax
jmp 0x4915e0
movzx esi, word [eax + 8]
movzx eax, si
test cl, cl
js 0x491d10
test edx, edx
je 0x491c16
test eax, 0x400
je 0x491c16
mov edi, 8
jmp 0x491c16
mov eax, dword [ebp - 0x794]
mov ecx, dword [eax]
mov edx, ecx
and edx, 0x40
jne 0x491d46
mov eax, dword [ebp - 0x798]
mov esi, ecx
and esi, 0x40000
je 0x491da9
movzx eax, word [eax + 8]
mov edi, eax
test eax, 0x400
jne 0x491dad
mov eax, dword [ebp - 0x818]
mov ecx, dword [ebp - 0x814]
movd xmm3, dword [eax]
movd xmm0, dword [ecx]
mov eax, dword [eax + 4]
mov ecx, dword [ecx + 4]
cvtdq2ps xmm3, xmm3
movd xmm4, eax
addss xmm3, dword [ebp - 0x7a8]
cvtdq2ps xmm0, xmm0
subss xmm3, dword [ebp - 0x854]
cvtdq2ps xmm4, xmm4
subss xmm3, xmm0
addss xmm4, dword [ebp - 0x87c]
movss dword [ebp - 0x7c4], xmm3
test edx, edx
je 0x491f36
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
subss xmm4, xmm0
jmp 0x491f8a
movzx edi, word [eax + 8]
movzx eax, di
and ecx, 0x80
jne 0x491e20
test esi, esi
je 0x491dc3
test eax, 0x400
jne 0x491e20
mov edi, dword [ebp - 0x818]
mov esi, dword [ebp - 0x814]
movd xmm3, dword [edi]
movd xmm0, dword [esi]
movd xmm4, dword [edi + 4]
cvtdq2ps xmm3, xmm3
cvtdq2ps xmm0, xmm0
addss xmm3, dword [ebp - 0x7a8]
cvtdq2ps xmm4, xmm4
subss xmm3, xmm0
movd xmm0, dword [esi + 4]
addss xmm4, dword [ebp - 0x81c]
cvtdq2ps xmm0, xmm0
movss dword [ebp - 0x7c4], xmm3
subss xmm4, xmm0
movups xmm0, xmmword [ebp - 0x6d4]
movups xmmword [ebp - 0x6b0], xmm0
jmp 0x491ff5
mov edi, dword [ebp - 0x818]
mov esi, dword [ebp - 0x814]
movd xmm3, dword [edi]
movd xmm0, dword [esi]
mov eax, dword [edi + 4]
mov edx, dword [esi + 4]
cvtdq2ps xmm3, xmm3
cvtdq2ps xmm0, xmm0
addss xmm3, dword [ebp - 0x7a8]
subss xmm3, dword [ebp - 0x854]
subss xmm3, xmm0
movss dword [ebp - 0x7c4], xmm3
test ecx, ecx
je 0x491e7c
movd xmm4, eax
cvtdq2ps xmm4, xmm4
movd xmm0, edx
addss xmm4, dword [ebp - 0x864]
cvtdq2ps xmm0, xmm0
subss xmm4, xmm0
jmp 0x491ed7
movss xmm7, dword [ebp - 0x834]
ucomiss xmm7, dword [ebp - 0x7ac]
movss xmm0, dword [ebp - 0x7fc]
movd xmm1, eax
cvtdq2ps xmm1, xmm1
lahf
movd xmm2, edx
addss xmm1, dword [ebp - 0x864]
cvtps2pd xmm0, xmm0
cvtdq2ps xmm2, xmm2
test ah, 0x44
jnp 0x491ebc
mulsd xmm0, qword [ebp - 0x9e8]
jmp 0x491ec4
mulsd xmm0, qword [ebp - 0x9e0]
cvttsd2si eax, xmm0
movd xmm4, eax
cvtdq2ps xmm4, xmm4
addss xmm4, xmm1
subss xmm4, xmm2
movss xmm0, dword [ebp - 0x85c]
addss xmm0, dword [ebp - 0x7fc]
cvttss2si eax, xmm4
cvttss2si ecx, xmm3
mov dword [ebp - 0x6a4], eax
movd xmm1, eax
mov eax, dword [ebp - 0x798]
cvtps2pd xmm0, xmm0
mov dword [ebp - 0x6b0], ecx
mov eax, dword [eax + 0xc]
cvtdq2pd xmm1, xmm1
mulsd xmm0, qword [eax + 0xad0]
divsd xmm0, qword [ebp - 0x8a0]
subsd xmm1, xmm0
movd xmm0, ecx
cvttsd2si eax, xmm1
mov dword [ebp - 0x6ac], eax
jmp 0x491fe4
movss xmm7, dword [ebp - 0x834]
ucomiss xmm7, dword [ebp - 0x7ac]
movss xmm0, dword [ebp - 0x7fc]
movd xmm1, ecx
lahf
cvtps2pd xmm0, xmm0
cvtdq2ps xmm1, xmm1
test ah, 0x44
jnp 0x491f67
mulsd xmm0, qword [ebp - 0x9e8]
jmp 0x491f6f
mulsd xmm0, qword [ebp - 0x9e0]
cvttsd2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
subss xmm4, xmm0
subss xmm4, xmm1
movss dword [ebp - 0x8b0], xmm4
movss xmm0, dword [ebp - 0x85c]
addss xmm0, dword [ebp - 0x7fc]
mov eax, dword [ebp - 0x798]
cvttss2si edx, xmm3
cvttss2si ecx, xmm4
mov dword [ebp - 0x6b0], edx
cvtps2pd xmm1, xmm0
mov dword [ebp - 0x6ac], ecx
mov eax, dword [eax + 0xc]
movd xmm0, ecx
mulsd xmm1, qword [eax + 0xad0]
cvtdq2pd xmm0, xmm0
divsd xmm1, qword [ebp - 0x8a0]
addsd xmm1, xmm0
movd xmm0, edx
cvttsd2si eax, xmm1
mov dword [ebp - 0x6a4], eax
cvtdq2ps xmm0, xmm0
addss xmm0, xmm5
cvttss2si eax, xmm0
mov dword [ebp - 0x6a8], eax
mov ecx, dword [ebp - 0x7ec]
movss dword [ebp - 0x7bc], xmm4
test ecx, ecx
je 0x4921bb
mov eax, dword [ebp - 0x7cc]
movsx edi, word [ebp - 0x868]
movzx eax, word [eax + 4]
nop dword [eax]
movzx esi, word [ecx + 4]
movsx edx, ax
movsx eax, si
lea ecx, [edi + edx]
cmp ecx, eax
jle 0x4921bb
mov eax, dword [ebp - 0x794]
mov ecx, dword [ebp - 0x88c]
test dword [eax], 0x400c0
jne 0x4920e0
test ecx, ecx
je 0x492064
mov eax, dword [ebp - 0x7ec]
cmp eax, ecx
je 0x492060
cmp dword [eax + 8], ecx
jne 0x492064
mov al, 1
jmp 0x492066
xor al, al
push dword [ebp - 0x79c]
push dword [ebp - 0x7b4]
push eax
lea eax, [ebp - 0x6b0]
push eax
mov eax, dword [ebp - 0x92c]
movsx ecx, ax
mov eax, dword [ebp - 0x7ec]
mov ax, word [eax + 6]
add ax, cx
add cx, dx
movzx eax, ax
push eax
push esi
movzx eax, cx
push eax
push dword [ebp - 0x868]
lea eax, [ebx + 0x64]
sub esp, 0xc
mov ecx, esp
movss dword [esp + 8], xmm4
movss dword [esp + 4], xmm3
push eax
call fcn.0043ce00
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
movss xmm3, dword [ebp - 0x7a4]
mov ecx, dword [ebp - 0x7f4]
call fcn.004a7c00
jmp 0x49216e
test ecx, ecx
je 0x4920f7
mov eax, dword [ebp - 0x7ec]
cmp eax, ecx
je 0x4920f3
cmp dword [eax + 8], ecx
jne 0x4920f7
mov al, 1
jmp 0x4920f9
xor al, al
push dword [ebp - 0x79c]
push dword [ebp - 0x7b4]
push eax
lea eax, [ebp - 0x6b0]
push eax
mov eax, dword [ebp - 0x92c]
movsx ecx, ax
mov eax, dword [ebp - 0x7ec]
mov ax, word [eax + 6]
add ax, cx
add cx, dx
movzx eax, ax
push eax
push esi
movzx eax, cx
push eax
push dword [ebp - 0x868]
lea eax, [ebx + 0x64]
sub esp, 0xc
mov ecx, esp
movss dword [esp + 8], xmm4
movss dword [esp + 4], xmm3
push eax
call fcn.0043ce00
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
movss xmm3, dword [ebp - 0x7a4]
mov ecx, dword [ebp - 0x7f4]
call fcn.004a7e00
mov eax, dword [ebp - 0x7cc]
movzx ecx, word [eax + 4]
mov eax, dword [ebp - 0x7ec]
mov esi, ecx
movsx edx, word [eax + 6]
movsx eax, word [eax + 4]
add edx, eax
movsx eax, cx
add eax, edi
cmp eax, edx
jl 0x4921bb
mov ecx, dword [ebp - 0x7ec]
mov eax, esi
movss xmm3, dword [ebp - 0x7c4]
movss xmm4, dword [ebp - 0x7bc]
mov ecx, dword [ecx]
mov dword [ebp - 0x7ec], ecx
test ecx, ecx
jne 0x492020
cmp byte [ebp - 0x7ae], 0
mov eax, dword [ebp - 0x794]
mov ecx, dword [eax]
je 0x492204
mov edi, 0x18
test cl, 0x40
jne 0x491637
mov eax, dword [ebp - 0x798]
mov edx, ecx
and edx, 0x40000
je 0x49161a
movzx eax, word [eax + 8]
mov esi, eax
test eax, 0x400
je 0x491637
jmp 0x49161e
mov eax, ecx
mov edi, 0x18
and eax, 0x40
cmp byte [ebp - 0x892], 0
je 0x49222f
cmp word [ebp - 0x6c4], 3
jne 0x492228
test eax, eax
jmp 0x49177b
test eax, eax
jmp 0x49185c
mov edx, dword [ebp - 0x838]
test dx, dx
jle 0x49233d
test eax, eax
jne 0x492267
mov eax, dword [ebp - 0x798]
mov edx, ecx
and edx, 0x40000
je 0x492315
movzx eax, word [eax + 8]
mov esi, eax
test eax, 0x400
jne 0x492319
xor edi, edi
push dword [ebp - 0x83c]
mov eax, dword [ebp - 0x838]
mov edx, dword [ebp - 0x7b8]
movss xmm0, dword [ebp - 0x7a4]
cwde
push eax
movsx eax, dx
push dword [eax*4 + 0x592508]
lea eax, [ebx + 0x64]
sub esp, 0xc
movss dword [esp + 8], xmm0
movss xmm0, dword [ebp - 0x7bc]
movss dword [esp + 4], xmm0
movss xmm0, dword [ebp - 0x7c4]
movss dword [esp], xmm0
push edi
push ecx
mov ecx, esp
push eax
call fcn.0043ce00
push ecx
mov ecx, esp
push dword [ebp - 0x80c]
call fcn.004a86c0
push ecx
mov ecx, esp
push dword [ebp - 0x808]
call fcn.004a86c0
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
mov ecx, dword [ebp - 0x7a0]
xor edx, edx
call fcn.0043a210
mov ecx, dword [ebp - 0x794]
mov eax, dword [ecx]
test al, 0xc0
jne 0x4916d2
test eax, 0x40000
jne 0x4916d2
jmp 0x4915e0
movzx esi, word [eax + 8]
movzx eax, si
test cl, cl
js 0x492333
test edx, edx
je 0x492269
test eax, 0x400
je 0x492269
mov edi, 8
jmp 0x492269
test eax, eax
jne 0x492366
mov eax, dword [ebp - 0x798]
mov edx, ecx
and edx, 0x40000
je 0x49241b
movzx eax, word [eax + 8]
mov esi, eax
test eax, 0x400
jne 0x49241f
xor edi, edi
mov esi, dword [ebp - 0x7b8]
push dword [ebp - 0x83c]
mov ecx, dword [ebp - 0x954]
movss xmm0, dword [ebp - 0x7a4]
movsx eax, si
movsx ecx, cx
push 1
mov eax, dword [eax*4 + 0x59d2a0]
lea eax, [eax + ecx*2]
add eax, 0xfffffffe
push eax
sub esp, 0xc
lea eax, [ebx + 0x64]
movss dword [esp + 8], xmm0
movss xmm0, dword [ebp - 0x7bc]
movss dword [esp + 4], xmm0
movss xmm0, dword [ebp - 0x7c4]
movss dword [esp], xmm0
push edi
push ecx
mov ecx, esp
push eax
call fcn.0043ce00
push ecx
mov ecx, esp
push dword [ebp - 0x80c]
call fcn.004a86c0
push ecx
mov ecx, esp
push dword [ebp - 0x808]
call fcn.004a86c0
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
mov ecx, dword [ebp - 0x7a0]
xor edx, edx
call fcn.0043a210
mov eax, dword [ebp - 0x830]
mov ecx, dword [ebp - 0x838]
mov dword [ebp - 0x7a0], eax
mov al, byte [ebp - 0x7ae]
jmp 0x4915f2
movzx esi, word [eax + 8]
movzx eax, si
test cl, cl
js 0x492439
test edx, edx
je 0x492368
test eax, 0x400
je 0x492368
mov edi, 8
jmp 0x492368
movss xmm0, dword [ebp - 0x7c4]
xor edi, edi
movss dword [ebp - 0x888], xmm0
movss xmm0, dword [ebp - 0x7bc]
xor dh, dh
movss dword [ebp - 0x8b0], xmm0
mov dword [ebp - 0x810], edi
mov byte [ebp - 0x8a4], 0
mov byte [ebp - 0x785], dh
jmp 0x492482
mov edi, dword [ebp - 0x810]
test al, al
je 0x49257d
cmp word [ebp - 0x84c], 0x40
mov eax, dword [ebp - 0x794]
mov eax, dword [eax]
jne 0x4924a4
test al, 0x20
jne 0x4927e8
movss xmm1, dword [ebp - 0x7d0]
test eax, 0x400c0
je 0x4924c0
comiss xmm1, dword [ebp - 0x854]
jbe 0x4927e8
xor esi, esi
xor edx, edx
cmp si, cx
jge 0x492783
movss xmm1, dword [ebp - 0x854]
movss xmm0, dword [ebp - 0x7a8]
movsx edi, di
mov dword [ebp - 0x7e4], edi
nop word [eax + eax]
movsx esi, dx
mov ax, word [ebp + esi*2 - 0x1c]
lea ecx, [edi + esi]
mov edi, dword [ebp - 0x890]
mov word [edi + ecx*2], ax
mov eax, dword [ebp - 0x7b4]
mov edi, dword [ebp - 0x850]
mov eax, dword [eax + esi*4]
mov dword [edi + ecx*4], eax
mov edi, dword [ebp - 0x7e4]
test dx, dx
jne 0x492549
mov eax, dword [ebp - 0x794]
test byte [eax], 0xc0
je 0x492549
mov eax, dword [ebp - 0x850]
movss xmm0, dword [eax + edi*4]
subss xmm0, xmm1
movss dword [eax + edi*4], xmm0
movss xmm0, dword [ebp - 0x7a8]
mov eax, dword [ebp - 0x7b4]
inc edx
mov ecx, dword [ebp - 0x838]
addss xmm0, dword [eax + esi*4]
movss dword [ebp - 0x7a8], xmm0
cmp dx, cx
jl 0x4924f0
mov eax, dword [ebp - 0x794]
movss xmm1, dword [ebp - 0x7d0]
mov eax, dword [eax]
jmp 0x492783
cmp byte [ebp - 0x892], 0
je 0x49279d
cmp word [ebp - 0x6c4], 3
mov eax, dword [ebp - 0x794]
mov eax, dword [eax]
jne 0x492693
cmp word [ebp - 0x84c], 0x40
jne 0x4925b2
test al, 0x20
jne 0x4927e8
movss xmm1, dword [ebp - 0x7d0]
movss xmm2, dword [ebp - 0x854]
test eax, 0x400c0
je 0x4925d2
comiss xmm1, xmm2
jbe 0x4927e8
xor edx, edx
xor esi, esi
cmp dx, cx
jge 0x492783
movss xmm0, dword [ebp - 0x7a8]
movsx eax, di
mov dword [ebp - 0x7c0], eax
movsx edi, si
lea edx, [eax + edi]
movsx eax, word [ebp - 0x770]
lea ecx, [eax + eax*2]
movsx eax, word [ebp - 0x76c]
shl ecx, 5
add ecx, eax
mov eax, dword [ecx*4 + 0x5a5888]
mov ecx, dword [ebp - 0x890]
mov ax, word [eax + edi*2]
mov word [ecx + edx*2], ax
mov ecx, dword [ebp - 0x7b4]
mov eax, dword [ecx + edi*4]
mov ecx, dword [ebp - 0x850]
mov dword [ecx + edx*4], eax
mov ecx, dword [ebp - 0x7b4]
mov edx, dword [ebp - 0x794]
mov eax, dword [ebp - 0x7c0]
test si, si
jne 0x492671
test byte [edx], 0xc0
je 0x492671
mov edx, dword [ebp - 0x850]
movss xmm0, dword [edx + eax*4]
subss xmm0, xmm2
movss dword [edx + eax*4], xmm0
movss xmm0, dword [ebp - 0x7a8]
mov edx, dword [ebp - 0x794]
addss xmm0, dword [ecx + edi*4]
mov ecx, dword [ebp - 0x838]
inc esi
movss dword [ebp - 0x7a8], xmm0
cmp si, cx
jl 0x4925f0
jmp 0x492781
cmp word [ebp - 0x84c], 0x40
jne 0x4926a5
test al, 0x20
jne 0x4927e8
movss xmm1, dword [ebp - 0x7d0]
movss xmm2, dword [ebp - 0x854]
test eax, 0x400c0
je 0x4926c5
comiss xmm1, xmm2
jbe 0x4927e8
xor edx, edx
xor esi, esi
cmp dx, cx
jge 0x492783
movss xmm0, dword [ebp - 0x7a8]
movsx eax, di
mov dword [ebp - 0x7c0], eax
movsx edi, si
lea edx, [eax + edi]
movsx eax, word [ebp - 0x770]
lea ecx, [eax + eax*2]
movsx eax, word [ebp - 0x76c]
shl ecx, 5
add ecx, eax
mov eax, dword [ecx*4 + 0x59ab68]
mov ecx, dword [ebp - 0x890]
mov ax, word [eax + edi*2]
mov word [ecx + edx*2], ax
mov ecx, dword [ebp - 0x7b4]
mov eax, dword [ecx + edi*4]
mov ecx, dword [ebp - 0x850]
mov dword [ecx + edx*4], eax
mov ecx, dword [ebp - 0x7b4]
mov edx, dword [ebp - 0x794]
mov eax, dword [ebp - 0x7c0]
test si, si
jne 0x492764
test byte [edx], 0xc0
je 0x492764
mov edx, dword [ebp - 0x850]
movss xmm0, dword [edx + eax*4]
subss xmm0, xmm2
movss dword [edx + eax*4], xmm0
movss xmm0, dword [ebp - 0x7a8]
mov edx, dword [ebp - 0x794]
addss xmm0, dword [ecx + edi*4]
mov ecx, dword [ebp - 0x838]
inc esi
movss dword [ebp - 0x7a8], xmm0
cmp si, cx
jl 0x4926e3
mov eax, dword [edx]
add dword [ebp - 0x810], ecx
mov edi, dword [ebp - 0x794]
test al, 0xc0
je 0x4927ee
movss dword [ebp - 0x854], xmm1
jmp 0x4927ee
test cx, cx
jle 0x492bb1
cmp word [ebp - 0x84c], 0x40
mov eax, dword [ebp - 0x794]
mov eax, dword [eax]
jne 0x4927bc
test al, 0x20
jne 0x4927e8
movss xmm2, dword [ebp - 0x854]
test eax, 0x400c0
je 0x4929e9
test dl, dl
jne 0x4929cf
movss xmm1, dword [ebp - 0x7d0]
comiss xmm1, xmm2
ja 0x4929e9
mov edi, dword [ebp - 0x794]
cmp word [ebp - 0x84c], 0x40
mov esi, dword [ebp - 0x79c]
mov byte [ebp - 0x892], 0
mov al, byte [esi + 0x6fb]
jne 0x492df1
test al, al
je 0x492cff
mov eax, dword [ebp - 0x7cc]
test byte [eax + 8], 0x80
je 0x492cff
test byte [edi], 0x20
jne 0x492cff
push 2
call fcn.00560858
movzx edi, byte [esi + 0x7ee]
add esp, 4
movzx ecx, byte [esi + 0x7ef]
mov edx, eax
shl edi, 8
or edi, ecx
mov dword [ebp - 0x844], eax
movzx ecx, byte [esi + 0x7f0]
shl edi, 8
or edi, ecx
mov ecx, dword [ebp - 0x7cc]
push 1
mov si, word [ecx + 8]
shr si, 0xb
movzx ecx, si
mov dword [ebp - 0x8a8], ecx
push ecx
mov ecx, str.DUMMY
call fcn.0040a350
mov eax, dword [ebp - 0x7a0]
add esp, 8
movss xmm0, dword [ebp - 0x7a4]
mov dword [ebp - 0x830], eax
mov eax, dword [ebp - 0x798]
push 1
push ecx
mov ecx, dword [ebp - 0x844]
mov eax, dword [eax + 0xc]
movss dword [esp], xmm0
push 1
push dword [ebp - 0x7f8]
mov eax, dword [eax + 0x3ec]
mov edx, eax
push dword [ebp - 0x898]
mov dword [ebp - 0x7c0], eax
call fcn.0040ec40
mov eax, dword [ebp - 0x7b4]
add esp, 0x14
mov ecx, dword [ebp - 0x7c0]
add ecx, 0x100
movss xmm0, dword [eax]
push 0
movss dword [ebp - 0x7e4], xmm0
call fcn.00410b00
movss xmm0, dword [ebp - 0x7e4]
movss xmm3, dword [ebp - 0x7a4]
divss xmm0, xmm3
mov ecx, dword [ebp - 0x7b4]
push edi
push 1
movsd xmm1, qword [ebp - 0x8a0]
movss dword [eax], xmm0
mov eax, dword [ebp - 0x79c]
movss xmm0, dword [ecx]
cvtps2pd xmm0, xmm0
subsd xmm1, qword [eax + 0x278]
movss xmm4, dword [ebp - 0x7fc]
push dword [ebp - 0x844]
movss xmm2, dword [ebp - 0x834]
sub esp, 0xc
mulsd xmm1, xmm0
movss xmm0, dword [ebp - 0x7bc]
movss dword [esp + 8], xmm3
cvtps2pd xmm0, xmm0
divsd xmm1, qword [ebp - 0x9c0]
cvtps2pd xmm2, xmm2
addsd xmm1, xmm0
cvtpd2ps xmm0, xmm1
cvtps2pd xmm1, xmm4
movss dword [esp + 4], xmm0
mulsd xmm1, qword [eax + 0x708]
lea eax, [ebx + 0x64]
divsd xmm1, qword [ebp - 0x8a0]
cmp si, 8
ja 0x492c5a
mulsd xmm2, qword [ebp - 0xa30]
movaps xmm0, xmm4
addss xmm0, dword [ebp - 0x7c4]
cvtps2pd xmm0, xmm0
subsd xmm0, xmm1
subsd xmm0, xmm2
cvtpd2ps xmm0, xmm0
movss dword [esp], xmm0
push 8
jmp 0x492c88
mov eax, dword [ebp - 0x798]
mov eax, dword [eax + 0xc]
movss xmm0, dword [eax + 0xb98]
comiss xmm0, xmm2
jbe 0x4927e8
mov edx, dword [ebp - 0x7b8]
xor esi, esi
movsx eax, dx
movsx edi, di
mov dword [ebp - 0x7c0], edi
mov eax, dword [eax*4 + 0x592508]
mov dword [ebp - 0x7e4], eax
nop word [eax + eax]
cmp byte [ebp - 0x801], 0
movsx edx, si
mov ax, word [eax + edx*2]
lea ecx, [edi + edx]
mov edi, dword [ebp - 0x890]
mov word [edi + ecx*2], ax
mov eax, dword [ebp - 0x7b4]
mov edi, dword [ebp - 0x850]
mov eax, dword [eax + edx*4]
mov dword [edi + ecx*4], eax
mov edi, dword [ebp - 0x7c0]
mov al, byte [ebp - 0x81e]
je 0x492aa7
test al, al
je 0x492aa7
mov eax, dword [ebp - 0x838]
cwde
dec eax
cmp edx, eax
jge 0x492a6a
mov eax, dword [ebp - 0x850]
mov dword [eax + ecx*4], 0
jmp 0x492aa1
mov ecx, dword [ebp - 0x794]
mov eax, dword [ebp - 0x798]
test dword [ecx], 0x400c0
lea ecx, [edi + edx]
mov eax, dword [eax + 0xc]
mov edi, dword [ebp - 0x850]
jne 0x492a92
mov eax, dword [eax + 0xb94]
jmp 0x492a98
mov eax, dword [eax + 0xb98]
mov dword [edi + ecx*4], eax
mov edi, dword [ebp - 0x7c0]
mov al, byte [ebp - 0x81e]
test si, si
jne 0x492acb
mov ecx, dword [ebp - 0x794]
test byte [ecx], 0xc0
je 0x492acb
mov ecx, dword [ebp - 0x850]
movss xmm0, dword [ecx + edi*4]
subss xmm0, xmm2
movss dword [ecx + edi*4], xmm0
movss xmm0, dword [ebp - 0x7a8]
test al, al
jne 0x492aea
mov eax, dword [ebp - 0x7b4]
addss xmm0, dword [eax + edx*4]
movss dword [ebp - 0x7a8], xmm0
mov edx, dword [ebp - 0x838]
inc esi
mov eax, dword [ebp - 0x7e4]
movaps xmm1, xmm0
cmp si, dx
jl 0x492a10
mov edi, dword [ebp - 0x794]
mov al, byte [ebp - 0x81e]
mov esi, dword [ebp - 0x798]
movss dword [ebp - 0x7a8], xmm1
mov ecx, dword [edi]
test al, al
je 0x492b71
mov eax, dword [esi + 0xc]
test ecx, 0x400c0
jne 0x492b58
movss xmm0, dword [ebp - 0x834]
mulss xmm0, dword [0x5ea4cc]
movss xmm2, dword [eax + 0xb94]
subss xmm2, xmm0
addss xmm2, xmm1
movss dword [ebp - 0x7a8], xmm2
jmp 0x492b6b
movaps xmm0, xmm1
addss xmm0, dword [eax + 0xb98]
movss dword [ebp - 0x7a8], xmm0
mov al, byte [ebp - 0x81e]
add dword [ebp - 0x810], edx
test cl, 0xc0
je 0x4927ee
test al, al
je 0x492b9c
mov eax, dword [esi + 0xc]
movss xmm0, dword [eax + 0xb98]
movss dword [ebp - 0x854], xmm0
jmp 0x4927ee
movss xmm0, dword [ebp - 0x7d0]
movss dword [ebp - 0x854], xmm0
jmp 0x4927ee
cmp word [ebp - 0x84c], 0x40
mov edi, dword [ebp - 0x794]
mov eax, dword [edi]
jne 0x492bcb
test al, 0x20
jne 0x4927ee
movss xmm1, dword [ebp - 0x7d0]
movss xmm2, dword [ebp - 0x854]
test eax, 0x400c0
je 0x492beb
comiss xmm1, xmm2
jbe 0x4927ee
mov eax, dword [ebp - 0x810]
movaps xmm0, xmm1
mov ecx, dword [ebp - 0x954]
addss xmm0, dword [ebp - 0x7a8]
movsx edx, ax
movsx eax, si
movsx ecx, cx
movss dword [ebp - 0x7a8], xmm0
mov eax, dword [eax*4 + 0x59d2a0]
mov ax, word [eax + ecx*2 - 2]
mov ecx, dword [ebp - 0x890]
mov word [ecx + edx*2], ax
mov eax, dword [ebp - 0x7b4]
mov ecx, dword [ebp - 0x850]
movss xmm0, dword [eax]
movss dword [ecx + edx*4], xmm0
mov eax, dword [edi]
test al, 0xc0
je 0x492c4f
subss xmm0, xmm2
movss dword [ecx + edx*4], xmm0
mov eax, dword [edi]
inc dword [ebp - 0x810]
jmp 0x49278f
movss xmm0, dword [ebp - 0x7c4]
subss xmm0, dword [ebp - 0x85c]
mulsd xmm2, qword [ebp - 0x960]
cvtps2pd xmm0, xmm0
subsd xmm0, xmm1
addsd xmm0, xmm2
cvtpd2ps xmm0, xmm0
movss dword [esp], xmm0
push 0
push ecx
mov ecx, esp
push eax
call fcn.0043ce00
push ecx
mov ecx, esp
push dword [ebp - 0x80c]
call fcn.004a86c0
push ecx
mov ecx, esp
push dword [ebp - 0x808]
call fcn.004a86c0
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
mov ecx, dword [ebp - 0x7c0]
xor edx, edx
call fcn.0043a210
mov esi, dword [ebp - 0x79c]
push dword [ebp - 0x844]
movzx ecx, byte [esi + 0x7e8]
movzx eax, byte [esi + 0x7e9]
shl ecx, 8
or ecx, eax
movzx eax, byte [esi + 0x7ea]
shl ecx, 8
or ecx, eax
mov dword [ebp - 0x83c], ecx
call fcn.00560853
add esp, 4
cmp byte [esi + 0x6fc], 0
je 0x493123
mov edi, dword [ebp - 0x7cc]
movzx eax, word [edi + 8]
test eax, 0x100
je 0x493123
mov ecx, dword [ebp - 0x794]
test byte [ecx], 0x20
jne 0x493123
movss xmm0, dword [ebp - 0x7fc]
sub esp, 8
cvtps2pd xmm0, xmm0
shr ax, 0xb
movzx ecx, ax
mov dword [ebp - 0x8a8], ecx
movsd xmm1, qword [ebp - 0x7e0]
mulsd xmm0, qword [esi + 0x710]
movsd qword [esp], xmm1
push esi
divsd xmm0, qword [ebp - 0x8a0]
cvttsd2si eax, xmm0
movzx eax, ax
push eax
mov eax, dword [edi + 0xc]
movd xmm0, dword [eax + 0xa80]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
addss xmm0, dword [ebp - 0x7d0]
cvttss2si eax, xmm0
movss xmm0, dword [ebp - 0x7a4]
push eax
cvttss2si eax, dword [ebp - 0x7bc]
push eax
lea eax, [ebp - 0x6d4]
push eax
push ecx
sub esp, 8
lea eax, [ebx + 0x64]
mov ecx, esp
movss dword [esp + 4], xmm0
push eax
call fcn.0043ce00
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
push ecx
lea eax, [ebx + 0x5c]
mov ecx, esp
push eax
call fcn.0043ce00
mov ecx, dword [ebp - 0x7f4]
call fcn.004eb070
jmp 0x493123
mov edi, dword [ebp - 0x7cc]
test al, al
je 0x49304b
test byte [edi + 8], 0x80
je 0x49304b
push 2
call fcn.00560858
movzx edi, byte [esi + 0x7ee]
add esp, 4
movzx ecx, byte [esi + 0x7ef]
mov edx, eax
shl edi, 8
or edi, ecx
mov dword [ebp - 0x844], eax
movzx ecx, byte [esi + 0x7f0]
shl edi, 8
or edi, ecx
mov ecx, dword [ebp - 0x7cc]
push 1
mov si, word [ecx + 8]
shr si, 0xb
movzx ecx, si
mov dword [ebp - 0x8a8], ecx
push ecx
mov ecx, str.DUMMY
call fcn.0040a350
mov eax, dword [ebp - 0x7a0]
add esp, 8
movss xmm0, dword [ebp - 0x7a4]
mov dword [ebp - 0x830], eax
mov eax, dword [ebp - 0x798]
push 1
push ecx
mov ecx, dword [ebp - 0x844]
mov eax, dword [eax + 0xc]
movss dword [esp], xmm0
push 1
push dword [ebp - 0x7f8]
mov eax, dword [eax + 0x3ec]
mov edx, eax
push dword [ebp - 0x898]
mov dword [ebp - 0x7c0], eax
call fcn.0040ec40
mov eax, dword [ebp - 0x7b4]
add esp, 0x14
mov ecx, dword [ebp - 0x7c0]
add ecx, 0x100
movss xmm0, dword [eax]
push 0
movss dword [ebp - 0x7e4], xmm0
call fcn.00410b00
movss xmm0, dword [ebp - 0x7e4]
movss xmm4, dword [ebp - 0x7a4]
divss xmm0, xmm4
push edi
push 1
movss xmm5, dword [ebp - 0x7fc]
movsd xmm1, qword [ebp - 0x8a0]
movss dword [eax], xmm0
mov eax, dword [ebp - 0x79c]
cvtps2pd xmm2, xmm5
subsd xmm1, qword [eax + 0x278]
mulsd xmm2, qword [eax + 0x708]
mov eax, dword [ebp - 0x7b4]
movss xmm3, dword [ebp - 0x834]
push dword [ebp - 0x844]
cvtps2pd xmm3, xmm3
sub esp, 0xc
movss xmm0, dword [eax]
lea eax, [ebx + 0x64]
mulsd xmm3, qword [ebp - 0x960]
movss dword [esp + 8], xmm4
cvtps2pd xmm0, xmm0
divsd xmm2, qword [ebp - 0x8a0]
mulsd xmm1, xmm0
movss xmm0, dword [ebp - 0x7c4]
cvtps2pd xmm0, xmm0
divsd xmm1, qword [ebp - 0x9c0]
addsd xmm1, xmm0
cvtpd2ps xmm1, xmm1
cmp si, 8
ja 0x492fa2
movss xmm0, dword [ebp - 0x7bc]
subss xmm0, xmm5
cvtps2pd xmm0, xmm0
addsd xmm0, xmm2
addsd xmm0, xmm3
cvtpd2ps xmm0, xmm0
movss dword [esp + 4], xmm0
movss dword [esp], xmm1
push 8
jmp 0x492fce
movss xmm0, dword [ebp - 0x85c]
addss xmm0, dword [ebp - 0x7bc]
cvtps2pd xmm0, xmm0
addsd xmm0, xmm2
subsd xmm0, xmm3
cvtpd2ps xmm0, xmm0
movss dword [esp + 4], xmm0
movss dword [esp], xmm1
push 0
push ecx
mov ecx, esp
push eax
call fcn.0043ce00
push ecx
mov ecx, esp
push dword [ebp - 0x80c]
call fcn.004a86c0
push ecx
mov ecx, esp
push dword [ebp - 0x808]
call fcn.004a86c0
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
mov ecx, dword [ebp - 0x7c0]
xor edx, edx
call fcn.0043a210
mov esi, dword [ebp - 0x79c]
push dword [ebp - 0x844]
movzx ecx, byte [esi + 0x7e8]
movzx eax, byte [esi + 0x7e9]
shl ecx, 8
or ecx, eax
movzx eax, byte [esi + 0x7ea]
shl ecx, 8
or ecx, eax
mov dword [ebp - 0x83c], ecx
call fcn.00560853
mov edi, dword [ebp - 0x7cc]
add esp, 4
cmp byte [esi + 0x6fc], 0
je 0x493123
movzx eax, word [edi + 8]
test eax, 0x100
je 0x493123
movss xmm0, dword [ebp - 0x7fc]
sub esp, 8
cvtps2pd xmm0, xmm0
shr ax, 0xb
movzx ecx, ax
mov dword [ebp - 0x8a8], ecx
movsd xmm1, qword [ebp - 0x7e0]
mulsd xmm0, qword [esi + 0x710]
movsd qword [esp], xmm1
push esi
divsd xmm0, qword [ebp - 0x8a0]
cvttsd2si eax, xmm0
movzx eax, ax
push eax
mov eax, dword [edi + 0xc]
movd xmm0, dword [eax + 0xa80]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
addss xmm0, dword [ebp - 0x7d0]
cvttss2si eax, xmm0
movss xmm0, dword [ebp - 0x7a4]
push eax
cvttss2si eax, dword [ebp - 0x7c4]
push eax
lea eax, [ebp - 0x6d4]
push eax
push ecx
sub esp, 8
lea eax, [ebx + 0x64]
mov ecx, esp
movss dword [esp + 4], xmm0
push eax
call fcn.0043ce00
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
push ecx
lea eax, [ebx + 0x5c]
mov ecx, esp
push eax
call fcn.0043ce00
mov ecx, dword [ebp - 0x7f4]
call fcn.004ea7b0
mov esi, dword [ebp - 0x7a0]
mov dword [ebp - 0x7a0], esi
movss xmm4, dword [ebp - 0x7a8]
mov esi, dword [ebp - 0x79c]
mov cl, byte [ebp - 0x785]
mov edi, dword [ebp - 0x790]
jmp 0x49d3a2
mov eax, 0xff5c
cmp si, ax
jne 0x4931cd
cmp di, 1
jne 0x4940fc
mov edx, dword [ebp - 0x7cc]
xor cl, cl
mov byte [ebp - 0x8f5], 1
mov byte [ebp - 0x8a4], 1
mov byte [ebp - 0x785], cl
test edx, edx
je 0x4931aa
mov al, byte [edx + 8]
and al, 0x14
cmp al, 4
jne 0x4931aa
movss xmm4, dword [ebp - 0x7a8]
mov esi, dword [ebp - 0x79c]
mov edi, dword [ebp - 0x790]
mov dword [ebp - 0xa40], edx
jmp 0x49d3a2
movss xmm4, dword [ebp - 0x7a8]
mov esi, dword [ebp - 0x79c]
mov edi, dword [ebp - 0x790]
mov dword [ebp - 0xa40], 0
jmp 0x49d3a2
mov eax, 0x300a
cmp si, ax
jne 0x4940fc
xor ecx, ecx
movsx eax, di
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.00560858
mov edx, dword [ebp - 0x790]
add esp, 4
mov ecx, dword [ebp - 0x7e8]
mov edi, eax
mov dword [ebp - 0x81c], edi
push 1
push edi
lea edx, [edx - 2]
lea ecx, [ecx + 2]
call fcn.0040c7c0
add esp, 8
movzx edx, ax
cmp word [ebp - 0x8ac], 0
mov dword [ebp - 0x87c], edx
jne 0x493270
mov ecx, dword [ebp - 0x7cc]
test ecx, ecx
je 0x49327d
mov al, byte [ecx + 8]
and al, 0x14
cmp al, 4
jne 0x49327d
cmp byte [ebp - 0x85d], 0
je 0x49327d
cmp dword [ebp - 0x908], 0
jne 0x4940ce
mov eax, ecx
mov ecx, dword [ebp - 0xa40]
test ecx, ecx
cmovne eax, ecx
mov dword [ebp - 0x908], eax
jmp 0x4940ce
cmp byte [ebp - 0x7ad], 0
je 0x4940ce
mov al, byte [ebp - 0x8f5]
test al, al
je 0x49328e
xor esi, esi
jmp 0x493473
mov eax, dword [ebp - 0x810]
xor ecx, ecx
movsx esi, ax
mov edi, 2
mov eax, esi
mov dword [ebp - 0x7c0], esi
mul edi
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.00560858
mov dword [ebp - 0x828], eax
xor ecx, ecx
add esp, 4
mov eax, esi
mul edi
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.00560858
mov edi, eax
xor dl, dl
mov eax, dword [ebp - 0x7c0]
add esp, 4
xor esi, esi
mov dword [ebp - 0x844], edi
mov dword [ebp - 0x924], edx
test eax, eax
jle 0x4933b3
mov edi, dword [ebp - 0x890]
add edi, 4
nop dword [eax]
movzx ecx, word [edi - 4]
mov eax, ecx
mov dword [ebp - 0x7e4], eax
mov eax, 0x203b
cmp cx, ax
jne 0x493347
lea eax, [esi + 2]
cmp eax, dword [ebp - 0x7c0]
jge 0x493347
mov eax, 0xff3b
cmp word [edi - 2], ax
jne 0x493347
mov eax, 0xff03
cmp word [edi], ax
jne 0x493347
mov byte [ebp - 0x924], 1
lea eax, [esi + esi]
mov ecx, 0x5c71
jmp 0x49338b
test dl, dl
je 0x49336e
mov eax, 0xff3d
movzx edx, dl
cmp cx, ax
mov eax, 0
mov ecx, 0x5c71
cmove edx, eax
lea eax, [esi + esi]
mov dword [ebp - 0x924], edx
jmp 0x49338b
mov edx, 0xff3d
lea eax, [esi + esi]
cmp cx, dx
jne 0x493382
mov ecx, 0x5c71
jmp 0x49338b
mov ecx, dword [ebp - 0x7e4]
movzx ecx, cx
mov edx, dword [ebp - 0x844]
inc esi
add edi, 2
mov word [eax + edx], cx
mov eax, dword [ebp - 0x7c0]
mov edx, dword [ebp - 0x924]
cmp esi, eax
jl 0x493300
mov edi, dword [ebp - 0x844]
push dword [ebp - 0x828]
xor esi, esi
mov dword [ebp - 0x704], 0
push eax
push edi
push 4
push esi
call dword [ebp - 0xbbc]
test eax, eax
je 0x49344a
mov ecx, dword [ebp - 0x810]
mov edx, dword [ebp - 0x828]
mov dword [ebp - 0x724], esi
lea eax, [ecx - 1]
movzx esi, ax
lea eax, [ebp - 0x724]
push eax
push esi
push ecx
mov ecx, edi
call fcn.0040a450
movzx eax, ax
add esp, 0xc
mov dword [ebp - 0x704], eax
test ax, ax
jle 0x49344a
dec esi
test si, si
js 0x493449
mov edx, dword [ebp - 0x828]
lea eax, [ebp - 0x704]
push eax
push esi
push dword [ebp - 0x810]
mov ecx, edi
call fcn.0040a450
movzx eax, ax
add esp, 0xc
mov dword [ebp - 0x724], eax
cmp word [ebp - 0x704], ax
jne 0x493449
dec esi
test si, si
jns 0x493413
inc esi
push edi
call fcn.00560853
add esp, 4
push dword [ebp - 0x828]
call fcn.00560853
mov edx, dword [ebp - 0x87c]
add esp, 4
mov edi, dword [ebp - 0x81c]
mov al, byte [ebp - 0x8f5]
cmp dword [ebp - 0x7cc], 0
je 0x4940ce
test al, al
jne 0x493492
cmp word [ebp - 0x704], 0
jle 0x4940ce
movss xmm1, dword [ebp - 0x7ac]
xor eax, eax
movss dword [ebp - 0x828], xmm1
movaps xmm0, xmm1
movaps xmm2, xmm1
cmp ax, si
jge 0x4934d4
mov eax, dword [ebp - 0x850]
movzx ecx, si
nop dword [eax + eax]
addss xmm0, dword [eax]
add eax, 4
sub ecx, 1
jne 0x4934c0
movss dword [ebp - 0x828], xmm0
cmp si, word [ebp - 0x810]
jge 0x493500
mov ecx, dword [ebp - 0x850]
movsx eax, si
lea ecx, [ecx + eax*4]
mov eax, dword [ebp - 0x810]
sub eax, esi
movzx eax, ax
addss xmm2, dword [ecx]
add ecx, 4
sub eax, 1
jne 0x4934f4
cmp word [ebp - 0x84c], 0x40
mov eax, dword [ebp - 0x798]
mov ecx, dword [eax + 0xc]
movd xmm0, dword [ecx + 0xa80]
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0x7e0]
cvttsd2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
subss xmm2, xmm0
movss dword [ebp - 0x870], xmm2
jne 0x493687
cmp byte [ebp - 0x81d], 0
je 0x493687
mov ecx, dword [ecx + 0x3f8]
xor eax, eax
mov dword [ebp - 0x7b8], ecx
movaps xmm4, xmm1
movss dword [ebp - 0x7d0], xmm4
mov esi, 1
cmp ax, dx
jge 0x4936e3
mov eax, dword [ebp - 0x7b4]
mov dword [ebp - 0x7d4], eax
movzx eax, dx
mov dword [ebp - 0x800], eax
nop dword [eax + eax]
movzx eax, word [edi]
mov edx, 0x3033
cmp ax, dx
je 0x4935eb
mov edx, 0x3035
cmp ax, dx
je 0x4935eb
mov edx, 0x3034
cmp ax, dx
je 0x4935eb
mov edx, 0x200b
cmp ax, dx
je 0x4935eb
movsx eax, si
sub eax, 1
je 0x4935e4
sub eax, 1
je 0x493619
mov eax, dword [ebp - 0x798]
mov esi, 1
mov eax, dword [eax + 0xc]
mov ecx, dword [eax + 0x3f8]
mov dword [ebp - 0x7b8], ecx
jmp 0x493619
mov esi, 2
jmp 0x493619
movsx eax, si
sub eax, 0xb
je 0x493614
sub eax, 1
je 0x493619
mov eax, dword [ebp - 0x798]
mov esi, 0xb
mov eax, dword [eax + 0xc]
mov ecx, dword [eax + 0x47c]
mov dword [ebp - 0x7b8], ecx
jmp 0x493619
mov esi, 0xc
movss xmm0, dword [ebp - 0x7a4]
mov edx, ecx
push 1
push ecx
movss dword [esp], xmm0
mov ecx, edi
push 1
push dword [ebp - 0x7f8]
push dword [ebp - 0x898]
call fcn.0040ec40
mov ecx, dword [ebp - 0x7d4]
add esp, 0x14
mov eax, dword [ebp - 0x898]
add edi, 2
addss xmm0, dword [ebp - 0x7d0]
mov eax, dword [eax]
mov dword [ecx], eax
add ecx, 4
sub dword [ebp - 0x800], 1
movaps xmm4, xmm0
mov dword [ebp - 0x7d4], ecx
mov ecx, dword [ebp - 0x7b8]
movss dword [ebp - 0x7d0], xmm4
jne 0x493590
jmp 0x4936c7
mov ecx, dword [ecx + 0x3f8]
movss xmm0, dword [ebp - 0x7a4]
push 1
push ecx
movss dword [esp], xmm0
push edx
push dword [ebp - 0x7f8]
mov dword [ebp - 0x7b8], ecx
mov edx, ecx
push dword [ebp - 0x7b4]
mov ecx, edi
call fcn.0040ec40
movaps xmm4, xmm0
add esp, 0x14
movss dword [ebp - 0x7d0], xmm4
mov edx, dword [ebp - 0x87c]
mov ecx, dword [ebp - 0x7b8]
movss xmm1, dword [ebp - 0x7ac]
movss xmm2, dword [ebp - 0x870]
mov eax, dword [ebp - 0x7b4]
mov esi, dword [ebp - 0x79c]
movsx edi, dx
movss xmm3, dword [eax + edi*4 - 4]
mov al, byte [esi + 0x6fd]
movss dword [ebp - 0x7d4], xmm3
cmp al, 2
jge 0x4937cd
comiss xmm2, xmm4
jbe 0x4937a9
cmp byte [ebp - 0x81d], 0
jne 0x4937a9
test dx, dx
jle 0x493772
movss xmm0, dword [ebp - 0x7a4]
subss xmm2, xmm4
push 1
push 0
push ecx
movss dword [esp], xmm0
push dword [ebp - 0x7f8]
push ecx
push ecx
mov ecx, dword [ebp - 0x7f4]
movss dword [esp], xmm2
push edx
push dword [ebp - 0x7b4]
push dword [ebp - 0x81c]
call fcn.004a74b0
movss xmm3, dword [ebp - 0x7d4]
mov edx, dword [ebp - 0x87c]
cmp dx, 2
jg 0x493799
mov eax, dword [ebp - 0x7b4]
movss xmm0, dword [eax]
xorps xmm0, xmmword [0x5ea900]
divss xmm0, dword [0x5ea6b0]
movaps xmm1, xmm0
jmp 0x4938a0
movss xmm0, dword [ebp - 0x7ac]
movaps xmm1, xmm0
jmp 0x4938ba
movss xmm6, dword [ebp - 0x7ac]
cmp al, 1
jne 0x4938a8
movaps xmm1, xmm4
subss xmm1, xmm2
mulss xmm1, dword [0x5ea4cc]
jmp 0x4938a8
comiss xmm2, xmm4
jbe 0x49388d
cmp byte [ebp - 0x81d], 0
jne 0x49388d
test dx, dx
jle 0x49384c
movss xmm1, dword [ebp - 0x7a4]
movaps xmm0, xmm2
push 1
push 0
push ecx
movss dword [esp], xmm1
subss xmm0, xmm4
push dword [ebp - 0x7f8]
push ecx
push ecx
mov ecx, dword [ebp - 0x7f4]
movss dword [esp], xmm0
push edx
push dword [ebp - 0x7b4]
movss dword [ebp - 0x7c0], xmm0
push dword [ebp - 0x81c]
call fcn.004a74b0
mov al, byte [esi + 0x6fd]
movss xmm1, dword [ebp - 0x7c0]
movss xmm3, dword [ebp - 0x7d4]
mov edx, dword [ebp - 0x87c]
jmp 0x493853
movaps xmm1, xmm2
subss xmm1, xmm4
cmp al, 3
jne 0x493880
test dx, dx
jle 0x493880
movd xmm0, edi
cvtdq2ps xmm0, xmm0
divss xmm1, xmm0
movss xmm0, dword [ebp - 0x7ac]
mulss xmm1, dword [0x5ea4cc]
xorps xmm1, xmmword [0x5ea900]
jmp 0x4938ba
movss xmm6, dword [ebp - 0x7ac]
movaps xmm1, xmm6
jmp 0x4938a8
cmp al, 3
jne 0x4938a0
movaps xmm1, xmm4
subss xmm1, xmm2
mulss xmm1, dword [0x5ea4cc]
movss xmm6, dword [ebp - 0x7ac]
xor eax, eax
movaps xmm0, xmm6
movss dword [ebp - 0x844], xmm0
cmp ax, dx
jge 0x4938ed
mov ecx, dword [ebp - 0x7b4]
lea esi, [edi - 1]
xor eax, eax
movzx edx, dx
cmp eax, esi
jne 0x4938d2
addss xmm0, xmm3
jmp 0x4938d6
addss xmm0, dword [ecx]
inc eax
add ecx, 4
sub edx, 1
jne 0x4938c8
mov esi, dword [ebp - 0x79c]
movss dword [ebp - 0x844], xmm0
movzx edx, byte [esi + 0x7eb]
movzx eax, byte [esi + 0x7ec]
shl edx, 8
or edx, eax
movzx eax, byte [esi + 0x7ed]
shl edx, 8
or edx, eax
mov eax, dword [ebp - 0x794]
mov dword [ebp - 0x7c0], edx
mov ecx, dword [eax]
mov eax, ecx
and eax, 0x40000
cmp word [ebp - 0x84c], 0x40
jne 0x493e48
movss xmm0, dword [ebp - 0x8b0]
addss xmm0, dword [ebp - 0x828]
subss xmm0, xmm1
test eax, eax
je 0x49395a
cmp byte [ebp - 0x875], 0
je 0x49395a
movss xmm5, dword [ebp - 0x880]
jmp 0x493962
movss xmm5, dword [ebp - 0x8fc]
cmp byte [esi + 0x6fa], 0
maxss xmm5, xmm0
movss dword [ebp - 0x864], xmm5
je 0x494054
cmp byte [ebp - 0x81d], 0
je 0x493cbe
mov eax, dword [ebp - 0x798]
mov edi, 1
movss xmm0, dword [ebp - 0x7ac]
mov edx, dword [ebp - 0x87c]
movss dword [ebp - 0x7d0], xmm0
mov eax, dword [eax + 0xc]
mov ecx, dword [eax + 0x3f8]
xor eax, eax
mov dword [ebp - 0x7b8], ecx
cmp ax, dx
jge 0x494054
mov eax, dword [ebp - 0x8b4]
cwde
mov esi, dword [ebp - 0x81c]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movzx eax, dx
mov dword [ebp - 0x800], eax
mulss xmm0, dword [ebp - 0x7fc]
divss xmm0, dword [0x5ea6cc]
movss dword [ebp - 0x7d4], xmm0
nop dword [eax + eax]
movzx eax, word [esi]
mov edx, 0x3033
cmp ax, dx
je 0x493a5b
mov edx, 0x3035
cmp ax, dx
je 0x493a5b
mov edx, 0x3034
cmp ax, dx
je 0x493a5b
mov edx, 0x200b
cmp ax, dx
je 0x493a5b
movsx eax, di
sub eax, 1
je 0x493a54
sub eax, 1
je 0x493a89
mov eax, dword [ebp - 0x798]
mov edi, 1
mov eax, dword [eax + 0xc]
mov ecx, dword [eax + 0x3f8]
mov dword [ebp - 0x7b8], ecx
jmp 0x493a89
mov edi, 2
jmp 0x493a89
movsx eax, di
sub eax, 0xb
je 0x493a84
sub eax, 1
je 0x493a89
mov eax, dword [ebp - 0x798]
mov edi, 0xb
mov eax, dword [eax + 0xc]
mov ecx, dword [eax + 0x47c]
mov dword [ebp - 0x7b8], ecx
jmp 0x493a89
mov edi, 0xc
movss xmm0, dword [ebp - 0x7a4]
mov edx, ecx
push 1
push ecx
movss dword [esp], xmm0
mov ecx, esi
push 1
push dword [ebp - 0x7f8]
push dword [ebp - 0x898]
call fcn.0040ec40
mov eax, dword [ebp - 0x794]
add esp, 0x14
movss dword [ebp - 0x7e4], xmm0
test dword [eax], 0x40040
jne 0x493b77
cmp byte [ebp - 0x7ad], 0
je 0x493ae4
cmp word [ebp - 0x8ac], 0x1f
je 0x493b77
push dword [ebp - 0x7c0]
movss xmm0, dword [ebp - 0x7a4]
movss xmm2, dword [ebp - 0x7fc]
push 1
mov eax, dword [ebp - 0x79c]
push esi
sub esp, 0xc
movss dword [esp + 8], xmm0
movss xmm0, dword [ebp - 0x864]
addss xmm0, dword [ebp - 0x7d0]
movss dword [esp + 4], xmm0
movss xmm0, dword [ebp - 0x888]
addss xmm0, xmm2
cvtps2pd xmm1, xmm0
cvtps2pd xmm0, xmm2
mulsd xmm0, qword [eax + 0x700]
divsd xmm0, qword [ebp - 0x8a0]
subsd xmm1, xmm0
movss xmm0, dword [ebp - 0x834]
cvtps2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0xa18]
subsd xmm1, xmm0
movss xmm0, dword [ebp - 0x7d4]
cvtps2pd xmm0, xmm0
addsd xmm1, xmm0
cvtpd2ps xmm0, xmm1
jmp 0x493c3d
movss xmm2, dword [ebp - 0x7fc]
push dword [ebp - 0x7c0]
mov eax, dword [ebp - 0x79c]
movss xmm0, dword [ebp - 0x7d0]
addss xmm0, dword [ebp - 0x864]
movss xmm5, dword [ebp - 0x7a4]
movss xmm3, dword [ebp - 0x834]
movss xmm4, dword [ebp - 0x7d4]
cvtps2pd xmm2, xmm2
push 1
push esi
sub esp, 0xc
cmp byte [ebp - 0x875], 0
cvtps2pd xmm3, xmm3
movaps xmm1, xmm2
movss dword [esp + 8], xmm5
mulsd xmm1, qword [eax + 0x700]
movss dword [esp + 4], xmm0
movss xmm0, dword [ebp - 0x888]
cvtps2pd xmm4, xmm4
divsd xmm1, qword [ebp - 0x8a0]
je 0x493c22
subss xmm0, dword [ebp - 0x85c]
mulsd xmm2, qword [ebp - 0xaa0]
cvtps2pd xmm0, xmm0
addsd xmm0, xmm1
addsd xmm0, xmm2
addsd xmm0, xmm3
subsd xmm0, xmm4
cvtpd2ps xmm0, xmm0
movss dword [esp], xmm0
push 0
jmp 0x493c44
mulsd xmm3, qword [ebp - 0xa18]
cvtps2pd xmm0, xmm0
subsd xmm0, xmm1
subsd xmm0, xmm3
addsd xmm0, xmm4
cvtpd2ps xmm0, xmm0
movss dword [esp], xmm0
push 8
push ecx
lea eax, [ebx + 0x64]
mov ecx, esp
push eax
call fcn.0043ce00
push ecx
mov ecx, esp
push dword [ebp - 0x80c]
call fcn.004a86c0
push ecx
mov ecx, esp
push dword [ebp - 0x808]
call fcn.004a86c0
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
mov ecx, dword [ebp - 0x7b8]
xor edx, edx
call fcn.0043a210
movss xmm0, dword [ebp - 0x7e4]
add esi, 2
sub dword [ebp - 0x800], 1
addss xmm0, dword [ebp - 0x7d0]
mov ecx, dword [ebp - 0x7b8]
movss dword [ebp - 0x7d0], xmm0
jne 0x493a00
mov esi, dword [ebp - 0x79c]
jmp 0x494054
test ecx, 0x40040
jne 0x493d74
cmp byte [ebp - 0x7ad], 0
je 0x493ce1
cmp word [ebp - 0x8ac], 0x1f
je 0x493d74
movss xmm0, dword [ebp - 0x7a4]
movss xmm2, dword [ebp - 0x7fc]
push edx
push edi
push dword [ebp - 0x81c]
mov eax, dword [ebp - 0x8b4]
sub esp, 0xc
cwde
movss dword [esp + 8], xmm0
movss xmm0, dword [ebp - 0x888]
addss xmm0, xmm2
movss dword [esp + 4], xmm5
cvtps2pd xmm1, xmm0
cvtps2pd xmm0, xmm2
mulsd xmm0, qword [esi + 0x700]
divsd xmm0, qword [ebp - 0x8a0]
subsd xmm1, xmm0
movss xmm0, dword [ebp - 0x834]
cvtps2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0xa18]
subsd xmm1, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm2
divss xmm0, dword [0x5ea6cc]
cvtps2pd xmm0, xmm0
addsd xmm1, xmm0
cvtpd2ps xmm0, xmm1
movss dword [esp], xmm0
jmp 0x494011
mov ecx, dword [ebp - 0x8b4]
movss xmm1, dword [ebp - 0x7fc]
movzx eax, cx
cwde
movss xmm3, dword [ebp - 0x834]
cvtps2pd xmm2, xmm1
push edx
push edi
movd xmm0, eax
lea eax, [ebx + 0x64]
cvtdq2ps xmm0, xmm0
push dword [ebp - 0x81c]
mulss xmm0, xmm1
movaps xmm1, xmm2
sub esp, 0xc
cmp byte [ebp - 0x875], 0
mulsd xmm1, qword [esi + 0x700]
divss xmm0, dword [0x5ea6cc]
divsd xmm1, qword [ebp - 0x8a0]
cvtps2pd xmm4, xmm0
movss xmm0, dword [ebp - 0x7a4]
movss dword [esp + 8], xmm0
movss xmm0, dword [ebp - 0x888]
cvtps2pd xmm3, xmm3
movss dword [esp + 4], xmm5
je 0x493e23
subss xmm0, dword [ebp - 0x85c]
mulsd xmm2, qword [ebp - 0xaa0]
cvtps2pd xmm0, xmm0
addsd xmm0, xmm1
addsd xmm0, xmm2
addsd xmm0, xmm3
subsd xmm0, xmm4
cvtpd2ps xmm0, xmm0
movss dword [esp], xmm0
push 0
jmp 0x494016
mulsd xmm3, qword [ebp - 0xa18]
cvtps2pd xmm0, xmm0
subsd xmm0, xmm1
subsd xmm0, xmm3
addsd xmm0, xmm4
cvtpd2ps xmm0, xmm0
movss dword [esp], xmm0
jmp 0x494014
movss xmm0, dword [ebp - 0x888]
addss xmm0, dword [ebp - 0x828]
subss xmm0, xmm1
test eax, eax
je 0x493e73
cmp byte [ebp - 0x875], 0
je 0x493e73
movss xmm5, dword [ebp - 0x880]
jmp 0x493e7b
movss xmm5, dword [ebp - 0x8fc]
cmp byte [esi + 0x6fa], 0
maxss xmm5, xmm0
movss dword [ebp - 0x864], xmm5
je 0x494054
test ecx, 0x40040
jne 0x493f3f
cmp byte [ebp - 0x7ad], 0
je 0x493eb7
cmp word [ebp - 0x8ac], 0x1f
je 0x493f3f
movss xmm2, dword [ebp - 0x7fc]
cvtps2pd xmm1, xmm2
push edx
push edi
mov eax, dword [ebp - 0x8b4]
cwde
push dword [ebp - 0x81c]
mulsd xmm1, qword [esi + 0x700]
sub esp, 0xc
movss xmm0, dword [ebp - 0x7a4]
divsd xmm1, qword [ebp - 0x8a0]
movss dword [esp + 8], xmm0
movss xmm0, dword [ebp - 0x8b0]
subss xmm0, xmm2
cvtps2pd xmm0, xmm0
addsd xmm1, xmm0
movss xmm0, dword [ebp - 0x834]
cvtps2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0x960]
addsd xmm1, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm2
divss xmm0, dword [0x5ea6cc]
cvtps2pd xmm0, xmm0
subsd xmm1, xmm0
cvtpd2ps xmm0, xmm1
jmp 0x494006
mov ecx, dword [ebp - 0x8b4]
xorps xmm0, xmm0
movss xmm1, dword [ebp - 0x7fc]
movzx eax, cx
cwde
movss xmm2, dword [ebp - 0x834]
cvtps2pd xmm3, xmm1
push edx
push edi
cvtsi2ss xmm0, eax
push dword [ebp - 0x81c]
mulss xmm0, xmm1
movaps xmm1, xmm3
sub esp, 0xc
cmp byte [ebp - 0x875], 0
mulsd xmm1, qword [esi + 0x700]
divss xmm0, dword [0x5ea6cc]
divsd xmm1, qword [ebp - 0x8a0]
cvtps2pd xmm2, xmm2
cvtps2pd xmm4, xmm0
movss xmm0, dword [ebp - 0x7a4]
mulsd xmm2, qword [ebp - 0x960]
movss dword [esp + 8], xmm0
movss xmm0, dword [ebp - 0x8b0]
je 0x493ff3
addss xmm0, dword [ebp - 0x85c]
mulsd xmm3, qword [ebp - 0xbf0]
lea eax, [ebx + 0x64]
cvtps2pd xmm0, xmm0
subsd xmm0, xmm1
subsd xmm0, xmm3
subsd xmm0, xmm2
addsd xmm0, xmm4
cvtpd2ps xmm0, xmm0
movss dword [esp + 4], xmm0
movss dword [esp], xmm5
push 0
jmp 0x494016
cvtps2pd xmm0, xmm0
addsd xmm0, xmm1
addsd xmm0, xmm2
subsd xmm0, xmm4
cvtpd2ps xmm0, xmm0
movss dword [esp + 4], xmm0
movss dword [esp], xmm5
lea eax, [ebx + 0x64]
push 8
push ecx
mov ecx, esp
push eax
call fcn.0043ce00
push ecx
mov ecx, esp
push dword [ebp - 0x80c]
call fcn.004a86c0
push ecx
mov ecx, esp
push dword [ebp - 0x808]
call fcn.004a86c0
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
mov ecx, dword [ebp - 0x7b8]
xor edx, edx
call fcn.0043a210
mov eax, dword [ebp - 0x794]
test dword [eax], 0x40000
je 0x494085
cmp byte [ebp - 0x875], 0
je 0x494085
movss xmm0, dword [ebp - 0x864]
addss xmm0, dword [ebp - 0x844]
movss dword [ebp - 0x880], xmm0
jmp 0x49409d
movss xmm0, dword [ebp - 0x864]
addss xmm0, dword [ebp - 0x844]
movss dword [ebp - 0x8fc], xmm0
movzx ecx, byte [esi + 0x7e8]
movzx eax, byte [esi + 0x7e9]
shl ecx, 8
or ecx, eax
movzx eax, byte [esi + 0x7ea]
shl ecx, 8
or ecx, eax
mov eax, dword [ebp - 0x7f0]
mov dword [ebp - 0x83c], ecx
mov dword [ebp - 0x830], eax
push dword [ebp - 0x81c]
xor dh, dh
mov byte [ebp - 0x8a4], 1
mov byte [ebp - 0x785], dh
mov byte [ebp - 0x8f5], dh
call fcn.00560853
mov esi, dword [ebp - 0x7f0]
add esp, 4
jmp 0x493129
mov ecx, dword [ebp - 0x7cc]
test ecx, ecx
je 0x494123
movzx eax, word [ecx + 8]
test al, al
js 0x494115
test eax, 0x100
je 0x494123
mov byte [ebp - 0x8a4], 1
mov byte [ebp - 0x785], 0
cmp di, 9
jl 0x49496f
mov eax, 0xff3b
cmp si, ax
jne 0x49496f
mov eax, 0xff03
cmp word [edx + 2], ax
lea eax, [edx + 4]
jne 0x494972
mov esi, 0x300c
cmp word [eax], si
movzx esi, word [edx]
jne 0x494972
movsx eax, di
mov ecx, 0x300d
cmp word [edx + eax*2 - 0xa], cx
mov ecx, dword [ebp - 0x7cc]
jne 0x49496f
mov esi, 0x306f
cmp word [edx + eax*2 - 8], si
movzx esi, word [edx]
jne 0x49496f
mov edi, 0x30de
cmp word [edx + eax*2 - 6], di
mov edi, dword [ebp - 0x790]
jne 0x49496f
mov ecx, 0x30de
cmp word [edx + eax*2 - 4], cx
mov ecx, dword [ebp - 0x7cc]
jne 0x49496f
mov ecx, 0xff3d
cmp word [edx + eax*2 - 2], cx
mov ecx, dword [ebp - 0x7cc]
jne 0x49496f
lea eax, [edi - 8]
xor ecx, ecx
movzx esi, ax
mov edx, 2
movsx eax, si
inc eax
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.00560858
mov ecx, dword [ebp - 0x884]
add esp, 4
mov edx, esi
mov dword [ebp - 0x924], eax
push 1
push eax
call fcn.0040c7c0
dec ax
add esp, 8
movzx esi, ax
mov eax, dword [ebp - 0x810]
dec eax
movzx edx, ax
test dx, dx
js 0x494942
mov ecx, dword [ebp - 0x7a0]
nop word [eax + eax]
mov eax, dword [ebp - 0x890]
movsx edi, dx
mov dword [ebp - 0x7d4], edi
mov dword [ebp - 0x800], ecx
movsx ecx, si
mov ax, word [eax + edi*2]
mov edi, dword [ebp - 0x924]
cmp ax, word [edi + ecx*2]
mov edi, dword [ebp - 0x7d4]
jne 0x49440c
dec esi
test si, si
js 0x4942a6
nop dword [eax + eax]
dec edx
test dx, dx
js 0x49440c
mov edi, dword [ebp - 0x890]
movsx eax, dx
movsx ecx, si
mov ax, word [edi + eax*2]
mov edi, dword [ebp - 0x924]
cmp ax, word [edi + ecx*2]
mov edi, dword [ebp - 0x7d4]
jne 0x49440c
dec esi
test si, si
jns 0x494270
movss xmm0, dword [ebp - 0x7ac]
xor eax, eax
movss dword [ebp - 0x828], xmm0
movaps xmm1, xmm0
movss dword [ebp - 0x7c0], xmm0
cmp ax, dx
jge 0x4942e5
mov eax, dword [ebp - 0x850]
movzx ecx, dx
addss xmm1, dword [eax]
add eax, 4
sub ecx, 1
jne 0x4942d1
movss dword [ebp - 0x828], xmm1
lea esi, [edi + 1]
movsx ecx, dx
movzx eax, dx
cmp ecx, esi
jge 0x494315
mov edx, dword [ebp - 0x850]
nop dword [eax + eax]
addss xmm0, dword [edx + ecx*4]
inc eax
movsx ecx, ax
cmp ecx, esi
jl 0x494300
movss dword [ebp - 0x7c0], xmm0
mov eax, dword [ebp - 0x7a0]
movss xmm0, dword [ebp - 0x7a4]
mov dword [ebp - 0x830], eax
mov eax, dword [ebp - 0x798]
push 1
push ecx
movss dword [esp], xmm0
mov ecx, 0x5b2c28
mov eax, dword [eax + 0xc]
push 2
push dword [ebp - 0x7f8]
mov esi, dword [eax + 0x3f8]
mov edx, esi
push dword [ebp - 0x7b4]
call fcn.0040ec40
mov edi, dword [ebp - 0x79c]
add esp, 0x14
mov edx, dword [ebp - 0x7b4]
movaps xmm3, xmm0
movss xmm1, dword [ebp - 0x7c0]
movss dword [ebp - 0x7d0], xmm3
mov al, byte [edi + 0x6fd]
movss xmm2, dword [edx + 4]
movss dword [ebp - 0x844], xmm2
cmp al, 2
jge 0x49445e
comiss xmm1, xmm3
jbe 0x494457
movss xmm0, dword [ebp - 0x7a4]
subss xmm1, xmm3
push 1
push 0
push ecx
movss dword [esp], xmm0
push dword [ebp - 0x7f8]
push esi
push ecx
mov ecx, dword [ebp - 0x7f4]
movss dword [esp], xmm1
push 2
push edx
push 0x5b2c28
call fcn.004a74b0
mov edx, dword [ebp - 0x7b4]
movss xmm2, dword [ebp - 0x844]
movss xmm6, dword [ebp - 0x7ac]
movss xmm0, dword [edx]
xorps xmm0, xmmword [0x5ea900]
divss xmm0, dword [0x5ea6b0]
movss dword [ebp - 0x7b8], xmm0
jmp 0x49451d
mov eax, dword [ebp - 0x800]
dec edx
mov ecx, eax
mov dword [ebp - 0x7a0], ecx
test dx, dx
jns 0x494230
push dword [ebp - 0x924]
mov dword [ebp - 0x7a0], eax
call fcn.00560853
movss xmm4, dword [ebp - 0x7a8]
add esp, 4
mov esi, dword [ebp - 0x79c]
mov cl, byte [ebp - 0x785]
mov edi, dword [ebp - 0x790]
jmp 0x49d3a2
cmp al, 1
jmp 0x4944f2
comiss xmm1, xmm3
jbe 0x4944f0
push 1
push 0
push ecx
movaps xmm0, xmm1
movss xmm1, dword [ebp - 0x7a4]
movss dword [esp], xmm1
subss xmm0, xmm3
push dword [ebp - 0x7f8]
push esi
push ecx
mov ecx, dword [ebp - 0x7f4]
movss dword [esp], xmm0
push 2
push edx
push 0x5b2c28
movss dword [ebp - 0x7b8], xmm0
call fcn.004a74b0
cmp byte [edi + 0x6fd], 3
movss xmm2, dword [ebp - 0x844]
movss xmm6, dword [ebp - 0x7ac]
mov edx, dword [ebp - 0x7b4]
jne 0x494515
movss xmm0, dword [ebp - 0x7b8]
mulss xmm0, dword [0x5ea4cc]
mulss xmm0, dword [0x5ea4cc]
xorps xmm0, xmmword [0x5ea900]
movss dword [ebp - 0x7b8], xmm0
jmp 0x49451d
cmp al, 3
movss xmm6, dword [ebp - 0x7ac]
jne 0x494515
movaps xmm0, xmm3
subss xmm0, xmm1
mulss xmm0, dword [0x5ea4cc]
movss dword [ebp - 0x7b8], xmm0
jmp 0x49451d
movss dword [ebp - 0x7b8], xmm6
movaps xmm0, xmm6
xor ecx, ecx
movzx eax, cx
cmp eax, 1
je 0x494540
addss xmm0, dword [edx + eax*4]
inc ecx
movss dword [ebp - 0x7d4], xmm0
cmp cx, 2
jl 0x494522
jmp 0x49454c
addss xmm0, xmm2
movss dword [ebp - 0x7d4], xmm0
movzx ecx, byte [edi + 0x7eb]
movzx eax, byte [edi + 0x7ec]
movss xmm5, dword [ebp - 0x8fc]
shl ecx, 8
or ecx, eax
movzx eax, byte [edi + 0x7ed]
shl ecx, 8
or ecx, eax
cmp word [ebp - 0x84c], 0x40
mov al, byte [edi + 0x6fa]
jne 0x49471e
movss xmm0, dword [ebp - 0x8b0]
addss xmm0, dword [ebp - 0x828]
subss xmm0, dword [ebp - 0x7b8]
maxss xmm5, xmm0
movss dword [ebp - 0x8fc], xmm5
test al, al
je 0x4948eb
mov eax, dword [ebp - 0x794]
test dword [eax], 0x40040
jne 0x49464a
cmp byte [ebp - 0x7ad], 0
je 0x4945d8
cmp word [ebp - 0x8ac], 0x1f
je 0x49464a
movss xmm0, dword [ebp - 0x7a4]
movss xmm2, dword [ebp - 0x7fc]
push ecx
push 2
push 0x5b2c28
sub esp, 0xc
movss dword [esp + 8], xmm0
movss xmm0, dword [ebp - 0x888]
addss xmm0, xmm2
movss dword [esp + 4], xmm5
cvtps2pd xmm1, xmm0
cvtps2pd xmm0, xmm2
mulsd xmm0, qword [edi + 0x700]
divsd xmm0, qword [ebp - 0x8a0]
subsd xmm1, xmm0
movss xmm0, dword [ebp - 0x834]
cvtps2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0xa18]
subsd xmm1, xmm0
cvtpd2ps xmm0, xmm1
movss dword [esp], xmm0
jmp 0x4948a4
mov edx, dword [ebp - 0x8b4]
movss xmm1, dword [ebp - 0x7fc]
movzx eax, dx
cwde
movss xmm3, dword [ebp - 0x834]
cvtps2pd xmm2, xmm1
push ecx
push 2
push 0x5b2c28
sub esp, 0xc
cmp byte [ebp - 0x875], 0
movd xmm0, eax
lea eax, [ebx + 0x64]
cvtdq2ps xmm0, xmm0
cvtps2pd xmm3, xmm3
mulss xmm0, xmm1
movaps xmm1, xmm2
mulsd xmm1, qword [edi + 0x700]
divss xmm0, dword [0x5ea6cc]
divsd xmm1, qword [ebp - 0x8a0]
cvtps2pd xmm4, xmm0
movss xmm0, dword [ebp - 0x7a4]
movss dword [esp + 8], xmm0
movss xmm0, dword [ebp - 0x888]
movss dword [esp + 4], xmm5
je 0x4946f9
subss xmm0, dword [ebp - 0x85c]
mulsd xmm2, qword [ebp - 0xaa0]
cvtps2pd xmm0, xmm0
addsd xmm0, xmm1
addsd xmm0, xmm2
addsd xmm0, xmm3
subsd xmm0, xmm4
cvtpd2ps xmm0, xmm0
movss dword [esp], xmm0
push 0
jmp 0x4948a9
mulsd xmm3, qword [ebp - 0xa18]
cvtps2pd xmm0, xmm0
subsd xmm0, xmm1
subsd xmm0, xmm3
addsd xmm0, xmm4
cvtpd2ps xmm0, xmm0
movss dword [esp], xmm0
jmp 0x4948a7
movss xmm0, dword [ebp - 0x888]
addss xmm0, dword [ebp - 0x828]
subss xmm0, dword [ebp - 0x7b8]
maxss xmm5, xmm0
movss dword [ebp - 0x8fc], xmm5
test al, al
je 0x4948eb
mov eax, dword [ebp - 0x794]
test dword [eax], 0x40040
jne 0x4947d2
cmp byte [ebp - 0x7ad], 0
je 0x49476b
cmp word [ebp - 0x8ac], 0x1f
je 0x4947d2
movss xmm2, dword [ebp - 0x7fc]
cvtps2pd xmm1, xmm2
push ecx
push 2
push 0x5b2c28
sub esp, 0xc
movss xmm0, dword [ebp - 0x7a4]
mulsd xmm1, qword [edi + 0x700]
movss dword [esp + 8], xmm0
movss xmm0, dword [ebp - 0x8b0]
subss xmm0, xmm2
divsd xmm1, qword [ebp - 0x8a0]
cvtps2pd xmm0, xmm0
addsd xmm1, xmm0
movss xmm0, dword [ebp - 0x834]
cvtps2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0x960]
addsd xmm1, xmm0
cvtpd2ps xmm0, xmm1
jmp 0x494899
mov edx, dword [ebp - 0x8b4]
xorps xmm0, xmm0
movss xmm1, dword [ebp - 0x7fc]
movzx eax, dx
cwde
movss xmm2, dword [ebp - 0x834]
cvtps2pd xmm3, xmm1
push ecx
push 2
push 0x5b2c28
sub esp, 0xc
cmp byte [ebp - 0x875], 0
cvtsi2ss xmm0, eax
cvtps2pd xmm2, xmm2
mulss xmm0, xmm1
movaps xmm1, xmm3
mulsd xmm1, qword [edi + 0x700]
divss xmm0, dword [0x5ea6cc]
mulsd xmm2, qword [ebp - 0x960]
divsd xmm1, qword [ebp - 0x8a0]
cvtps2pd xmm4, xmm0
movss xmm0, dword [ebp - 0x7a4]
movss dword [esp + 8], xmm0
movss xmm0, dword [ebp - 0x8b0]
je 0x494886
addss xmm0, dword [ebp - 0x85c]
mulsd xmm3, qword [ebp - 0xbf0]
lea eax, [ebx + 0x64]
cvtps2pd xmm0, xmm0
subsd xmm0, xmm1
subsd xmm0, xmm3
subsd xmm0, xmm2
addsd xmm0, xmm4
cvtpd2ps xmm0, xmm0
movss dword [esp + 4], xmm0
movss dword [esp], xmm5
push 0
jmp 0x4948a9
cvtps2pd xmm0, xmm0
addsd xmm0, xmm1
addsd xmm0, xmm2
subsd xmm0, xmm4
cvtpd2ps xmm0, xmm0
movss dword [esp + 4], xmm0
movss dword [esp], xmm5
lea eax, [ebx + 0x64]
push 8
push ecx
mov ecx, esp
push eax
call fcn.0043ce00
push ecx
mov ecx, esp
push dword [ebp - 0x80c]
call fcn.004a86c0
push ecx
mov ecx, esp
push dword [ebp - 0x808]
call fcn.004a86c0
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
xor edx, edx
mov ecx, esi
call fcn.0043a210
movss xmm5, dword [ebp - 0x8fc]
addss xmm5, dword [ebp - 0x7d4]
movzx ecx, byte [edi + 0x7e8]
movzx eax, byte [edi + 0x7e9]
shl ecx, 8
or ecx, eax
mov byte [ebp - 0x8a4], 1
addss xmm5, dword [ebp - 0x7b8]
movzx eax, byte [edi + 0x7ea]
shl ecx, 8
or ecx, eax
mov byte [ebp - 0x785], 0
mov eax, dword [ebp - 0x800]
movss dword [ebp - 0x8fc], xmm5
mov dword [ebp - 0x83c], ecx
mov dword [ebp - 0x7a0], eax
push dword [ebp - 0x924]
call fcn.00560853
movss xmm4, dword [ebp - 0x7a8]
add esp, 4
mov esi, dword [ebp - 0x79c]
mov cl, byte [ebp - 0x785]
mov edi, dword [ebp - 0x790]
jmp 0x49d3a2
lea eax, [edx + 4]
cmp di, 0xb
jl 0x495028
mov edi, 0xff3b
cmp si, di
mov edi, dword [ebp - 0x790]
jne 0x495028
mov ecx, 0xff03
cmp word [edx + 2], cx
mov ecx, dword [ebp - 0x7cc]
jne 0x495028
mov esi, 0x300c
cmp word [eax], si
movzx esi, word [edx]
jne 0x495028
movsx eax, di
mov ecx, 0x300d
cmp word [edx + eax*2 - 0xe], cx
mov ecx, dword [ebp - 0x7cc]
jne 0x495028
mov ecx, 0x306e
cmp word [edx + eax*2 - 0xc], cx
mov ecx, dword [ebp - 0x7cc]
jne 0x495028
mov esi, 0x5de6
cmp word [edx + eax*2 - 0xa], si
movzx esi, word [edx]
jne 0x495028
mov edi, 0x306b
cmp word [edx + eax*2 - 8], di
mov edi, dword [ebp - 0x790]
jne 0x495028
mov ecx, 0x30de
cmp word [edx + eax*2 - 6], cx
mov ecx, dword [ebp - 0x7cc]
jne 0x495028
mov edi, 0x30de
cmp word [edx + eax*2 - 4], di
mov edi, dword [ebp - 0x790]
jne 0x495028
mov esi, 0xff3d
cmp word [edx + eax*2 - 2], si
movzx esi, word [edx]
jne 0x495028
lea eax, [edi - 0xa]
xor ecx, ecx
movzx esi, ax
mov edx, 2
movsx eax, si
inc eax
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.00560858
mov ecx, dword [ebp - 0x884]
add esp, 4
mov edi, eax
mov edx, esi
mov dword [ebp - 0x7d4], edi
push 1
push edi
call fcn.0040c7c0
dec ax
add esp, 8
movzx esi, ax
mov eax, dword [ebp - 0x810]
dec eax
movzx edx, ax
test dx, dx
js 0x495000
mov ecx, dword [ebp - 0x7a0]
nop dword [eax]
mov edi, dword [ebp - 0x890]
movsx eax, dx
mov dword [ebp - 0x7e4], eax
mov dword [ebp - 0x800], ecx
movsx ecx, si
mov ax, word [edi + eax*2]
mov edi, dword [ebp - 0x7d4]
cmp ax, word [edi + ecx*2]
jne 0x494c82
dec esi
test si, si
js 0x494b12
dec edx
test dx, dx
js 0x494c82
mov edi, dword [ebp - 0x890]
movsx eax, dx
movsx ecx, si
mov ax, word [edi + eax*2]
mov edi, dword [ebp - 0x7d4]
cmp ax, word [edi + ecx*2]
jne 0x494c82
dec esi
test si, si
jns 0x494ae2
movss xmm0, dword [ebp - 0x7ac]
xor eax, eax
movss dword [ebp - 0x828], xmm0
movaps xmm1, xmm0
movss dword [ebp - 0x7c0], xmm0
cmp ax, dx
jge 0x494b54
mov eax, dword [ebp - 0x850]
movzx ecx, dx
nop dword [eax]
addss xmm1, dword [eax]
add eax, 4
sub ecx, 1
jne 0x494b40
movss dword [ebp - 0x828], xmm1
mov esi, dword [ebp - 0x7e4]
inc esi
movsx ecx, dx
movzx eax, dx
cmp ecx, esi
jge 0x494b85
mov edx, dword [ebp - 0x850]
nop dword [eax + eax]
addss xmm0, dword [edx + ecx*4]
inc eax
movsx ecx, ax
cmp ecx, esi
jl 0x494b70
movss dword [ebp - 0x7c0], xmm0
mov eax, dword [ebp - 0x7a0]
movss xmm0, dword [ebp - 0x7a4]
mov dword [ebp - 0x830], eax
mov eax, dword [ebp - 0x798]
push 1
push ecx
movss dword [esp], xmm0
mov ecx, 0x5b2c28
mov eax, dword [eax + 0xc]
push 2
push dword [ebp - 0x7f8]
mov esi, dword [eax + 0x3f8]
mov edx, esi
push dword [ebp - 0x7b4]
call fcn.0040ec40
mov edx, dword [ebp - 0x79c]
movaps xmm3, xmm0
mov ecx, dword [ebp - 0x7b4]
add esp, 0x14
movss xmm0, dword [ebp - 0x7c0]
movss dword [ebp - 0x7d0], xmm3
mov al, byte [edx + 0x6fd]
movss xmm2, dword [ecx + 4]
movss dword [ebp - 0x844], xmm2
cmp al, 2
jge 0x494ce8
comiss xmm0, xmm3
jbe 0x494cc8
movss xmm1, dword [ebp - 0x7a4]
subss xmm0, xmm3
push 1
push 0
push ecx
movss dword [esp], xmm1
push dword [ebp - 0x7f8]
push esi
push ecx
movss dword [esp], xmm0
push 2
push ecx
mov ecx, dword [ebp - 0x7f4]
push 0x5b2c28
call fcn.004a74b0
mov eax, dword [ebp - 0x7b4]
movss xmm2, dword [ebp - 0x844]
movss xmm6, dword [ebp - 0x7ac]
mov edx, dword [ebp - 0x79c]
movss xmm1, dword [eax]
xorps xmm1, xmmword [0x5ea900]
divss xmm1, dword [0x5ea6b0]
movss dword [ebp - 0x7f0], xmm1
jmp 0x494da7
mov eax, dword [ebp - 0x800]
dec edx
mov ecx, eax
mov dword [ebp - 0x7a0], ecx
test dx, dx
jns 0x494ab0
push edi
mov dword [ebp - 0x7a0], eax
call fcn.00560853
movss xmm4, dword [ebp - 0x7a8]
add esp, 4
mov esi, dword [ebp - 0x79c]
mov cl, byte [ebp - 0x785]
mov edi, dword [ebp - 0x790]
jmp 0x49d3a2
movss xmm6, dword [ebp - 0x7ac]
cmp al, 1
je 0x494d83
movaps xmm1, xmm6
movss dword [ebp - 0x7f0], xmm1
jmp 0x494da7
comiss xmm0, xmm3
jbe 0x494d77
movss xmm1, dword [ebp - 0x7a4]
subss xmm0, xmm3
push 1
push 0
push ecx
movss dword [esp], xmm1
push dword [ebp - 0x7f8]
movss dword [ebp - 0x7f0], xmm0
push esi
push ecx
movss dword [esp], xmm0
push 2
push ecx
mov ecx, dword [ebp - 0x7f4]
push 0x5b2c28
call fcn.004a74b0
mov edx, dword [ebp - 0x79c]
movss xmm2, dword [ebp - 0x844]
movss xmm6, dword [ebp - 0x7ac]
cmp byte [edx + 0x6fd], 3
jne 0x494cd8
movss xmm1, dword [ebp - 0x7f0]
mulss xmm1, dword [0x5ea4cc]
mulss xmm1, dword [0x5ea4cc]
xorps xmm1, xmmword [0x5ea900]
movss dword [ebp - 0x7f0], xmm1
jmp 0x494da7
movss xmm6, dword [ebp - 0x7ac]
cmp al, 3
jne 0x494d9c
movaps xmm1, xmm3
subss xmm1, xmm0
mulss xmm1, dword [0x5ea4cc]
movss dword [ebp - 0x7f0], xmm1
jmp 0x494da7
movaps xmm1, xmm6
movss dword [ebp - 0x7f0], xmm6
movaps xmm0, xmm6
xor ecx, ecx
nop dword [eax]
movzx eax, cx
cmp eax, 1
je 0x494dda
mov edx, dword [ebp - 0x7b4]
inc ecx
addss xmm0, dword [edx + eax*4]
mov edx, dword [ebp - 0x79c]
movss dword [ebp - 0x7d4], xmm0
cmp cx, 2
jl 0x494db0
jmp 0x494de6
addss xmm0, xmm2
movss dword [ebp - 0x7d4], xmm0
movzx ecx, byte [edx + 0x7eb]
movzx eax, byte [edx + 0x7ec]
movss xmm2, dword [ebp - 0x880]
shl ecx, 8
or ecx, eax
movzx eax, byte [edx + 0x7ed]
shl ecx, 8
or ecx, eax
cmp word [ebp - 0x84c], 0x40
mov al, byte [edx + 0x6fa]
jne 0x494ebf
movss xmm0, dword [ebp - 0x8b0]
addss xmm0, dword [ebp - 0x828]
subss xmm0, xmm1
maxss xmm2, xmm0
movss dword [ebp - 0x880], xmm2
test al, al
je 0x494fad
movss xmm1, dword [ebp - 0x7fc]
cvtps2pd xmm1, xmm1
push ecx
push 2
push 0x5b2c28
sub esp, 0xc
movss xmm0, dword [ebp - 0x7a4]
mulsd xmm1, qword [edx + 0x700]
movss dword [esp + 8], xmm0
movss xmm0, dword [ebp - 0x888]
subss xmm0, dword [ebp - 0x85c]
divsd xmm1, qword [ebp - 0x8a0]
cvtps2pd xmm0, xmm0
movss dword [esp + 4], xmm2
addsd xmm1, xmm0
movss xmm0, dword [ebp - 0x834]
cvtps2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0xa10]
addsd xmm1, xmm0
cvtpd2ps xmm0, xmm1
movss dword [esp], xmm0
jmp 0x494f58
movss xmm0, dword [ebp - 0x888]
addss xmm0, dword [ebp - 0x828]
subss xmm0, xmm1
maxss xmm2, xmm0
movss dword [ebp - 0x880], xmm2
test al, al
je 0x494fad
movss xmm0, dword [ebp - 0x7a4]
push ecx
push 2
push 0x5b2c28
sub esp, 0xc
movss dword [esp + 8], xmm0
movss xmm0, dword [ebp - 0x8b0]
addss xmm0, dword [ebp - 0x85c]
cvtps2pd xmm1, xmm0
movss xmm0, dword [ebp - 0x7fc]
cvtps2pd xmm0, xmm0
mulsd xmm0, qword [edx + 0x700]
divsd xmm0, qword [ebp - 0x8a0]
subsd xmm1, xmm0
movss xmm0, dword [ebp - 0x834]
cvtps2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0x960]
subsd xmm1, xmm0
cvtpd2ps xmm0, xmm1
movss dword [esp + 4], xmm0
movss dword [esp], xmm2
push 0
push ecx
lea eax, [ebx + 0x64]
mov ecx, esp
push eax
call fcn.0043ce00
push ecx
mov ecx, esp
push dword [ebp - 0x80c]
call fcn.004a86c0
push ecx
mov ecx, esp
push dword [ebp - 0x808]
call fcn.004a86c0
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
xor edx, edx
mov ecx, esi
call fcn.0043a210
mov edx, dword [ebp - 0x79c]
movss xmm2, dword [ebp - 0x880]
movss xmm1, dword [ebp - 0x7f0]
addss xmm2, dword [ebp - 0x7d4]
movzx ecx, byte [edx + 0x7e8]
movzx eax, byte [edx + 0x7e9]
shl ecx, 8
or ecx, eax
mov byte [ebp - 0x8a4], 1
movzx eax, byte [edx + 0x7ea]
addss xmm2, xmm1
shl ecx, 8
or ecx, eax
mov byte [ebp - 0x785], 0
mov eax, dword [ebp - 0x800]
mov dword [ebp - 0x83c], ecx
movss dword [ebp - 0x880], xmm2
mov dword [ebp - 0x7a0], eax
push edi
call fcn.00560853
movss xmm4, dword [ebp - 0x7a8]
add esp, 4
mov esi, dword [ebp - 0x79c]
mov cl, byte [ebp - 0x785]
mov edi, dword [ebp - 0x790]
jmp 0x49d3a2
cmp di, 0xf
jl 0x495b77
mov eax, 0xff3b
cmp si, ax
jne 0x495b77
mov eax, 0xff03
cmp word [edx + 2], ax
lea eax, [edx + 4]
jne 0x495b7a
mov ecx, 0x300c
cmp word [eax], cx
mov ecx, dword [ebp - 0x7cc]
jne 0x495b7a
movsx eax, di
mov edi, 0x300d
cmp word [edx + eax*2 - 0xa], di
mov edi, dword [ebp - 0x790]
jne 0x495b77
mov edi, 0x306e
cmp word [edx + eax*2 - 8], di
mov edi, dword [ebp - 0x790]
jne 0x495b77
mov edi, 0x30eb
cmp word [edx + eax*2 - 6], di
mov edi, dword [ebp - 0x790]
jne 0x495b77
mov esi, 0x30d3
cmp word [edx + eax*2 - 4], si
movzx esi, word [edx]
jne 0x495b77
mov ecx, 0xff3d
cmp word [edx + eax*2 - 2], cx
mov ecx, dword [ebp - 0x7cc]
jne 0x495b77
mov eax, dword [ebp - 0x884]
mov esi, 0x300d
mov ecx, dword [ebp - 0x7e8]
xor edx, edx
cmp word [eax], si
je 0x4950fb
nop dword [eax]
inc edx
movsx eax, dx
cmp word [ecx + eax*2 + 6], si
jne 0x4950f0
lea eax, [edi - 6]
mov esi, 0x300c
movzx edi, ax
movsx eax, di
cmp word [ecx + eax*2], si
je 0x49511a
nop
dec edi
movsx eax, di
cmp word [ecx + eax*2], si
jne 0x495110
mov eax, dword [ebp - 0x790]
dec edx
sub eax, edi
inc edi
sub eax, 6
mov dword [ebp - 0x7c0], edi
movzx eax, ax
mov dword [ebp - 0x7f0], eax
movzx eax, di
mov dword [ebp - 0x870], eax
mov eax, dword [ebp - 0x810]
dec eax
movzx esi, ax
test si, si
js 0x49312f
mov eax, dword [ebp - 0x7a0]
mov edi, dword [ebp - 0x890]
mov dword [ebp - 0x7a0], eax
movsx eax, si
mov dword [ebp - 0x7e4], eax
movsx ecx, dx
mov ax, word [edi + eax*2]
mov edi, dword [ebp - 0x7e8]
cmp ax, word [edi + ecx*2 + 6]
mov edi, dword [ebp - 0x7c0]
jne 0x495318
dec edx
test dx, dx
js 0x4951c8
dec esi
test si, si
js 0x495318
mov edi, dword [ebp - 0x890]
movsx eax, si
movsx ecx, dx
mov ax, word [edi + eax*2]
mov edi, dword [ebp - 0x7e8]
cmp ax, word [edi + ecx*2 + 6]
mov edi, dword [ebp - 0x7c0]
jne 0x495318
dec edx
test dx, dx
jns 0x495191
movss xmm2, dword [ebp - 0x7ac]
xor eax, eax
movss dword [ebp - 0x924], xmm2
movaps xmm1, xmm2
movss dword [ebp - 0x828], xmm2
movaps xmm0, xmm2
cmp ax, si
jge 0x49520a
mov eax, dword [ebp - 0x850]
movzx ecx, si
addss xmm1, dword [eax]
add eax, 4
sub ecx, 1
jne 0x4951f6
movss dword [ebp - 0x924], xmm1
mov edx, dword [ebp - 0x7e4]
inc edx
movsx ecx, si
movzx eax, si
cmp ecx, edx
jge 0x495236
mov esi, dword [ebp - 0x850]
addss xmm0, dword [esi + ecx*4]
inc eax
movsx ecx, ax
cmp ecx, edx
jl 0x495221
movss dword [ebp - 0x828], xmm0
cmp word [ebp - 0x84c], 0x40
jne 0x49540e
cmp byte [ebp - 0x81d], 0
je 0x49540e
mov eax, dword [ebp - 0x798]
movaps xmm3, xmm2
mov esi, 1
movss dword [ebp - 0x7d0], xmm3
mov eax, dword [eax + 0xc]
mov edx, dword [eax + 0x3f8]
xor eax, eax
mov dword [ebp - 0x81c], edx
cmp ax, word [ebp - 0x7f0]
jge 0x4953f7
mov eax, dword [ebp - 0x7b4]
mov ecx, dword [ebp - 0x7e8]
mov edi, ecx
mov dword [ebp - 0x7d4], eax
mov eax, dword [ebp - 0x7c0]
cwde
lea ecx, [ecx + eax*2]
mov eax, dword [ebp - 0x7f0]
movzx eax, ax
mov dword [ebp - 0x7c0], ecx
mov dword [ebp - 0x800], eax
nop dword [eax + eax]
movzx eax, word [edi]
cmp ax, word [ebp - 0xbb8]
je 0x495354
cmp ax, word [ebp - 0xb7c]
je 0x495354
cmp ax, word [ebp - 0xa90]
je 0x495354
cmp ax, word [ebp - 0xa84]
je 0x495354
movsx eax, si
sub eax, 1
je 0x49534d
sub eax, 1
je 0x495382
mov eax, dword [ebp - 0x798]
mov esi, 1
mov eax, dword [eax + 0xc]
mov edx, dword [eax + 0x3f8]
mov dword [ebp - 0x81c], edx
jmp 0x495382
dec esi
test si, si
jns 0x495152
mov esi, dword [ebp - 0x7a0]
mov cl, byte [ebp - 0x785]
movss xmm4, dword [ebp - 0x7a8]
mov edi, dword [ebp - 0x790]
mov dword [ebp - 0x7a0], esi
mov esi, dword [ebp - 0x79c]
jmp 0x49d3a2
mov esi, 2
jmp 0x495382
movsx eax, si
sub eax, 0xb
je 0x49537d
sub eax, 1
je 0x495382
mov eax, dword [ebp - 0x798]
mov esi, 0xb
mov eax, dword [eax + 0xc]
mov edx, dword [eax + 0x47c]
mov dword [ebp - 0x81c], edx
jmp 0x495382
mov esi, 0xc
movss xmm0, dword [ebp - 0x7a4]
push 1
push ecx
movss dword [esp], xmm0
push 1
push dword [ebp - 0x7f8]
push dword [ebp - 0x898]
call fcn.0040ec40
mov ecx, dword [ebp - 0x7d4]
add esp, 0x14
mov eax, dword [ebp - 0x898]
add edi, 2
addss xmm0, dword [ebp - 0x7d0]
add dword [ebp - 0x7c0], 2
mov edx, dword [ebp - 0x81c]
mov eax, dword [eax]
mov dword [ecx], eax
add ecx, 4
sub dword [ebp - 0x800], 1
movaps xmm3, xmm0
mov dword [ebp - 0x7d4], ecx
mov ecx, dword [ebp - 0x7c0]
movss dword [ebp - 0x7d0], xmm3
jne 0x4952c0
mov eax, dword [ebp - 0x870]
mov esi, dword [ebp - 0x81c]
movsx edi, ax
mov dword [ebp - 0x7d4], edi
jmp 0x49546c
mov eax, dword [ebp - 0x798]
movss xmm0, dword [ebp - 0x7a4]
push 1
push ecx
mov eax, dword [eax + 0xc]
movss dword [esp], xmm0
push dword [ebp - 0x7f0]
movsx edi, di
mov esi, dword [eax + 0x3f8]
mov edx, esi
mov eax, dword [ebp - 0x7e8]
push dword [ebp - 0x7f8]
mov dword [ebp - 0x81c], esi
push dword [ebp - 0x7b4]
lea ecx, [eax + edi*2]
mov dword [ebp - 0x7d4], edi
call fcn.0040ec40
movaps xmm3, xmm0
add esp, 0x14
movss dword [ebp - 0x7d0], xmm3
mov edx, dword [ebp - 0x7f0]
mov eax, dword [ebp - 0x7b4]
movss xmm0, dword [ebp - 0x828]
movsx ecx, dx
mov dword [ebp - 0x864], ecx
movss xmm2, dword [eax + ecx*4 - 4]
mov eax, dword [ebp - 0x79c]
movss dword [ebp - 0x844], xmm2
mov al, byte [eax + 0x6fd]
cmp al, 2
jge 0x495573
comiss xmm0, xmm3
jbe 0x495553
cmp byte [ebp - 0x81d], 0
jne 0x495553
movss xmm1, dword [ebp - 0x7a4]
subss xmm0, xmm3
mov eax, dword [ebp - 0x7e8]
push 1
push 0
push ecx
movss dword [esp], xmm1
lea eax, [eax + edi*2]
push dword [ebp - 0x7f8]
push esi
mov esi, dword [ebp - 0x7b4]
push ecx
mov ecx, dword [ebp - 0x7f4]
movss dword [esp], xmm0
push edx
push esi
push eax
call fcn.004a74b0
mov edx, dword [ebp - 0x7f0]
movss xmm2, dword [ebp - 0x844]
movss xmm6, dword [ebp - 0x7ac]
mov ecx, dword [ebp - 0x864]
cmp dx, 2
jg 0x495543
movss xmm1, dword [esi]
xorps xmm1, xmmword [0x5ea900]
divss xmm1, dword [0x5ea6b0]
movss dword [ebp - 0x7b8], xmm1
jmp 0x49567f
movaps xmm1, xmm6
movss dword [ebp - 0x7b8], xmm1
jmp 0x49567f
movss xmm6, dword [ebp - 0x7ac]
cmp al, 1
je 0x49565b
movaps xmm1, xmm6
movss dword [ebp - 0x7b8], xmm1
jmp 0x49567f
comiss xmm0, xmm3
jbe 0x49564f
cmp byte [ebp - 0x81d], 0
jne 0x49564f
movss xmm1, dword [ebp - 0x7a4]
subss xmm0, xmm3
mov eax, dword [ebp - 0x7e8]
push 1
push 0
push ecx
movss dword [esp], xmm1
lea eax, [eax + edi*2]
push dword [ebp - 0x7f8]
movss dword [ebp - 0x7b8], xmm0
push esi
push ecx
mov ecx, dword [ebp - 0x7f4]
movss dword [esp], xmm0
push edx
push dword [ebp - 0x7b4]
push eax
call fcn.004a74b0
mov eax, dword [ebp - 0x79c]
mov edx, dword [ebp - 0x7f0]
cmp byte [eax + 0x6fd], 3
jne 0x49562c
test dx, dx
jle 0x49562c
mov ecx, dword [ebp - 0x864]
movss xmm1, dword [ebp - 0x7b8]
movss xmm2, dword [ebp - 0x844]
movss xmm6, dword [ebp - 0x7ac]
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
divss xmm1, xmm0
mulss xmm1, dword [0x5ea4cc]
xorps xmm1, xmmword [0x5ea900]
movss dword [ebp - 0x7b8], xmm1
jmp 0x49567f
movss xmm6, dword [ebp - 0x7ac]
movss xmm2, dword [ebp - 0x844]
movaps xmm1, xmm6
mov ecx, dword [ebp - 0x864]
movss dword [ebp - 0x7b8], xmm1
jmp 0x49567f
movss xmm6, dword [ebp - 0x7ac]
cmp al, 3
jne 0x495674
movaps xmm1, xmm3
subss xmm1, xmm0
mulss xmm1, dword [0x5ea4cc]
movss dword [ebp - 0x7b8], xmm1
jmp 0x49567f
movaps xmm1, xmm6
movss dword [ebp - 0x7b8], xmm6
xor eax, eax
movaps xmm0, xmm6
movss dword [ebp - 0x844], xmm0
cmp ax, dx
jge 0x4956c5
lea esi, [ecx - 1]
movzx edx, dx
mov ecx, dword [ebp - 0x7b4]
nop dword [eax]
cmp eax, esi
jne 0x4956aa
addss xmm0, xmm2
jmp 0x4956ae
addss xmm0, dword [ecx]
inc eax
add ecx, 4
sub edx, 1
jne 0x4956a0
mov edx, dword [ebp - 0x7f0]
movss dword [ebp - 0x844], xmm0
mov esi, dword [ebp - 0x79c]
movss xmm2, dword [ebp - 0x880]
movzx ecx, byte [esi + 0x7eb]
movzx eax, byte [esi + 0x7ec]
shl ecx, 8
or ecx, eax
movzx eax, byte [esi + 0x7ed]
shl ecx, 8
or ecx, eax
cmp word [ebp - 0x84c], 0x40
mov al, byte [esi + 0x6fa]
mov dword [ebp - 0x7e4], ecx
jne 0x495ad0
movss xmm0, dword [ebp - 0x8b0]
addss xmm0, dword [ebp - 0x924]
subss xmm0, xmm1
maxss xmm2, xmm0
movss dword [ebp - 0x880], xmm2
test al, al
je 0x49598b
cmp byte [ebp - 0x81d], 0
je 0x4959fe
mov eax, dword [ebp - 0x798]
mov esi, 1
movss xmm0, dword [ebp - 0x7ac]
movss dword [ebp - 0x7d0], xmm0
mov eax, dword [eax + 0xc]
mov edi, dword [eax + 0x3f8]
xor eax, eax
cmp ax, dx
jge 0x495985
movss xmm0, dword [ebp - 0x888]
subss xmm0, dword [ebp - 0x85c]
mov eax, dword [ebp - 0x7e8]
mov edx, eax
mov ecx, dword [ebp - 0x7d4]
mov dword [ebp - 0x800], eax
movss dword [ebp - 0x870], xmm0
movss xmm0, dword [ebp - 0x834]
lea ecx, [edx + ecx*2]
mov edx, dword [ebp - 0x7f0]
cvtps2pd xmm0, xmm0
movzx edx, dx
mov dword [ebp - 0x7c0], ecx
mov dword [ebp - 0x7d4], edx
mulsd xmm0, qword [ebp - 0xa10]
movsd qword [ebp - 0x928], xmm0
nop
movzx eax, word [eax]
mov edx, 0x3033
cmp ax, dx
je 0x495825
mov edx, 0x3035
cmp ax, dx
je 0x495825
mov edx, 0x3034
cmp ax, dx
je 0x495825
mov edx, 0x200b
cmp ax, dx
je 0x495825
movsx eax, si
sub eax, 1
je 0x49581e
sub eax, 1
je 0x49584d
mov eax, dword [ebp - 0x798]
mov esi, 1
mov eax, dword [eax + 0xc]
mov edi, dword [eax + 0x3f8]
jmp 0x49584d
mov esi, 2
jmp 0x49584d
movsx eax, si
sub eax, 0xb
je 0x495848
sub eax, 1
je 0x49584d
mov eax, dword [ebp - 0x798]
mov esi, 0xb
mov eax, dword [eax + 0xc]
mov edi, dword [eax + 0x47c]
jmp 0x49584d
mov esi, 0xc
movss xmm0, dword [ebp - 0x7a4]
mov edx, edi
push 1
push ecx
movss dword [esp], xmm0
push 1
push dword [ebp - 0x7f8]
push dword [ebp - 0x898]
call fcn.0040ec40
movss xmm1, dword [ebp - 0x880]
add esp, 0x14
addss xmm1, dword [ebp - 0x7d0]
mov eax, dword [ebp - 0x79c]
movss dword [ebp - 0x828], xmm0
push dword [ebp - 0x7e4]
movss xmm0, dword [ebp - 0x7a4]
push 1
push dword [ebp - 0x7c0]
sub esp, 0xc
movss dword [esp + 8], xmm0
movss dword [esp + 4], xmm1
movss xmm1, dword [ebp - 0x7fc]
cvtps2pd xmm1, xmm1
movss xmm0, dword [ebp - 0x870]
mulsd xmm1, qword [eax + 0x700]
lea eax, [ebx + 0x64]
cvtps2pd xmm0, xmm0
divsd xmm1, qword [ebp - 0x8a0]
addsd xmm1, xmm0
addsd xmm1, qword [ebp - 0x928]
cvtpd2ps xmm0, xmm1
movss dword [esp], xmm0
push 0
push ecx
mov ecx, esp
push eax
call fcn.0043ce00
push ecx
mov ecx, esp
push dword [ebp - 0x80c]
call fcn.004a86c0
push ecx
mov ecx, esp
push dword [ebp - 0x808]
call fcn.004a86c0
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
xor edx, edx
mov ecx, edi
call fcn.0043a210
movss xmm0, dword [ebp - 0x828]
addss xmm0, dword [ebp - 0x7d0]
mov eax, dword [ebp - 0x800]
mov ecx, dword [ebp - 0x7c0]
add eax, 2
add ecx, 2
mov dword [ebp - 0x800], eax
sub dword [ebp - 0x7d4], 1
movss dword [ebp - 0x7d0], xmm0
mov dword [ebp - 0x7c0], ecx
jne 0x4957d0
movss xmm1, dword [ebp - 0x7b8]
movss xmm2, dword [ebp - 0x880]
mov esi, dword [ebp - 0x79c]
movzx ecx, byte [esi + 0x7e8]
movzx eax, byte [esi + 0x7e9]
addss xmm2, dword [ebp - 0x844]
movss xmm4, dword [ebp - 0x7a8]
mov edi, dword [ebp - 0x790]
shl ecx, 8
or ecx, eax
mov byte [ebp - 0x8a4], 1
movzx eax, byte [esi + 0x7ea]
addss xmm2, xmm1
mov esi, dword [ebp - 0x7a0]
shl ecx, 8
or ecx, eax
mov dword [ebp - 0x830], esi
mov dword [ebp - 0x83c], ecx
xor cl, cl
mov dword [ebp - 0x7a0], esi
mov esi, dword [ebp - 0x79c]
movss dword [ebp - 0x880], xmm2
mov byte [ebp - 0x785], cl
jmp 0x49d3a2
movss xmm1, dword [ebp - 0x7fc]
cvtps2pd xmm1, xmm1
mov eax, dword [ebp - 0x7e8]
push ecx
lea eax, [eax + edi*2]
push dword [ebp - 0x864]
mulsd xmm1, qword [esi + 0x700]
push eax
movss xmm0, dword [ebp - 0x7a4]
sub esp, 0xc
divsd xmm1, qword [ebp - 0x8a0]
movss dword [esp + 8], xmm0
movss xmm0, dword [ebp - 0x888]
subss xmm0, dword [ebp - 0x85c]
movss dword [esp + 4], xmm2
cvtps2pd xmm0, xmm0
addsd xmm1, xmm0
movss xmm0, dword [ebp - 0x834]
cvtps2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0xa10]
addsd xmm1, xmm0
cvtpd2ps xmm0, xmm1
movss dword [esp], xmm0
push 0
push ecx
lea eax, [ebx + 0x64]
mov ecx, esp
push eax
call fcn.0043ce00
push ecx
mov ecx, esp
push dword [ebp - 0x80c]
call fcn.004a86c0
push ecx
mov ecx, esp
push dword [ebp - 0x808]
call fcn.004a86c0
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
mov ecx, dword [ebp - 0x81c]
xor edx, edx
call fcn.0043a210
movss xmm1, dword [ebp - 0x7b8]
movss xmm2, dword [ebp - 0x880]
jmp 0x49598b
movss xmm0, dword [ebp - 0x888]
addss xmm0, dword [ebp - 0x924]
subss xmm0, xmm1
maxss xmm2, xmm0
movss dword [ebp - 0x880], xmm2
test al, al
je 0x49598b
mov eax, dword [ebp - 0x7e8]
movss xmm0, dword [ebp - 0x7a4]
push ecx
push dword [ebp - 0x864]
lea eax, [eax + edi*2]
push eax
sub esp, 0xc
movss dword [esp + 8], xmm0
movss xmm0, dword [ebp - 0x8b0]
addss xmm0, dword [ebp - 0x85c]
cvtps2pd xmm1, xmm0
movss xmm0, dword [ebp - 0x7fc]
cvtps2pd xmm0, xmm0
mulsd xmm0, qword [esi + 0x700]
divsd xmm0, qword [ebp - 0x8a0]
subsd xmm1, xmm0
movss xmm0, dword [ebp - 0x834]
cvtps2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0x960]
subsd xmm1, xmm0
cvtpd2ps xmm0, xmm1
movss dword [esp + 4], xmm0
movss dword [esp], xmm2
jmp 0x495a78
lea eax, [edx + 4]
cmp di, 0xc
jl 0x4964b5
mov edi, 0xff3b
cmp si, di
mov edi, dword [ebp - 0x790]
jne 0x4964b5
mov ecx, 0xff03
cmp word [edx + 2], cx
mov ecx, dword [ebp - 0x7cc]
jne 0x4964b5
mov esi, 0x300c
cmp word [eax], si
movzx esi, word [edx]
jne 0x4964b5
movsx edx, di
mov ecx, 0x300d
mov edi, dword [ebp - 0x7e8]
mov dword [ebp - 0x7d4], edx
cmp word [edi + edx*2 - 0xa], cx
mov ecx, dword [ebp - 0x7cc]
jne 0x4964ad
mov esi, 0x306e
cmp word [edi + edx*2 - 8], si
movzx esi, word [edi]
jne 0x4964ad
mov eax, 0x6ce8
cmp word [edi + edx*2 - 6], ax
lea eax, [edi + 4]
jne 0x4964ad
mov ecx, 0x8a18
cmp word [edi + edx*2 - 4], cx
mov ecx, dword [ebp - 0x7cc]
jne 0x4964ad
mov esi, 0xff3d
cmp word [edi + edx*2 - 2], si
movzx esi, word [edi]
jne 0x4964ad
xor esi, esi
xor ecx, ecx
mov dword [ebp - 0x800], esi
cmp edx, 3
jle 0x495c95
movsx eax, si
test cx, cx
jne 0x495c5b
mov edx, 0x300d
cmp word [edi + eax*2 + 6], dx
mov edx, dword [ebp - 0x7d4]
je 0x495c8f
movzx eax, word [edi + eax*2 + 6]
mov edi, 0x300c
cmp ax, di
jne 0x495c6d
inc ecx
jmp 0x495c7e
mov edx, 0x300d
cmp ax, dx
mov edx, dword [ebp - 0x7d4]
jne 0x495c7e
dec ecx
mov edi, dword [ebp - 0x7e8]
inc esi
movsx eax, si
add eax, 3
cmp eax, edx
jl 0x495c41
mov dword [ebp - 0x800], esi
movsx eax, si
xor ecx, ecx
movzx eax, word [edi + eax*2 + 8]
mov dword [ebp - 0x86c], eax
mov eax, dword [ebp - 0x790]
add eax, 0xfffffffa
movzx edx, ax
test dx, dx
jle 0x495d00
mov esi, 0x300d
nop dword [eax + eax]
movsx eax, dx
test cx, cx
jne 0x495cd8
mov esi, 0x300c
cmp word [edi + eax*2], si
mov esi, 0x300d
je 0x495cfa
movzx eax, word [edi + eax*2]
cmp ax, si
jne 0x495ce4
inc ecx
jmp 0x495cf4
mov esi, 0x300c
cmp ax, si
mov esi, 0x300d
jne 0x495cf4
dec ecx
dec edx
test dx, dx
jg 0x495cc0
mov esi, dword [ebp - 0x800]
mov edi, dword [ebp - 0x790]
dec esi
mov eax, edi
sub eax, edx
inc edx
movzx ecx, ax
add eax, 0xfffffffa
movzx eax, ax
mov dword [ebp - 0x828], eax
mov eax, dword [ebp - 0x810]
dec eax
mov dword [ebp - 0x7e4], edx
movzx edx, ax
mov dword [ebp - 0x870], ecx
test dx, dx
js 0x4a3023
mov ecx, dword [ebp - 0x7a0]
mov eax, dword [ebp - 0x890]
movsx edi, dx
mov dword [ebp - 0x7d4], edi
mov dword [ebp - 0x800], ecx
movsx ecx, si
mov ax, word [eax + edi*2]
mov edi, dword [ebp - 0x7e8]
cmp ax, word [edi + ecx*2 + 6]
mov edi, dword [ebp - 0x7d4]
jne 0x495dfe
dec esi
test si, si
js 0x495db8
nop dword [eax]
test dx, dx
je 0x495e3b
dec edx
test dx, dx
js 0x495dfe
mov edi, dword [ebp - 0x890]
movsx eax, dx
movsx ecx, si
mov ax, word [edi + eax*2]
mov edi, dword [ebp - 0x7e8]
cmp ax, word [edi + ecx*2 + 6]
mov edi, dword [ebp - 0x7d4]
jne 0x495dfe
dec esi
test si, si
jns 0x495d80
movss xmm0, dword [ebp - 0x7ac]
xor eax, eax
movss dword [ebp - 0x924], xmm0
cmp ax, dx
jge 0x495e4d
mov eax, dword [ebp - 0x850]
movzx ecx, dx
nop dword [eax + eax]
addss xmm0, dword [eax]
add eax, 4
sub ecx, 1
jne 0x495de0
movss dword [ebp - 0x924], xmm0
movss xmm0, dword [ebp - 0x7ac]
jmp 0x495e4d
mov eax, dword [ebp - 0x800]
dec edx
mov ecx, eax
mov dword [ebp - 0x7a0], ecx
test dx, dx
jns 0x495d40
mov cl, byte [ebp - 0x785]
movss xmm4, dword [ebp - 0x7a8]
mov esi, dword [ebp - 0x79c]
mov edi, dword [ebp - 0x790]
mov dword [ebp - 0x7a0], eax
jmp 0x49d3a2
movss xmm0, dword [ebp - 0x7ac]
movss dword [ebp - 0x924], xmm0
jmp 0x495e4d
lea esi, [edi + 1]
movsx ecx, dx
movzx eax, dx
movss dword [ebp - 0x7c0], xmm0
cmp ecx, esi
jge 0x495e85
mov edx, dword [ebp - 0x850]
nop dword [eax + eax]
addss xmm0, dword [edx + ecx*4]
inc eax
movsx ecx, ax
cmp ecx, esi
jl 0x495e70
movss dword [ebp - 0x7c0], xmm0
mov eax, dword [ebp - 0x7a0]
mov ecx, dword [ebp - 0x7e8]
movss xmm0, dword [ebp - 0x7a4]
mov dword [ebp - 0x830], eax
mov eax, dword [ebp - 0x798]
push 1
push ecx
movss dword [esp], xmm0
mov eax, dword [eax + 0xc]
push dword [ebp - 0x828]
push dword [ebp - 0x7f8]
mov edi, dword [eax + 0x3f8]
mov edx, edi
mov eax, dword [ebp - 0x7e4]
push dword [ebp - 0x7b4]
cwde
mov dword [ebp - 0x864], edi
lea eax, [ecx + eax*2]
mov ecx, eax
mov dword [ebp - 0x7f0], eax
call fcn.0040ec40
mov eax, dword [ebp - 0x870]
movaps xmm3, xmm0
mov ecx, dword [ebp - 0x7b4]
add esp, 0x14
movss xmm0, dword [ebp - 0x7c0]
movsx esi, ax
mov eax, dword [ebp - 0x79c]
sub esi, 6
movss dword [ebp - 0x7d0], xmm3
mov dword [ebp - 0x87c], esi
mov al, byte [eax + 0x6fd]
movss xmm2, dword [ecx + esi*4 - 4]
movss dword [ebp - 0x844], xmm2
cmp al, 2
jge 0x495ff5
comiss xmm0, xmm3
jbe 0x495fd5
cmp byte [ebp - 0x81d], 0
jne 0x495fd5
movss xmm1, dword [ebp - 0x7a4]
subss xmm0, xmm3
push 1
push 0
push ecx
movss dword [esp], xmm1
push dword [ebp - 0x7f8]
push edi
mov edi, dword [ebp - 0x828]
push ecx
movss dword [esp], xmm0
push edi
push ecx
push dword [ebp - 0x7f0]
mov ecx, dword [ebp - 0x7f4]
call fcn.004a74b0
mov ecx, dword [ebp - 0x7b4]
movss xmm2, dword [ebp - 0x844]
movss xmm6, dword [ebp - 0x7ac]
cmp di, 2
jg 0x495fc5
movss xmm1, dword [ecx]
xorps xmm1, xmmword [0x5ea900]
divss xmm1, dword [0x5ea6b0]
movss dword [ebp - 0x7b8], xmm1
jmp 0x4960f8
movaps xmm1, xmm6
movss dword [ebp - 0x7b8], xmm1
jmp 0x4960f8
movss xmm6, dword [ebp - 0x7ac]
cmp al, 1
je 0x4960d4
movaps xmm1, xmm6
movss dword [ebp - 0x7b8], xmm1
jmp 0x4960f8
comiss xmm0, xmm3
jbe 0x4960c8
cmp byte [ebp - 0x81d], 0
jne 0x4960c8
movss xmm1, dword [ebp - 0x7a4]
subss xmm0, xmm3
push 1
push 0
push ecx
movss dword [esp], xmm1
push dword [ebp - 0x7f8]
movss dword [ebp - 0x7b8], xmm0
push edi
mov edi, dword [ebp - 0x828]
push ecx
movss dword [esp], xmm0
push edi
push ecx
push dword [ebp - 0x7f0]
mov ecx, dword [ebp - 0x7f4]
call fcn.004a74b0
mov eax, dword [ebp - 0x79c]
cmp byte [eax + 0x6fd], 3
jne 0x4960a5
test di, di
jle 0x4960a5
movss xmm1, dword [ebp - 0x7b8]
movd xmm0, esi
cvtdq2ps xmm0, xmm0
mov ecx, dword [ebp - 0x7b4]
movss xmm2, dword [ebp - 0x844]
divss xmm1, xmm0
movss xmm6, dword [ebp - 0x7ac]
mulss xmm1, dword [0x5ea4cc]
xorps xmm1, xmmword [0x5ea900]
movss dword [ebp - 0x7b8], xmm1
jmp 0x4960f8
movss xmm6, dword [ebp - 0x7ac]
movss xmm2, dword [ebp - 0x844]
movaps xmm1, xmm6
mov ecx, dword [ebp - 0x7b4]
movss dword [ebp - 0x7b8], xmm1
jmp 0x4960f8
movss xmm6, dword [ebp - 0x7ac]
cmp al, 3
jne 0x4960ed
movaps xmm1, xmm3
subss xmm1, xmm0
mulss xmm1, dword [0x5ea4cc]
movss dword [ebp - 0x7b8], xmm1
jmp 0x4960f8
movaps xmm1, xmm6
movss dword [ebp - 0x7b8], xmm6
mov edx, dword [ebp - 0x828]
xor edi, edi
mov eax, 0x306b
movss dword [ebp - 0x81c], xmm6
cmp word [ebp - 0x86c], ax
movaps xmm0, xmm6
mov eax, 8
cmove edi, eax
xor eax, eax
cmp ax, dx
jge 0x49614f
dec esi
movzx edx, dx
nop word [eax + eax]
cmp eax, esi
jne 0x49613a
addss xmm0, xmm2
jmp 0x49613e
addss xmm0, dword [ecx]
inc eax
add ecx, 4
sub edx, 1
jne 0x496130
movss dword [ebp - 0x81c], xmm0
mov edx, dword [ebp - 0x79c]
mov esi, 0x306b
movzx ecx, byte [edx + 0x7eb]
movzx eax, byte [edx + 0x7ec]
shl ecx, 8
or ecx, eax
movzx eax, byte [edx + 0x7ed]
shl ecx, 8
or ecx, eax
cmp word [ebp - 0x84c], 0x40
mov eax, dword [ebp - 0x86c]
jne 0x496340
movss xmm3, dword [ebp - 0x8b0]
addss xmm3, dword [ebp - 0x924]
subss xmm3, xmm1
cmp ax, si
je 0x4961b0
movss xmm2, dword [ebp - 0x880]
jmp 0x4961b8
movss xmm2, dword [ebp - 0x8fc]
cmp byte [edx + 0x6fa], 0
maxss xmm2, xmm3
mov esi, dword [ebp - 0x87c]
movss dword [ebp - 0x86c], xmm2
je 0x496482
movss xmm4, dword [ebp - 0x7fc]
movss xmm0, dword [ebp - 0x7a4]
movss xmm3, dword [ebp - 0x834]
push ecx
cvtps2pd xmm1, xmm4
push esi
push dword [ebp - 0x7f0]
mulsd xmm1, qword [edx + 0x700]
mov edx, 0x306b
sub esp, 0xc
cmp ax, dx
cvtps2pd xmm3, xmm3
lea eax, [ebx + 0x64]
divsd xmm1, qword [ebp - 0x8a0]
movss dword [esp + 8], xmm0
movss xmm0, dword [ebp - 0x888]
movss dword [esp + 4], xmm2
je 0x49625a
subss xmm0, dword [ebp - 0x85c]
mulsd xmm3, qword [ebp - 0xa10]
cvtps2pd xmm0, xmm0
addsd xmm0, xmm1
addsd xmm0, xmm3
cvtpd2ps xmm0, xmm0
movss dword [esp], xmm0
jmp 0x496408
mulsd xmm3, qword [ebp - 0xa18]
addss xmm0, xmm4
cvtps2pd xmm0, xmm0
subsd xmm0, xmm1
subsd xmm0, xmm3
cvtpd2ps xmm0, xmm0
movss dword [esp], xmm0
push edi
push ecx
mov ecx, esp
push eax
call fcn.0043ce00
push ecx
mov ecx, esp
push dword [ebp - 0x80c]
call fcn.004a86c0
push ecx
mov ecx, esp
push dword [ebp - 0x808]
call fcn.004a86c0
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
mov ecx, dword [ebp - 0x864]
xor edx, edx
call fcn.0043a210
movss xmm0, dword [ebp - 0x81c]
movss xmm1, dword [ebp - 0x7b8]
mov edx, dword [ebp - 0x79c]
movss xmm2, dword [ebp - 0x86c]
addss xmm2, xmm0
addss xmm2, xmm1
movss dword [ebp - 0x8fc], xmm2
movzx ecx, byte [edx + 0x7e8]
movzx eax, byte [edx + 0x7e9]
movss xmm4, dword [ebp - 0x7a8]
mov esi, dword [ebp - 0x79c]
mov edi, dword [ebp - 0x790]
shl ecx, 8
or ecx, eax
mov byte [ebp - 0x8a4], 1
movzx eax, byte [edx + 0x7ea]
shl ecx, 8
or ecx, eax
mov eax, dword [ebp - 0x800]
mov dword [ebp - 0x83c], ecx
xor cl, cl
mov byte [ebp - 0x785], cl
mov dword [ebp - 0x7a0], eax
jmp 0x49d3a2
movss xmm3, dword [ebp - 0x888]
addss xmm3, dword [ebp - 0x924]
subss xmm3, xmm1
cmp ax, si
je 0x496363
movss xmm2, dword [ebp - 0x880]
jmp 0x49636b
movss xmm2, dword [ebp - 0x8fc]
cmp byte [edx + 0x6fa], 0
maxss xmm2, xmm3
mov esi, dword [ebp - 0x87c]
movss dword [ebp - 0x86c], xmm2
je 0x496482
movss xmm4, dword [ebp - 0x7fc]
movss xmm3, dword [ebp - 0x834]
movss xmm0, dword [ebp - 0x7a4]
push ecx
cvtps2pd xmm1, xmm4
push esi
push dword [ebp - 0x7f0]
mulsd xmm1, qword [edx + 0x700]
mov edx, 0x306b
sub esp, 0xc
cmp ax, dx
cvtps2pd xmm3, xmm3
lea eax, [ebx + 0x64]
divsd xmm1, qword [ebp - 0x8a0]
mulsd xmm3, qword [ebp - 0x960]
movss dword [esp + 8], xmm0
movss xmm0, dword [ebp - 0x8b0]
je 0x49645f
addss xmm0, dword [ebp - 0x85c]
cvtps2pd xmm0, xmm0
subsd xmm0, xmm1
subsd xmm0, xmm3
cvtpd2ps xmm0, xmm0
movss dword [esp + 4], xmm0
movss dword [esp], xmm2
push edi
push ecx
mov ecx, esp
push eax
call fcn.0043ce00
push ecx
mov ecx, esp
push dword [ebp - 0x80c]
call fcn.004a86c0
push ecx
mov ecx, esp
push dword [ebp - 0x808]
call fcn.004a86c0
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
mov ecx, dword [ebp - 0x864]
xor edx, edx
call fcn.0043a210
movss xmm0, dword [ebp - 0x81c]
movss xmm1, dword [ebp - 0x7b8]
mov edx, dword [ebp - 0x79c]
jmp 0x496490
subss xmm0, xmm4
cvtps2pd xmm0, xmm0
addsd xmm0, xmm1
addsd xmm0, xmm3
cvtpd2ps xmm0, xmm0
movss dword [esp + 4], xmm0
movss dword [esp], xmm2
jmp 0x49627a
mov ecx, 0x306b
cmp ax, cx
je 0x4962cf
movss xmm2, dword [ebp - 0x86c]
addss xmm2, xmm0
addss xmm2, xmm1
movss dword [ebp - 0x880], xmm2
jmp 0x4962e7
mov edx, edi
mov edi, dword [ebp - 0x790]
cmp di, 9
jl 0x496586
mov edi, 0xff3b
cmp si, di
mov edi, dword [ebp - 0x790]
jne 0x496586
mov ecx, 0xff03
cmp word [edx + 2], cx
mov ecx, dword [ebp - 0x7cc]
jne 0x496586
mov esi, 0x5de6
cmp word [eax], si
lea eax, [edx + 6]
movzx esi, word [edx]
jne 0x496589
mov ecx, 0x306b
cmp word [eax], cx
mov ecx, dword [ebp - 0x7cc]
jne 0x496589
mov ecx, 0x30eb
cmp word [edx + 8], cx
mov ecx, dword [ebp - 0x7cc]
jne 0x496589
mov edi, 0x30d3
cmp word [edx + 0xa], di
mov edi, dword [ebp - 0x790]
jne 0x496589
mov edi, 0x4ed8
cmp word [edx + 0xc], di
mov edi, dword [ebp - 0x790]
jne 0x496589
mov esi, 0x304d
cmp word [edx + 0xe], si
movzx esi, word [edx]
jne 0x496589
mov edi, 0xff3d
cmp word [edx + 0x10], di
mov edi, dword [ebp - 0x790]
jne 0x496589
movss xmm4, dword [ebp - 0x7a8]
xor cl, cl
mov esi, dword [ebp - 0x79c]
mov edi, dword [ebp - 0x790]
mov byte [ebp - 0x8a4], 1
mov byte [ebp - 0x785], cl
jmp 0x49d3a2
lea eax, [edx + 6]
cmp di, 0x10
jl 0x496f68
mov edi, 0xff3b
cmp si, di
mov edi, dword [ebp - 0x790]
jne 0x496f68
mov ecx, 0xff03
cmp word [edx + 2], cx
mov ecx, dword [ebp - 0x7cc]
jne 0x496f68
mov edi, 0x5de6
cmp word [edx + 4], di
mov edi, dword [ebp - 0x790]
jne 0x496f68
mov esi, 0x306b
cmp word [eax], si
movzx esi, word [edx]
jne 0x496f68
mov eax, 0x300c
cmp word [edx + 8], ax
jne 0x496f68
movsx eax, di
mov ecx, 0x300d
cmp word [edx + eax*2 - 0x14], cx
mov ecx, dword [ebp - 0x7cc]
jne 0x496f68
mov ecx, 0x306e
cmp word [edx + eax*2 - 0x12], cx
mov ecx, dword [ebp - 0x7cc]
jne 0x496f68
mov esi, 0x30eb
cmp word [edx + eax*2 - 0x10], si
movzx esi, word [edx]
jne 0x496f68
mov edi, 0x30d3
cmp word [edx + eax*2 - 0xe], di
mov edi, dword [ebp - 0x790]
jne 0x496f68
mov esi, 0x4ed8
cmp word [edx + eax*2 - 0xc], si
movzx esi, word [edx]
jne 0x496f68
mov esi, 0x304d
cmp word [edx + eax*2 - 0xa], si
movzx esi, word [edx]
jne 0x496f68
mov edi, 0x7d42
cmp word [edx + eax*2 - 8], di
mov edi, dword [ebp - 0x790]
jne 0x496f68
mov ecx, 0x308f
cmp word [edx + eax*2 - 6], cx
mov ecx, dword [ebp - 0x7cc]
jne 0x496f68
mov esi, 0x308a
cmp word [edx + eax*2 - 4], si
movzx esi, word [edx]
jne 0x496f68
mov esi, 0xff3d
cmp word [edx + eax*2 - 2], si
movzx esi, word [edx]
jne 0x496f68
mov eax, dword [ebp - 0x7b8]
movss xmm1, dword [ebp - 0x7ac]
add eax, 0xfffffff1
mov ecx, dword [ebp - 0x810]
movaps xmm0, xmm1
movzx esi, ax
xor eax, eax
mov dword [ebp - 0x86c], esi
movss dword [ebp - 0x7c0], xmm1
cmp ax, cx
jge 0x496714
mov eax, dword [ebp - 0x850]
movzx ecx, cx
nop dword [eax]
addss xmm0, dword [eax]
add eax, 4
sub ecx, 1
jne 0x496700
movss dword [ebp - 0x7c0], xmm0
cmp word [ebp - 0x84c], 0x40
jne 0x496939
cmp byte [ebp - 0x81d], 0
je 0x496939
mov eax, dword [ebp - 0x798]
xor ecx, ecx
movaps xmm3, xmm1
mov esi, 1
movss dword [ebp - 0x7d0], xmm3
mov eax, dword [eax + 0xc]
mov edx, dword [eax + 0x3f8]
mov eax, dword [ebp - 0x86c]
mov dword [ebp - 0x7b8], edx
cmp cx, ax
jge 0x496884
mov ecx, dword [ebp - 0x7b4]
mov edi, dword [ebp - 0x7e8]
movzx eax, ax
mov dword [ebp - 0x7d4], ecx
mov dword [ebp - 0x800], eax
movzx eax, word [edi]
mov ecx, 0x3033
cmp ax, cx
je 0x4967db
mov ecx, 0x3035
cmp ax, cx
je 0x4967db
mov ecx, 0x3034
cmp ax, cx
je 0x4967db
mov ecx, 0x200b
cmp ax, cx
je 0x4967db
movsx eax, si
sub eax, 1
je 0x4967d4
sub eax, 1
je 0x496809
mov eax, dword [ebp - 0x798]
mov esi, 1
mov eax, dword [eax + 0xc]
mov edx, dword [eax + 0x3f8]
mov dword [ebp - 0x7b8], edx
jmp 0x496809
mov esi, 2
jmp 0x496809
movsx eax, si
sub eax, 0xb
je 0x496804
sub eax, 1
je 0x496809
mov eax, dword [ebp - 0x798]
mov esi, 0xb
mov eax, dword [eax + 0xc]
mov edx, dword [eax + 0x47c]
mov dword [ebp - 0x7b8], edx
jmp 0x496809
mov esi, 0xc
movss xmm0, dword [ebp - 0x7a4]
push 1
push ecx
movss dword [esp], xmm0
lea ecx, [edi + 0xa]
push 1
push dword [ebp - 0x7f8]
push dword [ebp - 0x898]
call fcn.0040ec40
mov ecx, dword [ebp - 0x7d4]
add esp, 0x14
addss xmm0, dword [ebp - 0x7d0]
mov eax, dword [ebp - 0x898]
add edi, 2
mov edx, dword [ebp - 0x7b8]
mov eax, dword [eax]
movaps xmm3, xmm0
mov dword [ecx], eax
add ecx, 4
sub dword [ebp - 0x800], 1
movss dword [ebp - 0x7d0], xmm3
mov dword [ebp - 0x7d4], ecx
jne 0x496780
movss xmm0, dword [ebp - 0x7c0]
movss xmm1, dword [ebp - 0x7ac]
mov esi, dword [ebp - 0x86c]
mov eax, dword [ebp - 0x79c]
mov ecx, dword [ebp - 0x7b4]
movsx edi, si
mov al, byte [eax + 0x6fd]
movss xmm2, dword [ecx + edi*4 - 4]
movss dword [ebp - 0x844], xmm2
cmp al, 2
jge 0x4969cd
comiss xmm0, xmm3
jbe 0x4969a9
cmp byte [ebp - 0x81d], 0
jne 0x4969a9
movss xmm1, dword [ebp - 0x7a4]
subss xmm0, xmm3
push 1
push 0
push ecx
movss dword [esp], xmm1
push dword [ebp - 0x7f8]
push edx
push ecx
movss dword [esp], xmm0
push esi
push ecx
push dword [ebp - 0x934]
mov ecx, dword [ebp - 0x7f4]
call fcn.004a74b0
mov ecx, dword [ebp - 0x7b4]
movss xmm2, dword [ebp - 0x844]
movss xmm6, dword [ebp - 0x7ac]
cmp si, 2
jg 0x4969a1
movss xmm1, dword [ecx]
xorps xmm1, xmmword [0x5ea900]
divss xmm1, dword [0x5ea6b0]
jmp 0x496aa5
mov eax, dword [ebp - 0x798]
movss xmm0, dword [ebp - 0x7a4]
push 1
push ecx
mov eax, dword [eax + 0xc]
mov ecx, dword [ebp - 0x934]
movss dword [esp], xmm0
push esi
push dword [ebp - 0x7f8]
mov eax, dword [eax + 0x3f8]
mov edx, eax
push dword [ebp - 0x7b4]
mov dword [ebp - 0x7b8], eax
call fcn.0040ec40
movss xmm1, dword [ebp - 0x7ac]
movaps xmm3, xmm0
movss xmm0, dword [ebp - 0x7c0]
add esp, 0x14
mov edx, dword [ebp - 0x7b8]
movss dword [ebp - 0x7d0], xmm3
jmp 0x49688a
movaps xmm1, xmm6
jmp 0x496aa5
movss xmm6, dword [ebp - 0x7ac]
cmp al, 1
jne 0x496aa5
movaps xmm1, xmm3
subss xmm1, xmm0
mulss xmm1, dword [0x5ea4cc]
jmp 0x496aa5
comiss xmm0, xmm3
jbe 0x496a8a
cmp byte [ebp - 0x81d], 0
jne 0x496a8a
movss xmm1, dword [ebp - 0x7a4]
subss xmm0, xmm3
push 1
push 0
push ecx
movss dword [esp], xmm1
push dword [ebp - 0x7f8]
movss dword [ebp - 0x81c], xmm0
push edx
push ecx
movss dword [esp], xmm0
push esi
push ecx
push dword [ebp - 0x934]
mov ecx, dword [ebp - 0x7f4]
call fcn.004a74b0
mov eax, dword [ebp - 0x79c]
cmp byte [eax + 0x6fd], 3
jne 0x496a67
test si, si
jle 0x496a67
movss xmm1, dword [ebp - 0x81c]
movd xmm0, edi
cvtdq2ps xmm0, xmm0
mov ecx, dword [ebp - 0x7b4]
movss xmm2, dword [ebp - 0x844]
divss xmm1, xmm0
mulss xmm1, dword [0x5ea4cc]
xorps xmm1, xmmword [0x5ea900]
jmp 0x496a9d
movss xmm6, dword [ebp - 0x7ac]
movss xmm2, dword [ebp - 0x844]
movaps xmm1, xmm6
mov ecx, dword [ebp - 0x7b4]
movss dword [ebp - 0x81c], xmm6
jmp 0x496aad
cmp al, 3
jne 0x496a9d
movaps xmm1, xmm3
subss xmm1, xmm0
mulss xmm1, dword [0x5ea4cc]
movss xmm6, dword [ebp - 0x7ac]
movss dword [ebp - 0x81c], xmm1
xor eax, eax
movss dword [ebp - 0x7c0], xmm6
movaps xmm0, xmm6
cmp ax, si
jge 0x496aef
mov edx, dword [ebp - 0x86c]
lea esi, [edi - 1]
movzx edx, dx
nop dword [eax + eax]
cmp eax, esi
jne 0x496ada
addss xmm0, xmm2
jmp 0x496ade
addss xmm0, dword [ecx]
inc eax
add ecx, 4
sub edx, 1
jne 0x496ad0
movss dword [ebp - 0x7c0], xmm0
mov esi, dword [ebp - 0x79c]
movss xmm2, dword [ebp - 0x7ac]
movss xmm3, dword [ebp - 0x880]
movzx ecx, byte [esi + 0x7eb]
movzx eax, byte [esi + 0x7ec]
shl ecx, 8
or ecx, eax
movzx eax, byte [esi + 0x7ed]
shl ecx, 8
or ecx, eax
cmp word [ebp - 0x84c], 0x40
mov al, byte [esi + 0x6fa]
mov dword [ebp - 0x7e4], ecx
jne 0x496ece
movss xmm0, dword [ebp - 0x8b0]
addss xmm0, xmm2
subss xmm0, xmm1
maxss xmm3, xmm0
movss dword [ebp - 0x880], xmm3
test al, al
je 0x496d8a
cmp byte [ebp - 0x81d], 0
je 0x496dfd
mov eax, dword [ebp - 0x86c]
xor ecx, ecx
movss dword [ebp - 0x7d0], xmm2
mov esi, 1
cmp cx, ax
jge 0x496d84
movss xmm0, dword [ebp - 0x888]
subss xmm0, dword [ebp - 0x85c]
mov edi, dword [ebp - 0x934]
movzx eax, ax
mov dword [ebp - 0x7d4], eax
movss dword [ebp - 0x800], xmm0
movss xmm0, dword [ebp - 0x834]
cvtps2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0xa10]
movsd qword [ebp - 0x848], xmm0
nop
movzx eax, word [edi - 0xa]
mov ecx, 0x3033
cmp ax, cx
je 0x496c2c
mov ecx, 0x3035
cmp ax, cx
je 0x496c2c
mov ecx, 0x3034
cmp ax, cx
je 0x496c2c
mov ecx, 0x200b
cmp ax, cx
je 0x496c2c
movsx eax, si
sub eax, 1
je 0x496c25
sub eax, 1
je 0x496c5a
mov eax, dword [ebp - 0x798]
mov esi, 1
mov eax, dword [eax + 0xc]
mov edx, dword [eax + 0x3f8]
mov dword [ebp - 0x7b8], edx
jmp 0x496c60
mov esi, 2
jmp 0x496c5a
movsx eax, si
sub eax, 0xb
je 0x496c55
sub eax, 1
je 0x496c5a
mov eax, dword [ebp - 0x798]
mov esi, 0xb
mov eax, dword [eax + 0xc]
mov edx, dword [eax + 0x47c]
mov dword [ebp - 0x7b8], edx
jmp 0x496c60
mov esi, 0xc
mov edx, dword [ebp - 0x7b8]
movss xmm0, dword [ebp - 0x7a4]
push 1
push ecx
movss dword [esp], xmm0
mov ecx, edi
push 1
push dword [ebp - 0x7f8]
push dword [ebp - 0x898]
call fcn.0040ec40
movss xmm1, dword [ebp - 0x880]
add esp, 0x14
addss xmm1, dword [ebp - 0x7d0]
mov eax, dword [ebp - 0x79c]
movss dword [ebp - 0x870], xmm0
push dword [ebp - 0x7e4]
movss xmm0, dword [ebp - 0x7a4]
push 1
push edi
sub esp, 0xc
movss dword [esp + 8], xmm0
movss dword [esp + 4], xmm1
movss xmm1, dword [ebp - 0x7fc]
cvtps2pd xmm1, xmm1
movss xmm0, dword [ebp - 0x800]
mulsd xmm1, qword [eax + 0x700]
lea eax, [ebx + 0x64]
cvtps2pd xmm0, xmm0
divsd xmm1, qword [ebp - 0x8a0]
addsd xmm1, xmm0
addsd xmm1, qword [ebp - 0x848]
cvtpd2ps xmm0, xmm1
movss dword [esp], xmm0
push 0
push ecx
mov ecx, esp
push eax
call fcn.0043ce00
push ecx
mov ecx, esp
push dword [ebp - 0x80c]
call fcn.004a86c0
push ecx
mov ecx, esp
push dword [ebp - 0x808]
call fcn.004a86c0
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
mov ecx, dword [ebp - 0x7b8]
xor edx, edx
call fcn.0043a210
movss xmm2, dword [ebp - 0x870]
add edi, 2
sub dword [ebp - 0x7d4], 1
addss xmm2, dword [ebp - 0x7d0]
movss dword [ebp - 0x7d0], xmm2
jne 0x496bd0
movss xmm1, dword [ebp - 0x81c]
movss xmm2, dword [ebp - 0x7ac]
movss xmm3, dword [ebp - 0x880]
mov esi, dword [ebp - 0x79c]
addss xmm3, dword [ebp - 0x7c0]
movzx edi, byte [esi + 0x7e8]
movzx eax, byte [esi + 0x7e9]
movss xmm4, dword [ebp - 0x7a8]
shl edi, 8
or edi, eax
mov byte [ebp - 0x8a4], 1
movzx eax, byte [esi + 0x7ea]
addss xmm3, xmm1
shl edi, 8
or edi, eax
mov eax, dword [ebp - 0x7f0]
xor cl, cl
mov dword [ebp - 0x83c], edi
mov edi, dword [ebp - 0x790]
mov dword [ebp - 0x7a0], eax
mov dword [ebp - 0x830], eax
mov eax, dword [ebp - 0x794]
movss dword [ebp - 0x880], xmm3
mov byte [ebp - 0x785], cl
jmp 0x49d3b0
movss xmm1, dword [ebp - 0x7fc]
cvtps2pd xmm1, xmm1
push ecx
push edi
push dword [ebp - 0x934]
mulsd xmm1, qword [esi + 0x700]
sub esp, 0xc
movss xmm0, dword [ebp - 0x7a4]
divsd xmm1, qword [ebp - 0x8a0]
movss dword [esp + 8], xmm0
movss xmm0, dword [ebp - 0x888]
subss xmm0, dword [ebp - 0x85c]
movss dword [esp + 4], xmm3
cvtps2pd xmm0, xmm0
addsd xmm1, xmm0
movss xmm0, dword [ebp - 0x834]
cvtps2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0xa10]
addsd xmm1, xmm0
cvtpd2ps xmm0, xmm1
movss dword [esp], xmm0
push 0
push ecx
lea eax, [ebx + 0x64]
mov ecx, esp
push eax
call fcn.0043ce00
push ecx
mov ecx, esp
push dword [ebp - 0x80c]
call fcn.004a86c0
push ecx
mov ecx, esp
push dword [ebp - 0x808]
call fcn.004a86c0
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
mov ecx, dword [ebp - 0x7b8]
xor edx, edx
call fcn.0043a210
movss xmm1, dword [ebp - 0x81c]
movss xmm2, dword [ebp - 0x7ac]
movss xmm3, dword [ebp - 0x880]
jmp 0x496d8a
movss xmm0, dword [ebp - 0x888]
addss xmm0, xmm2
subss xmm0, xmm1
maxss xmm3, xmm0
movss dword [ebp - 0x880], xmm3
test al, al
je 0x496d8a
movss xmm0, dword [ebp - 0x7a4]
push ecx
push edi
push dword [ebp - 0x934]
sub esp, 0xc
movss dword [esp + 8], xmm0
movss xmm0, dword [ebp - 0x8b0]
addss xmm0, dword [ebp - 0x85c]
cvtps2pd xmm1, xmm0
movss xmm0, dword [ebp - 0x7fc]
cvtps2pd xmm0, xmm0
mulsd xmm0, qword [esi + 0x700]
divsd xmm0, qword [ebp - 0x8a0]
subsd xmm1, xmm0
movss xmm0, dword [ebp - 0x834]
cvtps2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0x960]
subsd xmm1, xmm0
cvtpd2ps xmm0, xmm1
movss dword [esp + 4], xmm0
movss dword [esp], xmm3
jmp 0x496e6e
cmp di, 7
jl 0x496fcf
mov eax, 0xff3b
cmp si, ax
jne 0x496fcf
mov eax, 0xff03
cmp word [edx + 2], ax
lea eax, [edx + 4]
jne 0x496fd2
mov edi, 0x6ce8
cmp word [eax], di
mov edi, dword [ebp - 0x790]
jne 0x496fd2
mov esi, 0x8a18
cmp word [edx + 6], si
movzx esi, word [edx]
jne 0x496fcf
mov eax, 0x4ed8
cmp word [edx + 8], ax
jne 0x496fcf
mov ecx, 0x304d
cmp word [edx + 0xa], cx
mov ecx, dword [ebp - 0x7cc]
jne 0x496fcf
mov eax, 0xff3d
cmp word [edx + 0xc], ax
je 0x49655e
lea eax, [edx + 4]
cmp di, 0xe
jl 0x49768f
mov edi, 0xff3b
cmp si, di
mov edi, dword [ebp - 0x790]
jne 0x49768f
mov ecx, 0xff03
cmp word [edx + 2], cx
mov ecx, dword [ebp - 0x7cc]
jne 0x49768f
mov esi, 0x300c
cmp word [eax], si
movzx esi, word [edx]
jne 0x49768f
movsx eax, di
mov ecx, 0x300d
cmp word [edx + eax*2 - 0x14], cx
mov ecx, dword [ebp - 0x7cc]
jne 0x49768f
mov ecx, 0x306e
cmp word [edx + eax*2 - 0x12], cx
mov ecx, dword [ebp - 0x7cc]
jne 0x49768f
mov esi, 0x6ce8
cmp word [edx + eax*2 - 0x10], si
movzx esi, word [edx]
jne 0x49768f
mov ecx, 0x8a18
cmp word [edx + eax*2 - 0xe], cx
mov ecx, dword [ebp - 0x7cc]
jne 0x49768f
mov edi, 0x4ed8
cmp word [edx + eax*2 - 0xc], di
mov edi, dword [ebp - 0x790]
jne 0x49768f
mov esi, 0x304d
cmp word [edx + eax*2 - 0xa], si
movzx esi, word [edx]
jne 0x49768f
mov ecx, 0x7d42
cmp word [edx + eax*2 - 8], cx
mov ecx, dword [ebp - 0x7cc]
jne 0x49768f
mov edi, 0x308f
cmp word [edx + eax*2 - 6], di
mov edi, dword [ebp - 0x790]
jne 0x49768f
mov edi, 0x308a
cmp word [edx + eax*2 - 4], di
mov edi, dword [ebp - 0x790]
jne 0x49768f
mov esi, 0xff3d
cmp word [edx + eax*2 - 2], si
movzx esi, word [edx]
jne 0x49768f
lea eax, [edi - 0xb]
xor ecx, ecx
movzx esi, ax
test si, si
js 0x497140
mov edi, 0x300d
nop
movsx eax, si
test cx, cx
jne 0x497118
mov edi, 0x300c
cmp word [edx + eax*2], di
mov edi, 0x300d
je 0x49713a
movzx eax, word [edx + eax*2]
cmp ax, di
jne 0x497124
inc ecx
jmp 0x497134
mov edi, 0x300c
cmp ax, di
mov edi, 0x300d
jne 0x497134
dec ecx
dec esi
test si, si
jns 0x497100
mov edi, dword [ebp - 0x790]
mov ecx, edi
mov edx, 2
sub ecx, esi
lea eax, [ecx - 0xb]
movzx edi, ax
movsx eax, cx
xor ecx, ecx
sub eax, 0xa
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.00560858
add esp, 4
mov dword [ebp - 0x81c], eax
movsx ecx, si
mov edx, edi
push 1
push eax
mov eax, dword [ebp - 0x7e8]
add eax, 2
lea ecx, [eax + ecx*2]
call fcn.0040c7c0
movss xmm0, dword [ebp - 0x7ac]
add esp, 8
mov ecx, dword [ebp - 0x810]
movzx esi, ax
xor eax, eax
movss dword [ebp - 0x7c0], xmm0
cmp ax, cx
jge 0x4971c8
mov eax, dword [ebp - 0x850]
movzx ecx, cx
addss xmm0, dword [eax]
add eax, 4
sub ecx, 1
jne 0x4971b4
movss dword [ebp - 0x7c0], xmm0
mov eax, dword [ebp - 0x7a0]
movss xmm0, dword [ebp - 0x7a4]
mov dword [ebp - 0x830], eax
mov eax, dword [ebp - 0x798]
push 1
push ecx
mov ecx, dword [ebp - 0x81c]
mov eax, dword [eax + 0xc]
movss dword [esp], xmm0
push esi
push dword [ebp - 0x7f8]
mov eax, dword [eax + 0x3f8]
mov edx, eax
push dword [ebp - 0x7b4]
mov dword [ebp - 0x844], eax
call fcn.0040ec40
mov edx, dword [ebp - 0x7b4]
movaps xmm2, xmm0
mov eax, dword [ebp - 0x79c]
add esp, 0x14
movsx ecx, si
movss dword [ebp - 0x7d0], xmm2
mov dword [ebp - 0x7f0], ecx
mov al, byte [eax + 0x6fd]
movss xmm0, dword [edx + ecx*4 - 4]
movss dword [ebp - 0x7e4], xmm0
movss xmm0, dword [ebp - 0x7c0]
cmp al, 2
jge 0x497315
comiss xmm0, xmm2
jbe 0x4972f5
cmp byte [ebp - 0x81d], 0
jne 0x4972f5
movss xmm1, dword [ebp - 0x7a4]
subss xmm0, xmm2
push 1
push 0
push ecx
movss dword [esp], xmm1
push dword [ebp - 0x7f8]
push dword [ebp - 0x844]
push ecx
mov ecx, dword [ebp - 0x7f4]
movss dword [esp], xmm0
push esi
push edx
push dword [ebp - 0x81c]
call fcn.004a74b0
movss xmm6, dword [ebp - 0x7ac]
mov ecx, dword [ebp - 0x7f0]
cmp di, 2
jg 0x4972e5
mov eax, dword [ebp - 0x7b4]
movss xmm1, dword [eax]
xorps xmm1, xmmword [0x5ea900]
divss xmm1, dword [0x5ea6b0]
movss dword [ebp - 0x7b8], xmm1
jmp 0x49740a
movaps xmm1, xmm6
movss dword [ebp - 0x7b8], xmm1
jmp 0x49740a
movss xmm6, dword [ebp - 0x7ac]
cmp al, 1
je 0x4973e6
movaps xmm1, xmm6
movss dword [ebp - 0x7b8], xmm1
jmp 0x49740a
comiss xmm0, xmm2
jbe 0x4973da
cmp byte [ebp - 0x81d], 0
jne 0x4973da
movss xmm1, dword [ebp - 0x7a4]
subss xmm0, xmm2
push 1
push 0
push ecx
movss dword [esp], xmm1
push dword [ebp - 0x7f8]
movss dword [ebp - 0x7b8], xmm0
push dword [ebp - 0x844]
push ecx
mov ecx, dword [ebp - 0x7f4]
movss dword [esp], xmm0
push esi
push edx
push dword [ebp - 0x81c]
call fcn.004a74b0
mov eax, dword [ebp - 0x79c]
cmp byte [eax + 0x6fd], 3
jne 0x4973bf
test si, si
jle 0x4973bf
mov ecx, dword [ebp - 0x7f0]
movss xmm1, dword [ebp - 0x7b8]
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
divss xmm1, xmm0
movss xmm0, dword [ebp - 0x7ac]
mulss xmm1, dword [0x5ea4cc]
movaps xmm6, xmm0
xorps xmm1, xmmword [0x5ea900]
movss dword [ebp - 0x7b8], xmm1
jmp 0x49741c
movss xmm6, dword [ebp - 0x7ac]
mov ecx, dword [ebp - 0x7f0]
movaps xmm1, xmm6
movss dword [ebp - 0x7b8], xmm1
jmp 0x49740a
movss xmm6, dword [ebp - 0x7ac]
cmp al, 3
jne 0x4973ff
movaps xmm1, xmm2
subss xmm1, xmm0
mulss xmm1, dword [0x5ea4cc]
movss dword [ebp - 0x7b8], xmm1
jmp 0x49740a
movaps xmm1, xmm6
movss dword [ebp - 0x7b8], xmm6
xor eax, eax
movss dword [ebp - 0x7c0], xmm6
movaps xmm0, xmm6
cmp ax, si
jge 0x497450
movss xmm2, dword [ebp - 0x7e4]
lea edi, [ecx - 1]
mov ecx, dword [ebp - 0x7b4]
xor eax, eax
mov edx, esi
cmp eax, edi
jne 0x49743b
addss xmm0, xmm2
jmp 0x49743f
addss xmm0, dword [ecx]
inc eax
add ecx, 4
sub edx, 1
jne 0x497431
movss dword [ebp - 0x7c0], xmm0
mov esi, dword [ebp - 0x79c]
movss xmm3, dword [ebp - 0x8fc]
movzx ecx, byte [esi + 0x7eb]
movzx eax, byte [esi + 0x7ec]
shl ecx, 8
or ecx, eax
movzx eax, byte [esi + 0x7ed]
shl ecx, 8
or ecx, eax
cmp word [ebp - 0x84c], 0x40
mov al, byte [esi + 0x6fa]
jne 0x49752c
movss xmm0, dword [ebp - 0x8b0]
addss xmm0, xmm6
subss xmm0, xmm1
maxss xmm3, xmm0
movss dword [ebp - 0x8fc], xmm3
test al, al
je 0x497615
movss xmm0, dword [ebp - 0x7a4]
movss xmm2, dword [ebp - 0x7fc]
push ecx
push dword [ebp - 0x7f0]
push dword [ebp - 0x81c]
sub esp, 0xc
movss dword [esp + 8], xmm0
movss xmm0, dword [ebp - 0x888]
addss xmm0, xmm2
movss dword [esp + 4], xmm3
cvtps2pd xmm1, xmm0
cvtps2pd xmm0, xmm2
mulsd xmm0, qword [esi + 0x700]
divsd xmm0, qword [ebp - 0x8a0]
subsd xmm1, xmm0
movss xmm0, dword [ebp - 0x834]
cvtps2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0xa18]
subsd xmm1, xmm0
cvtpd2ps xmm0, xmm1
movss dword [esp], xmm0
jmp 0x4975c2
movss xmm0, dword [ebp - 0x888]
addss xmm0, xmm6
subss xmm0, xmm1
maxss xmm3, xmm0
movss dword [ebp - 0x8fc], xmm3
test al, al
je 0x497615
movss xmm2, dword [ebp - 0x7fc]
cvtps2pd xmm1, xmm2
push ecx
push dword [ebp - 0x7f0]
mulsd xmm1, qword [esi + 0x700]
push dword [ebp - 0x81c]
movss xmm0, dword [ebp - 0x7a4]
sub esp, 0xc
divsd xmm1, qword [ebp - 0x8a0]
movss dword [esp + 8], xmm0
movss xmm0, dword [ebp - 0x8b0]
subss xmm0, xmm2
cvtps2pd xmm0, xmm0
addsd xmm1, xmm0
movss xmm0, dword [ebp - 0x834]
cvtps2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0x960]
addsd xmm1, xmm0
cvtpd2ps xmm0, xmm1
movss dword [esp + 4], xmm0
movss dword [esp], xmm3
push 8
push ecx
lea eax, [ebx + 0x64]
mov ecx, esp
push eax
call fcn.0043ce00
push ecx
mov ecx, esp
push dword [ebp - 0x80c]
call fcn.004a86c0
push ecx
mov ecx, esp
push dword [ebp - 0x808]
call fcn.004a86c0
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
mov ecx, dword [ebp - 0x844]
xor edx, edx
call fcn.0043a210
movss xmm3, dword [ebp - 0x8fc]
movss xmm1, dword [ebp - 0x7b8]
addss xmm3, dword [ebp - 0x7c0]
movzx edi, byte [esi + 0x7e8]
movzx eax, byte [esi + 0x7e9]
shl edi, 8
or edi, eax
movzx eax, byte [esi + 0x7ea]
shl edi, 8
addss xmm3, xmm1
or edi, eax
mov dword [ebp - 0x83c], edi
mov edi, dword [ebp - 0x830]
mov dword [ebp - 0x7a0], edi
movss dword [ebp - 0x8fc], xmm3
push dword [ebp - 0x81c]
mov byte [ebp - 0x785], 0
mov byte [ebp - 0x8a4], 1
call fcn.00560853
movss xmm4, dword [ebp - 0x7a8]
add esp, 4
mov cl, byte [ebp - 0x785]
mov edi, dword [ebp - 0x790]
jmp 0x49d3a2
cmp di, 9
jl 0x49772a
mov eax, 0xff3b
cmp si, ax
jne 0x49772a
mov eax, 0xff03
cmp word [edx + 2], ax
lea eax, [edx + 6]
jne 0x49772d
mov edi, 0x5de6
cmp word [edx + 4], di
mov edi, dword [ebp - 0x790]
jne 0x49772d
mov esi, 0x306b
cmp word [eax], si
movzx esi, word [edx]
jne 0x49772d
mov ecx, 0x6ce8
cmp word [edx + 8], cx
mov ecx, dword [ebp - 0x7cc]
jne 0x49772d
mov esi, 0x8a18
cmp word [edx + 0xa], si
movzx esi, word [edx]
jne 0x49772d
mov ecx, 0x4ed8
cmp word [edx + 0xc], cx
mov ecx, dword [ebp - 0x7cc]
jne 0x49772d
mov edi, 0x304d
cmp word [edx + 0xe], di
mov edi, dword [ebp - 0x790]
jne 0x49772d
mov ecx, 0xff3d
cmp word [edx + 0x10], cx
mov ecx, dword [ebp - 0x7cc]
jne 0x49772d
jmp 0x49655e
lea eax, [edx + 6]
cmp di, 0x10
jl 0x497de6
mov edi, 0xff3b
cmp si, di
mov edi, dword [ebp - 0x790]
jne 0x497de6
mov ecx, 0xff03
cmp word [edx + 2], cx
mov ecx, dword [ebp - 0x7cc]
jne 0x497de6
mov edi, 0x5de6
cmp word [edx + 4], di
mov edi, dword [ebp - 0x790]
jne 0x497de6
mov esi, 0x306b
cmp word [eax], si
movzx esi, word [edx]
jne 0x497de6
mov eax, 0x300c
cmp word [edx + 8], ax
jne 0x497de6
movsx eax, di
mov ecx, 0x300d
cmp word [edx + eax*2 - 0x14], cx
mov ecx, dword [ebp - 0x7cc]
jne 0x497de6
mov edi, 0x306e
cmp word [edx + eax*2 - 0x12], di
mov edi, dword [ebp - 0x790]
jne 0x497de6
mov ecx, 0x6ce8
cmp word [edx + eax*2 - 0x10], cx
mov ecx, dword [ebp - 0x7cc]
jne 0x497de6
mov esi, 0x8a18
cmp word [edx + eax*2 - 0xe], si
movzx esi, word [edx]
jne 0x497de6
mov esi, 0x4ed8
cmp word [edx + eax*2 - 0xc], si
movzx esi, word [edx]
jne 0x497de6
mov esi, 0x304d
cmp word [edx + eax*2 - 0xa], si
movzx esi, word [edx]
jne 0x497de6
mov edi, 0x7d42
cmp word [edx + eax*2 - 8], di
mov edi, dword [ebp - 0x790]
jne 0x497de6
mov ecx, 0x308f
cmp word [edx + eax*2 - 6], cx
mov ecx, dword [ebp - 0x7cc]
jne 0x497de6
mov esi, 0x308a
cmp word [edx + eax*2 - 4], si
movzx esi, word [edx]
jne 0x497de6
mov esi, 0xff3d
cmp word [edx + eax*2 - 2], si
movzx esi, word [edx]
jne 0x497de6
lea eax, [edi - 0xb]
xor ecx, ecx
movzx esi, ax
test si, si
js 0x4978b7
mov edi, 0x300d
movsx eax, si
test cx, cx
jne 0x49788f
mov edi, 0x300c
cmp word [edx + eax*2], di
mov edi, 0x300d
je 0x4978b1
movzx eax, word [edx + eax*2]
cmp ax, di
jne 0x49789b
inc ecx
jmp 0x4978ab
mov edi, 0x300c
cmp ax, di
mov edi, 0x300d
jne 0x4978ab
dec ecx
dec esi
test si, si
jns 0x497877
mov edi, dword [ebp - 0x790]
mov ecx, edi
mov edx, 2
sub ecx, esi
lea eax, [ecx - 0xb]
movzx edi, ax
movsx eax, cx
xor ecx, ecx
sub eax, 0xa
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.00560858
add esp, 4
mov dword [ebp - 0x81c], eax
movsx ecx, si
mov edx, edi
push 1
push eax
mov eax, dword [ebp - 0x7e8]
add eax, 2
lea ecx, [eax + ecx*2]
call fcn.0040c7c0
movss xmm0, dword [ebp - 0x7ac]
add esp, 8
mov ecx, dword [ebp - 0x810]
movzx esi, ax
xor eax, eax
movss dword [ebp - 0x7c0], xmm0
cmp ax, cx
jge 0x497944
mov eax, dword [ebp - 0x850]
movzx ecx, cx
nop dword [eax + eax]
addss xmm0, dword [eax]
add eax, 4
sub ecx, 1
jne 0x497930
movss dword [ebp - 0x7c0], xmm0
mov eax, dword [ebp - 0x7a0]
movss xmm0, dword [ebp - 0x7a4]
mov dword [ebp - 0x830], eax
mov eax, dword [ebp - 0x798]
push 1
push ecx
mov ecx, dword [ebp - 0x81c]
mov eax, dword [eax + 0xc]
movss dword [esp], xmm0
push esi
push dword [ebp - 0x7f8]
mov eax, dword [eax + 0x3f8]
mov edx, eax
push dword [ebp - 0x7b4]
mov dword [ebp - 0x844], eax
call fcn.0040ec40
mov edx, dword [ebp - 0x7b4]
movaps xmm2, xmm0
mov eax, dword [ebp - 0x79c]
add esp, 0x14
movsx ecx, si
movss dword [ebp - 0x7d0], xmm2
mov dword [ebp - 0x7f0], ecx
mov al, byte [eax + 0x6fd]
movss xmm0, dword [edx + ecx*4 - 4]
movss dword [ebp - 0x7e4], xmm0
movss xmm0, dword [ebp - 0x7c0]
cmp al, 2
jge 0x497a91
comiss xmm0, xmm2
jbe 0x497a71
cmp byte [ebp - 0x81d], 0
jne 0x497a71
movss xmm1, dword [ebp - 0x7a4]
subss xmm0, xmm2
push 1
push 0
push ecx
movss dword [esp], xmm1
push dword [ebp - 0x7f8]
push dword [ebp - 0x844]
push ecx
mov ecx, dword [ebp - 0x7f4]
movss dword [esp], xmm0
push esi
push edx
push dword [ebp - 0x81c]
call fcn.004a74b0
movss xmm6, dword [ebp - 0x7ac]
mov ecx, dword [ebp - 0x7f0]
cmp di, 2
jg 0x497a61
mov eax, dword [ebp - 0x7b4]
movss xmm1, dword [eax]
xorps xmm1, xmmword [0x5ea900]
divss xmm1, dword [0x5ea6b0]
movss dword [ebp - 0x7b8], xmm1
jmp 0x497b86
movaps xmm1, xmm6
movss dword [ebp - 0x7b8], xmm1
jmp 0x497b86
movss xmm6, dword [ebp - 0x7ac]
cmp al, 1
je 0x497b62
movaps xmm1, xmm6
movss dword [ebp - 0x7b8], xmm1
jmp 0x497b86
comiss xmm0, xmm2
jbe 0x497b56
cmp byte [ebp - 0x81d], 0
jne 0x497b56
movss xmm1, dword [ebp - 0x7a4]
subss xmm0, xmm2
push 1
push 0
push ecx
movss dword [esp], xmm1
push dword [ebp - 0x7f8]
movss dword [ebp - 0x7b8], xmm0
push dword [ebp - 0x844]
push ecx
mov ecx, dword [ebp - 0x7f4]
movss dword [esp], xmm0
push esi
push edx
push dword [ebp - 0x81c]
call fcn.004a74b0
mov eax, dword [ebp - 0x79c]
cmp byte [eax + 0x6fd], 3
jne 0x497b3b
test si, si
jle 0x497b3b
mov ecx, dword [ebp - 0x7f0]
movss xmm1, dword [ebp - 0x7b8]
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
divss xmm1, xmm0
movss xmm0, dword [ebp - 0x7ac]
mulss xmm1, dword [0x5ea4cc]
movaps xmm6, xmm0
xorps xmm1, xmmword [0x5ea900]
movss dword [ebp - 0x7b8], xmm1
jmp 0x497b98
movss xmm6, dword [ebp - 0x7ac]
mov ecx, dword [ebp - 0x7f0]
movaps xmm1, xmm6
movss dword [ebp - 0x7b8], xmm1
jmp 0x497b86
movss xmm6, dword [ebp - 0x7ac]
cmp al, 3
jne 0x497b7b
movaps xmm1, xmm2
subss xmm1, xmm0
mulss xmm1, dword [0x5ea4cc]
movss dword [ebp - 0x7b8], xmm1
jmp 0x497b86
movaps xmm1, xmm6
movss dword [ebp - 0x7b8], xmm6
xor eax, eax
movss dword [ebp - 0x7c0], xmm6
movaps xmm0, xmm6
cmp ax, si
jge 0x497bcf
movss xmm2, dword [ebp - 0x7e4]
lea edi, [ecx - 1]
mov ecx, dword [ebp - 0x7b4]
xor eax, eax
mov edx, esi
nop dword [eax]
cmp eax, edi
jne 0x497bba
addss xmm0, xmm2
jmp 0x497bbe
addss xmm0, dword [ecx]
inc eax
add ecx, 4
sub edx, 1
jne 0x497bb0
movss dword [ebp - 0x7c0], xmm0
mov esi, dword [ebp - 0x79c]
movss xmm2, dword [ebp - 0x880]
movzx ecx, byte [esi + 0x7eb]
movzx eax, byte [esi + 0x7ec]
shl ecx, 8
or ecx, eax
movzx eax, byte [esi + 0x7ed]
shl ecx, 8
or ecx, eax
cmp word [ebp - 0x84c], 0x40
mov al, byte [esi + 0x6fa]
jne 0x497caf
movss xmm0, dword [ebp - 0x8b0]
addss xmm0, xmm6
subss xmm0, xmm1
maxss xmm2, xmm0
movss dword [ebp - 0x880], xmm2
test al, al
je 0x497d9c
movss xmm1, dword [ebp - 0x7fc]
cvtps2pd xmm1, xmm1
push ecx
push dword [ebp - 0x7f0]
mulsd xmm1, qword [esi + 0x700]
push dword [ebp - 0x81c]
movss xmm0, dword [ebp - 0x7a4]
sub esp, 0xc
divsd xmm1, qword [ebp - 0x8a0]
movss dword [esp + 8], xmm0
movss xmm0, dword [ebp - 0x888]
subss xmm0, dword [ebp - 0x85c]
movss dword [esp + 4], xmm2
cvtps2pd xmm0, xmm0
addsd xmm1, xmm0
movss xmm0, dword [ebp - 0x834]
cvtps2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0xa10]
addsd xmm1, xmm0
cvtpd2ps xmm0, xmm1
movss dword [esp], xmm0
jmp 0x497d49
movss xmm0, dword [ebp - 0x888]
addss xmm0, xmm6
subss xmm0, xmm1
maxss xmm2, xmm0
movss dword [ebp - 0x880], xmm2
test al, al
je 0x497d9c
movss xmm0, dword [ebp - 0x7a4]
push ecx
push dword [ebp - 0x7f0]
push dword [ebp - 0x81c]
sub esp, 0xc
movss dword [esp + 8], xmm0
movss xmm0, dword [ebp - 0x8b0]
addss xmm0, dword [ebp - 0x85c]
cvtps2pd xmm1, xmm0
movss xmm0, dword [ebp - 0x7fc]
cvtps2pd xmm0, xmm0
mulsd xmm0, qword [esi + 0x700]
divsd xmm0, qword [ebp - 0x8a0]
subsd xmm1, xmm0
movss xmm0, dword [ebp - 0x834]
cvtps2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0x960]
subsd xmm1, xmm0
cvtpd2ps xmm0, xmm1
movss dword [esp + 4], xmm0
movss dword [esp], xmm2
push 0
push ecx
lea eax, [ebx + 0x64]
mov ecx, esp
push eax
call fcn.0043ce00
push ecx
mov ecx, esp
push dword [ebp - 0x80c]
call fcn.004a86c0
push ecx
mov ecx, esp
push dword [ebp - 0x808]
call fcn.004a86c0
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
mov ecx, dword [ebp - 0x844]
xor edx, edx
call fcn.0043a210
movss xmm2, dword [ebp - 0x880]
movss xmm1, dword [ebp - 0x7b8]
addss xmm2, dword [ebp - 0x7c0]
movzx edi, byte [esi + 0x7e8]
movzx eax, byte [esi + 0x7e9]
shl edi, 8
or edi, eax
movzx eax, byte [esi + 0x7ea]
addss xmm2, xmm1
shl edi, 8
or edi, eax
mov eax, dword [ebp - 0x830]
mov dword [ebp - 0x83c], edi
mov dword [ebp - 0x7a0], eax
movss dword [ebp - 0x880], xmm2
jmp 0x49765a
cmp di, 0xc
jl 0x49855e
mov eax, 0xff3b
cmp si, ax
jne 0x49855e
mov eax, 0xff03
cmp word [edx + 2], ax
jne 0x49855e
mov ecx, 0x300c
lea eax, [edx + 4]
cmp word [eax], cx
mov ecx, dword [ebp - 0x7cc]
jne 0x498564
mov eax, dword [ebp - 0x7e8]
mov ecx, 0xff3d
movsx edx, di
cmp word [eax + edx*2 - 2], cx
mov ecx, dword [ebp - 0x7cc]
jne 0x49855e
xor edi, edi
mov esi, eax
mov dword [ebp - 0x7d4], edi
cmp edx, 8
jle 0x497eae
xor ecx, ecx
mov eax, 0x300d
cmp word [esi + ecx*2 + 6], ax
jne 0x497e9d
mov eax, 0x306f
cmp word [esi + ecx*2 + 8], ax
jne 0x497e9d
mov eax, 0x5e95
cmp word [esi + ecx*2 + 0xa], ax
jne 0x497e9d
mov eax, 0x672c
cmp word [esi + ecx*2 + 0xc], ax
jne 0x497e9d
mov eax, 0x3067
cmp word [esi + ecx*2 + 0xe], ax
mov eax, dword [ebp - 0xa08]
jne 0x497e9d
cmp word [esi + ecx*2 + 0x10], ax
je 0x497ea8
inc edi
movsx ecx, di
lea eax, [ecx + 8]
cmp eax, edx
jl 0x497e54
mov dword [ebp - 0x7d4], edi
mov eax, dword [ebp - 0x790]
add eax, 0xfffffffd
movzx edx, ax
movsx eax, dx
lea ecx, [eax - 6]
test ecx, ecx
js 0x497f27
mov edi, 0x300d
nop dword [eax]
cmp word [esi + ecx*2], di
jne 0x497f16
mov ecx, 0x306f
cmp word [esi + eax*2 - 0xa], cx
jne 0x497f16
mov edi, 0x5e95
cmp word [esi + eax*2 - 8], di
lea edi, [ecx - 0x62]
jne 0x497f16
mov edi, 0x672c
cmp word [esi + eax*2 - 6], di
lea edi, [ecx - 0x62]
jne 0x497f16
mov edi, 0x3067
cmp word [esi + eax*2 - 4], di
lea edi, [ecx - 0x62]
jne 0x497f16
cmp word [esi + eax*2 - 2], cx
je 0x497f21
dec edx
movsx eax, dx
lea ecx, [eax - 6]
test ecx, ecx
jns 0x497ed0
mov edi, dword [ebp - 0x7d4]
movsx ecx, di
add ecx, 9
movsx eax, dx
movzx esi, dx
mov dword [ebp - 0x7e4], esi
cmp eax, ecx
jne 0x49854c
mov eax, dword [ebp - 0x79c]
cmp byte [eax + 0x862], 0
jne 0x49854c
mov esi, dword [ebp - 0x790]
mov ecx, dword [ebp - 0x7e8]
movsx eax, si
mov esi, dword [ebp - 0x7e4]
sub dword [ebp - 0x7b8], esi
mov esi, dword [ebp - 0x7b8]
movzx eax, word [ecx + eax*2 - 4]
mov ecx, eax
movzx esi, si
mov dword [ebp - 0x7d4], ecx
mov ecx, 0x300d
cmp ax, cx
mov dword [ebp - 0x7e4], esi
mov ecx, eax
jne 0x497f98
inc edx
xor eax, eax
mov esi, 0x300d
cmp cx, si
mov esi, dword [ebp - 0x7e4]
mov ecx, 0xff3d
setne al
dec edi
lea eax, [eax*2 - 3]
add ax, si
movzx eax, ax
mov dword [ebp - 0x7e4], eax
movzx eax, ax
mov dword [ebp - 0x800], eax
movzx eax, dx
mov edx, dword [ebp - 0x7e8]
mov dword [ebp - 0x7d4], eax
movsx eax, di
cmp word [edx + eax*2 + 6], cx
jne 0x498024
lea eax, [edi + 2]
movzx eax, ax
test ax, ax
jle 0x498024
mov esi, 0xff3b
movsx ecx, ax
cmp word [edx + ecx*2], si
jne 0x498016
mov esi, 0xff03
cmp word [edx + ecx*2 + 2], si
jne 0x498011
cmp ax, 3
jg 0x49801e
mov esi, 0xff3b
dec eax
test ax, ax
jg 0x497ff6
jmp 0x498024
add eax, 0xfffffffc
movzx edi, ax
mov eax, dword [ebp - 0x810]
dec eax
movzx ecx, di
movzx esi, ax
test si, si
js 0x49312f
mov eax, esi
mov dword [ebp - 0x870], eax
test di, di
js 0x498079
mov edx, ecx
nop dword [eax]
movzx ecx, dx
test si, si
js 0x498079
mov edi, dword [ebp - 0x890]
movsx eax, si
mov ax, word [edi + eax*2]
mov edi, dword [ebp - 0x7e8]
cmp ax, word [edi + ecx*2 + 6]
jne 0x498079
dec edx
dec esi
test dx, dx
jns 0x498050
mov eax, dword [ebp - 0x7e4]
xor ecx, ecx
cwde
mov edx, 2
add eax, 7
inc esi
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.00560858
mov edx, dword [ebp - 0x790]
mov edi, eax
mov ecx, dword [ebp - 0x7e8]
add esp, 4
movsx eax, dx
mov dword [ebp - 0x86c], edi
movzx edx, word [ecx + eax*2 - 4]
mov eax, dword [ebp - 0x7d4]
movsx ecx, ax
mov eax, dword [ebp - 0x7e8]
lea ecx, [eax + ecx*2]
mov eax, 0x300d
cmp dx, ax
mov edx, dword [ebp - 0x800]
sete al
movzx eax, al
push eax
push edi
call fcn.0040cca0
movss xmm0, dword [ebp - 0x7ac]
add esp, 8
movzx edi, ax
movaps xmm1, xmm0
xor eax, eax
movss dword [ebp - 0x7c0], xmm0
movss dword [ebp - 0x7d4], xmm0
cmp ax, si
jge 0x498134
mov eax, dword [ebp - 0x850]
movzx ecx, si
nop word [eax + eax]
addss xmm1, dword [eax]
add eax, 4
sub ecx, 1
jne 0x498120
movss dword [ebp - 0x7c0], xmm1
mov eax, dword [ebp - 0x870]
cwde
movzx ecx, si
lea edx, [eax + 1]
movsx eax, si
cmp eax, edx
jge 0x498165
mov esi, dword [ebp - 0x850]
nop
addss xmm0, dword [esi + eax*4]
inc ecx
movsx eax, cx
cmp eax, edx
jl 0x498150
movss dword [ebp - 0x7d4], xmm0
mov eax, dword [ebp - 0x7a0]
movss xmm0, dword [ebp - 0x7a4]
mov dword [ebp - 0x830], eax
mov eax, dword [ebp - 0x798]
push 1
push ecx
mov ecx, dword [ebp - 0x86c]
mov eax, dword [eax + 0xc]
movss dword [esp], xmm0
push edi
push dword [ebp - 0x7f8]
mov esi, dword [eax + 0x3f8]
mov edx, esi
push dword [ebp - 0x7b4]
mov dword [ebp - 0x800], esi
call fcn.0040ec40
mov ecx, dword [ebp - 0x7b4]
movaps xmm2, xmm0
movsx eax, di
add esp, 0x14
mov dword [ebp - 0x844], eax
movss dword [ebp - 0x7d0], xmm2
movss xmm0, dword [ecx + eax*4 - 4]
mov eax, dword [ebp - 0x79c]
movss dword [ebp - 0x7e4], xmm0
mov al, byte [eax + 0x6fd]
cmp al, 2
jge 0x4982bb
movss xmm0, dword [ebp - 0x7d4]
comiss xmm0, xmm2
jbe 0x498289
cmp byte [ebp - 0x81d], 0
jne 0x498289
movss xmm1, dword [ebp - 0x7a4]
subss xmm0, xmm2
push 1
push 0
push ecx
movss dword [esp], xmm1
push dword [ebp - 0x7f8]
push esi
push ecx
movss dword [esp], xmm0
push edi
push ecx
push dword [ebp - 0x86c]
mov ecx, dword [ebp - 0x7f4]
call fcn.004a74b0
cmp di, 2
jg 0x498274
mov eax, dword [ebp - 0x7b4]
movss xmm6, dword [ebp - 0x7ac]
movss xmm1, dword [eax]
xorps xmm1, xmmword [0x5ea900]
divss xmm1, dword [0x5ea6b0]
movss dword [ebp - 0x7f0], xmm1
jmp 0x4982ce
movss xmm0, dword [ebp - 0x7ac]
movaps xmm1, xmm0
movss dword [ebp - 0x7f0], xmm1
jmp 0x4982e0
movss xmm6, dword [ebp - 0x7ac]
cmp al, 1
jne 0x4982ae
movaps xmm1, xmm2
subss xmm1, xmm0
mulss xmm1, dword [0x5ea4cc]
movss dword [ebp - 0x7f0], xmm1
jmp 0x4982ce
movaps xmm1, xmm6
movss dword [ebp - 0x7f0], xmm1
jmp 0x4982ce
movss xmm6, dword [ebp - 0x7ac]
movaps xmm1, xmm6
movss dword [ebp - 0x7f0], xmm6
xor eax, eax
movaps xmm0, xmm6
movss dword [ebp - 0x828], xmm0
cmp ax, di
jge 0x498325
mov esi, dword [ebp - 0x844]
mov edx, edi
mov ecx, dword [ebp - 0x7b4]
dec esi
movss xmm2, dword [ebp - 0x7e4]
xor eax, eax
nop dword [eax]
cmp eax, esi
jne 0x49830a
addss xmm0, xmm2
jmp 0x49830e
addss xmm0, dword [ecx]
inc eax
add ecx, 4
sub edx, 1
jne 0x498300
mov esi, dword [ebp - 0x800]
movss dword [ebp - 0x828], xmm0
mov edx, dword [ebp - 0x79c]
movss xmm2, dword [ebp - 0x880]
movzx ecx, byte [edx + 0x7eb]
movzx eax, byte [edx + 0x7ec]
shl ecx, 8
or ecx, eax
movzx eax, byte [edx + 0x7ed]
shl ecx, 8
or ecx, eax
cmp word [ebp - 0x84c], 0x40
mov al, byte [edx + 0x6fa]
jne 0x498409
movss xmm0, dword [ebp - 0x8b0]
addss xmm0, dword [ebp - 0x7c0]
subss xmm0, xmm1
maxss xmm2, xmm0
movss dword [ebp - 0x880], xmm2
test al, al
je 0x4984f6
movss xmm1, dword [ebp - 0x7fc]
cvtps2pd xmm1, xmm1
push ecx
push dword [ebp - 0x844]
mulsd xmm1, qword [edx + 0x700]
push dword [ebp - 0x86c]
movss xmm0, dword [ebp - 0x7a4]
sub esp, 0xc
divsd xmm1, qword [ebp - 0x8a0]
movss dword [esp + 8], xmm0
movss xmm0, dword [ebp - 0x888]
subss xmm0, dword [ebp - 0x85c]
movss dword [esp + 4], xmm2
cvtps2pd xmm0, xmm0
addsd xmm1, xmm0
movss xmm0, dword [ebp - 0x834]
cvtps2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0xa10]
addsd xmm1, xmm0
cvtpd2ps xmm0, xmm1
movss dword [esp], xmm0
jmp 0x4984a7
movss xmm0, dword [ebp - 0x888]
addss xmm0, dword [ebp - 0x7c0]
subss xmm0, xmm1
maxss xmm2, xmm0
movss dword [ebp - 0x880], xmm2
test al, al
je 0x4984f6
movss xmm0, dword [ebp - 0x7a4]
push ecx
push dword [ebp - 0x844]
push dword [ebp - 0x86c]
sub esp, 0xc
movss dword [esp + 8], xmm0
movss xmm0, dword [ebp - 0x8b0]
addss xmm0, dword [ebp - 0x85c]
cvtps2pd xmm1, xmm0
movss xmm0, dword [ebp - 0x7fc]
cvtps2pd xmm0, xmm0
mulsd xmm0, qword [edx + 0x700]
divsd xmm0, qword [ebp - 0x8a0]
subsd xmm1, xmm0
movss xmm0, dword [ebp - 0x834]
cvtps2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0x960]
subsd xmm1, xmm0
cvtpd2ps xmm0, xmm1
movss dword [esp + 4], xmm0
movss dword [esp], xmm2
push 0
push ecx
lea eax, [ebx + 0x64]
mov ecx, esp
push eax
call fcn.0043ce00
push ecx
mov ecx, esp
push dword [ebp - 0x80c]
call fcn.004a86c0
push ecx
mov ecx, esp
push dword [ebp - 0x808]
call fcn.004a86c0
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
xor edx, edx
mov ecx, esi
call fcn.0043a210
movss xmm2, dword [ebp - 0x880]
movss xmm1, dword [ebp - 0x7f0]
mov esi, dword [ebp - 0x79c]
addss xmm2, dword [ebp - 0x828]
push dword [ebp - 0x86c]
movzx edi, byte [esi + 0x7e8]
movzx eax, byte [esi + 0x7e9]
shl edi, 8
addss xmm2, xmm1
or edi, eax
movzx eax, byte [esi + 0x7ea]
shl edi, 8
or edi, eax
mov eax, dword [ebp - 0x830]
mov dword [ebp - 0x83c], edi
movss dword [ebp - 0x880], xmm2
mov dword [ebp - 0x7a0], eax
jmp 0x497660
mov ecx, dword [ebp - 0x7cc]
mov edi, dword [ebp - 0x790]
mov esi, dword [ebp - 0x86c]
mov eax, dword [ebp - 0x93c]
test ecx, ecx
je 0x49a1f3
cmp word [ebp - 0x84c], 0x40
jne 0x498d91
cmp di, 0xa
jl 0x498d91
mov edx, 0xff3b
cmp si, dx
mov edx, dword [ebp - 0x7e8]
jne 0x498d97
mov ecx, 0xff03
cmp word [edx + 2], cx
mov ecx, dword [ebp - 0x7cc]
jne 0x498d97
mov ecx, 0x300c
cmp word [eax], cx
mov ecx, dword [ebp - 0x7cc]
jne 0x498d97
movsx eax, di
mov esi, 0x300d
cmp word [edx + eax*2 - 0xc], si
movzx esi, word [edx]
jne 0x498d97
mov ecx, 0x306f
cmp word [edx + eax*2 - 0xa], cx
mov ecx, dword [ebp - 0x7cc]
jne 0x498d97
mov ecx, 0x7e26
cmp word [edx + eax*2 - 8], cx
mov ecx, dword [ebp - 0x7cc]
jne 0x498d97
mov edi, 0x4e2d
cmp word [edx + eax*2 - 6], di
mov edi, dword [ebp - 0x790]
jne 0x498d97
mov esi, 0x6a2a
cmp word [edx + eax*2 - 4], si
movzx esi, word [edx]
jne 0x498d97
mov edi, 0xff3d
cmp word [edx + eax*2 - 2], di
mov edi, dword [ebp - 0x790]
jne 0x498d97
mov eax, dword [ebp - 0x794]
mov esi, dword [ebp - 0x798]
mov ecx, dword [eax]
test cl, 0xc0
jne 0x4986fe
mov eax, ecx
and eax, 0xa00
cmp eax, 0xa00
jne 0x49867f
mov eax, dword [esi + 0xc]
shr ecx, 0x1c
mov dword [ebp - 0x82c], ecx
mov ecx, dword [eax + ecx*4 + 0x7c4]
jmp 0x498707
mov eax, ecx
and eax, 0x1200
cmp eax, 0x1200
mov eax, dword [esi + 0xc]
jne 0x4986a2
shr ecx, 0x1c
mov dword [ebp - 0x82c], ecx
mov ecx, dword [eax + ecx*4 + 0x83c]
jmp 0x498707
test ecx, 0x800
je 0x4986bc
shr ecx, 0x1c
mov dword [ebp - 0x82c], ecx
mov ecx, dword [eax + ecx*4 + 0x6d4]
jmp 0x498707
test ecx, 0x1000
je 0x4986d6
shr ecx, 0x1c
mov dword [ebp - 0x82c], ecx
mov ecx, dword [eax + ecx*4 + 0x74c]
jmp 0x498707
test ecx, 0x200
je 0x4986e6
mov ecx, dword [eax + 0x458]
jmp 0x498707
test ecx, 0x400
je 0x4986f6
mov ecx, dword [eax + 0x464]
jmp 0x498707
mov ecx, dword [eax + 0x428]
jmp 0x498707
mov eax, dword [esi + 0xc]
mov ecx, dword [eax + 0x44c]
movss xmm0, dword [ebp - 0x7a4]
lea eax, [edi - 9]
push 1
push ecx
movss dword [esp], xmm0
mov edx, ecx
push eax
push dword [ebp - 0x7f8]
mov dword [ebp - 0x824], ecx
push dword [ebp - 0x7b4]
mov ecx, dword [ebp - 0x884]
call fcn.0040ec40
mov eax, dword [ebp - 0x794]
movaps xmm2, xmm0
movss xmm4, dword [0x5ea4cc]
add esp, 0x14
movaps xmm1, xmm2
movss dword [ebp - 0x7d0], xmm2
mulss xmm1, xmm4
mov ecx, dword [eax]
test cl, 0x40
je 0x4987b7
mov eax, dword [esi + 0xc]
xorps xmm3, xmm3
mov edx, dword [ebp - 0x818]
mov edi, dword [ebp - 0x814]
movss xmm0, dword [eax + 0xc40]
cvtsi2ss xmm3, dword [edx + 8]
addss xmm0, dword [eax + 0xc3c]
subss xmm3, dword [ebp - 0x87c]
mulss xmm0, xmm4
subss xmm3, xmm0
xorps xmm0, xmm0
cvtsi2ss xmm0, dword [edi]
subss xmm3, xmm1
subss xmm3, xmm0
xorps xmm0, xmm0
cvtsi2ss xmm0, dword [edi + 4]
jmp 0x498866
test cl, cl
jns 0x498813
mov eax, dword [esi + 0xc]
xorps xmm0, xmm0
mov edi, dword [ebp - 0x814]
movss xmm3, dword [eax + 0xc40]
addss xmm3, dword [eax + 0xc3c]
mov eax, dword [ebp - 0x818]
cvtsi2ss xmm0, dword [eax + 8]
mulss xmm3, xmm4
subss xmm0, dword [ebp - 0x864]
addss xmm3, xmm0
xorps xmm0, xmm0
cvtsi2ss xmm0, dword [edi]
subss xmm3, xmm1
xorps xmm1, xmm1
cvtsi2ss xmm1, dword [eax + 4]
subss xmm3, xmm0
xorps xmm0, xmm0
cvtsi2ss xmm0, dword [edi + 4]
jmp 0x49886e
mov edx, dword [ebp - 0x818]
xorps xmm3, xmm3
movss xmm0, dword [ebp - 0x864]
subss xmm0, dword [ebp - 0x87c]
mov eax, dword [ebp - 0x814]
cvtsi2ss xmm3, dword [edx + 8]
movss xmm2, dword [ebp - 0x7d0]
subss xmm3, dword [ebp - 0x87c]
mulss xmm0, xmm4
subss xmm3, xmm0
xorps xmm0, xmm0
cvtsi2ss xmm0, dword [eax]
subss xmm3, xmm1
subss xmm3, xmm0
xorps xmm0, xmm0
cvtsi2ss xmm0, dword [eax + 4]
xorps xmm1, xmm1
cvtsi2ss xmm1, dword [edx + 4]
movss dword [ebp - 0x7c4], xmm3
addss xmm1, dword [ebp - 0x7a8]
subss xmm1, xmm0
movss dword [ebp - 0x7bc], xmm1
movaps xmm0, xmm1
cvttss2si eax, xmm1
mov dword [ebp - 0x6ac], eax
mov edx, dword [esi + 0xc]
test cl, 0xc0
jne 0x498919
mov eax, ecx
and eax, 0xa00
cmp eax, 0xa00
jne 0x4988be
mov eax, dword [ebp - 0x82c]
addss xmm0, dword [edx + eax*4 + 0xb9c]
jmp 0x498921
mov eax, ecx
and eax, 0x1200
cmp eax, 0x1200
jne 0x4988dd
mov eax, dword [ebp - 0x82c]
addss xmm0, dword [edx + eax*4 + 0xc14]
jmp 0x498921
test ecx, 0x800
je 0x4988f6
mov eax, dword [ebp - 0x82c]
addss xmm0, dword [edx + eax*4 + 0xbc4]
jmp 0x498921
test ecx, 0x1000
je 0x49890f
mov eax, dword [ebp - 0x82c]
addss xmm0, dword [edx + eax*4 + 0xbec]
jmp 0x498921
addss xmm0, dword [edx + 0xb94]
jmp 0x498921
addss xmm0, dword [edx + 0xb98]
mov ecx, dword [ebp - 0x7ec]
cvttss2si eax, xmm0
movaps xmm0, xmm2
mov dword [ebp - 0x6a4], eax
addss xmm0, xmm3
cvttss2si eax, xmm3
mov dword [ebp - 0x6b0], eax
cvttss2si eax, xmm0
mov dword [ebp - 0x6a8], eax
test ecx, ecx
je 0x498a47
mov eax, dword [ebp - 0x7cc]
movsx edi, word [ebp - 0x868]
movzx esi, word [eax + 4]
movsx edx, si
add edx, edi
nop word [eax + eax]
movzx ecx, word [ecx + 4]
movsx eax, cx
cmp edx, eax
jle 0x498a41
mov eax, dword [ebp - 0x88c]
mov edx, dword [ebp - 0x7ec]
test eax, eax
je 0x49899c
cmp edx, eax
je 0x498998
cmp dword [edx + 8], eax
jne 0x49899c
mov al, 1
jmp 0x49899e
xor al, al
push dword [ebp - 0x79c]
push dword [ebp - 0x7b4]
push eax
lea eax, [ebp - 0x6b0]
push eax
movzx eax, word [edx + 6]
push eax
push ecx
push esi
push dword [ebp - 0x868]
lea eax, [ebx + 0x64]
sub esp, 0xc
mov ecx, esp
movss dword [esp + 8], xmm1
movss dword [esp + 4], xmm3
push eax
call fcn.0043ce00
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
movss xmm3, dword [ebp - 0x7a4]
mov ecx, dword [ebp - 0x7f4]
call fcn.004a7c00
mov eax, dword [ebp - 0x7cc]
movss xmm3, dword [ebp - 0x7c4]
movss xmm1, dword [ebp - 0x7bc]
movzx esi, word [eax + 4]
mov eax, dword [ebp - 0x7ec]
movsx edx, si
add edx, edi
movsx ecx, word [eax + 6]
movsx eax, word [eax + 4]
add ecx, eax
cmp edx, ecx
jl 0x498a41
mov ecx, dword [ebp - 0x7ec]
mov ecx, dword [ecx]
mov dword [ebp - 0x7ec], ecx
test ecx, ecx
jne 0x498970
mov esi, dword [ebp - 0x798]
push dword [ebp - 0x83c]
mov eax, dword [ebp - 0x790]
movss xmm0, dword [ebp - 0x7a4]
movsx edi, ax
lea eax, [ebx + 0x64]
add edi, 0xfffffff7
push edi
push dword [ebp - 0x884]
mov dword [ebp - 0x7d4], edi
sub esp, 0xc
movss dword [esp + 8], xmm0
movss dword [esp + 4], xmm1
movss dword [esp], xmm3
push 0
push ecx
mov ecx, esp
push eax
call fcn.0043ce00
push ecx
mov ecx, esp
push dword [ebp - 0x80c]
call fcn.004a86c0
push ecx
mov ecx, esp
push dword [ebp - 0x808]
call fcn.004a86c0
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
mov ecx, dword [ebp - 0x824]
xor edx, edx
call fcn.0043a210
mov ecx, dword [ebp - 0x794]
movsd xmm5, qword [ebp - 0x7e0]
mov eax, dword [ecx]
mov ecx, dword [esi + 0xc]
mov dword [ebp - 0x824], eax
movd xmm0, dword [ecx + 0xa80]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm5
cvtpd2ps xmm0, xmm0
test al, 0xc0
jne 0x498b88
and eax, 0xa00
cmp eax, 0xa00
jne 0x498b1d
mov eax, dword [ebp - 0x82c]
addss xmm0, dword [ecx + eax*4 + 0xb9c]
mov eax, dword [ebp - 0x824]
jmp 0x498b90
mov edx, dword [ebp - 0x824]
and edx, 0x1200
cmp edx, 0x1200
jne 0x498b48
mov eax, dword [ebp - 0x82c]
addss xmm0, dword [ecx + eax*4 + 0xc14]
mov eax, dword [ebp - 0x824]
jmp 0x498b90
mov eax, dword [ebp - 0x824]
test eax, 0x800
je 0x498b66
mov edx, dword [ebp - 0x82c]
addss xmm0, dword [ecx + edx*4 + 0xbc4]
jmp 0x498b90
test eax, 0x1000
je 0x498b7e
mov edx, dword [ebp - 0x82c]
addss xmm0, dword [ecx + edx*4 + 0xbec]
jmp 0x498b90
addss xmm0, dword [ecx + 0xb94]
jmp 0x498b90
addss xmm0, dword [ecx + 0xb98]
cmp byte [ebp - 0x8a4], 0
addss xmm0, dword [ebp - 0x7a8]
mov edx, dword [ebp - 0x7f0]
mov dword [ebp - 0x7a0], edx
movss dword [ebp - 0x7a8], xmm0
je 0x498c0d
mov edx, dword [ebp - 0x818]
xor esi, esi
mov dword [ebp - 0x810], esi
mov byte [ebp - 0x8a4], 0
movd xmm1, dword [edx + 8]
mov edx, dword [ebp - 0x814]
cvtdq2ps xmm1, xmm1
movd xmm0, dword [edx]
xor dh, dh
subss xmm1, dword [ebp - 0x81c]
cvtdq2ps xmm0, xmm0
mov byte [ebp - 0x785], dh
subss xmm1, xmm0
movss xmm0, dword [ebp - 0x7bc]
movss dword [ebp - 0x8b0], xmm0
movss dword [ebp - 0x888], xmm1
jmp 0x498c13
mov esi, dword [ebp - 0x810]
xor edx, edx
mov byte [ebp - 0x85d], 0
test edi, edi
jle 0x498c8a
xor eax, eax
movsx esi, si
nop word [eax + eax]
mov edi, dword [ebp - 0x890]
lea ecx, [esi + eax]
mov dword [ebp - 0x7e4], ecx
inc edx
mov ecx, dword [ebp - 0x7e8]
mov ax, word [ecx + eax*2 + 6]
mov ecx, dword [ebp - 0x7e4]
mov word [edi + ecx*2], ax
mov eax, dword [ebp - 0x850]
mov dword [eax + ecx*4], 0
movsx eax, dx
cmp eax, dword [ebp - 0x7d4]
jl 0x498c30
mov eax, dword [ebp - 0x794]
mov ecx, dword [ebp - 0x798]
mov esi, dword [ebp - 0x810]
mov eax, dword [eax]
mov ecx, dword [ecx + 0xc]
mov dword [ebp - 0x824], eax
movzx edx, si
movsx esi, dx
test al, 0xc0
jne 0x498d1d
and eax, 0xa00
cmp eax, 0xa00
jne 0x498cb5
mov eax, dword [ebp - 0x82c]
movss xmm0, dword [ecx + eax*4 + 0xb9c]
jmp 0x498d25
mov edx, dword [ebp - 0x824]
mov eax, edx
and eax, 0x1200
cmp eax, 0x1200
jne 0x498cda
mov eax, dword [ebp - 0x82c]
movss xmm0, dword [ecx + eax*4 + 0xc14]
jmp 0x498d25
test edx, 0x800
je 0x498cf3
mov eax, dword [ebp - 0x82c]
movss xmm0, dword [ecx + eax*4 + 0xbc4]
jmp 0x498d25
lea eax, [esi*4]
test edx, 0x1000
je 0x498d13
mov edx, dword [ebp - 0x82c]
movss xmm0, dword [ecx + edx*4 + 0xbec]
jmp 0x498d2c
movss xmm0, dword [ecx + 0xb94]
jmp 0x498d2c
movss xmm0, dword [ecx + 0xb98]
lea eax, [esi*4]
mov ecx, dword [ebp - 0x850]
mov edi, dword [ebp - 0x790]
movss xmm2, dword [ebp - 0x7ac]
movss xmm4, dword [ebp - 0x7a8]
mov esi, dword [ebp - 0x79c]
movss dword [eax + ecx], xmm0
mov eax, dword [ebp - 0x810]
mov cl, byte [ebp - 0x785]
add eax, 0xfffffff7
add eax, edi
movss dword [ebp - 0x824], xmm2
mov dword [ebp - 0x810], eax
mov eax, dword [ebp - 0x7f0]
mov dword [ebp - 0x830], eax
mov eax, dword [ebp - 0x794]
movss dword [ebp - 0x854], xmm2
jmp 0x49d3b8
mov edx, dword [ebp - 0x7e8]
cmp di, 9
jl 0x498e24
mov eax, 0xff3b
cmp si, ax
jne 0x498e24
mov eax, 0xff03
cmp word [edx + 2], ax
lea eax, [edx + 4]
jne 0x498e27
mov ecx, 0x300c
cmp word [eax], cx
mov ecx, dword [ebp - 0x7cc]
jne 0x498e27
movsx eax, di
mov esi, 0x300d
cmp word [edx + eax*2 - 0xa], si
movzx esi, word [edx]
jne 0x498e24
mov edi, 0x306f
cmp word [edx + eax*2 - 8], di
mov edi, dword [ebp - 0x790]
jne 0x498e24
mov ecx, 0x592a
cmp word [edx + eax*2 - 6], cx
mov ecx, dword [ebp - 0x7cc]
jne 0x498e24
mov esi, 0x5b57
cmp word [edx + eax*2 - 4], si
movzx esi, word [edx]
jne 0x498e24
mov ecx, 0xff3d
cmp word [edx + eax*2 - 2], cx
mov ecx, dword [ebp - 0x7cc]
je 0x498f0c
lea eax, [edx + 4]
cmp di, 0xc
jl 0x498f6a
mov edi, 0xff3b
cmp si, di
mov edi, dword [ebp - 0x790]
jne 0x498f6a
mov ecx, 0xff03
cmp word [edx + 2], cx
mov ecx, dword [ebp - 0x7cc]
jne 0x498f6a
mov esi, 0x300c
cmp word [eax], si
movzx esi, word [edx]
jne 0x498f6a
movsx eax, di
mov ecx, 0x300d
cmp word [edx + eax*2 - 0x10], cx
mov ecx, dword [ebp - 0x7cc]
jne 0x498f6a
mov edi, 0x306f
cmp word [edx + eax*2 - 0xe], di
mov edi, dword [ebp - 0x790]
jne 0x498f6a
mov edi, 0x30b4
cmp word [edx + eax*2 - 0xc], di
mov edi, dword [ebp - 0x790]
jne 0x498f6a
mov esi, 0x30b7
cmp word [edx + eax*2 - 0xa], si
movzx esi, word [edx]
jne 0x498f6a
mov edi, 0x30c3
cmp word [edx + eax*2 - 8], di
mov edi, dword [ebp - 0x790]
jne 0x498f6a
mov ecx, 0x30af
cmp word [edx + eax*2 - 6], cx
mov ecx, dword [ebp - 0x7cc]
jne 0x498f6a
mov ecx, 0x4f53
cmp word [edx + eax*2 - 4], cx
mov ecx, dword [ebp - 0x7cc]
jne 0x498f6a
mov esi, 0xff3d
cmp word [edx + eax*2 - 2], si
movzx esi, word [edx]
jne 0x498f6a
mov eax, dword [ebp - 0x794]
movss xmm2, dword [ebp - 0x7ac]
movss xmm4, dword [ebp - 0x7a8]
movsd xmm5, qword [ebp - 0x7e0]
test byte [eax], 0x20
movss xmm0, dword [ebp - 0x7c8]
mov esi, dword [ebp - 0x79c]
mov cl, byte [ebp - 0x785]
mov edi, dword [ebp - 0x790]
jne 0x498f5e
movss dword [ebp - 0x824], xmm2
movss dword [ebp - 0x854], xmm2
jmp 0x49d3c0
mov byte [ebp - 0x92d], 1
jmp 0x49d3c0
cmp di, 9
jl 0x49a1f3
mov eax, 0xff3b
cmp si, ax
jne 0x49a1f3
mov eax, 0xff03
cmp word [edx + 2], ax
jne 0x49a1f3
mov esi, 0x300c
cmp word [edx + 4], si
movzx esi, word [edx]
jne 0x49a1f3
movsx eax, di
mov ecx, 0x300d
cmp word [edx + eax*2 - 0xa], cx
mov ecx, dword [ebp - 0x7cc]
jne 0x49a1f3
mov esi, 0x306f
cmp word [edx + eax*2 - 8], si
movzx esi, word [edx]
jne 0x49a1f3
mov ecx, 0x659c
cmp word [edx + eax*2 - 6], cx
mov ecx, dword [ebp - 0x7cc]
jne 0x49a1f3
mov edi, 0x4f53
cmp word [edx + eax*2 - 4], di
mov edi, dword [ebp - 0x790]
jne 0x49a1f3
mov ecx, 0xff3d
cmp word [edx + eax*2 - 2], cx
mov ecx, dword [ebp - 0x7cc]
jne 0x49a1f3
mov eax, dword [ebp - 0x794]
test byte [eax], 0x20
jne 0x49a1cd
cmp word [ebp - 0x8ac], 0
jne 0x49912b
mov esi, dword [ebp - 0x908]
test esi, esi
je 0x49912b
movsd xmm0, qword [ebp - 0xa20]
lea eax, [ebx + 0x64]
sub esp, 0x14
movsd qword [esp + 0xc], xmm0
movsd xmm0, qword [ebp - 0xa28]
movsd qword [esp + 4], xmm0
movss xmm0, dword [ebp - 0x7a4]
movss dword [esp], xmm0
push dword [ebp - 0x984]
push ecx
mov ecx, esp
push eax
call fcn.0043ce00
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
push ecx
lea eax, [ebx + 0x5c]
mov ecx, esp
push eax
call fcn.0043ce00
push dword [ebp - 0x808]
lea eax, [ebp - 0x6dc]
mov ecx, dword [ebp - 0x7f4]
push dword [ebp - 0x80c]
push dword [ebx + 0x50]
push dword [ebp - 0x910]
push dword [ebp - 0x798]
push esi
push 0x16
push dword [ebp - 0x980]
mov esi, dword [ebp - 0x79c]
push dword [ebp - 0x9a0]
push dword [ebp - 0x990]
push eax
lea eax, [ebp - 0x6e0]
push eax
lea eax, [ebp - 0x6e4]
push eax
lea eax, [ebp - 0x6d8]
push eax
push esi
push dword [ebp - 0x88c]
push dword [ebp - 0x98c]
push dword [ebp - 0x814]
push dword [ebp - 0x94c]
push dword [ebp - 0x874]
push dword [ebp - 0x818]
call fcn.00487d00
movss dword [ebp - 0x7a8], xmm0
mov dword [ebp - 0x908], 0
jmp 0x49a196
mov eax, dword [ebp - 0x7a0]
movss xmm0, dword [ebp - 0x7a4]
mov edi, dword [ebp - 0x7b4]
mov dword [ebp - 0x830], eax
mov eax, dword [ebp - 0x798]
push 1
push ecx
movss dword [esp], xmm0
mov eax, dword [eax + 0xc]
mov byte [ebp - 0x85d], 0
mov esi, dword [eax + 0x440]
mov edx, esi
movzx eax, word [ecx + 4]
mov ecx, dword [ebp - 0x884]
push eax
push dword [ebp - 0x7f8]
mov dword [ebp - 0x7e4], esi
push edi
call fcn.0040ec40
mov eax, dword [ebp - 0x798]
add esp, 0x14
movss dword [ebp - 0x7d0], xmm0
mov eax, dword [eax + 0xc]
movd xmm0, dword [eax + 0xa80]
mov eax, dword [ebp - 0x7f8]
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0x7e0]
cvtpd2ps xmm0, xmm0
addss xmm0, dword [edi]
movss dword [edi], xmm0
lea edi, [esi + 0x100]
push dword [eax]
mov ecx, edi
call fcn.00410b00
mov ecx, dword [ebp - 0x798]
mov esi, 1
movss xmm1, dword [ebp - 0x7a4]
movsd xmm2, qword [ebp - 0x7e0]
cvtps2pd xmm1, xmm1
mov ecx, dword [ecx + 0xc]
add ecx, 0xa80
mov edx, dword [ebp - 0x790]
movd xmm0, dword [ecx]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm2
divsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
addss xmm0, dword [eax]
movss dword [eax], xmm0
movsx eax, dx
add eax, 0xfffffff8
mov dword [ebp - 0x824], eax
cmp eax, esi
jle 0x4992ae
mov eax, esi
nop word [eax + eax]
movd xmm0, dword [ecx]
mov ecx, dword [ebp - 0x7b4]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm2
cvtpd2ps xmm0, xmm0
addss xmm0, dword [ecx + eax*4]
movss dword [ecx + eax*4], xmm0
mov ecx, dword [ebp - 0x7f8]
push dword [ecx + eax*4]
mov ecx, edi
call fcn.00410b00
mov ecx, dword [ebp - 0x798]
inc esi
movss xmm2, dword [ebp - 0x7a4]
cvtps2pd xmm1, xmm2
mov ecx, dword [ecx + 0xc]
add ecx, 0xa80
movsd xmm2, qword [ebp - 0x7e0]
movd xmm0, dword [ecx]
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0x7e0]
divsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
addss xmm0, dword [eax]
movss dword [eax], xmm0
movsx eax, si
cmp eax, dword [ebp - 0x824]
jl 0x499230
cmp word [ebp - 0x84c], 0x40
mov eax, dword [ebp - 0x814]
jne 0x49947a
mov edi, dword [ebp - 0x818]
mov edx, dword [eax + 4]
movd xmm2, dword [eax]
cvtdq2ps xmm2, xmm2
mov esi, dword [edi + 4]
mov ecx, dword [edi + 8]
movd xmm4, esi
sub esi, edx
cvtdq2ps xmm4, xmm4
movd xmm1, ecx
addss xmm4, dword [ebp - 0x7a8]
cvtdq2ps xmm1, xmm1
movd xmm0, edx
cvtdq2ps xmm0, xmm0
movaps xmm3, xmm1
subss xmm1, dword [ebp - 0x87c]
subss xmm4, xmm0
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
mov ecx, dword [ebp - 0x7ec]
subss xmm1, xmm2
movss dword [ebp - 0x7bc], xmm4
subss xmm0, dword [ebp - 0x864]
subss xmm3, dword [ebp - 0x81c]
cvttss2si eax, xmm1
subss xmm0, xmm2
mov dword [ebp - 0x6a8], eax
subss xmm3, xmm2
cvttss2si eax, xmm0
movd xmm0, edx
mov dword [ebp - 0x6b0], eax
movd xmm1, dword [edi + 0xc]
movss dword [ebp - 0x7c4], xmm3
mov dword [ebp - 0x6ac], esi
cvtdq2ps xmm1, xmm1
cvtdq2ps xmm0, xmm0
subss xmm1, dword [ebp - 0x964]
subss xmm1, xmm0
cvttss2si eax, xmm1
mov dword [ebp - 0x6a4], eax
test ecx, ecx
je 0x499631
mov eax, dword [ebp - 0x7cc]
movsx edi, word [ebp - 0x868]
movzx esi, word [eax + 4]
movsx edx, si
add edx, edi
nop dword [eax]
movzx ecx, word [ecx + 4]
movsx eax, cx
cmp edx, eax
jle 0x499631
mov eax, dword [ebp - 0x88c]
mov edx, dword [ebp - 0x7ec]
test eax, eax
je 0x4993cc
cmp edx, eax
je 0x4993c8
cmp dword [edx + 8], eax
jne 0x4993cc
mov al, 1
jmp 0x4993ce
xor al, al
push dword [ebp - 0x79c]
push dword [ebp - 0x7b4]
push eax
lea eax, [ebp - 0x6b0]
push eax
movzx eax, word [edx + 6]
push eax
push ecx
push esi
push dword [ebp - 0x868]
lea eax, [ebx + 0x64]
sub esp, 0xc
mov ecx, esp
movss dword [esp + 8], xmm4
movss dword [esp + 4], xmm3
push eax
call fcn.0043ce00
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
movss xmm3, dword [ebp - 0x7a4]
mov ecx, dword [ebp - 0x7f4]
call fcn.004a8160
mov eax, dword [ebp - 0x7cc]
movss xmm3, dword [ebp - 0x7c4]
movss xmm4, dword [ebp - 0x7bc]
movzx esi, word [eax + 4]
mov eax, dword [ebp - 0x7ec]
movsx edx, si
add edx, edi
movsx ecx, word [eax + 6]
movsx eax, word [eax + 4]
add ecx, eax
cmp edx, ecx
jl 0x499631
mov ecx, dword [ebp - 0x7ec]
mov ecx, dword [ecx]
mov dword [ebp - 0x7ec], ecx
test ecx, ecx
jne 0x4993a0
jmp 0x499631
mov ecx, dword [ebp - 0x818]
mov esi, dword [eax]
mov edx, dword [ecx + 4]
mov edi, dword [ecx]
mov ecx, dword [eax + 4]
movd xmm2, esi
movd xmm1, edx
cvtdq2ps xmm1, xmm1
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
movaps xmm4, xmm1
movd xmm3, edi
addss xmm1, dword [ebp - 0x87c]
addss xmm4, dword [ebp - 0x81c]
cvtdq2ps xmm2, xmm2
sub edi, esi
subss xmm1, xmm0
subss xmm4, xmm0
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
mov ecx, dword [ebp - 0x7ec]
movss dword [ebp - 0x7bc], xmm4
cvttss2si eax, xmm1
movd xmm1, edx
mov dword [ebp - 0x6ac], eax
cvtdq2ps xmm1, xmm1
cvtdq2ps xmm3, xmm3
addss xmm1, dword [ebp - 0x864]
addss xmm3, dword [ebp - 0x7a8]
subss xmm1, xmm0
subss xmm3, xmm2
cvttss2si eax, xmm1
movss dword [ebp - 0x7c4], xmm3
mov dword [ebp - 0x6a4], eax
mov eax, dword [ebp - 0x818]
movd xmm0, dword [eax + 8]
mov dword [ebp - 0x6b0], edi
cvtdq2ps xmm0, xmm0
subss xmm0, dword [ebp - 0x964]
subss xmm0, xmm2
cvttss2si eax, xmm0
mov dword [ebp - 0x6a8], eax
test ecx, ecx
je 0x499631
mov eax, dword [ebp - 0x7cc]
movsx edi, word [ebp - 0x868]
movzx esi, word [eax + 4]
movsx edx, si
add edx, edi
nop dword [eax + eax]
movzx ecx, word [ecx + 4]
movsx eax, cx
cmp edx, eax
jle 0x499631
mov eax, dword [ebp - 0x88c]
mov edx, dword [ebp - 0x7ec]
test eax, eax
je 0x49958c
cmp edx, eax
je 0x499588
cmp dword [edx + 8], eax
jne 0x49958c
mov al, 1
jmp 0x49958e
xor al, al
push dword [ebp - 0x79c]
push dword [ebp - 0x7b4]
push eax
lea eax, [ebp - 0x6b0]
push eax
movzx eax, word [edx + 6]
push eax
push ecx
push esi
push dword [ebp - 0x868]
lea eax, [ebx + 0x64]
sub esp, 0xc
mov ecx, esp
movss dword [esp + 8], xmm4
movss dword [esp + 4], xmm3
push eax
call fcn.0043ce00
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
movss xmm3, dword [ebp - 0x7a4]
mov ecx, dword [ebp - 0x7f4]
call fcn.004a7c00
mov eax, dword [ebp - 0x7cc]
movss xmm3, dword [ebp - 0x7c4]
movss xmm4, dword [ebp - 0x7bc]
movzx esi, word [eax + 4]
mov eax, dword [ebp - 0x7ec]
movsx edx, si
add edx, edi
movsx ecx, word [eax + 6]
movsx eax, word [eax + 4]
add ecx, eax
cmp edx, ecx
jl 0x499631
mov ecx, dword [ebp - 0x7ec]
mov ecx, dword [ecx]
mov dword [ebp - 0x7ec], ecx
test ecx, ecx
jne 0x499560
push dword [ebp - 0x83c]
mov edi, dword [ebp - 0x824]
lea eax, [ebx + 0x64]
movss xmm0, dword [ebp - 0x7a4]
push edi
push dword [ebp - 0x884]
sub esp, 0xc
movss dword [esp + 8], xmm0
movss dword [esp + 4], xmm4
movss dword [esp], xmm3
push 0x18
push ecx
mov ecx, esp
push eax
call fcn.0043ce00
push ecx
mov ecx, esp
push dword [ebp - 0x80c]
call fcn.004a86c0
push ecx
mov ecx, esp
push dword [ebp - 0x808]
call fcn.004a86c0
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
mov ecx, dword [ebp - 0x7e4]
xor edx, edx
call fcn.0043a210
cmp byte [ebp - 0x8a4], 0
mov ecx, dword [ebp - 0x7cc]
movsd xmm2, qword [ebp - 0x7e0]
mov eax, dword [ecx + 0xc]
movd xmm1, dword [eax + 0xa80]
movsx eax, word [ecx + 4]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
mulsd xmm1, xmm2
mulsd xmm1, xmm0
cvtpd2ps xmm0, xmm1
movss xmm1, dword [ebp - 0x7d0]
addss xmm0, xmm1
addss xmm0, dword [ebp - 0x7a8]
movss dword [ebp - 0x7a8], xmm0
je 0x49975e
xor edx, edx
mov byte [ebp - 0x785], 1
mov byte [ebp - 0x8f6], 1
test edi, edi
jle 0x49974d
mov esi, dword [ebp - 0x850]
xor ecx, ecx
nop dword [eax]
mov eax, dword [ebp - 0x7e8]
inc edx
mov edi, dword [ebp - 0x890]
mov ax, word [eax + ecx*2 + 6]
mov word [edi + ecx*2], ax
mov eax, dword [ebp - 0x7b4]
mov eax, dword [eax + ecx*4]
mov dword [esi + ecx*4], eax
movsx ecx, dx
cmp ecx, dword [ebp - 0x824]
jl 0x499720
mov eax, dword [ebp - 0x7b8]
mov edx, dword [ebp - 0x790]
movzx ecx, ax
jmp 0x4997d3
xor esi, esi
test edi, edi
jle 0x4997bc
mov eax, dword [ebp - 0x810]
xor edx, edx
movsx edi, ax
mov dword [ebp - 0x7e4], edi
nop word [eax + eax]
mov eax, dword [ebp - 0x7e8]
lea ecx, [edi + edx]
mov edi, dword [ebp - 0x890]
inc esi
mov ax, word [eax + edx*2 + 6]
mov word [edi + ecx*2], ax
mov eax, dword [ebp - 0x7b4]
mov edi, dword [ebp - 0x7e4]
mov eax, dword [eax + edx*4]
mov edx, dword [ebp - 0x850]
mov dword [edx + ecx*4], eax
movsx edx, si
cmp edx, dword [ebp - 0x824]
jl 0x499780
mov eax, dword [ebp - 0x810]
mov edx, dword [ebp - 0x790]
add eax, edx
movzx ecx, ax
mov eax, dword [ebp - 0x7b8]
mov esi, dword [ebp - 0x79c]
movzx eax, ax
add eax, 0xfffffff8
cmp word [ebp - 0x84c], 0x40
movzx eax, ax
mov dword [ebp - 0x844], eax
lea eax, [ecx - 8]
movzx edi, ax
mov al, byte [esi + 0x6fb]
mov dword [ebp - 0x800], edi
jne 0x499cb9
mov ecx, dword [ebp - 0x794]
test al, al
je 0x499ae3
mov eax, dword [ebp - 0x7cc]
test byte [eax + 8], 0x80
je 0x499ae3
test byte [ecx], 0x20
jne 0x499ae3
movsx eax, dx
xor ecx, ecx
add eax, 0xfffffff8
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.00560858
mov esi, eax
add esp, 4
mov eax, dword [ebp - 0x79c]
mov edx, esi
mov dword [ebp - 0x7d4], esi
push dword [ebp - 0x844]
movzx edi, byte [eax + 0x7ee]
movzx ecx, byte [eax + 0x7ef]
shl edi, 8
or edi, ecx
movzx ecx, byte [eax + 0x7f0]
mov eax, dword [ebp - 0x7cc]
shl edi, 8
or edi, ecx
mov dword [ebp - 0x870], edi
mov cx, word [eax + 8]
shr cx, 0xb
movzx eax, cx
mov dword [ebp - 0x828], eax
movzx eax, cx
mov ecx, dword [ebp - 0x884]
push eax
mov dword [ebp - 0x8a8], eax
call fcn.0040a350
mov eax, dword [ebp - 0x798]
add esp, 8
movss xmm0, dword [ebp - 0x7a4]
mov eax, dword [eax + 0xc]
push 1
push ecx
movss dword [esp], xmm0
mov ecx, esi
push dword [ebp - 0x844]
mov eax, dword [eax + 0x3ec]
mov edx, eax
push dword [ebp - 0x7f8]
mov dword [ebp - 0x7c0], eax
push dword [ebp - 0x898]
call fcn.0040ec40
mov eax, dword [ebp - 0x824]
add esp, 0x14
xor esi, esi
test eax, eax
jle 0x499961
mov edi, dword [ebp - 0x7c0]
xor eax, eax
nop
mov ecx, dword [ebp - 0x7b4]
push eax
movss xmm0, dword [ecx + eax*4]
lea ecx, [edi + 0x100]
movss dword [ebp - 0x7e4], xmm0
call fcn.00410b00
movss xmm0, dword [ebp - 0x7e4]
inc esi
movss xmm3, dword [ebp - 0x7a4]
divss xmm0, xmm3
movss dword [eax], xmm0
movsx eax, si
cmp eax, dword [ebp - 0x824]
jl 0x499910
mov edi, dword [ebp - 0x870]
mov eax, dword [ebp - 0x824]
jmp 0x499969
movss xmm3, dword [ebp - 0x7a4]
mov edx, dword [ebp - 0x7b4]
mov ecx, dword [ebp - 0x79c]
movsd xmm1, qword [ebp - 0x8a0]
movss xmm4, dword [ebp - 0x7fc]
movss xmm0, dword [edx]
subsd xmm1, qword [ecx + 0x278]
cvtps2pd xmm0, xmm0
mov esi, dword [ebp - 0x7d4]
push edi
push eax
lea eax, [ebx + 0x64]
push esi
movss xmm2, dword [ebp - 0x834]
sub esp, 0xc
cmp word [ebp - 0x828], 8
mulsd xmm1, xmm0
movss xmm0, dword [ebp - 0x7bc]
cvtps2pd xmm0, xmm0
divsd xmm1, qword [ebp - 0x9c0]
movss dword [esp + 8], xmm3
addsd xmm1, xmm0
cvtps2pd xmm2, xmm2
cvtpd2ps xmm0, xmm1
cvtps2pd xmm1, xmm4
movss dword [esp + 4], xmm0
mulsd xmm1, qword [ecx + 0x708]
divsd xmm1, qword [ebp - 0x8a0]
ja 0x499a21
mulsd xmm2, qword [ebp - 0xa30]
movaps xmm0, xmm4
addss xmm0, dword [ebp - 0x7c4]
cvtps2pd xmm0, xmm0
subsd xmm0, xmm1
subsd xmm0, xmm2
cvtpd2ps xmm0, xmm0
movss dword [esp], xmm0
push 8
jmp 0x499a4f
movss xmm0, dword [ebp - 0x7c4]
subss xmm0, dword [ebp - 0x85c]
mulsd xmm2, qword [ebp - 0x960]
cvtps2pd xmm0, xmm0
subsd xmm0, xmm1
addsd xmm0, xmm2
cvtpd2ps xmm0, xmm0
movss dword [esp], xmm0
push 0
push ecx
mov ecx, esp
push eax
call fcn.0043ce00
push ecx
mov ecx, esp
push dword [ebp - 0x80c]
call fcn.004a86c0
push ecx
mov ecx, esp
push dword [ebp - 0x808]
call fcn.004a86c0
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
mov ecx, dword [ebp - 0x7c0]
xor edx, edx
call fcn.0043a210
mov edx, dword [ebp - 0x79c]
push esi
movzx ecx, byte [edx + 0x7e8]
movzx eax, byte [edx + 0x7e9]
shl ecx, 8
or ecx, eax
movzx eax, byte [edx + 0x7ea]
shl ecx, 8
or ecx, eax
mov dword [ebp - 0x83c], ecx
call fcn.00560853
movss xmm1, dword [ebp - 0x7d0]
add esp, 4
movsd xmm2, qword [ebp - 0x7e0]
mov edi, dword [ebp - 0x800]
mov esi, dword [ebp - 0x79c]
mov ecx, dword [ebp - 0x794]
mov al, byte [esi + 0x6fc]
test al, al
je 0x499c9f
mov edx, dword [ebp - 0x7cc]
movzx eax, word [edx + 8]
test eax, 0x100
je 0x499bd5
test byte [ecx], 0x20
jne 0x499bd5
movss xmm0, dword [ebp - 0x7fc]
sub esp, 8
cvtps2pd xmm0, xmm0
shr ax, 0xb
movzx ecx, ax
mov dword [ebp - 0x8a8], ecx
movsd qword [esp], xmm2
mulsd xmm0, qword [esi + 0x710]
push esi
divsd xmm0, qword [ebp - 0x8a0]
cvttsd2si eax, xmm0
movzx eax, ax
push eax
mov eax, dword [edx + 0xc]
mov eax, dword [eax + 0xa80]
imul eax, dword [ebp - 0x824]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm2
cvtpd2ps xmm0, xmm0
addss xmm0, xmm1
cvttss2si eax, xmm0
movss xmm0, dword [ebp - 0x7a4]
push eax
cvttss2si eax, dword [ebp - 0x7bc]
push eax
lea eax, [ebp - 0x6d4]
push eax
push ecx
sub esp, 8
lea eax, [ebx + 0x64]
mov ecx, esp
movss dword [esp + 4], xmm0
push eax
call fcn.0043ce00
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
push ecx
lea eax, [ebx + 0x5c]
mov ecx, esp
push eax
call fcn.0043ce00
mov ecx, dword [ebp - 0x7f4]
call fcn.004eb070
mov al, byte [esi + 0x6fc]
test al, al
je 0x499c9f
mov edx, dword [ebp - 0x7cc]
mov eax, dword [ebp - 0x794]
test dword [eax], 0x40000
jne 0x499c9f
mov eax, 0x400
test word [edx + 8], ax
je 0x499c9f
movss xmm0, dword [ebp - 0x7fc]
sub esp, 8
cvtps2pd xmm0, xmm0
movsd xmm2, qword [ebp - 0x7e0]
mulsd xmm0, qword [esi + 0x710]
movsd qword [esp], xmm2
push esi
divsd xmm0, qword [ebp - 0x8a0]
cvttsd2si eax, xmm0
movd xmm0, dword [ebp - 0x824]
movzx eax, ax
push eax
mov eax, dword [edx + 0xc]
cvtdq2pd xmm0, xmm0
movd xmm1, dword [eax + 0xa80]
cvtdq2pd xmm1, xmm1
mulsd xmm1, xmm2
mulsd xmm1, xmm0
cvtpd2ps xmm0, xmm1
addss xmm0, dword [ebp - 0x7d0]
cvttss2si eax, xmm0
push eax
cvttss2si eax, dword [ebp - 0x7bc]
push eax
lea eax, [ebp - 0x6d4]
push eax
push dword [ebp - 0x8a8]
lea eax, [ebx + 0x64]
push ecx
mov ecx, esp
push eax
call fcn.0043ce00
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
movss xmm3, dword [ebp - 0x7a4]
mov ecx, dword [ebp - 0x7f4]
call fcn.004ebb20
mov eax, dword [ebp - 0x830]
mov dword [ebp - 0x7a0], eax
movzx eax, di
mov dword [ebp - 0x810], eax
jmp 0x49a196
mov ecx, dword [ebp - 0x7cc]
test al, al
je 0x499f83
test byte [ecx + 8], 0x80
je 0x499f83
movsx eax, dx
xor ecx, ecx
add eax, 0xfffffff8
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.00560858
mov esi, eax
add esp, 4
mov eax, dword [ebp - 0x79c]
mov edx, esi
mov dword [ebp - 0x7d4], esi
push dword [ebp - 0x844]
movzx edi, byte [eax + 0x7ee]
movzx ecx, byte [eax + 0x7ef]
shl edi, 8
or edi, ecx
movzx ecx, byte [eax + 0x7f0]
mov eax, dword [ebp - 0x7cc]
shl edi, 8
or edi, ecx
mov dword [ebp - 0x870], edi
mov cx, word [eax + 8]
shr cx, 0xb
movzx eax, cx
mov dword [ebp - 0x828], eax
movzx eax, cx
mov ecx, dword [ebp - 0x884]
push eax
mov dword [ebp - 0x8a8], eax
call fcn.0040a350
mov eax, dword [ebp - 0x798]
add esp, 8
movss xmm0, dword [ebp - 0x7a4]
mov eax, dword [eax + 0xc]
push 1
push ecx
movss dword [esp], xmm0
mov ecx, esi
push dword [ebp - 0x844]
mov eax, dword [eax + 0x3ec]
mov edx, eax
push dword [ebp - 0x7f8]
mov dword [ebp - 0x7c0], eax
push dword [ebp - 0x898]
call fcn.0040ec40
mov eax, dword [ebp - 0x824]
add esp, 0x14
xor esi, esi
test eax, eax
jle 0x499e02
mov edi, dword [ebp - 0x7c0]
xor eax, eax
mov ecx, dword [ebp - 0x7b4]
push eax
movss xmm0, dword [ecx + eax*4]
lea ecx, [edi + 0x100]
movss dword [ebp - 0x7e4], xmm0
call fcn.00410b00
movss xmm0, dword [ebp - 0x7e4]
inc esi
movss xmm4, dword [ebp - 0x7a4]
divss xmm0, xmm4
movss dword [eax], xmm0
movsx eax, si
cmp eax, dword [ebp - 0x824]
jl 0x499db1
mov edi, dword [ebp - 0x870]
mov eax, dword [ebp - 0x824]
jmp 0x499e0a
movss xmm4, dword [ebp - 0x7a4]
movss xmm5, dword [ebp - 0x7fc]
mov ecx, dword [ebp - 0x79c]
movsd xmm1, qword [ebp - 0x8a0]
cvtps2pd xmm2, xmm5
mov esi, dword [ebp - 0x7d4]
push edi
push eax
push esi
sub esp, 0xc
cmp word [ebp - 0x828], 8
subsd xmm1, qword [ecx + 0x278]
mulsd xmm2, qword [ecx + 0x708]
lea eax, [ebx + 0x64]
mov ecx, dword [ebp - 0x7b4]
movss xmm3, dword [ebp - 0x834]
cvtps2pd xmm3, xmm3
movss xmm0, dword [ecx]
cvtps2pd xmm0, xmm0
mulsd xmm3, qword [ebp - 0x960]
mulsd xmm1, xmm0
movss xmm0, dword [ebp - 0x7c4]
divsd xmm2, qword [ebp - 0x8a0]
divsd xmm1, qword [ebp - 0x9c0]
cvtps2pd xmm0, xmm0
movss dword [esp + 8], xmm4
addsd xmm1, xmm0
cvtpd2ps xmm1, xmm1
ja 0x499ec3
movss xmm0, dword [ebp - 0x7bc]
subss xmm0, xmm5
cvtps2pd xmm0, xmm0
addsd xmm0, xmm2
addsd xmm0, xmm3
cvtpd2ps xmm0, xmm0
movss dword [esp + 4], xmm0
movss dword [esp], xmm1
push 8
jmp 0x499eef
movss xmm0, dword [ebp - 0x85c]
addss xmm0, dword [ebp - 0x7bc]
cvtps2pd xmm0, xmm0
addsd xmm0, xmm2
subsd xmm0, xmm3
cvtpd2ps xmm0, xmm0
movss dword [esp + 4], xmm0
movss dword [esp], xmm1
push 0
push ecx
mov ecx, esp
push eax
call fcn.0043ce00
push ecx
mov ecx, esp
push dword [ebp - 0x80c]
call fcn.004a86c0
push ecx
mov ecx, esp
push dword [ebp - 0x808]
call fcn.004a86c0
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
mov ecx, dword [ebp - 0x7c0]
xor edx, edx
call fcn.0043a210
mov edx, dword [ebp - 0x79c]
push esi
movzx ecx, byte [edx + 0x7e8]
movzx eax, byte [edx + 0x7e9]
shl ecx, 8
or ecx, eax
movzx eax, byte [edx + 0x7ea]
shl ecx, 8
or ecx, eax
mov dword [ebp - 0x83c], ecx
call fcn.00560853
movss xmm1, dword [ebp - 0x7d0]
add esp, 4
movsd xmm2, qword [ebp - 0x7e0]
mov edi, dword [ebp - 0x800]
mov esi, dword [ebp - 0x79c]
mov ecx, dword [ebp - 0x7cc]
mov al, byte [esi + 0x6fc]
test al, al
je 0x49a069
movzx ecx, word [ecx + 8]
test ecx, 0x100
je 0x49a069
movss xmm0, dword [ebp - 0x7fc]
sub esp, 8
cvtps2pd xmm0, xmm0
shr cx, 0xb
movzx ecx, cx
mov dword [ebp - 0x8a8], ecx
movsd qword [esp], xmm2
mulsd xmm0, qword [esi + 0x710]
push esi
mov esi, dword [ebp - 0x824]
divsd xmm0, qword [ebp - 0x8a0]
cvttsd2si eax, xmm0
movzx eax, ax
push eax
mov eax, dword [ebp - 0x7cc]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xa80]
imul eax, esi
movd xmm0, eax
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm2
cvtpd2ps xmm0, xmm0
addss xmm0, xmm1
cvttss2si eax, xmm0
movss xmm0, dword [ebp - 0x7a4]
push eax
cvttss2si eax, dword [ebp - 0x7c4]
push eax
lea eax, [ebp - 0x6d4]
push eax
push ecx
sub esp, 8
lea eax, [ebx + 0x64]
mov ecx, esp
movss dword [esp + 4], xmm0
push eax
call fcn.0043ce00
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
push ecx
lea eax, [ebx + 0x5c]
mov ecx, esp
push eax
call fcn.0043ce00
mov ecx, dword [ebp - 0x7f4]
call fcn.004ea7b0
mov ecx, dword [ebp - 0x79c]
mov al, byte [ecx + 0x6fc]
jmp 0x49a075
mov ecx, dword [ebp - 0x79c]
mov esi, dword [ebp - 0x824]
mov edx, dword [ebp - 0x830]
mov dword [ebp - 0x7a0], edx
movzx edx, di
mov dword [ebp - 0x810], edx
test al, al
je 0x49a190
mov eax, dword [ebp - 0x830]
movzx edx, di
mov dword [ebp - 0x810], edx
mov edx, dword [ebp - 0x794]
mov dword [ebp - 0x7a0], eax
test dword [edx], 0x40000
jne 0x49a190
mov edx, dword [ebp - 0x7cc]
mov dword [ebp - 0x7a0], eax
movzx eax, di
mov dword [ebp - 0x810], eax
mov eax, 0x400
test word [edx + 8], ax
je 0x49a190
movss xmm0, dword [ebp - 0x7fc]
sub esp, 8
cvtps2pd xmm0, xmm0
movsd xmm1, qword [ebp - 0x7e0]
mulsd xmm0, qword [ecx + 0x710]
movsd qword [esp], xmm1
push ecx
divsd xmm0, qword [ebp - 0x8a0]
cvttsd2si eax, xmm0
movzx eax, ax
push eax
mov eax, dword [edx + 0xc]
mov eax, dword [eax + 0xa80]
imul eax, esi
movd xmm0, eax
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
addss xmm0, dword [ebp - 0x7d0]
cvttss2si eax, xmm0
push eax
cvttss2si eax, dword [ebp - 0x7c4]
push eax
lea eax, [ebp - 0x6d4]
push eax
push dword [ebp - 0x8a8]
lea eax, [ebx + 0x64]
push ecx
mov ecx, esp
push eax
call fcn.0043ce00
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
movss xmm3, dword [ebp - 0x7a4]
mov ecx, dword [ebp - 0x7f4]
call fcn.004eb6f0
mov eax, dword [ebp - 0x830]
mov dword [ebp - 0x7a0], eax
movzx eax, di
mov dword [ebp - 0x810], eax
mov esi, dword [ebp - 0x79c]
movss xmm2, dword [ebp - 0x7ac]
movss xmm4, dword [ebp - 0x7a8]
mov cl, byte [ebp - 0x785]
mov edi, dword [ebp - 0x790]
mov eax, dword [ebp - 0x794]
movss dword [ebp - 0x824], xmm2
movss dword [ebp - 0x854], xmm2
jmp 0x49d3b0
movss xmm4, dword [ebp - 0x7a8]
mov esi, dword [ebp - 0x79c]
mov cl, byte [ebp - 0x785]
mov edi, dword [ebp - 0x790]
mov byte [ebp - 0x92e], 1
jmp 0x49d3a8
cmp word [ebp - 0x84c], 0x40
jne 0x49ab8a
cmp di, 2
jne 0x49ab8a
mov edx, dword [ebp - 0x7e8]
movzx eax, word [edx + 2]
mov ecx, eax
cmp ax, word [ebp - 0xa4c]
je 0x49a23f
cmp ax, word [ebp - 0xa50]
je 0x49a23f
cmp ax, word [ebp - 0xa80]
je 0x49a23f
cmp ax, word [ebp - 0xa8c]
jne 0x49ab84
mov edi, 2
mov dword [ebp - 0x7d4], edi
sub eax, 0x3099
je 0x49a275
sub eax, 1
je 0x49a26e
mov eax, ecx
mov ecx, 0x309b
cmp ax, cx
je 0x49a27e
mov ecx, 0x309c
cmp ax, cx
jne 0x49a289
jmp 0x49a27e
mov eax, 0x309c
jmp 0x49a27a
mov eax, 0x309b
mov word [edx + 2], ax
mov edi, 1
mov dword [ebp - 0x7d4], edi
mov eax, dword [ebp - 0x7a0]
movss xmm0, dword [ebp - 0x7a4]
mov dword [ebp - 0x830], eax
mov eax, dword [ebp - 0x798]
push 1
push ecx
mov ecx, dword [ebp - 0x7e8]
mov eax, dword [eax + 0xc]
movss dword [esp], xmm0
push edi
push dword [ebp - 0x7f8]
mov esi, dword [eax + 0x428]
mov edx, esi
push dword [ebp - 0x7b4]
mov byte [ebp - 0x85d], 0
mov dword [ebp - 0x7e4], esi
call fcn.0040ec40
mov edx, dword [ebp - 0x7b4]
add esp, 0x14
movaps xmm3, xmm0
movss dword [ebp - 0x7d0], xmm3
cmp edi, 1
jne 0x49a309
movss xmm0, dword [edx]
mulss xmm0, dword [0x5ea4cc]
movss dword [edx + 4], xmm0
movss dword [edx], xmm0
cmp dword [ebp - 0x7ec], 0
mov ecx, dword [ebp - 0x818]
mov eax, dword [ebp - 0x814]
movss xmm1, dword [ebp - 0x834]
mulss xmm1, dword [0x5ea4cc]
movd xmm2, dword [ecx + 8]
movd xmm0, dword [eax]
cvtdq2ps xmm2, xmm2
cvtdq2ps xmm0, xmm0
subss xmm2, dword [ebp - 0x864]
movss dword [ebp - 0x800], xmm1
addss xmm2, xmm1
subss xmm2, xmm0
movss xmm0, dword [ebp - 0x7a8]
subss xmm0, xmm1
movd xmm1, dword [ecx + 4]
cvtdq2ps xmm1, xmm1
movss dword [ebp - 0x870], xmm0
addss xmm1, xmm0
movss dword [ebp - 0x7c4], xmm2
movd xmm0, dword [eax + 4]
cvtdq2ps xmm0, xmm0
subss xmm1, xmm0
cvttss2si eax, xmm1
movaps xmm0, xmm1
movss dword [ebp - 0x7bc], xmm1
mov dword [ebp - 0x6ac], eax
mov dword [ebp - 0x828], eax
mov eax, dword [ebp - 0x798]
mov eax, dword [eax + 0xc]
addss xmm0, dword [eax + 0xb94]
cvttss2si eax, xmm0
movaps xmm0, xmm3
mov dword [ebp - 0x6a4], eax
addss xmm0, xmm2
cvttss2si eax, xmm2
mov dword [ebp - 0x6b0], eax
cvttss2si eax, xmm0
mov dword [ebp - 0x6a8], eax
je 0x49a4ae
mov eax, dword [ebp - 0x8f0]
mov edi, dword [ebp - 0x7ec]
cwde
lea esi, [eax + 2]
nop
movzx ecx, word [edi + 4]
movsx eax, cx
cmp esi, eax
jle 0x49a4a2
mov eax, dword [ebp - 0x88c]
test eax, eax
je 0x49a416
cmp edi, eax
je 0x49a412
cmp dword [edi + 8], eax
jne 0x49a416
mov al, 1
jmp 0x49a418
xor al, al
push dword [ebp - 0x79c]
push edx
push eax
lea eax, [ebp - 0x6b0]
push eax
movzx eax, word [edi + 6]
push eax
push ecx
push 2
push dword [ebp - 0x8f0]
lea eax, [ebx + 0x64]
sub esp, 0xc
mov ecx, esp
movss dword [esp + 8], xmm1
movss dword [esp + 4], xmm2
push eax
call fcn.0043ce00
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
movss xmm3, dword [ebp - 0x7a4]
mov ecx, dword [ebp - 0x7f4]
call fcn.004a7c00
movsx ecx, word [edi + 6]
movsx eax, word [edi + 4]
movss xmm2, dword [ebp - 0x7c4]
add ecx, eax
movss xmm1, dword [ebp - 0x7bc]
cmp esi, ecx
jl 0x49a4a2
mov edi, dword [edi]
mov edx, dword [ebp - 0x7b4]
mov dword [ebp - 0x7ec], edi
test edi, edi
jne 0x49a3f0
mov edi, dword [ebp - 0x7d4]
mov esi, dword [ebp - 0x7e4]
push dword [ebp - 0x83c]
movss xmm0, dword [ebp - 0x7a4]
lea eax, [ebx + 0x64]
push edi
push dword [ebp - 0x7e8]
sub esp, 0xc
movss dword [esp + 8], xmm0
movss dword [esp + 4], xmm1
movss dword [esp], xmm2
push 0
push ecx
mov ecx, esp
push eax
call fcn.0043ce00
push ecx
mov ecx, esp
push dword [ebp - 0x80c]
call fcn.004a86c0
push ecx
mov ecx, esp
push dword [ebp - 0x808]
call fcn.004a86c0
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
xor edx, edx
mov ecx, esi
call fcn.0043a210
cmp edi, 1
jne 0x49a639
mov ecx, dword [ebp - 0x7e8]
mov edx, 0x3095
movss xmm0, dword [ebp - 0x7ac]
movss dword [ebp - 0x7d4], xmm0
movzx eax, word [ecx]
cmp ax, dx
je 0x49a560
mov edx, 0x30f5
cmp ax, dx
je 0x49a560
mov edx, 0x3063
cmp ax, dx
je 0x49a560
mov edx, 0x31f7
cmp ax, dx
jne 0x49a578
movss xmm0, dword [ebp - 0x7fc]
divss xmm0, dword [0x5ea6b4]
movss dword [ebp - 0x7d4], xmm0
movss xmm0, dword [ebp - 0x7a4]
lea edi, [ecx + 2]
push 1
push ecx
movss dword [esp], xmm0
mov edx, esi
push 1
push dword [ebp - 0x7f8]
mov ecx, edi
push dword [ebp - 0x898]
call fcn.0040ec40
movss xmm0, dword [ebp - 0x7a4]
lea eax, [ebx + 0x64]
add esp, 0x14
push dword [ebp - 0x83c]
push 1
push edi
sub esp, 0xc
movss dword [esp + 8], xmm0
movss xmm0, dword [ebp - 0x7d4]
addss xmm0, dword [ebp - 0x7bc]
movss dword [esp + 4], xmm0
movss xmm0, dword [ebp - 0x7fc]
mulss xmm0, dword [0x5ea608]
mulss xmm0, dword [0x5ea4c8]
addss xmm0, dword [ebp - 0x7c4]
movss dword [esp], xmm0
push 0
push ecx
mov ecx, esp
push eax
call fcn.0043ce00
push ecx
mov ecx, esp
push dword [ebp - 0x80c]
call fcn.004a86c0
push ecx
mov ecx, esp
push dword [ebp - 0x808]
call fcn.004a86c0
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
xor edx, edx
mov ecx, esi
call fcn.0043a210
cmp byte [ebp - 0x8a4], 0
mov ecx, dword [ebp - 0x798]
mov dword [ebp - 0x7cc], ecx
mov eax, dword [ecx + 0xc]
movss xmm0, dword [eax + 0xb94]
subss xmm0, dword [ebp - 0x800]
mov eax, dword [ebp - 0x830]
mov dword [ebp - 0x7a0], eax
addss xmm0, dword [ebp - 0x870]
movss dword [ebp - 0x7a8], xmm0
je 0x49a6d2
mov eax, dword [ebp - 0x818]
movd xmm1, dword [eax + 8]
mov eax, dword [ebp - 0x814]
cvtdq2ps xmm1, xmm1
movd xmm0, dword [eax]
xor eax, eax
subss xmm1, dword [ebp - 0x81c]
cvtdq2ps xmm0, xmm0
mov dword [ebp - 0x810], eax
mov byte [ebp - 0x8a4], al
mov byte [ebp - 0x785], al
subss xmm1, xmm0
movss xmm0, dword [ebp - 0x7bc]
movss dword [ebp - 0x8b0], xmm0
movss dword [ebp - 0x888], xmm1
jmp 0x49a6d8
mov eax, dword [ebp - 0x810]
mov edx, dword [ebp - 0x850]
mov edi, 2
mov esi, dword [ebp - 0x890]
mov ecx, dword [ebp - 0x7e8]
cwde
lea edx, [edx + eax*4]
mov dword [ebp - 0x7e4], edx
lea esi, [esi + eax*2]
nop dword [eax]
mov ax, word [ecx]
lea edx, [edx + 4]
mov word [esi], ax
lea ecx, [ecx + 2]
mov dword [edx - 4], 0
lea esi, [esi + 2]
sub edi, 1
jne 0x49a700
mov edx, dword [ebp - 0x798]
mov ecx, dword [ebp - 0x7e4]
mov edi, dword [ebp - 0x79c]
add dword [ebp - 0x810], 2
mov eax, dword [edx + 0xc]
mov eax, dword [eax + 0xb94]
mov dword [ecx], eax
cmp byte [edi + 0x6fb], 0
mov ecx, dword [ebp - 0x794]
je 0x49a9a8
test byte [edx + 8], 0x80
je 0x49a9a8
test byte [ecx], 0x20
jne 0x49a9a8
push 2
call fcn.00560858
mov edx, dword [ebp - 0x79c]
add esp, 4
movzx edi, byte [edi + 0x7ee]
shl edi, 8
mov dword [ebp - 0x844], eax
movzx ecx, byte [edx + 0x7ef]
or edi, ecx
movzx ecx, byte [edx + 0x7f0]
shl edi, 8
mov edx, eax
or edi, ecx
mov ecx, dword [ebp - 0x798]
push 1
mov si, word [ecx + 8]
shr si, 0xb
movzx ecx, si
mov dword [ebp - 0x8a8], ecx
push ecx
mov ecx, str.DUMMY
call fcn.0040a350
mov eax, dword [ebp - 0x798]
add esp, 8
movss xmm0, dword [ebp - 0x7a4]
mov eax, dword [eax + 0xc]
push 1
push ecx
mov ecx, dword [ebp - 0x844]
mov eax, dword [eax + 0x3ec]
mov edx, eax
movss dword [esp], xmm0
push 1
push dword [ebp - 0x7f8]
mov dword [ebp - 0x7c0], eax
push dword [ebp - 0x898]
call fcn.0040ec40
mov eax, dword [ebp - 0x7b4]
add esp, 0x14
mov ecx, dword [ebp - 0x7c0]
add ecx, 0x100
movss xmm0, dword [eax]
push 0
movss dword [ebp - 0x7e4], xmm0
call fcn.00410b00
movss xmm0, dword [ebp - 0x7e4]
movss xmm3, dword [ebp - 0x7a4]
divss xmm0, xmm3
mov ecx, dword [ebp - 0x7b4]
push edi
push 1
movsd xmm1, qword [ebp - 0x8a0]
movss dword [eax], xmm0
mov eax, dword [ebp - 0x79c]
movss xmm0, dword [ecx]
cvtps2pd xmm0, xmm0
subsd xmm1, qword [eax + 0x278]
movss xmm4, dword [ebp - 0x7fc]
push dword [ebp - 0x844]
movss xmm2, dword [ebp - 0x834]
sub esp, 0xc
mulsd xmm1, xmm0
movss xmm0, dword [ebp - 0x7bc]
movss dword [esp + 8], xmm3
cvtps2pd xmm0, xmm0
divsd xmm1, qword [ebp - 0x9c0]
cvtps2pd xmm2, xmm2
addsd xmm1, xmm0
cvtpd2ps xmm0, xmm1
cvtps2pd xmm1, xmm4
movss dword [esp + 4], xmm0
mulsd xmm1, qword [eax + 0x708]
lea eax, [ebx + 0x64]
divsd xmm1, qword [ebp - 0x8a0]
cmp si, 8
ja 0x49a8f7
mulsd xmm2, qword [ebp - 0xa30]
movaps xmm0, xmm4
addss xmm0, dword [ebp - 0x7c4]
cvtps2pd xmm0, xmm0
subsd xmm0, xmm1
subsd xmm0, xmm2
cvtpd2ps xmm0, xmm0
movss dword [esp], xmm0
push 8
jmp 0x49a925
movss xmm0, dword [ebp - 0x7c4]
subss xmm0, dword [ebp - 0x85c]
mulsd xmm2, qword [ebp - 0x960]
cvtps2pd xmm0, xmm0
subsd xmm0, xmm1
addsd xmm0, xmm2
cvtpd2ps xmm0, xmm0
movss dword [esp], xmm0
push 0
push ecx
mov ecx, esp
push eax
call fcn.0043ce00
push ecx
mov ecx, esp
push dword [ebp - 0x80c]
call fcn.004a86c0
push ecx
mov ecx, esp
push dword [ebp - 0x808]
call fcn.004a86c0
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
mov ecx, dword [ebp - 0x7c0]
xor edx, edx
call fcn.0043a210
mov edi, dword [ebp - 0x79c]
push dword [ebp - 0x844]
movzx ecx, byte [edi + 0x7e8]
movzx eax, byte [edi + 0x7e9]
shl ecx, 8
or ecx, eax
movzx eax, byte [edi + 0x7ea]
shl ecx, 8
or ecx, eax
mov dword [ebp - 0x83c], ecx
call fcn.00560853
mov edx, dword [ebp - 0x798]
add esp, 4
mov ecx, dword [ebp - 0x794]
mov al, byte [edi + 0x6fc]
mov esi, dword [ebp - 0x828]
test al, al
je 0x49ab47
movzx eax, word [edx + 8]
test eax, 0x100
je 0x49aa95
test byte [ecx], 0x20
jne 0x49aa95
movss xmm0, dword [ebp - 0x7fc]
sub esp, 8
cvtps2pd xmm0, xmm0
shr ax, 0xb
movzx ecx, ax
mov dword [ebp - 0x8a8], ecx
movsd xmm1, qword [ebp - 0x7e0]
mulsd xmm0, qword [edi + 0x710]
movsd qword [esp], xmm1
push edi
divsd xmm0, qword [ebp - 0x8a0]
cvttsd2si eax, xmm0
movzx eax, ax
push eax
mov eax, dword [edx + 0xc]
movd xmm0, dword [eax + 0xa80]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
addss xmm0, dword [eax + 0xb94]
cvttss2si eax, xmm0
movss xmm0, dword [ebp - 0x7a4]
push eax
push esi
lea eax, [ebp - 0x6d4]
push eax
push ecx
sub esp, 8
lea eax, [ebx + 0x64]
mov ecx, esp
movss dword [esp + 4], xmm0
push eax
call fcn.0043ce00
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
push ecx
lea eax, [ebx + 0x5c]
mov ecx, esp
push eax
call fcn.0043ce00
mov ecx, dword [ebp - 0x7f4]
call fcn.004eb070
mov al, byte [edi + 0x6fc]
test al, al
je 0x49ab47
mov edx, dword [ebp - 0x798]
mov eax, dword [ebp - 0x794]
test dword [eax], 0x40000
jne 0x49ab4d
mov ecx, 0x400
test word [edx + 8], cx
je 0x49ab4d
movss xmm0, dword [ebp - 0x7fc]
sub esp, 8
cvtps2pd xmm0, xmm0
movsd xmm1, qword [ebp - 0x7e0]
mulsd xmm0, qword [edi + 0x710]
movsd qword [esp], xmm1
push edi
divsd xmm0, qword [ebp - 0x8a0]
cvttsd2si eax, xmm0
movzx eax, ax
push eax
mov eax, dword [edx + 0xc]
movd xmm0, dword [eax + 0xa80]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
addss xmm0, dword [ebp - 0x7d0]
cvttss2si eax, xmm0
push eax
push esi
lea eax, [ebp - 0x6d4]
push eax
push dword [ebp - 0x8a8]
lea eax, [ebx + 0x64]
push ecx
mov ecx, esp
push eax
call fcn.0043ce00
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
movss xmm3, dword [ebp - 0x7a4]
mov ecx, dword [ebp - 0x7f4]
call fcn.004ebb20
mov eax, dword [ebp - 0x794]
movss xmm2, dword [ebp - 0x7ac]
movss xmm4, dword [ebp - 0x7a8]
mov esi, dword [ebp - 0x79c]
mov cl, byte [ebp - 0x785]
mov edi, dword [ebp - 0x790]
movss dword [ebp - 0x824], xmm2
movss dword [ebp - 0x854], xmm2
jmp 0x49d3b0
mov ecx, dword [ebp - 0x7cc]
mov edx, dword [ebp - 0x7e8]
mov eax, 0xff3b
test ecx, ecx
je 0x49bffb
cmp di, 0xf
jl 0x49bffb
cmp si, ax
jne 0x49bffb
mov eax, 0xff03
cmp word [edx + 2], ax
lea eax, [edx + 4]
jne 0x49bf06
mov esi, 0x300c
cmp word [eax], si
movzx esi, word [edx]
jne 0x49bf06
movsx eax, di
mov ecx, 0x300d
cmp word [edx + eax*2 - 0x18], cx
jne 0x49ac13
mov esi, 0x306f
cmp word [edx + eax*2 - 0x16], si
movzx esi, word [edx]
jne 0x49ac13
mov esi, 0xff11
cmp word [edx + eax*2 - 0x14], si
movzx esi, word [edx]
jne 0x49bf03
mov esi, 0xff10
cmp word [edx + eax*2 - 0x12], si
movzx esi, word [edx]
je 0x49ac36
mov edi, ecx
cmp word [edx + eax*2 - 0x16], di
mov edi, dword [ebp - 0x790]
jne 0x49bf03
mov ecx, 0x306f
cmp word [edx + eax*2 - 0x14], cx
jne 0x49bf03
mov ecx, 0x6bb5
cmp word [edx + eax*2 - 0x10], cx
jne 0x49bf03
mov esi, 0x968e
cmp word [edx + eax*2 - 0xe], si
movzx esi, word [edx]
jne 0x49bf03
mov ecx, 0x5927
cmp word [edx + eax*2 - 0xc], cx
jne 0x49bf03
mov edi, 0x304d
cmp word [edx + eax*2 - 0xa], di
mov edi, dword [ebp - 0x790]
jne 0x49bf03
mov esi, 0x306a
cmp word [edx + eax*2 - 8], si
movzx esi, word [edx]
jne 0x49bf03
mov esi, 0x6587
cmp word [edx + eax*2 - 6], si
movzx esi, word [edx]
jne 0x49bf03
mov esi, 0x5b57
cmp word [edx + eax*2 - 4], si
movzx esi, word [edx]
jne 0x49bf03
mov ecx, 0xff3d
cmp word [edx + eax*2 - 2], cx
jne 0x49bf03
mov ecx, dword [ebp - 0x794]
test byte [ecx], 0x20
jne 0x49beeb
mov cx, word [edx + eax*2 - 0x12]
call fcn.0040d690
movzx esi, ax
lea eax, [edi - 0xf]
mov ecx, esi
mov dword [ebp - 0x7d4], ecx
cmp si, 9
je 0x49acf8
lea eax, [edi - 0xe]
cmp word [ebp - 0x8ac], 0
movzx edi, ax
mov dword [ebp - 0x7b8], edi
jne 0x49ae23
cmp dword [ebp - 0x908], 0
je 0x49ae23
mov eax, dword [ebp - 0x794]
test dword [eax], 0x200
je 0x49ad2d
add esi, 0xa
movsd xmm0, qword [ebp - 0xa20]
lea eax, [ebx + 0x64]
sub esp, 0x14
movsd qword [esp + 0xc], xmm0
movsd xmm0, qword [ebp - 0xa28]
movsd qword [esp + 4], xmm0
movss xmm0, dword [ebp - 0x7a4]
movss dword [esp], xmm0
push dword [ebp - 0x984]
push ecx
mov ecx, esp
push eax
call fcn.0043ce00
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
push ecx
lea eax, [ebx + 0x5c]
mov ecx, esp
push eax
call fcn.0043ce00
push dword [ebp - 0x808]
lea eax, [esi + 1]
mov ecx, dword [ebp - 0x7f4]
push dword [ebp - 0x80c]
mov esi, dword [ebp - 0x79c]
push dword [ebx + 0x50]
push dword [ebp - 0x910]
push dword [ebp - 0x798]
push dword [ebp - 0x908]
push eax
push dword [ebp - 0x980]
lea eax, [ebp - 0x6dc]
push dword [ebp - 0x9a0]
push dword [ebp - 0x990]
push eax
lea eax, [ebp - 0x6e0]
push eax
lea eax, [ebp - 0x6e4]
push eax
lea eax, [ebp - 0x6d8]
push eax
push esi
push dword [ebp - 0x88c]
push dword [ebp - 0x98c]
push dword [ebp - 0x814]
push dword [ebp - 0x94c]
push dword [ebp - 0x874]
push dword [ebp - 0x818]
call fcn.00487d00
movss dword [ebp - 0x7a8], xmm0
mov dword [ebp - 0x908], 0
jmp 0x49b9e7
mov edx, dword [ebp - 0x794]
mov eax, dword [ebp - 0x798]
mov byte [ebp - 0x85d], 0
movsx ecx, cx
test dword [edx], 0x200
mov eax, dword [eax + 0xc]
je 0x49ae4d
mov esi, dword [eax + ecx*4 + 0x5e4]
jmp 0x49ae54
mov esi, dword [eax + ecx*4 + 0x4f4]
movss xmm0, dword [ebp - 0x7a4]
mov edx, esi
push 1
push ecx
mov ecx, dword [ebp - 0x884]
movss dword [esp], xmm0
push edi
push dword [ebp - 0x7f8]
mov dword [ebp - 0x7c0], esi
push dword [ebp - 0x7b4]
call fcn.0040ec40
mov eax, dword [ebp - 0x798]
add esp, 0x14
mov ecx, dword [ebp - 0x7f8]
movss dword [ebp - 0x7d0], xmm0
mov eax, dword [eax + 0xc]
movd xmm0, dword [eax + 0xa80]
mov eax, dword [ebp - 0x7b4]
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0x7e0]
cvtpd2ps xmm0, xmm0
addss xmm0, dword [eax]
movss dword [eax], xmm0
push dword [ecx]
lea ecx, [esi + 0x100]
call fcn.00410b00
mov ecx, dword [ebp - 0x798]
movss xmm1, dword [ebp - 0x7a4]
movsd xmm2, qword [ebp - 0x7e0]
cvtps2pd xmm1, xmm1
mov ecx, dword [ecx + 0xc]
add ecx, 0xa80
movd xmm0, dword [ecx]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm2
divsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
addss xmm0, dword [eax]
movss dword [eax], xmm0
mov eax, 1
cmp ax, di
jge 0x49afbc
mov eax, dword [ebp - 0x7b4]
mov edx, dword [ebp - 0x7f8]
sub edx, eax
mov dword [ebp - 0x7e4], edx
lea esi, [eax + 4]
lea eax, [edi - 1]
movzx edi, ax
jmp 0x49af48
movsd xmm2, qword [ebp - 0x7e0]
movd xmm0, dword [ecx]
mov ecx, dword [ebp - 0x7c0]
cvtdq2pd xmm0, xmm0
lea ecx, [ecx + 0x100]
mulsd xmm0, xmm2
cvtpd2ps xmm0, xmm0
addss xmm0, dword [esi]
movss dword [esi], xmm0
push dword [edx + esi]
call fcn.00410b00
mov ecx, dword [ebp - 0x798]
add esi, 4
movss xmm2, dword [ebp - 0x7a4]
cvtps2pd xmm1, xmm2
mov edx, dword [ebp - 0x7e4]
mov ecx, dword [ecx + 0xc]
add ecx, 0xa80
movd xmm0, dword [ecx]
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0x7e0]
divsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
addss xmm0, dword [eax]
movss dword [eax], xmm0
sub edi, 1
jne 0x49af40
mov ecx, dword [ebp - 0x7d4]
movss xmm4, dword [ebp - 0x85c]
mov esi, dword [ebp - 0x818]
movsx eax, cx
inc eax
cmp word [ebp - 0x84c], 0x40
cvtps2pd xmm4, xmm4
movd xmm3, eax
mov eax, dword [ebp - 0x814]
cvtdq2pd xmm3, xmm3
mulsd xmm3, qword [ebp - 0x9f0]
addsd xmm3, qword [ebp - 0x9d8]
mulsd xmm4, xmm3
jne 0x49b1ae
movd xmm5, dword [esi + 8]
movd xmm0, dword [eax]
mov ecx, dword [esi + 4]
mov edx, dword [eax + 4]
cvtdq2ps xmm0, xmm0
cvtdq2ps xmm5, xmm5
movd xmm6, ecx
sub ecx, edx
subss xmm5, dword [ebp - 0x81c]
cvtdq2ps xmm6, xmm6
mov dword [ebp - 0x6ac], ecx
mov ecx, dword [ebp - 0x7ec]
subss xmm5, xmm0
movd xmm0, edx
addss xmm6, dword [ebp - 0x7a8]
cvtdq2ps xmm0, xmm0
movss dword [ebp - 0x7c4], xmm5
subss xmm6, xmm0
cvtps2pd xmm2, xmm5
movss dword [ebp - 0x7bc], xmm6
movaps xmm0, xmm2
subsd xmm0, xmm4
cvttsd2si eax, xmm0
movd xmm0, edx
mov dword [ebp - 0x6b0], eax
movd xmm1, dword [esi + 0xc]
cvtdq2ps xmm1, xmm1
cvtdq2ps xmm0, xmm0
subss xmm1, dword [ebp - 0x964]
subss xmm1, xmm0
movss xmm0, dword [ebp - 0x7fc]
cvtps2pd xmm0, xmm0
cvttss2si eax, xmm1
mulsd xmm0, xmm3
mov dword [ebp - 0x6a4], eax
addsd xmm0, xmm2
cvttsd2si eax, xmm0
mov dword [ebp - 0x6a8], eax
test ecx, ecx
je 0x49b341
mov eax, dword [ebp - 0x7cc]
movsx edi, word [ebp - 0x868]
movzx esi, word [eax + 4]
movsx edx, si
add edx, edi
movzx ecx, word [ecx + 4]
movsx eax, cx
cmp edx, eax
jle 0x49b341
mov eax, dword [ebp - 0x88c]
mov edx, dword [ebp - 0x7ec]
test eax, eax
je 0x49b100
cmp edx, eax
je 0x49b0fc
cmp dword [edx + 8], eax
jne 0x49b100
mov al, 1
jmp 0x49b102
xor al, al
push dword [ebp - 0x79c]
push dword [ebp - 0x7b4]
push eax
lea eax, [ebp - 0x6b0]
push eax
movzx eax, word [edx + 6]
push eax
push ecx
push esi
push dword [ebp - 0x868]
lea eax, [ebx + 0x64]
sub esp, 0xc
mov ecx, esp
movss dword [esp + 8], xmm6
movss dword [esp + 4], xmm5
push eax
call fcn.0043ce00
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
movss xmm3, dword [ebp - 0x7a4]
mov ecx, dword [ebp - 0x7f4]
call fcn.004a8160
mov eax, dword [ebp - 0x7cc]
movss xmm5, dword [ebp - 0x7c4]
movss xmm6, dword [ebp - 0x7bc]
movzx esi, word [eax + 4]
mov eax, dword [ebp - 0x7ec]
movsx edx, si
add edx, edi
movsx ecx, word [eax + 6]
movsx eax, word [eax + 4]
add ecx, eax
cmp edx, ecx
jl 0x49b341
mov ecx, dword [ebp - 0x7ec]
mov ecx, dword [ecx]
mov dword [ebp - 0x7ec], ecx
test ecx, ecx
jne 0x49b0d4
jmp 0x49b341
movd xmm6, dword [esi + 4]
movd xmm0, dword [eax + 4]
mov ecx, dword [eax]
mov edx, dword [esi]
cvtdq2ps xmm6, xmm6
cvtdq2ps xmm0, xmm0
addss xmm6, dword [ebp - 0x81c]
movd xmm5, edx
sub edx, ecx
mov dword [ebp - 0x6b0], edx
movd xmm2, ecx
cvtdq2ps xmm2, xmm2
mov ecx, dword [ebp - 0x7ec]
subss xmm6, xmm0
cvtdq2ps xmm5, xmm5
movss dword [ebp - 0x7bc], xmm6
cvtps2pd xmm1, xmm6
addss xmm5, dword [ebp - 0x7a8]
addsd xmm4, xmm1
subss xmm5, xmm2
cvttsd2si eax, xmm4
movss dword [ebp - 0x7c4], xmm5
mov dword [ebp - 0x6a4], eax
movd xmm0, dword [esi + 8]
cvtdq2ps xmm0, xmm0
subss xmm0, dword [ebp - 0x964]
subss xmm0, xmm2
cvttss2si eax, xmm0
movss xmm0, dword [ebp - 0x7fc]
mov dword [ebp - 0x6a8], eax
cvtps2pd xmm0, xmm0
mulsd xmm0, xmm3
subsd xmm1, xmm0
cvttsd2si eax, xmm1
mov dword [ebp - 0x6ac], eax
test ecx, ecx
je 0x49b341
mov eax, dword [ebp - 0x7cc]
movsx edi, word [ebp - 0x868]
movzx esi, word [eax + 4]
movsx edx, si
add edx, edi
movzx ecx, word [ecx + 4]
movsx eax, cx
cmp edx, eax
jle 0x49b341
mov eax, dword [ebp - 0x88c]
mov edx, dword [ebp - 0x7ec]
test eax, eax
je 0x49b29c
cmp edx, eax
je 0x49b298
cmp dword [edx + 8], eax
jne 0x49b29c
mov al, 1
jmp 0x49b29e
xor al, al
push dword [ebp - 0x79c]
push dword [ebp - 0x7b4]
push eax
lea eax, [ebp - 0x6b0]
push eax
movzx eax, word [edx + 6]
push eax
push ecx
push esi
push dword [ebp - 0x868]
lea eax, [ebx + 0x64]
sub esp, 0xc
mov ecx, esp
movss dword [esp + 8], xmm6
movss dword [esp + 4], xmm5
push eax
call fcn.0043ce00
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
movss xmm3, dword [ebp - 0x7a4]
mov ecx, dword [ebp - 0x7f4]
call fcn.004a7c00
mov eax, dword [ebp - 0x7cc]
movss xmm5, dword [ebp - 0x7c4]
movss xmm6, dword [ebp - 0x7bc]
movzx esi, word [eax + 4]
mov eax, dword [ebp - 0x7ec]
movsx edx, si
add edx, edi
movsx ecx, word [eax + 6]
movsx eax, word [eax + 4]
add ecx, eax
cmp edx, ecx
jl 0x49b341
mov ecx, dword [ebp - 0x7ec]
mov ecx, dword [ecx]
mov dword [ebp - 0x7ec], ecx
test ecx, ecx
jne 0x49b270
push dword [ebp - 0x83c]
mov edi, dword [ebp - 0x7b8]
lea eax, [ebx + 0x64]
movss xmm0, dword [ebp - 0x7a4]
movsx esi, di
push esi
push dword [ebp - 0x884]
mov dword [ebp - 0x824], esi
sub esp, 0xc
movss dword [esp + 8], xmm0
movss dword [esp + 4], xmm6
movss dword [esp], xmm5
push 0x18
push ecx
mov ecx, esp
push eax
call fcn.0043ce00
push ecx
mov ecx, esp
push dword [ebp - 0x80c]
call fcn.004a86c0
push ecx
mov ecx, esp
push dword [ebp - 0x808]
call fcn.004a86c0
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
mov ecx, dword [ebp - 0x7c0]
xor edx, edx
call fcn.0043a210
mov ecx, dword [ebp - 0x7cc]
movsd xmm3, qword [ebp - 0x7e0]
movss xmm2, dword [ebp - 0x7d0]
mov eax, dword [ecx + 0xc]
movd xmm1, dword [eax + 0xa80]
movsx eax, word [ecx + 4]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
xor eax, eax
cvtdq2pd xmm0, xmm0
mulsd xmm1, xmm3
mulsd xmm1, xmm0
cvtpd2ps xmm0, xmm1
addss xmm0, xmm2
addss xmm0, dword [ebp - 0x7a8]
movss dword [ebp - 0x7a8], xmm0
cmp byte [ebp - 0x8a4], al
je 0x49b48e
mov byte [ebp - 0x785], 1
mov byte [ebp - 0x8f6], 1
cmp ax, di
jge 0x49b483
mov eax, dword [ebp - 0x7b4]
mov ecx, dword [ebp - 0x850]
sub eax, ecx
mov edx, dword [ebp - 0x890]
mov esi, dword [ebp - 0x884]
mov dword [ebp - 0x7e4], eax
movzx edi, di
nop dword [eax]
mov ax, word [esi]
lea esi, [esi + 2]
mov word [edx], ax
lea edx, [edx + 2]
mov eax, dword [ebp - 0x7e4]
lea ecx, [ecx + 4]
mov eax, dword [eax + ecx - 4]
mov dword [ecx - 4], eax
sub edi, 1
jne 0x49b450
mov esi, dword [ebp - 0x824]
mov edi, dword [ebp - 0x7b8]
mov ecx, dword [ebp - 0x7cc]
movzx eax, di
mov dword [ebp - 0x810], eax
jmp 0x49b50b
cmp ax, di
jge 0x49b505
mov eax, dword [ebp - 0x810]
mov edx, dword [ebp - 0x850]
mov esi, dword [ebp - 0x890]
mov ecx, dword [ebp - 0x7b4]
mov edi, dword [ebp - 0x884]
cwde
lea edx, [edx + eax*4]
lea esi, [esi + eax*2]
mov eax, dword [ebp - 0x7b8]
movzx eax, ax
mov dword [ebp - 0x7d4], eax
nop word [eax + eax]
sub dword [ebp - 0x7d4], 1
lea edi, [edi + 2]
mov ax, word [edi - 2]
lea esi, [esi + 2]
mov word [esi - 2], ax
lea ecx, [ecx + 4]
mov eax, dword [ecx - 4]
lea edx, [edx + 4]
mov dword [edx - 4], eax
jne 0x49b4d0
mov esi, dword [ebp - 0x824]
mov edi, dword [ebp - 0x7b8]
mov ecx, dword [ebp - 0x7cc]
add dword [ebp - 0x810], edi
cmp word [ebp - 0x84c], 0x40
mov edx, dword [ebp - 0x79c]
mov al, byte [edx + 0x6fb]
jne 0x49ba1e
mov edi, dword [ebp - 0x794]
test al, al
je 0x49b809
test byte [ecx + 8], 0x80
je 0x49b809
test byte [edi], 0x20
jne 0x49b809
xor ecx, ecx
mov eax, esi
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.00560858
mov edi, eax
add esp, 4
mov eax, dword [ebp - 0x79c]
mov edx, edi
mov dword [ebp - 0x844], edi
push dword [ebp - 0x7b8]
movzx esi, byte [eax + 0x7ee]
movzx ecx, byte [eax + 0x7ef]
shl esi, 8
or esi, ecx
movzx ecx, byte [eax + 0x7f0]
mov eax, dword [ebp - 0x7cc]
shl esi, 8
or esi, ecx
mov dword [ebp - 0x870], esi
mov cx, word [eax + 8]
shr cx, 0xb
movzx eax, cx
mov dword [ebp - 0x828], eax
movzx eax, cx
mov ecx, dword [ebp - 0x884]
push eax
mov dword [ebp - 0x8a8], eax
call fcn.0040a350
mov eax, dword [ebp - 0x798]
add esp, 8
movss xmm0, dword [ebp - 0x7a4]
mov eax, dword [eax + 0xc]
push 1
push ecx
movss dword [esp], xmm0
mov ecx, edi
push dword [ebp - 0x7b8]
mov eax, dword [eax + 0x3ec]
mov edx, eax
push dword [ebp - 0x7f8]
mov dword [ebp - 0x7c0], eax
push dword [ebp - 0x898]
call fcn.0040ec40
mov eax, dword [ebp - 0x7b8]
xor ecx, ecx
add esp, 0x14
cmp cx, ax
jge 0x49b68b
mov ecx, dword [ebp - 0x7c0]
mov edi, dword [ebp - 0x7b4]
add ecx, 0x100
movzx eax, ax
xor esi, esi
mov dword [ebp - 0x800], ecx
mov dword [ebp - 0x7d4], eax
nop
movss xmm0, dword [edi]
push esi
movss dword [ebp - 0x7e4], xmm0
call fcn.00410b00
movss xmm0, dword [ebp - 0x7e4]
lea edi, [edi + 4]
movss xmm3, dword [ebp - 0x7a4]
inc esi
sub dword [ebp - 0x7d4], 1
divss xmm0, xmm3
mov ecx, dword [ebp - 0x800]
movss dword [eax], xmm0
jne 0x49b640
mov esi, dword [ebp - 0x870]
mov edi, dword [ebp - 0x844]
jmp 0x49b693
movss xmm3, dword [ebp - 0x7a4]
mov ecx, dword [ebp - 0x7b4]
mov eax, dword [ebp - 0x79c]
movsd xmm1, qword [ebp - 0x8a0]
movss xmm4, dword [ebp - 0x7fc]
movss xmm0, dword [ecx]
subsd xmm1, qword [eax + 0x278]
cvtps2pd xmm0, xmm0
push esi
mov esi, dword [ebp - 0x824]
push esi
push edi
sub esp, 0xc
cmp word [ebp - 0x828], 8
movss xmm2, dword [ebp - 0x834]
mulsd xmm1, xmm0
movss xmm0, dword [ebp - 0x7bc]
cvtps2pd xmm0, xmm0
divsd xmm1, qword [ebp - 0x9c0]
movss dword [esp + 8], xmm3
addsd xmm1, xmm0
cvtps2pd xmm2, xmm2
cvtpd2ps xmm0, xmm1
cvtps2pd xmm1, xmm4
movss dword [esp + 4], xmm0
mulsd xmm1, qword [eax + 0x708]
lea eax, [ebx + 0x64]
divsd xmm1, qword [ebp - 0x8a0]
ja 0x49b74b
mulsd xmm2, qword [ebp - 0xa30]
movaps xmm0, xmm4
addss xmm0, dword [ebp - 0x7c4]
cvtps2pd xmm0, xmm0
subsd xmm0, xmm1
subsd xmm0, xmm2
cvtpd2ps xmm0, xmm0
movss dword [esp], xmm0
push 8
jmp 0x49b779
movss xmm0, dword [ebp - 0x7c4]
subss xmm0, dword [ebp - 0x85c]
mulsd xmm2, qword [ebp - 0x960]
cvtps2pd xmm0, xmm0
subsd xmm0, xmm1
addsd xmm0, xmm2
cvtpd2ps xmm0, xmm0
movss dword [esp], xmm0
push 0
push ecx
mov ecx, esp
push eax
call fcn.0043ce00
push ecx
mov ecx, esp
push dword [ebp - 0x80c]
call fcn.004a86c0
push ecx
mov ecx, esp
push dword [ebp - 0x808]
call fcn.004a86c0
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
mov ecx, dword [ebp - 0x7c0]
xor edx, edx
call fcn.0043a210
mov edx, dword [ebp - 0x79c]
push edi
movzx ecx, byte [edx + 0x7e8]
movzx eax, byte [edx + 0x7e9]
shl ecx, 8
or ecx, eax
movzx eax, byte [edx + 0x7ea]
shl ecx, 8
or ecx, eax
mov dword [ebp - 0x83c], ecx
call fcn.00560853
movss xmm2, dword [ebp - 0x7d0]
add esp, 4
movsd xmm3, qword [ebp - 0x7e0]
mov edx, dword [ebp - 0x79c]
mov edi, dword [ebp - 0x794]
jmp 0x49b80f
mov esi, dword [ebp - 0x824]
mov al, byte [edx + 0x6fc]
test al, al
je 0x49b9cf
mov ecx, dword [ebp - 0x7cc]
movzx eax, word [ecx + 8]
test eax, 0x100
je 0x49b90f
test byte [edi], 0x20
jne 0x49b90f
movss xmm0, dword [ebp - 0x7fc]
cvtps2pd xmm0, xmm0
shr ax, 0xb
sub esp, 8
movzx eax, ax
mov dword [ebp - 0x8a8], eax
movsd qword [esp], xmm3
mulsd xmm0, qword [edx + 0x710]
push edx
divsd xmm0, qword [ebp - 0x8a0]
cvttsd2si eax, xmm0
movd xmm0, esi
movzx eax, ax
push eax
mov eax, dword [ecx + 0xc]
cvtdq2pd xmm0, xmm0
movd xmm1, dword [eax + 0xa80]
cvtdq2pd xmm1, xmm1
mulsd xmm1, xmm3
mulsd xmm1, xmm0
cvtpd2ps xmm0, xmm1
addss xmm0, xmm2
cvttss2si eax, xmm0
movss xmm0, dword [ebp - 0x7a4]
push eax
cvttss2si eax, dword [ebp - 0x7bc]
push eax
lea eax, [ebp - 0x6d4]
push eax
push dword [ebp - 0x8a8]
lea eax, [ebx + 0x64]
sub esp, 8
mov ecx, esp
movss dword [esp + 4], xmm0
push eax
call fcn.0043ce00
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
push ecx
lea eax, [ebx + 0x5c]
mov ecx, esp
push eax
call fcn.0043ce00
mov ecx, dword [ebp - 0x7f4]
call fcn.004eb070
mov edx, dword [ebp - 0x79c]
mov al, byte [edx + 0x6fc]
test al, al
je 0x49b9cf
mov ecx, dword [ebp - 0x7cc]
test dword [edi], 0x40000
jne 0x49b9cf
mov eax, 0x400
test word [ecx + 8], ax
je 0x49b9cf
movss xmm0, dword [ebp - 0x7fc]
sub esp, 8
cvtps2pd xmm0, xmm0
movsd xmm2, qword [ebp - 0x7e0]
mulsd xmm0, qword [edx + 0x710]
movsd qword [esp], xmm2
push edx
divsd xmm0, qword [ebp - 0x8a0]
cvttsd2si eax, xmm0
movd xmm0, esi
movzx eax, ax
push eax
mov eax, dword [ecx + 0xc]
cvtdq2pd xmm0, xmm0
movd xmm1, dword [eax + 0xa80]
cvtdq2pd xmm1, xmm1
mulsd xmm1, xmm2
mulsd xmm1, xmm0
cvtpd2ps xmm0, xmm1
addss xmm0, dword [ebp - 0x7d0]
cvttss2si eax, xmm0
push eax
cvttss2si eax, dword [ebp - 0x7bc]
push eax
lea eax, [ebp - 0x6d4]
push eax
push dword [ebp - 0x8a8]
lea eax, [ebx + 0x64]
push ecx
mov ecx, esp
push eax
call fcn.0043ce00
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
movss xmm3, dword [ebp - 0x7a4]
mov ecx, dword [ebp - 0x7f4]
call fcn.004ebb20
mov eax, dword [ebp - 0x7f0]
mov dword [ebp - 0x830], eax
mov dword [ebp - 0x7a0], eax
mov esi, dword [ebp - 0x79c]
mov eax, dword [ebp - 0x794]
movss xmm2, dword [ebp - 0x7ac]
movss xmm4, dword [ebp - 0x7a8]
mov cl, byte [ebp - 0x785]
mov edi, dword [ebp - 0x790]
movss dword [ebp - 0x824], xmm2
movss dword [ebp - 0x854], xmm2
jmp 0x49d3b0
test al, al
je 0x49bcf2
test byte [ecx + 8], 0x80
je 0x49bcf2
xor ecx, ecx
mov eax, esi
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.00560858
mov edi, eax
add esp, 4
mov eax, dword [ebp - 0x79c]
mov edx, edi
mov dword [ebp - 0x844], edi
push dword [ebp - 0x7b8]
movzx esi, byte [eax + 0x7ee]
movzx ecx, byte [eax + 0x7ef]
shl esi, 8
or esi, ecx
movzx ecx, byte [eax + 0x7f0]
mov eax, dword [ebp - 0x7cc]
shl esi, 8
or esi, ecx
mov dword [ebp - 0x870], esi
mov cx, word [eax + 8]
shr cx, 0xb
movzx eax, cx
mov dword [ebp - 0x828], eax
movzx eax, cx
mov ecx, dword [ebp - 0x884]
push eax
mov dword [ebp - 0x8a8], eax
call fcn.0040a350
mov eax, dword [ebp - 0x798]
add esp, 8
movss xmm0, dword [ebp - 0x7a4]
mov eax, dword [eax + 0xc]
push 1
push ecx
movss dword [esp], xmm0
mov ecx, edi
push dword [ebp - 0x7b8]
mov eax, dword [eax + 0x3ec]
mov edx, eax
push dword [ebp - 0x7f8]
mov dword [ebp - 0x7c0], eax
push dword [ebp - 0x898]
call fcn.0040ec40
mov eax, dword [ebp - 0x7b8]
xor ecx, ecx
add esp, 0x14
cmp cx, ax
jge 0x49bb7b
mov ecx, dword [ebp - 0x7c0]
mov edi, dword [ebp - 0x7b4]
add ecx, 0x100
movzx eax, ax
xor esi, esi
mov dword [ebp - 0x800], ecx
mov dword [ebp - 0x7d4], eax
nop dword [eax + eax]
movss xmm0, dword [edi]
push esi
movss dword [ebp - 0x7e4], xmm0
call fcn.00410b00
movss xmm0, dword [ebp - 0x7e4]
lea edi, [edi + 4]
movss xmm4, dword [ebp - 0x7a4]
inc esi
sub dword [ebp - 0x7d4], 1
divss xmm0, xmm4
mov ecx, dword [ebp - 0x800]
movss dword [eax], xmm0
jne 0x49bb30
mov esi, dword [ebp - 0x870]
mov edi, dword [ebp - 0x844]
jmp 0x49bb83
movss xmm4, dword [ebp - 0x7a4]
movss xmm5, dword [ebp - 0x7fc]
mov eax, dword [ebp - 0x79c]
movsd xmm1, qword [ebp - 0x8a0]
cvtps2pd xmm2, xmm5
push esi
mov esi, dword [ebp - 0x824]
push esi
push edi
sub esp, 0xc
cmp word [ebp - 0x828], 8
subsd xmm1, qword [eax + 0x278]
mulsd xmm2, qword [eax + 0x708]
mov eax, dword [ebp - 0x7b4]
movss xmm3, dword [ebp - 0x834]
cvtps2pd xmm3, xmm3
movss xmm0, dword [eax]
lea eax, [ebx + 0x64]
cvtps2pd xmm0, xmm0
mulsd xmm3, qword [ebp - 0x960]
mulsd xmm1, xmm0
movss xmm0, dword [ebp - 0x7c4]
divsd xmm2, qword [ebp - 0x8a0]
divsd xmm1, qword [ebp - 0x9c0]
cvtps2pd xmm0, xmm0
movss dword [esp + 8], xmm4
addsd xmm1, xmm0
cvtpd2ps xmm1, xmm1
ja 0x49bc3c
movss xmm0, dword [ebp - 0x7bc]
subss xmm0, xmm5
cvtps2pd xmm0, xmm0
addsd xmm0, xmm2
addsd xmm0, xmm3
cvtpd2ps xmm0, xmm0
movss dword [esp + 4], xmm0
movss dword [esp], xmm1
push 8
jmp 0x49bc68
movss xmm0, dword [ebp - 0x85c]
addss xmm0, dword [ebp - 0x7bc]
cvtps2pd xmm0, xmm0
addsd xmm0, xmm2
subsd xmm0, xmm3
cvtpd2ps xmm0, xmm0
movss dword [esp + 4], xmm0
movss dword [esp], xmm1
push 0
push ecx
mov ecx, esp
push eax
call fcn.0043ce00
push ecx
mov ecx, esp
push dword [ebp - 0x80c]
call fcn.004a86c0
push ecx
mov ecx, esp
push dword [ebp - 0x808]
call fcn.004a86c0
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
mov ecx, dword [ebp - 0x7c0]
xor edx, edx
call fcn.0043a210
mov edx, dword [ebp - 0x79c]
push edi
movzx ecx, byte [edx + 0x7e8]
movzx eax, byte [edx + 0x7e9]
shl ecx, 8
or ecx, eax
movzx eax, byte [edx + 0x7ea]
shl ecx, 8
or ecx, eax
mov dword [ebp - 0x83c], ecx
call fcn.00560853
movss xmm2, dword [ebp - 0x7d0]
add esp, 4
movsd xmm3, qword [ebp - 0x7e0]
mov edx, dword [ebp - 0x79c]
jmp 0x49bcf8
mov esi, dword [ebp - 0x824]
mov al, byte [edx + 0x6fc]
test al, al
je 0x49bdd6
mov edi, dword [ebp - 0x7cc]
movzx ecx, word [edi + 8]
test ecx, 0x100
je 0x49bdd6
movss xmm0, dword [ebp - 0x7fc]
sub esp, 8
cvtps2pd xmm0, xmm0
shr cx, 0xb
movzx ecx, cx
mov dword [ebp - 0x8a8], ecx
movsd qword [esp], xmm3
mulsd xmm0, qword [edx + 0x710]
push edx
divsd xmm0, qword [ebp - 0x8a0]
cvttsd2si eax, xmm0
movzx eax, ax
push eax
mov eax, dword [edi + 0xc]
mov eax, dword [eax + 0xa80]
imul eax, esi
movd xmm0, eax
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm3
cvtpd2ps xmm0, xmm0
addss xmm0, xmm2
cvttss2si eax, xmm0
movss xmm0, dword [ebp - 0x7a4]
push eax
cvttss2si eax, dword [ebp - 0x7c4]
push eax
lea eax, [ebp - 0x6d4]
push eax
push ecx
sub esp, 8
lea eax, [ebx + 0x64]
mov ecx, esp
movss dword [esp + 4], xmm0
push eax
call fcn.0043ce00
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
push ecx
lea eax, [ebx + 0x5c]
mov ecx, esp
push eax
call fcn.0043ce00
mov ecx, dword [ebp - 0x7f4]
call fcn.004ea7b0
mov edx, dword [ebp - 0x79c]
mov al, byte [edx + 0x6fc]
mov edi, dword [ebp - 0x7f0]
mov dword [ebp - 0x830], edi
mov dword [ebp - 0x7a0], edi
test al, al
je 0x49b9e1
mov eax, dword [ebp - 0x794]
mov dword [ebp - 0x830], edi
mov dword [ebp - 0x7a0], edi
test dword [eax], 0x40000
jne 0x49bef8
mov ecx, dword [ebp - 0x7cc]
mov esi, 0x400
test word [ecx + 8], si
mov esi, dword [ebp - 0x824]
mov dword [ebp - 0x7a0], edi
mov dword [ebp - 0x830], edi
je 0x49bef8
movss xmm0, dword [ebp - 0x7fc]
sub esp, 8
cvtps2pd xmm0, xmm0
movsd xmm2, qword [ebp - 0x7e0]
mulsd xmm0, qword [edx + 0x710]
movsd qword [esp], xmm2
push edx
divsd xmm0, qword [ebp - 0x8a0]
cvttsd2si eax, xmm0
movd xmm0, esi
movzx eax, ax
push eax
mov eax, dword [ecx + 0xc]
cvtdq2pd xmm0, xmm0
movd xmm1, dword [eax + 0xa80]
cvtdq2pd xmm1, xmm1
mulsd xmm1, xmm2
mulsd xmm1, xmm0
cvtpd2ps xmm0, xmm1
addss xmm0, dword [ebp - 0x7d0]
cvttss2si eax, xmm0
push eax
cvttss2si eax, dword [ebp - 0x7c4]
push eax
lea eax, [ebp - 0x6d4]
push eax
push dword [ebp - 0x8a8]
lea eax, [ebx + 0x64]
push ecx
mov ecx, esp
push eax
call fcn.0043ce00
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
movss xmm3, dword [ebp - 0x7a4]
mov ecx, dword [ebp - 0x7f4]
call fcn.004eb6f0
mov dword [ebp - 0x830], edi
mov dword [ebp - 0x7a0], edi
jmp 0x49b9e1
mov esi, dword [ebp - 0x79c]
mov eax, ecx
jmp 0x49b9ed
mov esi, dword [ebp - 0x79c]
jmp 0x49b9ed
lea eax, [edx + 4]
mov ecx, 0xff03
cmp word [edx + 2], cx
mov ecx, dword [ebp - 0x7cc]
jne 0x49bff6
mov esi, 0x300c
cmp word [eax], si
movzx esi, word [edx]
jne 0x49bff6
movsx edi, di
mov eax, 0x300d
mov dword [ebp - 0x7d4], edi
cmp word [edx + edi*2 - 0x18], ax
jne 0x49bf73
mov eax, 0x306f
cmp word [edx + edi*2 - 0x16], ax
mov eax, 0x300d
jne 0x49bf73
mov eax, 0xff11
cmp word [edx + edi*2 - 0x14], ax
jne 0x49bff6
mov eax, 0xff10
cmp word [edx + edi*2 - 0x12], ax
mov eax, 0x300d
je 0x49bf86
cmp word [edx + edi*2 - 0x16], ax
jne 0x49bff6
mov eax, 0x306f
cmp word [edx + edi*2 - 0x14], ax
jne 0x49bff6
mov eax, 0x6bb5
cmp word [edx + edi*2 - 0x10], ax
jne 0x49bff6
mov eax, 0x968e
cmp word [edx + edi*2 - 0xe], ax
jne 0x49bff6
mov eax, 0x5c0f
cmp word [edx + edi*2 - 0xc], ax
jne 0x49bff6
mov eax, 0x3055
cmp word [edx + edi*2 - 0xa], ax
jne 0x49bff6
mov eax, 0x306a
cmp word [edx + edi*2 - 8], ax
jne 0x49bff6
mov eax, 0x6587
cmp word [edx + edi*2 - 6], ax
jne 0x49bff6
movzx eax, word [edx + edi*2 - 4]
mov esi, 0x5b57
cmp ax, si
movzx esi, word [edx]
jne 0x49bff6
mov ecx, 0xff3d
cmp word [edx + edi*2 - 2], cx
mov ecx, dword [ebp - 0x7cc]
je 0x49c0be
mov eax, 0xff3b
mov edi, dword [ebp - 0x790]
cmp di, 0xa
jl 0x49d17e
cmp si, ax
jne 0x49d17e
mov eax, 0xff03
cmp word [edx + 2], ax
lea eax, [edx + 4]
jne 0x49d181
mov esi, 0x300c
cmp word [eax], si
movzx esi, word [edx]
jne 0x49d181
movsx edi, di
mov ecx, 0x300d
mov dword [ebp - 0x7d4], edi
cmp word [edx + edi*2 - 0xc], cx
mov ecx, dword [ebp - 0x7cc]
jne 0x49d462
mov esi, 0x306f
cmp word [edx + edi*2 - 0xa], si
movzx esi, word [edx]
jne 0x49d462
mov eax, 0x5c0f
cmp word [edx + edi*2 - 8], ax
lea eax, [edx + 4]
jne 0x49d462
mov esi, 0x66f8
cmp word [edx + edi*2 - 6], si
movzx esi, word [edx]
jne 0x49d462
movzx eax, word [edx + edi*2 - 4]
mov ecx, 0x304d
cmp ax, cx
mov ecx, dword [ebp - 0x7cc]
jne 0x49d178
mov ecx, 0xff3d
cmp word [edx + edi*2 - 2], cx
mov ecx, dword [ebp - 0x7cc]
jne 0x49d178
mov esi, dword [ebp - 0x794]
test byte [esi], 0x20
jne 0x49b9e1
mov ecx, 0x304d
cmp ax, cx
jne 0x49c0e7
mov eax, dword [ebp - 0x790]
mov ecx, 1
add eax, 0xfffffff7
jmp 0x49c108
mov cx, word [edx + edi*2 - 0x12]
call fcn.0040d690
movzx ecx, ax
mov eax, dword [ebp - 0x790]
cmp cx, 9
jne 0x49c105
add eax, 0xfffffff1
jmp 0x49c108
add eax, 0xfffffff2
cmp word [ebp - 0x8ac], 0
movzx edx, ax
mov dword [ebp - 0x824], edx
movzx eax, cx
jne 0x49c232
cmp dword [ebp - 0x908], 0
je 0x49c232
test dword [esi], 0x200
je 0x49c13a
add ecx, 0xa
movsd xmm0, qword [ebp - 0xa20]
lea eax, [ebx + 0x64]
sub esp, 0x14
movzx esi, cx
movsd qword [esp + 0xc], xmm0
movsd xmm0, qword [ebp - 0xa28]
movsd qword [esp + 4], xmm0
movss xmm0, dword [ebp - 0x7a4]
movss dword [esp], xmm0
push dword [ebp - 0x984]
push ecx
mov ecx, esp
push eax
call fcn.0043ce00
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
push ecx
lea eax, [ebx + 0x5c]
mov ecx, esp
push eax
call fcn.0043ce00
push dword [ebp - 0x808]
not esi
mov ecx, dword [ebp - 0x7f4]
push dword [ebp - 0x80c]
lea eax, [ebp - 0x6dc]
push dword [ebx + 0x50]
push dword [ebp - 0x910]
push dword [ebp - 0x798]
push dword [ebp - 0x908]
push esi
push dword [ebp - 0x980]
mov esi, dword [ebp - 0x79c]
push dword [ebp - 0x9a0]
push dword [ebp - 0x990]
push eax
lea eax, [ebp - 0x6e0]
push eax
lea eax, [ebp - 0x6e4]
push eax
lea eax, [ebp - 0x6d8]
push eax
push esi
push dword [ebp - 0x88c]
push dword [ebp - 0x98c]
push dword [ebp - 0x814]
push dword [ebp - 0x94c]
push dword [ebp - 0x874]
push dword [ebp - 0x818]
call fcn.00487d00
movss dword [ebp - 0x7a8], xmm0
mov dword [ebp - 0x908], 0
jmp 0x49b9e7
mov ecx, dword [ebp - 0x794]
movsx esi, ax
mov eax, dword [ebp - 0x798]
mov byte [ebp - 0x85d], 0
test dword [ecx], 0x200
mov dword [ebp - 0x800], esi
mov eax, dword [eax + 0xc]
je 0x49c262
mov eax, dword [eax + esi*4 + 0x65c]
jmp 0x49c269
mov eax, dword [eax + esi*4 + 0x56c]
movss xmm0, dword [ebp - 0x7a4]
push 1
push ecx
mov ecx, dword [ebp - 0x884]
movss dword [esp], xmm0
push edx
push dword [ebp - 0x7f8]
mov edx, eax
mov dword [ebp - 0x844], eax
push dword [ebp - 0x7b4]
call fcn.0040ec40
mov eax, dword [ebp - 0x798]
add esp, 0x14
movss dword [ebp - 0x7d0], xmm0
mov ecx, dword [ebp - 0x7f8]
mov eax, dword [eax + 0xc]
movd xmm0, dword [eax + 0xa80]
mov eax, dword [ebp - 0x7b4]
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0x7e0]
cvtpd2ps xmm0, xmm0
addss xmm0, dword [eax]
movss dword [eax], xmm0
mov eax, dword [ebp - 0x844]
push dword [ecx]
lea ecx, [eax + 0x100]
call fcn.00410b00
mov ecx, dword [ebp - 0x798]
mov edx, 1
movss xmm1, dword [ebp - 0x7a4]
movsd xmm2, qword [ebp - 0x7e0]
cvtps2pd xmm1, xmm1
mov ecx, dword [ecx + 0xc]
add ecx, 0xa80
movd xmm0, dword [ecx]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm2
divsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
addss xmm0, dword [eax]
movss dword [eax], xmm0
mov eax, dword [ebp - 0x824]
cmp dx, ax
jge 0x49c3e8
mov edi, dword [ebp - 0x7b4]
mov edx, dword [ebp - 0x7f8]
sub edx, edi
dec eax
mov dword [ebp - 0x7e4], edx
lea esi, [edi + 4]
movzx edi, ax
jmp 0x49c368
movsd xmm2, qword [ebp - 0x7e0]
movd xmm0, dword [ecx]
mov ecx, dword [ebp - 0x844]
cvtdq2pd xmm0, xmm0
lea ecx, [ecx + 0x100]
mulsd xmm0, xmm2
cvtpd2ps xmm0, xmm0
addss xmm0, dword [esi]
movss dword [esi], xmm0
push dword [esi + edx]
call fcn.00410b00
mov ecx, dword [ebp - 0x798]
add esi, 4
movss xmm2, dword [ebp - 0x7a4]
cvtps2pd xmm1, xmm2
mov edx, dword [ebp - 0x7e4]
mov ecx, dword [ecx + 0xc]
add ecx, 0xa80
movd xmm0, dword [ecx]
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0x7e0]
divsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
addss xmm0, dword [eax]
movss dword [eax], xmm0
sub edi, 1
jne 0x49c360
mov edi, dword [ebp - 0x7d4]
mov esi, dword [ebp - 0x800]
cmp word [ebp - 0x84c], 0x40
jne 0x49c63a
mov ecx, dword [ebp - 0x818]
mov esi, 0x304d
mov edx, dword [ebp - 0x814]
mov eax, dword [ebp - 0x7e8]
movss xmm4, dword [ebp - 0x7fc]
movd xmm5, dword [ecx + 8]
movd xmm0, dword [edx]
cvtdq2ps xmm5, xmm5
cvtdq2ps xmm0, xmm0
subss xmm5, dword [ebp - 0x81c]
cvtps2pd xmm4, xmm4
subss xmm5, xmm0
movss dword [ebp - 0x7c4], xmm5
cmp word [eax + edi*2 - 4], si
jne 0x49c474
movss xmm1, dword [ebp - 0x834]
movaps xmm0, xmm4
mulsd xmm0, qword [ebp - 0xbe8]
cvtps2pd xmm1, xmm1
mulsd xmm1, qword [ebp - 0x9f0]
addsd xmm1, xmm0
cvtpd2ps xmm0, xmm1
addss xmm5, xmm0
movss dword [ebp - 0x7c4], xmm5
mov ecx, dword [ecx + 4]
mov edx, dword [edx + 4]
mov eax, dword [ebp - 0x800]
movss xmm1, dword [ebp - 0x85c]
inc eax
movsd xmm2, qword [ebp - 0x9d8]
movd xmm6, ecx
sub ecx, edx
cvtdq2ps xmm6, xmm6
mov dword [ebp - 0x6ac], ecx
movd xmm0, edx
addss xmm6, dword [ebp - 0x7a8]
cvtdq2ps xmm0, xmm0
cvtps2pd xmm1, xmm1
subss xmm6, xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
mov eax, dword [ebp - 0x818]
cvtps2pd xmm3, xmm5
mulsd xmm0, qword [ebp - 0x9f0]
movss dword [ebp - 0x7bc], xmm6
subsd xmm2, xmm0
movaps xmm0, xmm3
mulsd xmm1, xmm2
mulsd xmm4, xmm2
subsd xmm0, xmm1
addsd xmm4, xmm3
cvttsd2si esi, xmm0
movd xmm0, edx
mov dword [ebp - 0x6b0], esi
movd xmm1, dword [eax + 0xc]
cvtdq2ps xmm1, xmm1
cvtdq2ps xmm0, xmm0
subss xmm1, dword [ebp - 0x964]
subss xmm1, xmm0
cvttss2si eax, xmm1
mov dword [ebp - 0x6a4], eax
cvttsd2si eax, xmm4
mov dword [ebp - 0x6a8], eax
cmp esi, eax
jne 0x49c534
lea eax, [esi - 2]
mov dword [ebp - 0x6b0], eax
mov ecx, dword [ebp - 0x7ec]
test ecx, ecx
je 0x49c813
mov eax, dword [ebp - 0x7cc]
movsx edi, word [ebp - 0x868]
movzx esi, word [eax + 4]
movsx edx, si
add edx, edi
nop dword [eax + eax]
movzx ecx, word [ecx + 4]
movsx eax, cx
cmp edx, eax
jle 0x49c813
mov eax, dword [ebp - 0x88c]
mov edx, dword [ebp - 0x7ec]
test eax, eax
je 0x49c58c
cmp edx, eax
je 0x49c588
cmp dword [edx + 8], eax
jne 0x49c58c
mov al, 1
jmp 0x49c58e
xor al, al
push dword [ebp - 0x79c]
push dword [ebp - 0x7b4]
push eax
lea eax, [ebp - 0x6b0]
push eax
movzx eax, word [edx + 6]
push eax
push ecx
push esi
push dword [ebp - 0x868]
lea eax, [ebx + 0x64]
sub esp, 0xc
mov ecx, esp
movss dword [esp + 8], xmm6
movss dword [esp + 4], xmm5
push eax
call fcn.0043ce00
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
movss xmm3, dword [ebp - 0x7a4]
mov ecx, dword [ebp - 0x7f4]
call fcn.004a8160
mov eax, dword [ebp - 0x7cc]
movss xmm5, dword [ebp - 0x7c4]
movss xmm6, dword [ebp - 0x7bc]
movzx esi, word [eax + 4]
mov eax, dword [ebp - 0x7ec]
movsx edx, si
add edx, edi
movsx ecx, word [eax + 6]
movsx eax, word [eax + 4]
add ecx, eax
cmp edx, ecx
jl 0x49c813
mov ecx, dword [ebp - 0x7ec]
mov ecx, dword [ecx]
mov dword [ebp - 0x7ec], ecx
test ecx, ecx
jne 0x49c560
jmp 0x49c813
mov edi, dword [ebp - 0x818]
xorps xmm0, xmm0
mov eax, dword [ebp - 0x814]
xorps xmm6, xmm6
movsd xmm2, qword [ebp - 0x9d8]
xorps xmm5, xmm5
xorps xmm3, xmm3
cvtsi2ss xmm6, dword [edi + 4]
mov ecx, dword [eax]
mov edx, dword [edi]
cvtsi2ss xmm0, dword [eax + 4]
lea eax, [esi + 1]
addss xmm6, dword [ebp - 0x81c]
cvtsi2ss xmm5, edx
sub edx, ecx
mov dword [ebp - 0x6b0], edx
subss xmm6, xmm0
xorps xmm0, xmm0
cvtsi2sd xmm0, eax
cvtps2pd xmm1, xmm6
mulsd xmm0, qword [ebp - 0x9f0]
cvtsi2ss xmm3, ecx
subsd xmm2, xmm0
movss dword [ebp - 0x7bc], xmm6
movss xmm0, dword [ebp - 0x85c]
cvtps2pd xmm0, xmm0
addss xmm5, dword [ebp - 0x7a8]
mulsd xmm0, xmm2
subss xmm5, xmm3
addsd xmm0, xmm1
movss dword [ebp - 0x7c4], xmm5
cvttsd2si esi, xmm0
xorps xmm0, xmm0
mov dword [ebp - 0x6a4], esi
cvtsi2ss xmm0, dword [edi + 8]
subss xmm0, dword [ebp - 0x964]
subss xmm0, xmm3
cvttss2si eax, xmm0
movss xmm0, dword [ebp - 0x7fc]
cvtps2pd xmm0, xmm0
mov dword [ebp - 0x6a8], eax
mulsd xmm0, xmm2
subsd xmm1, xmm0
cvttsd2si eax, xmm1
mov dword [ebp - 0x6ac], eax
cmp eax, esi
jne 0x49c71e
lea eax, [esi + 2]
mov dword [ebp - 0x6a4], eax
mov ecx, dword [ebp - 0x7ec]
test ecx, ecx
je 0x49c813
mov eax, dword [ebp - 0x7cc]
movsx edi, word [ebp - 0x868]
movzx esi, word [eax + 4]
movsx edx, si
add edx, edi
movzx ecx, word [ecx + 4]
movsx eax, cx
cmp edx, eax
jle 0x49c813
mov eax, dword [ebp - 0x88c]
mov edx, dword [ebp - 0x7ec]
test eax, eax
je 0x49c76e
cmp edx, eax
je 0x49c76a
cmp dword [edx + 8], eax
jne 0x49c76e
mov al, 1
jmp 0x49c770
xor al, al
push dword [ebp - 0x79c]
push dword [ebp - 0x7b4]
push eax
lea eax, [ebp - 0x6b0]
push eax
movzx eax, word [edx + 6]
push eax
push ecx
push esi
push dword [ebp - 0x868]
lea eax, [ebx + 0x64]
sub esp, 0xc
mov ecx, esp
movss dword [esp + 8], xmm6
movss dword [esp + 4], xmm5
push eax
call fcn.0043ce00
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
movss xmm3, dword [ebp - 0x7a4]
mov ecx, dword [ebp - 0x7f4]
call fcn.004a7c00
mov eax, dword [ebp - 0x7cc]
movss xmm5, dword [ebp - 0x7c4]
movss xmm6, dword [ebp - 0x7bc]
movzx esi, word [eax + 4]
mov eax, dword [ebp - 0x7ec]
movsx edx, si
add edx, edi
movsx ecx, word [eax + 6]
movsx eax, word [eax + 4]
add ecx, eax
cmp edx, ecx
jl 0x49c813
mov ecx, dword [ebp - 0x7ec]
mov ecx, dword [ecx]
mov dword [ebp - 0x7ec], ecx
test ecx, ecx
jne 0x49c742
push dword [ebp - 0x83c]
mov edi, dword [ebp - 0x824]
lea eax, [ebx + 0x64]
movss xmm0, dword [ebp - 0x7a4]
movsx esi, di
push esi
push dword [ebp - 0x884]
mov dword [ebp - 0x7b8], esi
sub esp, 0xc
movss dword [esp + 8], xmm0
movss dword [esp + 4], xmm6
movss dword [esp], xmm5
push 0x18
push ecx
mov ecx, esp
push eax
call fcn.0043ce00
push ecx
mov ecx, esp
push dword [ebp - 0x80c]
call fcn.004a86c0
push ecx
mov ecx, esp
push dword [ebp - 0x808]
call fcn.004a86c0
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
mov ecx, dword [ebp - 0x844]
xor edx, edx
call fcn.0043a210
mov ecx, dword [ebp - 0x7cc]
movsd xmm3, qword [ebp - 0x7e0]
movss xmm2, dword [ebp - 0x7d0]
mov eax, dword [ecx + 0xc]
movd xmm1, dword [eax + 0xa80]
movsx eax, word [ecx + 4]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
xor eax, eax
cvtdq2pd xmm0, xmm0
mulsd xmm1, xmm3
mulsd xmm1, xmm0
cvtpd2ps xmm0, xmm1
addss xmm0, xmm2
addss xmm0, dword [ebp - 0x7a8]
movss dword [ebp - 0x7a8], xmm0
cmp byte [ebp - 0x8a4], al
je 0x49c95e
mov byte [ebp - 0x785], 1
mov byte [ebp - 0x8f6], 1
cmp ax, di
jge 0x49c953
mov eax, dword [ebp - 0x7b4]
mov ecx, dword [ebp - 0x850]
sub eax, ecx
mov edx, dword [ebp - 0x890]
mov esi, dword [ebp - 0x884]
mov dword [ebp - 0x7e4], eax
movzx edi, di
nop
mov ax, word [esi]
lea esi, [esi + 2]
mov word [edx], ax
lea edx, [edx + 2]
mov eax, dword [ebp - 0x7e4]
lea ecx, [ecx + 4]
mov eax, dword [ecx + eax - 4]
mov dword [ecx - 4], eax
sub edi, 1
jne 0x49c920
mov esi, dword [ebp - 0x7b8]
mov edi, dword [ebp - 0x824]
mov ecx, dword [ebp - 0x7cc]
movzx eax, di
mov dword [ebp - 0x810], eax
jmp 0x49c9db
cmp ax, di
jge 0x49c9d5
mov eax, dword [ebp - 0x810]
mov edx, dword [ebp - 0x850]
mov esi, dword [ebp - 0x890]
mov ecx, dword [ebp - 0x7b4]
mov edi, dword [ebp - 0x884]
cwde
lea edx, [edx + eax*4]
lea esi, [esi + eax*2]
mov eax, dword [ebp - 0x824]
movzx eax, ax
mov dword [ebp - 0x7d4], eax
nop word [eax + eax]
sub dword [ebp - 0x7d4], 1
lea edi, [edi + 2]
mov ax, word [edi - 2]
lea esi, [esi + 2]
mov word [esi - 2], ax
lea ecx, [ecx + 4]
mov eax, dword [ecx - 4]
lea edx, [edx + 4]
mov dword [edx - 4], eax
jne 0x49c9a0
mov esi, dword [ebp - 0x7b8]
mov edi, dword [ebp - 0x824]
mov ecx, dword [ebp - 0x7cc]
add dword [ebp - 0x810], edi
cmp word [ebp - 0x84c], 0x40
mov edx, dword [ebp - 0x79c]
mov al, byte [edx + 0x6fb]
jne 0x49cd73
mov edi, dword [ebp - 0x794]
test al, al
je 0x49ccd9
test byte [ecx + 8], 0x80
je 0x49ccd9
test byte [edi], 0x20
jne 0x49ccd9
xor ecx, ecx
mov eax, esi
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.00560858
mov edi, eax
add esp, 4
mov eax, dword [ebp - 0x79c]
mov edx, edi
mov dword [ebp - 0x844], edi
push dword [ebp - 0x824]
movzx esi, byte [eax + 0x7ee]
movzx ecx, byte [eax + 0x7ef]
shl esi, 8
or esi, ecx
movzx ecx, byte [eax + 0x7f0]
mov eax, dword [ebp - 0x7cc]
shl esi, 8
or esi, ecx
mov dword [ebp - 0x870], esi
mov cx, word [eax + 8]
shr cx, 0xb
movzx eax, cx
mov dword [ebp - 0x828], eax
movzx eax, cx
mov ecx, dword [ebp - 0x884]
push eax
mov dword [ebp - 0x8a8], eax
call fcn.0040a350
mov eax, dword [ebp - 0x798]
add esp, 8
movss xmm0, dword [ebp - 0x7a4]
mov eax, dword [eax + 0xc]
push 1
push ecx
movss dword [esp], xmm0
mov ecx, edi
push dword [ebp - 0x824]
mov eax, dword [eax + 0x3ec]
mov edx, eax
push dword [ebp - 0x7f8]
mov dword [ebp - 0x7c0], eax
push dword [ebp - 0x898]
call fcn.0040ec40
mov eax, dword [ebp - 0x824]
xor ecx, ecx
add esp, 0x14
cmp cx, ax
jge 0x49cb5b
mov ecx, dword [ebp - 0x7c0]
mov edi, dword [ebp - 0x7b4]
add ecx, 0x100
movzx eax, ax
xor esi, esi
mov dword [ebp - 0x800], ecx
mov dword [ebp - 0x7d4], eax
nop
movss xmm0, dword [edi]
push esi
movss dword [ebp - 0x7e4], xmm0
call fcn.00410b00
movss xmm0, dword [ebp - 0x7e4]
lea edi, [edi + 4]
movss xmm3, dword [ebp - 0x7a4]
inc esi
sub dword [ebp - 0x7d4], 1
divss xmm0, xmm3
mov ecx, dword [ebp - 0x800]
movss dword [eax], xmm0
jne 0x49cb10
mov esi, dword [ebp - 0x870]
mov edi, dword [ebp - 0x844]
jmp 0x49cb63
movss xmm3, dword [ebp - 0x7a4]
mov ecx, dword [ebp - 0x7b4]
mov eax, dword [ebp - 0x79c]
movsd xmm1, qword [ebp - 0x8a0]
movss xmm4, dword [ebp - 0x7fc]
movss xmm0, dword [ecx]
subsd xmm1, qword [eax + 0x278]
cvtps2pd xmm0, xmm0
push esi
mov esi, dword [ebp - 0x7b8]
push esi
push edi
sub esp, 0xc
cmp word [ebp - 0x828], 8
movss xmm2, dword [ebp - 0x834]
mulsd xmm1, xmm0
movss xmm0, dword [ebp - 0x7bc]
cvtps2pd xmm0, xmm0
divsd xmm1, qword [ebp - 0x9c0]
movss dword [esp + 8], xmm3
addsd xmm1, xmm0
cvtps2pd xmm2, xmm2
cvtpd2ps xmm0, xmm1
cvtps2pd xmm1, xmm4
movss dword [esp + 4], xmm0
mulsd xmm1, qword [eax + 0x708]
lea eax, [ebx + 0x64]
divsd xmm1, qword [ebp - 0x8a0]
ja 0x49cc1b
mulsd xmm2, qword [ebp - 0xa30]
movaps xmm0, xmm4
addss xmm0, dword [ebp - 0x7c4]
cvtps2pd xmm0, xmm0
subsd xmm0, xmm1
subsd xmm0, xmm2
cvtpd2ps xmm0, xmm0
movss dword [esp], xmm0
push 8
jmp 0x49cc49
movss xmm0, dword [ebp - 0x7c4]
subss xmm0, dword [ebp - 0x85c]
mulsd xmm2, qword [ebp - 0x960]
cvtps2pd xmm0, xmm0
subsd xmm0, xmm1
addsd xmm0, xmm2
cvtpd2ps xmm0, xmm0
movss dword [esp], xmm0
push 0
push ecx
mov ecx, esp
push eax
call fcn.0043ce00
push ecx
mov ecx, esp
push dword [ebp - 0x80c]
call fcn.004a86c0
push ecx
mov ecx, esp
push dword [ebp - 0x808]
call fcn.004a86c0
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
mov ecx, dword [ebp - 0x7c0]
xor edx, edx
call fcn.0043a210
mov edx, dword [ebp - 0x79c]
push edi
movzx ecx, byte [edx + 0x7e8]
movzx eax, byte [edx + 0x7e9]
shl ecx, 8
or ecx, eax
movzx eax, byte [edx + 0x7ea]
shl ecx, 8
or ecx, eax
mov dword [ebp - 0x83c], ecx
call fcn.00560853
movss xmm2, dword [ebp - 0x7d0]
add esp, 4
movsd xmm3, qword [ebp - 0x7e0]
mov edx, dword [ebp - 0x79c]
mov edi, dword [ebp - 0x794]
jmp 0x49ccdf
mov esi, dword [ebp - 0x7b8]
mov al, byte [edx + 0x6fc]
test al, al
je 0x49b9cf
mov ecx, dword [ebp - 0x7cc]
movzx eax, word [ecx + 8]
test eax, 0x100
je 0x49b90f
test byte [edi], 0x20
jne 0x49b90f
movss xmm0, dword [ebp - 0x7fc]
cvtps2pd xmm0, xmm0
shr ax, 0xb
sub esp, 8
movzx eax, ax
mov dword [ebp - 0x8a8], eax
movsd qword [esp], xmm3
mulsd xmm0, qword [edx + 0x710]
push edx
divsd xmm0, qword [ebp - 0x8a0]
cvttsd2si eax, xmm0
movd xmm0, esi
movzx eax, ax
push eax
mov eax, dword [ecx + 0xc]
cvtdq2pd xmm0, xmm0
movd xmm1, dword [eax + 0xa80]
cvtdq2pd xmm1, xmm1
mulsd xmm1, xmm3
mulsd xmm1, xmm0
cvttsd2si eax, xmm1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
jmp 0x49b897
test al, al
je 0x49d042
test byte [ecx + 8], 0x80
je 0x49d042
xor ecx, ecx
mov eax, esi
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.00560858
mov edi, eax
add esp, 4
mov eax, dword [ebp - 0x79c]
mov edx, edi
mov dword [ebp - 0x844], edi
push dword [ebp - 0x824]
movzx esi, byte [eax + 0x7ee]
movzx ecx, byte [eax + 0x7ef]
shl esi, 8
or esi, ecx
movzx ecx, byte [eax + 0x7f0]
mov eax, dword [ebp - 0x7cc]
shl esi, 8
or esi, ecx
mov dword [ebp - 0x870], esi
mov cx, word [eax + 8]
shr cx, 0xb
movzx eax, cx
mov dword [ebp - 0x828], eax
movzx eax, cx
mov ecx, dword [ebp - 0x884]
push eax
mov dword [ebp - 0x8a8], eax
call fcn.0040a350
mov eax, dword [ebp - 0x798]
add esp, 8
movss xmm0, dword [ebp - 0x7a4]
mov eax, dword [eax + 0xc]
push 1
push ecx
movss dword [esp], xmm0
mov ecx, edi
push dword [ebp - 0x824]
mov eax, dword [eax + 0x3ec]
mov edx, eax
push dword [ebp - 0x7f8]
mov dword [ebp - 0x7c0], eax
push dword [ebp - 0x898]
call fcn.0040ec40
mov eax, dword [ebp - 0x824]
xor ecx, ecx
add esp, 0x14
cmp cx, ax
jge 0x49cecb
mov ecx, dword [ebp - 0x7c0]
mov edi, dword [ebp - 0x7b4]
add ecx, 0x100
movzx eax, ax
xor esi, esi
mov dword [ebp - 0x800], ecx
mov dword [ebp - 0x7d4], eax
nop dword [eax]
movss xmm0, dword [edi]
push esi
movss dword [ebp - 0x7e4], xmm0
call fcn.00410b00
movss xmm0, dword [ebp - 0x7e4]
lea edi, [edi + 4]
movss xmm4, dword [ebp - 0x7a4]
inc esi
sub dword [ebp - 0x7d4], 1
divss xmm0, xmm4
mov ecx, dword [ebp - 0x800]
movss dword [eax], xmm0
jne 0x49ce80
mov esi, dword [ebp - 0x870]
mov edi, dword [ebp - 0x844]
jmp 0x49ced3
movss xmm4, dword [ebp - 0x7a4]
movss xmm5, dword [ebp - 0x7fc]
mov eax, dword [ebp - 0x79c]
movsd xmm1, qword [ebp - 0x8a0]
cvtps2pd xmm2, xmm5
push esi
mov esi, dword [ebp - 0x7b8]
push esi
push edi
sub esp, 0xc
cmp word [ebp - 0x828], 8
subsd xmm1, qword [eax + 0x278]
mulsd xmm2, qword [eax + 0x708]
mov eax, dword [ebp - 0x7b4]
movss xmm3, dword [ebp - 0x834]
cvtps2pd xmm3, xmm3
movss xmm0, dword [eax]
lea eax, [ebx + 0x64]
cvtps2pd xmm0, xmm0
mulsd xmm3, qword [ebp - 0x960]
mulsd xmm1, xmm0
movss xmm0, dword [ebp - 0x7c4]
divsd xmm2, qword [ebp - 0x8a0]
divsd xmm1, qword [ebp - 0x9c0]
cvtps2pd xmm0, xmm0
movss dword [esp + 8], xmm4
addsd xmm1, xmm0
cvtpd2ps xmm1, xmm1
ja 0x49cf8c
movss xmm0, dword [ebp - 0x7bc]
subss xmm0, xmm5
cvtps2pd xmm0, xmm0
addsd xmm0, xmm2
addsd xmm0, xmm3
cvtpd2ps xmm0, xmm0
movss dword [esp + 4], xmm0
movss dword [esp], xmm1
push 8
jmp 0x49cfb8
movss xmm0, dword [ebp - 0x85c]
addss xmm0, dword [ebp - 0x7bc]
cvtps2pd xmm0, xmm0
addsd xmm0, xmm2
subsd xmm0, xmm3
cvtpd2ps xmm0, xmm0
movss dword [esp + 4], xmm0
movss dword [esp], xmm1
push 0
push ecx
mov ecx, esp
push eax
call fcn.0043ce00
push ecx
mov ecx, esp
push dword [ebp - 0x80c]
call fcn.004a86c0
push ecx
mov ecx, esp
push dword [ebp - 0x808]
call fcn.004a86c0
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
mov ecx, dword [ebp - 0x7c0]
xor edx, edx
call fcn.0043a210
mov edx, dword [ebp - 0x79c]
push edi
movzx ecx, byte [edx + 0x7e8]
movzx eax, byte [edx + 0x7e9]
shl ecx, 8
or ecx, eax
movzx eax, byte [edx + 0x7ea]
shl ecx, 8
or ecx, eax
mov dword [ebp - 0x83c], ecx
call fcn.00560853
movss xmm2, dword [ebp - 0x7d0]
add esp, 4
movsd xmm3, qword [ebp - 0x7e0]
mov edx, dword [ebp - 0x79c]
jmp 0x49d048
mov esi, dword [ebp - 0x7b8]
mov al, byte [edx + 0x6fc]
test al, al
je 0x49d126
mov edi, dword [ebp - 0x7cc]
movzx ecx, word [edi + 8]
test ecx, 0x100
je 0x49d126
movss xmm0, dword [ebp - 0x7fc]
sub esp, 8
cvtps2pd xmm0, xmm0
shr cx, 0xb
movzx ecx, cx
mov dword [ebp - 0x8a8], ecx
movsd qword [esp], xmm3
mulsd xmm0, qword [edx + 0x710]
push edx
divsd xmm0, qword [ebp - 0x8a0]
cvttsd2si eax, xmm0
movzx eax, ax
push eax
mov eax, dword [edi + 0xc]
mov eax, dword [eax + 0xa80]
imul eax, esi
movd xmm0, eax
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm3
cvtpd2ps xmm0, xmm0
addss xmm0, xmm2
cvttss2si eax, xmm0
movss xmm0, dword [ebp - 0x7a4]
push eax
cvttss2si eax, dword [ebp - 0x7c4]
push eax
lea eax, [ebp - 0x6d4]
push eax
push ecx
sub esp, 8
lea eax, [ebx + 0x64]
mov ecx, esp
movss dword [esp + 4], xmm0
push eax
call fcn.0043ce00
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
push ecx
lea eax, [ebx + 0x5c]
mov ecx, esp
push eax
call fcn.0043ce00
mov ecx, dword [ebp - 0x7f4]
call fcn.004ea7b0
mov edx, dword [ebp - 0x79c]
mov al, byte [edx + 0x6fc]
mov edi, dword [ebp - 0x7f0]
mov dword [ebp - 0x830], edi
mov dword [ebp - 0x7a0], edi
test al, al
je 0x49b9e1
mov eax, dword [ebp - 0x794]
mov dword [ebp - 0x830], edi
mov dword [ebp - 0x7a0], edi
test dword [eax], 0x40000
jne 0x49bef8
mov ecx, dword [ebp - 0x7cc]
mov esi, 0x400
test word [ecx + 8], si
mov esi, dword [ebp - 0x7b8]
jmp 0x49be23
mov edi, dword [ebp - 0x790]
lea eax, [edx + 4]
test ecx, ecx
je 0x49fd16
cmp di, 0xd
jl 0x49e3d9
mov ecx, 0xff3b
cmp si, cx
mov ecx, 0xff03
jne 0x49e3de
mov esi, 0x300c
cmp word [edx + 2], cx
jne 0x49e3de
cmp word [eax], si
jne 0x49db7e
movsx esi, di
mov ecx, 0x300d
cmp word [edx + esi*2 - 0x12], cx
mov ecx, 0xff03
jne 0x49db79
mov ecx, 0x306f
cmp word [edx + esi*2 - 0x10], cx
mov ecx, 0xff03
jne 0x49db79
mov ecx, 0x4e0a
cmp word [edx + esi*2 - 0xe], cx
mov ecx, 0xff03
jne 0x49db79
mov ecx, 0x4ed8
cmp word [edx + esi*2 - 0xc], cx
mov ecx, 0xff03
jne 0x49db79
mov ecx, 0x304d
cmp word [edx + esi*2 - 0xa], cx
mov ecx, 0xff03
jne 0x49db79
mov ecx, 0x5c0f
cmp word [edx + esi*2 - 8], cx
mov ecx, 0xff03
jne 0x49db79
mov ecx, 0x6587
cmp word [edx + esi*2 - 6], cx
mov ecx, 0xff03
jne 0x49db79
mov ecx, 0x5b57
cmp word [edx + esi*2 - 4], cx
mov ecx, 0xff03
jne 0x49db79
mov ecx, 0xff3d
cmp word [edx + esi*2 - 2], cx
mov ecx, 0xff03
jne 0x49db79
mov eax, dword [ebp - 0x794]
mov ecx, dword [eax]
test cl, 0x20
jne 0x4a66b0
cmp word [ebp - 0x8ac], 0
jne 0x49d46d
cmp dword [ebp - 0x908], 0
je 0x49d46d
movsd xmm0, qword [ebp - 0xa20]
lea eax, [ebx + 0x64]
sub esp, 0x14
movsd qword [esp + 0xc], xmm0
movsd xmm0, qword [ebp - 0xa28]
movsd qword [esp + 4], xmm0
movss xmm0, dword [ebp - 0x7a4]
movss dword [esp], xmm0
push dword [ebp - 0x984]
push ecx
mov ecx, esp
push eax
call fcn.0043ce00
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
push ecx
lea eax, [ebx + 0x5c]
mov ecx, esp
push eax
call fcn.0043ce00
push dword [ebp - 0x808]
push dword [ebp - 0x80c]
push dword [ebx + 0x50]
push dword [ebp - 0x910]
push dword [ebp - 0x798]
push dword [ebp - 0x908]
push 0x20
push dword [ebp - 0x980]
mov esi, dword [ebp - 0x79c]
lea eax, [ebp - 0x6dc]
push dword [ebp - 0x9a0]
mov ecx, dword [ebp - 0x7f4]
push dword [ebp - 0x990]
push eax
lea eax, [ebp - 0x6e0]
push eax
lea eax, [ebp - 0x6e4]
push eax
lea eax, [ebp - 0x6d8]
push eax
push esi
push dword [ebp - 0x88c]
push dword [ebp - 0x98c]
push dword [ebp - 0x814]
push dword [ebp - 0x94c]
push dword [ebp - 0x874]
push dword [ebp - 0x818]
call fcn.00487d00
movaps xmm4, xmm0
mov dword [ebp - 0x908], 0
movss dword [ebp - 0x7a8], xmm4
mov cl, byte [ebp - 0x785]
mov eax, dword [ebp - 0x794]
movss xmm2, dword [ebp - 0x7ac]
movsd xmm5, qword [ebp - 0x7e0]
movss xmm0, dword [ebp - 0x7c8]
mov edx, dword [ebp - 0x798]
test byte [edx + 8], 0x40
jne 0x49d3fd
cmp word [ebp - 0x84c], 0x40
mov dword [ebp - 0x7cc], edx
jne 0x49d3e1
test byte [eax], 0x20
jne 0x49d3f6
mov esi, dword [ebp - 0x8f0]
movzx esi, si
mov dword [ebp - 0x868], esi
mov esi, dword [ebp - 0x79c]
mov byte [ebp - 0x85d], 1
mov eax, dword [eax]
mov dword [ebp - 0x7f0], edx
mov edx, dword [edx]
mov dword [ebp - 0x798], edx
test eax, 0x40000
je 0x4a6711
cmp word [ebp - 0xa00], 0
jne 0x4a6711
test edx, edx
je 0x4a6e0b
mov esi, 0x400
test word [edx + 8], si
mov esi, dword [ebp - 0x79c]
je 0x4a6719
mov dword [ebp - 0xa00], 1
movss dword [ebp - 0x914], xmm4
movss dword [ebp - 0x7a8], xmm0
jmp 0x4a6719
mov edi, dword [ebp - 0x790]
jmp 0x49d181
mov eax, dword [ebp - 0x7a0]
mov dword [ebp - 0x830], eax
mov eax, dword [ebp - 0x798]
mov byte [ebp - 0x85d], 0
mov eax, dword [eax + 0xc]
test ecx, 0x400
je 0x49d499
mov edi, dword [eax + 0x494]
jmp 0x49d49f
mov edi, dword [eax + 0x410]
movss xmm0, dword [ebp - 0x7a4]
mov edx, edi
mov eax, dword [ebp - 0x790]
push 1
push ecx
mov ecx, dword [ebp - 0x884]
add eax, 0xfffffff4
movss dword [esp], xmm0
push eax
push dword [ebp - 0x7f8]
mov dword [ebp - 0x7d4], edi
push dword [ebp - 0x7b4]
call fcn.0040ec40
mov eax, dword [ebp - 0x798]
lea ecx, [edi + 0x100]
movss dword [ebp - 0x7d0], xmm0
add esp, 0x14
mov eax, dword [eax + 0xc]
movd xmm0, dword [eax + 0xa80]
mov eax, dword [ebp - 0x7b4]
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0x7e0]
cvtpd2ps xmm0, xmm0
addss xmm0, dword [eax]
movss dword [eax], xmm0
mov eax, dword [ebp - 0x7f8]
push dword [eax]
call fcn.00410b00
mov ecx, dword [ebp - 0x798]
movss xmm1, dword [ebp - 0x7a4]
movsd xmm2, qword [ebp - 0x7e0]
cvtps2pd xmm1, xmm1
mov ecx, dword [ecx + 0xc]
add ecx, 0xa80
movd xmm0, dword [ecx]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm2
divsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
addss xmm0, dword [eax]
movss dword [eax], xmm0
lea eax, [esi - 0xc]
mov esi, 1
mov dword [ebp - 0x7f0], eax
cmp eax, esi
jle 0x49d60a
mov eax, esi
nop dword [eax + eax]
movd xmm0, dword [ecx]
mov ecx, dword [ebp - 0x7b4]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm2
cvtpd2ps xmm0, xmm0
addss xmm0, dword [ecx + eax*4]
movss dword [ecx + eax*4], xmm0
mov ecx, dword [ebp - 0x7f8]
push dword [ecx + eax*4]
lea ecx, [edi + 0x100]
call fcn.00410b00
mov ecx, dword [ebp - 0x798]
inc esi
movss xmm2, dword [ebp - 0x7a4]
cvtps2pd xmm1, xmm2
mov edx, dword [ebp - 0x7f0]
mov ecx, dword [ecx + 0xc]
add ecx, 0xa80
movsd xmm2, qword [ebp - 0x7e0]
movd xmm0, dword [ecx]
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0x7e0]
divsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
addss xmm0, dword [eax]
movss dword [eax], xmm0
movsx eax, si
cmp eax, edx
jl 0x49d580
jmp 0x49d610
mov edx, dword [ebp - 0x7f0]
cmp word [ebp - 0x84c], 0x40
jne 0x49d7fa
mov edi, dword [ebp - 0x818]
mov esi, dword [ebp - 0x814]
mov ecx, dword [ebp - 0x798]
movd xmm2, dword [edi + 8]
movd xmm3, dword [edi + 4]
movd xmm0, dword [esi]
cvtdq2ps xmm0, xmm0
cvtdq2ps xmm2, xmm2
cvtdq2ps xmm3, xmm3
subss xmm2, dword [ebp - 0x87c]
addss xmm3, dword [ebp - 0x7a8]
subss xmm2, xmm0
movd xmm0, dword [esi + 4]
subss xmm3, dword [ebp - 0x854]
cvtdq2ps xmm0, xmm0
cvttss2si eax, xmm2
subss xmm3, xmm0
movss dword [ebp - 0x7c4], xmm2
mov dword [ebp - 0x6a8], eax
movss xmm0, dword [ebp - 0x7d0]
cvttss2si eax, xmm3
addss xmm0, xmm3
movss dword [ebp - 0x7bc], xmm3
mov dword [ebp - 0x6ac], eax
mov eax, dword [ecx + 0xc]
mov eax, dword [eax + 0xa80]
imul eax, edx
movd xmm1, eax
cvtdq2ps xmm1, xmm1
addss xmm1, xmm0
movss xmm0, dword [ebp - 0x85c]
addss xmm0, dword [ebp - 0x7fc]
cvttss2si eax, xmm1
cvtps2pd xmm0, xmm0
mov dword [ebp - 0x6a4], eax
mov eax, dword [ecx + 0xc]
mov ecx, dword [ebp - 0x7ec]
cvtps2pd xmm1, xmm2
mulsd xmm0, qword [eax + 0xad0]
divsd xmm0, qword [ebp - 0x8a0]
subsd xmm1, xmm0
cvttsd2si eax, xmm1
mov dword [ebp - 0x6b0], eax
test ecx, ecx
je 0x49d9c7
mov eax, dword [ebp - 0x7cc]
movsx edi, word [ebp - 0x868]
movzx esi, word [eax + 4]
movsx edx, si
add edx, edi
nop dword [eax + eax]
movzx ecx, word [ecx + 4]
movsx eax, cx
cmp edx, eax
jle 0x49d9c7
mov eax, dword [ebp - 0x88c]
mov edx, dword [ebp - 0x7ec]
test eax, eax
je 0x49d74c
cmp edx, eax
je 0x49d748
cmp dword [edx + 8], eax
jne 0x49d74c
mov al, 1
jmp 0x49d74e
xor al, al
push dword [ebp - 0x79c]
push dword [ebp - 0x7b4]
push eax
lea eax, [ebp - 0x6b0]
push eax
movzx eax, word [edx + 6]
push eax
push ecx
push esi
push dword [ebp - 0x868]
lea eax, [ebx + 0x64]
sub esp, 0xc
mov ecx, esp
movss dword [esp + 8], xmm3
movss dword [esp + 4], xmm2
push eax
call fcn.0043ce00
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
movss xmm3, dword [ebp - 0x7a4]
mov ecx, dword [ebp - 0x7f4]
call fcn.004a8360
mov eax, dword [ebp - 0x7cc]
movss xmm2, dword [ebp - 0x7c4]
movss xmm3, dword [ebp - 0x7bc]
movzx esi, word [eax + 4]
mov eax, dword [ebp - 0x7ec]
movsx edx, si
add edx, edi
movsx ecx, word [eax + 6]
movsx eax, word [eax + 4]
add ecx, eax
cmp edx, ecx
jl 0x49d9c7
mov ecx, dword [ebp - 0x7ec]
mov ecx, dword [ecx]
mov dword [ebp - 0x7ec], ecx
test ecx, ecx
jne 0x49d720
jmp 0x49d9c7
mov ecx, dword [ebp - 0x818]
mov eax, dword [ebp - 0x814]
movd xmm2, dword [ecx]
movd xmm0, dword [eax]
movd xmm3, dword [ecx + 4]
cvtdq2ps xmm2, xmm2
mov ecx, dword [ebp - 0x798]
cvtdq2ps xmm0, xmm0
addss xmm2, dword [ebp - 0x7a8]
cvtdq2ps xmm3, xmm3
subss xmm2, dword [ebp - 0x854]
addss xmm3, dword [ebp - 0x87c]
subss xmm2, xmm0
movd xmm0, dword [eax + 4]
cvtdq2ps xmm0, xmm0
cvttss2si eax, xmm2
subss xmm3, xmm0
movss dword [ebp - 0x7c4], xmm2
movss xmm0, dword [ebp - 0x85c]
addss xmm0, dword [ebp - 0x7fc]
mov dword [ebp - 0x6b0], eax
cvttss2si eax, xmm3
cvtps2pd xmm1, xmm0
mov dword [ebp - 0x6ac], eax
mov eax, dword [ecx + 0xc]
cvtps2pd xmm0, xmm3
mulsd xmm1, qword [eax + 0xad0]
movss dword [ebp - 0x7bc], xmm3
divsd xmm1, qword [ebp - 0x8a0]
addsd xmm1, xmm0
movss xmm0, dword [ebp - 0x7d0]
addss xmm0, xmm2
cvttsd2si eax, xmm1
mov dword [ebp - 0x6a4], eax
mov eax, dword [ecx + 0xc]
mov ecx, dword [ebp - 0x7ec]
mov eax, dword [eax + 0xa80]
imul eax, edx
movd xmm1, eax
cvtdq2ps xmm1, xmm1
addss xmm1, xmm0
cvttss2si eax, xmm1
mov dword [ebp - 0x6a8], eax
test ecx, ecx
je 0x49d9c7
mov eax, dword [ebp - 0x7cc]
movsx edi, word [ebp - 0x868]
movzx esi, word [eax + 4]
movsx edx, si
add edx, edi
movzx ecx, word [ecx + 4]
movsx eax, cx
cmp edx, eax
jle 0x49d9c7
mov eax, dword [ebp - 0x88c]
mov edx, dword [ebp - 0x7ec]
test eax, eax
je 0x49d922
cmp edx, eax
je 0x49d91e
cmp dword [edx + 8], eax
jne 0x49d922
mov al, 1
jmp 0x49d924
xor al, al
push dword [ebp - 0x79c]
push dword [ebp - 0x7b4]
push eax
lea eax, [ebp - 0x6b0]
push eax
movzx eax, word [edx + 6]
push eax
push ecx
push esi
push dword [ebp - 0x868]
lea eax, [ebx + 0x64]
sub esp, 0xc
mov ecx, esp
movss dword [esp + 8], xmm3
movss dword [esp + 4], xmm2
push eax
call fcn.0043ce00
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
movss xmm3, dword [ebp - 0x7a4]
mov ecx, dword [ebp - 0x7f4]
call fcn.004a7e00
mov eax, dword [ebp - 0x7cc]
movss xmm2, dword [ebp - 0x7c4]
movss xmm3, dword [ebp - 0x7bc]
movzx esi, word [eax + 4]
mov eax, dword [ebp - 0x7ec]
movsx edx, si
add edx, edi
movsx ecx, word [eax + 6]
movsx eax, word [eax + 4]
add ecx, eax
cmp edx, ecx
jl 0x49d9c7
mov ecx, dword [ebp - 0x7ec]
mov ecx, dword [ecx]
mov dword [ebp - 0x7ec], ecx
test ecx, ecx
jne 0x49d8f6
push dword [ebp - 0x83c]
movss xmm0, dword [ebp - 0x7a4]
lea eax, [ebx + 0x64]
push dword [ebp - 0x7f0]
push dword [ebp - 0x884]
sub esp, 0xc
movss dword [esp + 8], xmm0
movss dword [esp + 4], xmm3
movss dword [esp], xmm2
push 0
push ecx
mov ecx, esp
push eax
call fcn.0043ce00
push ecx
mov ecx, esp
push dword [ebp - 0x80c]
call fcn.004a86c0
push ecx
mov ecx, esp
push dword [ebp - 0x808]
call fcn.004a86c0
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
mov ecx, dword [ebp - 0x7d4]
xor edx, edx
call fcn.0043a210
mov eax, dword [ebp - 0x830]
mov edx, dword [ebp - 0x7f0]
mov dword [ebp - 0x7a0], eax
mov eax, dword [ebp - 0x798]
movsd xmm5, qword [ebp - 0x7e0]
movss xmm2, dword [ebp - 0x7d0]
movss xmm3, dword [ebp - 0x854]
mov ecx, dword [eax + 0xc]
mov eax, dword [ecx + 0xa80]
imul eax, edx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm5
cvtpd2ps xmm0, xmm0
addss xmm0, xmm2
comiss xmm0, xmm3
jbe 0x4a66c9
subss xmm0, xmm3
xor esi, esi
addss xmm0, dword [ebp - 0x7a8]
movaps xmm4, xmm0
movss dword [ebp - 0x7a8], xmm4
test edx, edx
jle 0x49db1e
mov eax, dword [ebp - 0x810]
xor edx, edx
movsx edi, ax
mov dword [ebp - 0x7e4], edi
nop
mov eax, dword [ebp - 0x7e8]
lea ecx, [edi + edx]
mov edi, dword [ebp - 0x890]
mov ax, word [eax + edx*2 + 6]
mov word [edi + ecx*2], ax
mov eax, dword [ebp - 0x7b4]
mov edi, dword [ebp - 0x7e4]
mov eax, dword [eax + edx*4]
mov edx, dword [ebp - 0x850]
mov dword [edx + ecx*4], eax
test si, si
jne 0x49db03
movss xmm0, dword [edx + edi*4]
subss xmm0, xmm3
movss dword [edx + edi*4], xmm0
inc esi
movsx edx, si
cmp edx, dword [ebp - 0x7f0]
jl 0x49dac0
mov eax, dword [ebp - 0x798]
mov edx, dword [ebp - 0x7f0]
mov ecx, dword [eax + 0xc]
mov eax, dword [ebp - 0x810]
mov edi, dword [ebp - 0x790]
add eax, 0xfffffff4
add eax, edi
mov esi, dword [ebp - 0x79c]
mov dword [ebp - 0x810], eax
mov eax, dword [ecx + 0xa80]
imul eax, edx
mov cl, byte [ebp - 0x785]
movd xmm0, eax
mov eax, dword [ebp - 0x794]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm5
cvtpd2ps xmm3, xmm0
addss xmm3, xmm2
movss xmm2, dword [ebp - 0x7ac]
movss dword [ebp - 0x854], xmm3
jmp 0x49d3b8
mov esi, 0x300c
cmp word [edx + 2], cx
jne 0x49e3de
cmp word [eax], si
jne 0x49e3de
movsx esi, di
mov eax, 0x300d
cmp word [edx + esi*2 - 0x12], ax
jne 0x49e3de
mov eax, 0x306f
cmp word [edx + esi*2 - 0x10], ax
jne 0x49e3de
mov eax, 0x4e0b
cmp word [edx + esi*2 - 0xe], ax
jne 0x49e3de
mov eax, 0x4ed8
cmp word [edx + esi*2 - 0xc], ax
jne 0x49e3de
mov eax, 0x304d
cmp word [edx + esi*2 - 0xa], ax
jne 0x49e3de
mov eax, 0x5c0f
cmp word [edx + esi*2 - 8], ax
jne 0x49e3de
mov eax, 0x6587
cmp word [edx + esi*2 - 6], ax
jne 0x49e3de
mov eax, 0x5b57
cmp word [edx + esi*2 - 4], ax
jne 0x49e3de
mov eax, 0xff3d
cmp word [edx + esi*2 - 2], ax
jne 0x49e3de
mov eax, dword [ebp - 0x794]
mov ecx, dword [eax]
test cl, 0x20
jne 0x4a66b0
cmp word [ebp - 0x8ac], 0
jne 0x49dcce
cmp dword [ebp - 0x908], 0
je 0x49dcce
movsd xmm0, qword [ebp - 0xa20]
lea eax, [ebx + 0x64]
sub esp, 0x14
movsd qword [esp + 0xc], xmm0
movsd xmm0, qword [ebp - 0xa28]
movsd qword [esp + 4], xmm0
movss xmm0, dword [ebp - 0x7a4]
movss dword [esp], xmm0
push dword [ebp - 0x984]
push ecx
mov ecx, esp
push eax
call fcn.0043ce00
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
push ecx
lea eax, [ebx + 0x5c]
mov ecx, esp
push eax
call fcn.0043ce00
push dword [ebp - 0x808]
push dword [ebp - 0x80c]
push dword [ebx + 0x50]
push dword [ebp - 0x910]
push dword [ebp - 0x798]
push dword [ebp - 0x908]
push 0x1f
jmp 0x49d323
mov eax, dword [ebp - 0x7a0]
mov dword [ebp - 0x830], eax
mov eax, dword [ebp - 0x798]
mov byte [ebp - 0x85d], 0
mov eax, dword [eax + 0xc]
test ecx, 0x400
je 0x49dcfa
mov edi, dword [eax + 0x494]
jmp 0x49dd00
mov edi, dword [eax + 0x410]
movss xmm0, dword [ebp - 0x7a4]
mov edx, edi
mov eax, dword [ebp - 0x790]
push 1
push ecx
mov ecx, dword [ebp - 0x884]
add eax, 0xfffffff4
movss dword [esp], xmm0
push eax
push dword [ebp - 0x7f8]
mov dword [ebp - 0x7d4], edi
push dword [ebp - 0x7b4]
call fcn.0040ec40
mov eax, dword [ebp - 0x798]
lea ecx, [edi + 0x100]
movss dword [ebp - 0x7d0], xmm0
add esp, 0x14
mov eax, dword [eax + 0xc]
movd xmm0, dword [eax + 0xa80]
mov eax, dword [ebp - 0x7b4]
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0x7e0]
cvtpd2ps xmm0, xmm0
addss xmm0, dword [eax]
movss dword [eax], xmm0
mov eax, dword [ebp - 0x7f8]
push dword [eax]
call fcn.00410b00
mov ecx, dword [ebp - 0x798]
movss xmm1, dword [ebp - 0x7a4]
movsd xmm2, qword [ebp - 0x7e0]
cvtps2pd xmm1, xmm1
mov ecx, dword [ecx + 0xc]
add ecx, 0xa80
movd xmm0, dword [ecx]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm2
divsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
addss xmm0, dword [eax]
movss dword [eax], xmm0
lea eax, [esi - 0xc]
mov esi, 1
mov dword [ebp - 0x7f0], eax
cmp eax, esi
jle 0x49de6a
mov eax, esi
nop dword [eax]
movd xmm0, dword [ecx]
mov ecx, dword [ebp - 0x7b4]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm2
cvtpd2ps xmm0, xmm0
addss xmm0, dword [ecx + eax*4]
movss dword [ecx + eax*4], xmm0
mov ecx, dword [ebp - 0x7f8]
push dword [ecx + eax*4]
lea ecx, [edi + 0x100]
call fcn.00410b00
mov ecx, dword [ebp - 0x798]
inc esi
movss xmm2, dword [ebp - 0x7a4]
cvtps2pd xmm1, xmm2
mov edx, dword [ebp - 0x7f0]
mov ecx, dword [ecx + 0xc]
add ecx, 0xa80
movsd xmm2, qword [ebp - 0x7e0]
movd xmm0, dword [ecx]
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0x7e0]
divsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
addss xmm0, dword [eax]
movss dword [eax], xmm0
movsx eax, si
cmp eax, edx
jl 0x49dde0
jmp 0x49de70
mov edx, dword [ebp - 0x7f0]
cmp word [ebp - 0x84c], 0x40
jne 0x49e05a
mov edi, dword [ebp - 0x818]
mov esi, dword [ebp - 0x814]
mov ecx, dword [ebp - 0x798]
movd xmm2, dword [edi + 8]
movd xmm3, dword [edi + 4]
movd xmm0, dword [esi]
cvtdq2ps xmm2, xmm2
cvtdq2ps xmm0, xmm0
subss xmm2, dword [ebp - 0x864]
cvtdq2ps xmm3, xmm3
subss xmm2, xmm0
movd xmm0, dword [esi + 4]
addss xmm3, dword [ebp - 0x7a8]
cvtdq2ps xmm0, xmm0
subss xmm3, dword [ebp - 0x854]
cvttss2si eax, xmm2
subss xmm3, xmm0
movss dword [ebp - 0x7c4], xmm2
mov dword [ebp - 0x6b0], eax
movss xmm0, dword [ebp - 0x7d0]
cvttss2si eax, xmm3
addss xmm0, xmm3
movss dword [ebp - 0x7bc], xmm3
mov dword [ebp - 0x6ac], eax
mov eax, dword [ecx + 0xc]
mov eax, dword [eax + 0xa80]
imul eax, edx
movd xmm1, eax
cvtdq2ps xmm1, xmm1
addss xmm1, xmm0
movss xmm0, dword [ebp - 0x85c]
addss xmm0, dword [ebp - 0x7fc]
cvttss2si eax, xmm1
cvtps2pd xmm1, xmm0
mov dword [ebp - 0x6a4], eax
mov eax, dword [ecx + 0xc]
mov ecx, dword [ebp - 0x7ec]
cvtps2pd xmm0, xmm2
mulsd xmm1, qword [eax + 0xad0]
divsd xmm1, qword [ebp - 0x8a0]
addsd xmm1, xmm0
cvttsd2si eax, xmm1
mov dword [ebp - 0x6a8], eax
test ecx, ecx
je 0x49e227
mov eax, dword [ebp - 0x7cc]
movsx edi, word [ebp - 0x868]
movzx esi, word [eax + 4]
movsx edx, si
add edx, edi
nop dword [eax + eax]
movzx ecx, word [ecx + 4]
movsx eax, cx
cmp edx, eax
jle 0x49e227
mov eax, dword [ebp - 0x88c]
mov edx, dword [ebp - 0x7ec]
test eax, eax
je 0x49dfac
cmp edx, eax
je 0x49dfa8
cmp dword [edx + 8], eax
jne 0x49dfac
mov al, 1
jmp 0x49dfae
xor al, al
push dword [ebp - 0x79c]
push dword [ebp - 0x7b4]
push eax
lea eax, [ebp - 0x6b0]
push eax
movzx eax, word [edx + 6]
push eax
push ecx
push esi
push dword [ebp - 0x868]
lea eax, [ebx + 0x64]
sub esp, 0xc
mov ecx, esp
movss dword [esp + 8], xmm3
movss dword [esp + 4], xmm2
push eax
call fcn.0043ce00
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
movss xmm3, dword [ebp - 0x7a4]
mov ecx, dword [ebp - 0x7f4]
call fcn.004a8360
mov eax, dword [ebp - 0x7cc]
movss xmm2, dword [ebp - 0x7c4]
movss xmm3, dword [ebp - 0x7bc]
movzx esi, word [eax + 4]
mov eax, dword [ebp - 0x7ec]
movsx edx, si
add edx, edi
movsx ecx, word [eax + 6]
movsx eax, word [eax + 4]
add ecx, eax
cmp edx, ecx
jl 0x49e227
mov ecx, dword [ebp - 0x7ec]
mov ecx, dword [ecx]
mov dword [ebp - 0x7ec], ecx
test ecx, ecx
jne 0x49df80
jmp 0x49e227
mov ecx, dword [ebp - 0x818]
mov eax, dword [ebp - 0x814]
movd xmm2, dword [ecx]
movd xmm0, dword [eax]
movd xmm3, dword [ecx + 4]
cvtdq2ps xmm2, xmm2
mov ecx, dword [ebp - 0x798]
cvtdq2ps xmm0, xmm0
addss xmm2, dword [ebp - 0x7a8]
cvtdq2ps xmm3, xmm3
subss xmm2, dword [ebp - 0x854]
addss xmm3, dword [ebp - 0x864]
subss xmm2, xmm0
movd xmm0, dword [eax + 4]
cvtdq2ps xmm0, xmm0
cvttss2si eax, xmm2
subss xmm3, xmm0
movss dword [ebp - 0x7c4], xmm2
movss xmm0, dword [ebp - 0x85c]
addss xmm0, dword [ebp - 0x7fc]
mov dword [ebp - 0x6b0], eax
cvttss2si eax, xmm3
cvtps2pd xmm0, xmm0
mov dword [ebp - 0x6a4], eax
mov eax, dword [ecx + 0xc]
cvtps2pd xmm1, xmm3
mulsd xmm0, qword [eax + 0xad0]
movss dword [ebp - 0x7bc], xmm3
divsd xmm0, qword [ebp - 0x8a0]
subsd xmm1, xmm0
movss xmm0, dword [ebp - 0x7d0]
addss xmm0, xmm2
cvttsd2si eax, xmm1
mov dword [ebp - 0x6ac], eax
mov eax, dword [ecx + 0xc]
mov ecx, dword [ebp - 0x7ec]
mov eax, dword [eax + 0xa80]
imul eax, edx
movd xmm1, eax
cvtdq2ps xmm1, xmm1
addss xmm1, xmm0
cvttss2si eax, xmm1
mov dword [ebp - 0x6a8], eax
test ecx, ecx
je 0x49e227
mov eax, dword [ebp - 0x7cc]
movsx edi, word [ebp - 0x868]
movzx esi, word [eax + 4]
movsx edx, si
add edx, edi
movzx ecx, word [ecx + 4]
movsx eax, cx
cmp edx, eax
jle 0x49e227
mov eax, dword [ebp - 0x88c]
mov edx, dword [ebp - 0x7ec]
test eax, eax
je 0x49e182
cmp edx, eax
je 0x49e17e
cmp dword [edx + 8], eax
jne 0x49e182
mov al, 1
jmp 0x49e184
xor al, al
push dword [ebp - 0x79c]
push dword [ebp - 0x7b4]
push eax
lea eax, [ebp - 0x6b0]
push eax
movzx eax, word [edx + 6]
push eax
push ecx
push esi
push dword [ebp - 0x868]
lea eax, [ebx + 0x64]
sub esp, 0xc
mov ecx, esp
movss dword [esp + 8], xmm3
movss dword [esp + 4], xmm2
push eax
call fcn.0043ce00
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
movss xmm3, dword [ebp - 0x7a4]
mov ecx, dword [ebp - 0x7f4]
call fcn.004a7e00
mov eax, dword [ebp - 0x7cc]
movss xmm2, dword [ebp - 0x7c4]
movss xmm3, dword [ebp - 0x7bc]
movzx esi, word [eax + 4]
mov eax, dword [ebp - 0x7ec]
movsx edx, si
add edx, edi
movsx ecx, word [eax + 6]
movsx eax, word [eax + 4]
add ecx, eax
cmp edx, ecx
jl 0x49e227
mov ecx, dword [ebp - 0x7ec]
mov ecx, dword [ecx]
mov dword [ebp - 0x7ec], ecx
test ecx, ecx
jne 0x49e156
push dword [ebp - 0x83c]
movss xmm0, dword [ebp - 0x7a4]
lea eax, [ebx + 0x64]
push dword [ebp - 0x7f0]
push dword [ebp - 0x884]
sub esp, 0xc
movss dword [esp + 8], xmm0
movss dword [esp + 4], xmm3
movss dword [esp], xmm2
push 8
push ecx
mov ecx, esp
push eax
call fcn.0043ce00
push ecx
mov ecx, esp
push dword [ebp - 0x80c]
call fcn.004a86c0
push ecx
mov ecx, esp
push dword [ebp - 0x808]
call fcn.004a86c0
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
mov ecx, dword [ebp - 0x7d4]
xor edx, edx
call fcn.0043a210
mov eax, dword [ebp - 0x830]
mov edx, dword [ebp - 0x7f0]
mov dword [ebp - 0x7a0], eax
mov eax, dword [ebp - 0x798]
movsd xmm5, qword [ebp - 0x7e0]
movss xmm2, dword [ebp - 0x7d0]
movss xmm3, dword [ebp - 0x854]
mov ecx, dword [eax + 0xc]
mov eax, dword [ecx + 0xa80]
imul eax, edx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm5
cvtpd2ps xmm0, xmm0
addss xmm0, xmm2
comiss xmm0, xmm3
jbe 0x4a66c9
subss xmm0, xmm3
xor esi, esi
addss xmm0, dword [ebp - 0x7a8]
movaps xmm4, xmm0
movss dword [ebp - 0x7a8], xmm4
test edx, edx
jle 0x49e37e
mov eax, dword [ebp - 0x810]
xor edx, edx
movsx edi, ax
mov dword [ebp - 0x7e4], edi
nop
mov eax, dword [ebp - 0x7e8]
lea ecx, [edi + edx]
mov edi, dword [ebp - 0x890]
mov ax, word [eax + edx*2 + 6]
mov word [edi + ecx*2], ax
mov eax, dword [ebp - 0x7b4]
mov edi, dword [ebp - 0x7e4]
mov eax, dword [eax + edx*4]
mov edx, dword [ebp - 0x850]
mov dword [edx + ecx*4], eax
test si, si
jne 0x49e363
movss xmm0, dword [edx + edi*4]
subss xmm0, xmm3
movss dword [edx + edi*4], xmm0
inc esi
movsx edx, si
cmp edx, dword [ebp - 0x7f0]
jl 0x49e320
mov eax, dword [ebp - 0x798]
mov edx, dword [ebp - 0x7f0]
mov ecx, dword [eax + 0xc]
mov eax, dword [ebp - 0x810]
add eax, 0xfffffff4
mov edi, dword [ebp - 0x790]
add eax, edi
mov dword [ebp - 0x810], eax
mov eax, dword [ecx + 0xa80]
imul eax, edx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm5
mov cl, byte [ebp - 0x785]
mov esi, dword [ebp - 0x79c]
mov eax, dword [ebp - 0x794]
cvtpd2ps xmm0, xmm0
addss xmm0, xmm2
movss xmm2, dword [ebp - 0x7ac]
movss dword [ebp - 0x854], xmm0
jmp 0x49d3b8
mov ecx, 0xff03
mov eax, dword [ebp - 0x86c]
cmp di, 0xc
jl 0x49f35c
mov esi, 0xff3b
cmp ax, si
jne 0x49f35c
cmp word [edx + 2], cx
lea ecx, [edx + 4]
jne 0x49ebc8
mov esi, 0x300c
cmp word [ecx], si
jne 0x49ebc8
movsx esi, di
mov eax, 0x300d
cmp word [edx + esi*2 - 0x10], ax
movzx eax, word [edx]
jne 0x49ebc8
mov ecx, 0x306f
cmp word [edx + esi*2 - 0xe], cx
lea ecx, [edx + 4]
jne 0x49ebc8
mov ecx, 0x884c
cmp word [edx + esi*2 - 0xc], cx
lea ecx, [edx + 4]
jne 0x49ebc8
mov eax, 0x53f3
cmp word [edx + esi*2 - 0xa], ax
movzx eax, word [edx]
jne 0x49ebc8
mov edi, 0x5c0f
cmp word [edx + esi*2 - 8], di
mov edi, dword [ebp - 0x790]
jne 0x49ebc8
mov ecx, 0x66f8
cmp word [edx + esi*2 - 6], cx
lea ecx, [edx + 4]
jne 0x49ebc8
mov eax, 0x304d
cmp word [edx + esi*2 - 4], ax
movzx eax, word [edx]
jne 0x49ebc8
mov edi, 0xff3d
cmp word [edx + esi*2 - 2], di
mov edi, dword [ebp - 0x790]
jne 0x49ebc8
mov eax, dword [ebp - 0x794]
mov ecx, dword [eax]
test cl, 0x20
jne 0x4a66b0
cmp word [ebp - 0x8ac], 0
jne 0x49e4e0
cmp dword [ebp - 0x908], 0
jne 0x49dc50
mov eax, dword [ebp - 0x7a0]
mov dword [ebp - 0x830], eax
mov eax, dword [ebp - 0x798]
mov byte [ebp - 0x85d], 0
mov eax, dword [eax + 0xc]
test ecx, 0x400
je 0x49e50c
mov edi, dword [eax + 0x494]
jmp 0x49e512
mov edi, dword [eax + 0x410]
movss xmm0, dword [ebp - 0x7a4]
mov edx, edi
mov eax, dword [ebp - 0x790]
push 1
push ecx
mov ecx, dword [ebp - 0x884]
add eax, 0xfffffff5
movss dword [esp], xmm0
push eax
push dword [ebp - 0x7f8]
mov dword [ebp - 0x7d4], edi
push dword [ebp - 0x7b4]
call fcn.0040ec40
mov eax, dword [ebp - 0x798]
lea ecx, [edi + 0x100]
movss dword [ebp - 0x7d0], xmm0
add esp, 0x14
mov eax, dword [eax + 0xc]
movd xmm0, dword [eax + 0xa80]
mov eax, dword [ebp - 0x7b4]
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0x7e0]
cvtpd2ps xmm0, xmm0
addss xmm0, dword [eax]
movss dword [eax], xmm0
mov eax, dword [ebp - 0x7f8]
push dword [eax]
call fcn.00410b00
mov ecx, dword [ebp - 0x798]
movss xmm1, dword [ebp - 0x7a4]
movsd xmm2, qword [ebp - 0x7e0]
cvtps2pd xmm1, xmm1
mov ecx, dword [ecx + 0xc]
add ecx, 0xa80
movd xmm0, dword [ecx]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm2
divsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
addss xmm0, dword [eax]
movss dword [eax], xmm0
lea eax, [esi - 0xb]
mov esi, 1
mov dword [ebp - 0x86c], eax
cmp eax, esi
jle 0x49e67a
mov eax, esi
nop
movd xmm0, dword [ecx]
mov ecx, dword [ebp - 0x7b4]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm2
cvtpd2ps xmm0, xmm0
addss xmm0, dword [ecx + eax*4]
movss dword [ecx + eax*4], xmm0
mov ecx, dword [ebp - 0x7f8]
push dword [ecx + eax*4]
lea ecx, [edi + 0x100]
call fcn.00410b00
mov ecx, dword [ebp - 0x798]
inc esi
movss xmm2, dword [ebp - 0x7a4]
cvtps2pd xmm1, xmm2
mov edx, dword [ebp - 0x86c]
mov ecx, dword [ecx + 0xc]
add ecx, 0xa80
movsd xmm2, qword [ebp - 0x7e0]
movd xmm0, dword [ecx]
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0x7e0]
divsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
addss xmm0, dword [eax]
movss dword [eax], xmm0
movsx eax, si
cmp eax, edx
jl 0x49e5f0
jmp 0x49e680
mov edx, dword [ebp - 0x86c]
cmp word [ebp - 0x84c], 0x40
jne 0x49e86a
mov edi, dword [ebp - 0x818]
mov esi, dword [ebp - 0x814]
mov ecx, dword [ebp - 0x798]
movd xmm2, dword [edi + 8]
movd xmm3, dword [edi + 4]
movd xmm0, dword [esi]
cvtdq2ps xmm0, xmm0
cvtdq2ps xmm2, xmm2
cvtdq2ps xmm3, xmm3
subss xmm2, dword [ebp - 0x87c]
addss xmm3, dword [ebp - 0x7a8]
subss xmm2, xmm0
movd xmm0, dword [esi + 4]
subss xmm3, dword [ebp - 0x854]
cvtdq2ps xmm0, xmm0
cvttss2si eax, xmm2
subss xmm3, xmm0
movss dword [ebp - 0x7c4], xmm2
mov dword [ebp - 0x6a8], eax
movss xmm0, dword [ebp - 0x7d0]
cvttss2si eax, xmm3
addss xmm0, xmm3
movss dword [ebp - 0x7bc], xmm3
mov dword [ebp - 0x6ac], eax
mov eax, dword [ecx + 0xc]
mov eax, dword [eax + 0xa80]
imul eax, edx
movd xmm1, eax
cvtdq2ps xmm1, xmm1
addss xmm1, xmm0
movss xmm0, dword [ebp - 0x85c]
addss xmm0, dword [ebp - 0x7fc]
cvttss2si eax, xmm1
cvtps2pd xmm0, xmm0
mov dword [ebp - 0x6a4], eax
mov eax, dword [ecx + 0xc]
mov ecx, dword [ebp - 0x7ec]
cvtps2pd xmm1, xmm2
mulsd xmm0, qword [eax + 0xad0]
divsd xmm0, qword [ebp - 0x8a0]
subsd xmm1, xmm0
cvttsd2si eax, xmm1
mov dword [ebp - 0x6b0], eax
test ecx, ecx
je 0x49ea37
mov eax, dword [ebp - 0x7cc]
movsx edi, word [ebp - 0x868]
movzx esi, word [eax + 4]
movsx edx, si
add edx, edi
nop dword [eax + eax]
movzx ecx, word [ecx + 4]
movsx eax, cx
cmp edx, eax
jle 0x49ea37
mov eax, dword [ebp - 0x88c]
mov edx, dword [ebp - 0x7ec]
test eax, eax
je 0x49e7bc
cmp edx, eax
je 0x49e7b8
cmp dword [edx + 8], eax
jne 0x49e7bc
mov al, 1
jmp 0x49e7be
xor al, al
push dword [ebp - 0x79c]
push dword [ebp - 0x7b4]
push eax
lea eax, [ebp - 0x6b0]
push eax
movzx eax, word [edx + 6]
push eax
push ecx
push esi
push dword [ebp - 0x868]
lea eax, [ebx + 0x64]
sub esp, 0xc
mov ecx, esp
movss dword [esp + 8], xmm3
movss dword [esp + 4], xmm2
push eax
call fcn.0043ce00
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
movss xmm3, dword [ebp - 0x7a4]
mov ecx, dword [ebp - 0x7f4]
call fcn.004a8360
mov eax, dword [ebp - 0x7cc]
movss xmm2, dword [ebp - 0x7c4]
movss xmm3, dword [ebp - 0x7bc]
movzx esi, word [eax + 4]
mov eax, dword [ebp - 0x7ec]
movsx edx, si
add edx, edi
movsx ecx, word [eax + 6]
movsx eax, word [eax + 4]
add ecx, eax
cmp edx, ecx
jl 0x49ea37
mov ecx, dword [ebp - 0x7ec]
mov ecx, dword [ecx]
mov dword [ebp - 0x7ec], ecx
test ecx, ecx
jne 0x49e790
jmp 0x49ea37
mov ecx, dword [ebp - 0x818]
mov eax, dword [ebp - 0x814]
movd xmm2, dword [ecx]
movd xmm0, dword [eax]
movd xmm3, dword [ecx + 4]
cvtdq2ps xmm2, xmm2
mov ecx, dword [ebp - 0x798]
cvtdq2ps xmm0, xmm0
addss xmm2, dword [ebp - 0x7a8]
cvtdq2ps xmm3, xmm3
subss xmm2, dword [ebp - 0x854]
addss xmm3, dword [ebp - 0x87c]
subss xmm2, xmm0
movd xmm0, dword [eax + 4]
cvtdq2ps xmm0, xmm0
cvttss2si eax, xmm2
subss xmm3, xmm0
movss dword [ebp - 0x7c4], xmm2
movss xmm0, dword [ebp - 0x85c]
addss xmm0, dword [ebp - 0x7fc]
mov dword [ebp - 0x6b0], eax
cvttss2si eax, xmm3
cvtps2pd xmm1, xmm0
mov dword [ebp - 0x6ac], eax
mov eax, dword [ecx + 0xc]
cvtps2pd xmm0, xmm3
mulsd xmm1, qword [eax + 0xad0]
movss dword [ebp - 0x7bc], xmm3
divsd xmm1, qword [ebp - 0x8a0]
addsd xmm1, xmm0
movss xmm0, dword [ebp - 0x7d0]
addss xmm0, xmm2
cvttsd2si eax, xmm1
mov dword [ebp - 0x6a4], eax
mov eax, dword [ecx + 0xc]
mov ecx, dword [ebp - 0x7ec]
mov eax, dword [eax + 0xa80]
imul eax, edx
movd xmm1, eax
cvtdq2ps xmm1, xmm1
addss xmm1, xmm0
cvttss2si eax, xmm1
mov dword [ebp - 0x6a8], eax
test ecx, ecx
je 0x49ea37
mov eax, dword [ebp - 0x7cc]
movsx edi, word [ebp - 0x868]
movzx esi, word [eax + 4]
movsx edx, si
add edx, edi
movzx ecx, word [ecx + 4]
movsx eax, cx
cmp edx, eax
jle 0x49ea37
mov eax, dword [ebp - 0x88c]
mov edx, dword [ebp - 0x7ec]
test eax, eax
je 0x49e992
cmp edx, eax
je 0x49e98e
cmp dword [edx + 8], eax
jne 0x49e992
mov al, 1
jmp 0x49e994
xor al, al
push dword [ebp - 0x79c]
push dword [ebp - 0x7b4]
push eax
lea eax, [ebp - 0x6b0]
push eax
movzx eax, word [edx + 6]
push eax
push ecx
push esi
push dword [ebp - 0x868]
lea eax, [ebx + 0x64]
sub esp, 0xc
mov ecx, esp
movss dword [esp + 8], xmm3
movss dword [esp + 4], xmm2
push eax
call fcn.0043ce00
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
movss xmm3, dword [ebp - 0x7a4]
mov ecx, dword [ebp - 0x7f4]
call fcn.004a7e00
mov eax, dword [ebp - 0x7cc]
movss xmm2, dword [ebp - 0x7c4]
movss xmm3, dword [ebp - 0x7bc]
movzx esi, word [eax + 4]
mov eax, dword [ebp - 0x7ec]
movsx edx, si
add edx, edi
movsx ecx, word [eax + 6]
movsx eax, word [eax + 4]
add ecx, eax
cmp edx, ecx
jl 0x49ea37
mov ecx, dword [ebp - 0x7ec]
mov ecx, dword [ecx]
mov dword [ebp - 0x7ec], ecx
test ecx, ecx
jne 0x49e966
push dword [ebp - 0x83c]
movss xmm0, dword [ebp - 0x7a4]
lea eax, [ebx + 0x64]
push dword [ebp - 0x86c]
push dword [ebp - 0x884]
sub esp, 0xc
movss dword [esp + 8], xmm0
movss dword [esp + 4], xmm3
movss dword [esp], xmm2
push 0
push ecx
mov ecx, esp
push eax
call fcn.0043ce00
push ecx
mov ecx, esp
push dword [ebp - 0x80c]
call fcn.004a86c0
push ecx
mov ecx, esp
push dword [ebp - 0x808]
call fcn.004a86c0
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
mov ecx, dword [ebp - 0x7d4]
xor edx, edx
call fcn.0043a210
mov eax, dword [ebp - 0x830]
mov ecx, dword [ebp - 0x86c]
movsd xmm5, qword [ebp - 0x7e0]
mov dword [ebp - 0x7a0], eax
mov eax, dword [ebp - 0x798]
movss xmm2, dword [ebp - 0x7d0]
movss xmm3, dword [ebp - 0x854]
movd xmm1, ecx
mov eax, dword [eax + 0xc]
cvtdq2pd xmm1, xmm1
movd xmm0, dword [eax + 0xa80]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm5
mulsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
addss xmm0, xmm2
comiss xmm0, xmm3
jbe 0x4a66c9
subss xmm0, xmm3
xor esi, esi
addss xmm0, dword [ebp - 0x7a8]
movaps xmm4, xmm0
movss dword [ebp - 0x7a8], xmm4
test ecx, ecx
jle 0x49eb98
mov eax, dword [ebp - 0x810]
xor edx, edx
movsx edi, ax
mov dword [ebp - 0x7e4], edi
nop word [eax + eax]
mov eax, dword [ebp - 0x7e8]
lea ecx, [edi + edx]
mov edi, dword [ebp - 0x890]
mov ax, word [eax + edx*2 + 6]
mov word [edi + ecx*2], ax
mov eax, dword [ebp - 0x7b4]
mov edi, dword [ebp - 0x7e4]
mov eax, dword [eax + edx*4]
mov edx, dword [ebp - 0x850]
mov dword [edx + ecx*4], eax
test si, si
jne 0x49eb83
movss xmm0, dword [edx + edi*4]
subss xmm0, xmm3
movss dword [edx + edi*4], xmm0
inc esi
movsx edx, si
cmp edx, dword [ebp - 0x86c]
jl 0x49eb40
mov eax, dword [ebp - 0x798]
mov eax, dword [eax + 0xc]
movd xmm0, dword [eax + 0xa80]
mov ecx, dword [ebp - 0x810]
mov edi, dword [ebp - 0x790]
add ecx, 0xfffffff5
cvtdq2pd xmm0, xmm0
add ecx, edi
mov dword [ebp - 0x810], ecx
mulsd xmm0, xmm5
mulsd xmm0, xmm1
jmp 0x49e3aa
mov esi, 0xff03
cmp word [edx + 2], si
jne 0x49f361
mov esi, 0x300c
cmp word [ecx], si
mov esi, 0xff03
jne 0x49f361
movsx esi, di
mov ecx, 0x300d
cmp word [edx + esi*2 - 0x10], cx
jne 0x49f35c
mov ecx, 0x306f
cmp word [edx + esi*2 - 0xe], cx
jne 0x49f35c
mov ecx, 0x884c
cmp word [edx + esi*2 - 0xc], cx
jne 0x49f35c
mov ecx, 0x5de6
cmp word [edx + esi*2 - 0xa], cx
jne 0x49f35c
mov ecx, 0x5c0f
cmp word [edx + esi*2 - 8], cx
jne 0x49f35c
mov ecx, 0x66f8
cmp word [edx + esi*2 - 6], cx
jne 0x49f35c
mov ecx, 0x304d
cmp word [edx + esi*2 - 4], cx
jne 0x49f35c
mov ecx, 0xff3d
cmp word [edx + esi*2 - 2], cx
jne 0x49f35c
mov eax, dword [ebp - 0x794]
mov ecx, dword [eax]
test cl, 0x20
jne 0x4a66b0
cmp word [ebp - 0x8ac], 0
jne 0x49ec95
cmp dword [ebp - 0x908], 0
jne 0x49d2aa
mov eax, dword [ebp - 0x7a0]
mov dword [ebp - 0x830], eax
mov eax, dword [ebp - 0x798]
mov byte [ebp - 0x85d], 0
mov eax, dword [eax + 0xc]
test ecx, 0x400
je 0x49ecc1
mov edi, dword [eax + 0x494]
jmp 0x49ecc7
mov edi, dword [eax + 0x410]
movss xmm0, dword [ebp - 0x7a4]
mov edx, edi
mov eax, dword [ebp - 0x790]
push 1
push ecx
mov ecx, dword [ebp - 0x884]
add eax, 0xfffffff5
movss dword [esp], xmm0
push eax
push dword [ebp - 0x7f8]
mov dword [ebp - 0x7d4], edi
push dword [ebp - 0x7b4]
call fcn.0040ec40
mov eax, dword [ebp - 0x798]
lea ecx, [edi + 0x100]
movss dword [ebp - 0x7d0], xmm0
add esp, 0x14
mov eax, dword [eax + 0xc]
movd xmm0, dword [eax + 0xa80]
mov eax, dword [ebp - 0x7b4]
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0x7e0]
cvtpd2ps xmm0, xmm0
addss xmm0, dword [eax]
movss dword [eax], xmm0
mov eax, dword [ebp - 0x7f8]
push dword [eax]
call fcn.00410b00
mov ecx, dword [ebp - 0x798]
movss xmm1, dword [ebp - 0x7a4]
movsd xmm2, qword [ebp - 0x7e0]
cvtps2pd xmm1, xmm1
mov ecx, dword [ecx + 0xc]
add ecx, 0xa80
movd xmm0, dword [ecx]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm2
divsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
addss xmm0, dword [eax]
movss dword [eax], xmm0
lea eax, [esi - 0xb]
mov esi, 1
mov dword [ebp - 0x7f0], eax
cmp eax, esi
jle 0x49ee3a
mov eax, esi
nop dword [eax]
nop word [eax + eax]
movd xmm0, dword [ecx]
mov ecx, dword [ebp - 0x7b4]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm2
cvtpd2ps xmm0, xmm0
addss xmm0, dword [ecx + eax*4]
movss dword [ecx + eax*4], xmm0
mov ecx, dword [ebp - 0x7f8]
push dword [ecx + eax*4]
lea ecx, [edi + 0x100]
call fcn.00410b00
mov ecx, dword [ebp - 0x798]
inc esi
movss xmm2, dword [ebp - 0x7a4]
cvtps2pd xmm1, xmm2
mov edx, dword [ebp - 0x7f0]
mov ecx, dword [ecx + 0xc]
add ecx, 0xa80
movsd xmm2, qword [ebp - 0x7e0]
movd xmm0, dword [ecx]
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0x7e0]
divsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
addss xmm0, dword [eax]
movss dword [eax], xmm0
movsx eax, si
cmp eax, edx
jl 0x49edb0
jmp 0x49ee40
mov edx, dword [ebp - 0x7f0]
cmp word [ebp - 0x84c], 0x40
jne 0x49f02a
mov edi, dword [ebp - 0x818]
mov esi, dword [ebp - 0x814]
mov ecx, dword [ebp - 0x798]
movd xmm2, dword [edi + 8]
movd xmm3, dword [edi + 4]
movd xmm0, dword [esi]
cvtdq2ps xmm2, xmm2
cvtdq2ps xmm0, xmm0
subss xmm2, dword [ebp - 0x864]
cvtdq2ps xmm3, xmm3
subss xmm2, xmm0
movd xmm0, dword [esi + 4]
addss xmm3, dword [ebp - 0x7a8]
cvtdq2ps xmm0, xmm0
subss xmm3, dword [ebp - 0x854]
cvttss2si eax, xmm2
subss xmm3, xmm0
movss dword [ebp - 0x7c4], xmm2
mov dword [ebp - 0x6b0], eax
movss xmm0, dword [ebp - 0x7d0]
cvttss2si eax, xmm3
addss xmm0, xmm3
movss dword [ebp - 0x7bc], xmm3
mov dword [ebp - 0x6ac], eax
mov eax, dword [ecx + 0xc]
mov eax, dword [eax + 0xa80]
imul eax, edx
movd xmm1, eax
cvtdq2ps xmm1, xmm1
addss xmm1, xmm0
movss xmm0, dword [ebp - 0x85c]
addss xmm0, dword [ebp - 0x7fc]
cvttss2si eax, xmm1
cvtps2pd xmm1, xmm0
mov dword [ebp - 0x6a4], eax
mov eax, dword [ecx + 0xc]
mov ecx, dword [ebp - 0x7ec]
cvtps2pd xmm0, xmm2
mulsd xmm1, qword [eax + 0xad0]
divsd xmm1, qword [ebp - 0x8a0]
addsd xmm1, xmm0
cvttsd2si eax, xmm1
mov dword [ebp - 0x6a8], eax
test ecx, ecx
je 0x49f1f7
mov eax, dword [ebp - 0x7cc]
movsx edi, word [ebp - 0x868]
movzx esi, word [eax + 4]
movsx edx, si
add edx, edi
nop dword [eax + eax]
movzx ecx, word [ecx + 4]
movsx eax, cx
cmp edx, eax
jle 0x49f1f7
mov eax, dword [ebp - 0x88c]
mov edx, dword [ebp - 0x7ec]
test eax, eax
je 0x49ef7c
cmp edx, eax
je 0x49ef78
cmp dword [edx + 8], eax
jne 0x49ef7c
mov al, 1
jmp 0x49ef7e
xor al, al
push dword [ebp - 0x79c]
push dword [ebp - 0x7b4]
push eax
lea eax, [ebp - 0x6b0]
push eax
movzx eax, word [edx + 6]
push eax
push ecx
push esi
push dword [ebp - 0x868]
lea eax, [ebx + 0x64]
sub esp, 0xc
mov ecx, esp
movss dword [esp + 8], xmm3
movss dword [esp + 4], xmm2
push eax
call fcn.0043ce00
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
movss xmm3, dword [ebp - 0x7a4]
mov ecx, dword [ebp - 0x7f4]
call fcn.004a8360
mov eax, dword [ebp - 0x7cc]
movss xmm2, dword [ebp - 0x7c4]
movss xmm3, dword [ebp - 0x7bc]
movzx esi, word [eax + 4]
mov eax, dword [ebp - 0x7ec]
movsx edx, si
add edx, edi
movsx ecx, word [eax + 6]
movsx eax, word [eax + 4]
add ecx, eax
cmp edx, ecx
jl 0x49f1f7
mov ecx, dword [ebp - 0x7ec]
mov ecx, dword [ecx]
mov dword [ebp - 0x7ec], ecx
test ecx, ecx
jne 0x49ef50
jmp 0x49f1f7
mov ecx, dword [ebp - 0x818]
mov eax, dword [ebp - 0x814]
movd xmm2, dword [ecx]
movd xmm0, dword [eax]
movd xmm3, dword [ecx + 4]
cvtdq2ps xmm2, xmm2
mov ecx, dword [ebp - 0x798]
cvtdq2ps xmm0, xmm0
addss xmm2, dword [ebp - 0x7a8]
cvtdq2ps xmm3, xmm3
subss xmm2, dword [ebp - 0x854]
addss xmm3, dword [ebp - 0x864]
subss xmm2, xmm0
movd xmm0, dword [eax + 4]
cvtdq2ps xmm0, xmm0
cvttss2si eax, xmm2
subss xmm3, xmm0
movss dword [ebp - 0x7c4], xmm2
movss xmm0, dword [ebp - 0x85c]
addss xmm0, dword [ebp - 0x7fc]
mov dword [ebp - 0x6b0], eax
cvttss2si eax, xmm3
cvtps2pd xmm0, xmm0
mov dword [ebp - 0x6a4], eax
mov eax, dword [ecx + 0xc]
cvtps2pd xmm1, xmm3
mulsd xmm0, qword [eax + 0xad0]
movss dword [ebp - 0x7bc], xmm3
divsd xmm0, qword [ebp - 0x8a0]
subsd xmm1, xmm0
movss xmm0, dword [ebp - 0x7d0]
addss xmm0, xmm2
cvttsd2si eax, xmm1
mov dword [ebp - 0x6ac], eax
mov eax, dword [ecx + 0xc]
mov ecx, dword [ebp - 0x7ec]
mov eax, dword [eax + 0xa80]
imul eax, edx
movd xmm1, eax
cvtdq2ps xmm1, xmm1
addss xmm1, xmm0
cvttss2si eax, xmm1
mov dword [ebp - 0x6a8], eax
test ecx, ecx
je 0x49f1f7
mov eax, dword [ebp - 0x7cc]
movsx edi, word [ebp - 0x868]
movzx esi, word [eax + 4]
movsx edx, si
add edx, edi
movzx ecx, word [ecx + 4]
movsx eax, cx
cmp edx, eax
jle 0x49f1f7
mov eax, dword [ebp - 0x88c]
mov edx, dword [ebp - 0x7ec]
test eax, eax
je 0x49f152
cmp edx, eax
je 0x49f14e
cmp dword [edx + 8], eax
jne 0x49f152
mov al, 1
jmp 0x49f154
xor al, al
push dword [ebp - 0x79c]
push dword [ebp - 0x7b4]
push eax
lea eax, [ebp - 0x6b0]
push eax
movzx eax, word [edx + 6]
push eax
push ecx
push esi
push dword [ebp - 0x868]
lea eax, [ebx + 0x64]
sub esp, 0xc
mov ecx, esp
movss dword [esp + 8], xmm3
movss dword [esp + 4], xmm2
push eax
call fcn.0043ce00
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
movss xmm3, dword [ebp - 0x7a4]
mov ecx, dword [ebp - 0x7f4]
call fcn.004a7e00
mov eax, dword [ebp - 0x7cc]
movss xmm2, dword [ebp - 0x7c4]
movss xmm3, dword [ebp - 0x7bc]
movzx esi, word [eax + 4]
mov eax, dword [ebp - 0x7ec]
movsx edx, si
add edx, edi
movsx ecx, word [eax + 6]
movsx eax, word [eax + 4]
add ecx, eax
cmp edx, ecx
jl 0x49f1f7
mov ecx, dword [ebp - 0x7ec]
mov ecx, dword [ecx]
mov dword [ebp - 0x7ec], ecx
test ecx, ecx
jne 0x49f126
push dword [ebp - 0x83c]
movss xmm0, dword [ebp - 0x7a4]
lea eax, [ebx + 0x64]
push dword [ebp - 0x7f0]
push dword [ebp - 0x884]
sub esp, 0xc
movss dword [esp + 8], xmm0
movss dword [esp + 4], xmm3
movss dword [esp], xmm2
push 8
push ecx
mov ecx, esp
push eax
call fcn.0043ce00
push ecx
mov ecx, esp
push dword [ebp - 0x80c]
call fcn.004a86c0
push ecx
mov ecx, esp
push dword [ebp - 0x808]
call fcn.004a86c0
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
mov ecx, dword [ebp - 0x7d4]
xor edx, edx
call fcn.0043a210
mov eax, dword [ebp - 0x830]
mov edx, dword [ebp - 0x7f0]
mov dword [ebp - 0x7a0], eax
mov eax, dword [ebp - 0x798]
movsd xmm5, qword [ebp - 0x7e0]
movss xmm2, dword [ebp - 0x7d0]
movss xmm3, dword [ebp - 0x854]
mov ecx, dword [eax + 0xc]
mov eax, dword [ecx + 0xa80]
imul eax, edx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm5
cvtpd2ps xmm0, xmm0
addss xmm0, xmm2
comiss xmm0, xmm3
jbe 0x4a66c9
subss xmm0, xmm3
xor esi, esi
addss xmm0, dword [ebp - 0x7a8]
movaps xmm4, xmm0
movss dword [ebp - 0x7a8], xmm4
test edx, edx
jle 0x49f34e
mov eax, dword [ebp - 0x810]
xor edx, edx
movsx edi, ax
mov dword [ebp - 0x7e4], edi
nop
mov eax, dword [ebp - 0x7e8]
lea ecx, [edi + edx]
mov edi, dword [ebp - 0x890]
mov ax, word [eax + edx*2 + 6]
mov word [edi + ecx*2], ax
mov eax, dword [ebp - 0x7b4]
mov edi, dword [ebp - 0x7e4]
mov eax, dword [eax + edx*4]
mov edx, dword [ebp - 0x850]
mov dword [edx + ecx*4], eax
test si, si
jne 0x49f333
movss xmm0, dword [edx + edi*4]
subss xmm0, xmm3
movss dword [edx + edi*4], xmm0
inc esi
movsx edx, si
cmp edx, dword [ebp - 0x7f0]
jl 0x49f2f0
mov eax, dword [ebp - 0x798]
mov edx, dword [ebp - 0x7f0]
mov ecx, dword [eax + 0xc]
mov eax, dword [ebp - 0x810]
add eax, 0xfffffff5
jmp 0x49e387
mov esi, 0xff03
cmp word [ebp - 0x84c], 0x40
jne 0x49fd1c
cmp di, 0xa
jl 0x49fd1c
mov ecx, 0xff3b
cmp ax, cx
jne 0x49fd1c
cmp word [edx + 2], si
lea esi, [edx + 4]
jne 0x49fd1f
mov ecx, 0x300c
cmp word [esi], cx
jne 0x49fd1f
movsx edi, di
mov ecx, 0x300d
cmp word [edx + edi*2 - 0xc], cx
jne 0x49fd1f
mov ecx, 0x306f
cmp word [edx + edi*2 - 0xa], cx
jne 0x49fd1f
mov ecx, 0x6a2a
cmp word [edx + edi*2 - 8], cx
jne 0x49fd1f
mov ecx, 0x7d44
cmp word [edx + edi*2 - 6], cx
jne 0x49fd1f
mov ecx, 0x307f
cmp word [edx + edi*2 - 4], cx
mov ecx, 0xff3d
jne 0x49fd1f
cmp word [edx + edi*2 - 2], cx
jne 0x49fd1f
mov eax, dword [ebp - 0x7a0]
movss xmm0, dword [ebp - 0x7a4]
mov dword [ebp - 0x830], eax
mov eax, dword [ebp - 0x798]
push 1
push ecx
mov ecx, dword [ebp - 0x884]
mov eax, dword [eax + 0xc]
movss dword [esp], xmm0
mov byte [ebp - 0x85d], 0
mov esi, dword [eax + 0x41c]
mov edx, esi
mov eax, dword [ebp - 0x790]
add eax, 0xfffffff7
mov dword [ebp - 0x7d4], esi
push eax
push dword [ebp - 0x7f8]
push dword [ebp - 0x7b4]
call fcn.0040ec40
mov eax, dword [ebp - 0x798]
add esp, 0x14
mov ecx, dword [ebp - 0x7f8]
movss dword [ebp - 0x7d0], xmm0
mov eax, dword [eax + 0xc]
movd xmm0, dword [eax + 0xa80]
mov eax, dword [ebp - 0x7b4]
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0x7e0]
cvtpd2ps xmm0, xmm0
addss xmm0, dword [eax]
movss dword [eax], xmm0
push dword [ecx]
lea ecx, [esi + 0x100]
call fcn.00410b00
mov ecx, dword [ebp - 0x798]
add edi, 0xfffffff7
movss xmm1, dword [ebp - 0x7a4]
mov esi, 1
movsd xmm2, qword [ebp - 0x7e0]
cvtps2pd xmm1, xmm1
mov ecx, dword [ecx + 0xc]
add ecx, 0xa80
mov dword [ebp - 0x7f0], edi
movd xmm0, dword [ecx]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm2
divsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
addss xmm0, dword [eax]
movss dword [eax], xmm0
cmp edi, esi
jle 0x49f598
mov eax, esi
jmp 0x49f518
movsd xmm2, qword [ebp - 0x7e0]
movd xmm0, dword [ecx]
mov ecx, dword [ebp - 0x7b4]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm2
cvtpd2ps xmm0, xmm0
addss xmm0, dword [ecx + eax*4]
movss dword [ecx + eax*4], xmm0
mov ecx, dword [ebp - 0x7f8]
push dword [ecx + eax*4]
mov ecx, dword [ebp - 0x7d4]
lea ecx, [ecx + 0x100]
call fcn.00410b00
mov ecx, dword [ebp - 0x798]
inc esi
movss xmm2, dword [ebp - 0x7a4]
cvtps2pd xmm1, xmm2
mov ecx, dword [ecx + 0xc]
add ecx, 0xa80
movd xmm0, dword [ecx]
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0x7e0]
divsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
addss xmm0, dword [eax]
movss dword [eax], xmm0
movsx eax, si
cmp eax, edi
jl 0x49f510
mov edx, dword [ebp - 0x818]
mov eax, dword [ebp - 0x814]
mov esi, dword [edx + 4]
mov ecx, dword [edx + 8]
mov edx, dword [eax + 4]
movd xmm2, dword [eax]
movd xmm4, esi
sub esi, edx
cmp dword [ebp - 0x7ec], 0
cvtdq2ps xmm4, xmm4
movd xmm1, ecx
addss xmm4, dword [ebp - 0x7a8]
cvtdq2ps xmm1, xmm1
movd xmm0, edx
cvtdq2ps xmm0, xmm0
movaps xmm3, xmm1
subss xmm1, dword [ebp - 0x87c]
subss xmm4, xmm0
movd xmm0, ecx
cvtdq2ps xmm2, xmm2
cvtdq2ps xmm0, xmm0
subss xmm1, xmm2
movss dword [ebp - 0x7bc], xmm4
subss xmm0, dword [ebp - 0x864]
subss xmm3, dword [ebp - 0x81c]
cvttss2si eax, xmm1
subss xmm0, xmm2
mov dword [ebp - 0x6a8], eax
subss xmm3, xmm2
cvttss2si eax, xmm0
movd xmm0, edx
mov dword [ebp - 0x6b0], eax
mov eax, dword [ebp - 0x818]
cvtdq2ps xmm0, xmm0
movd xmm1, dword [eax + 0xc]
cvtdq2ps xmm1, xmm1
mov dword [ebp - 0x6ac], esi
movss dword [ebp - 0x7c4], xmm3
subss xmm1, dword [ebp - 0x964]
subss xmm1, xmm0
cvttss2si eax, xmm1
mov dword [ebp - 0x6a4], eax
je 0x49f75c
mov eax, dword [ebp - 0x7cc]
movsx ecx, word [ebp - 0x868]
mov edi, ecx
movzx esi, word [eax + 4]
mov eax, dword [ebp - 0x7ec]
movsx edx, si
add edx, ecx
movzx ecx, word [eax + 4]
movsx eax, cx
cmp edx, eax
jle 0x49f756
mov eax, dword [ebp - 0x88c]
mov edx, dword [ebp - 0x7ec]
test eax, eax
je 0x49f6b1
cmp edx, eax
je 0x49f6ad
cmp dword [edx + 8], eax
jne 0x49f6b1
mov al, 1
jmp 0x49f6b3
xor al, al
push dword [ebp - 0x79c]
push dword [ebp - 0x7b4]
push eax
lea eax, [ebp - 0x6b0]
push eax
movzx eax, word [edx + 6]
push eax
push ecx
push esi
push dword [ebp - 0x868]
lea eax, [ebx + 0x64]
sub esp, 0xc
mov ecx, esp
movss dword [esp + 8], xmm4
movss dword [esp + 4], xmm3
push eax
call fcn.0043ce00
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
movss xmm3, dword [ebp - 0x7a4]
mov ecx, dword [ebp - 0x7f4]
call fcn.004a8160
mov eax, dword [ebp - 0x7cc]
movss xmm3, dword [ebp - 0x7c4]
movss xmm4, dword [ebp - 0x7bc]
movzx esi, word [eax + 4]
mov eax, dword [ebp - 0x7ec]
movsx edx, si
add edx, edi
movsx ecx, word [eax + 6]
movsx eax, word [eax + 4]
add ecx, eax
cmp edx, ecx
jl 0x49f756
mov eax, dword [ebp - 0x7ec]
mov eax, dword [eax]
mov dword [ebp - 0x7ec], eax
test eax, eax
jne 0x49f685
mov edi, dword [ebp - 0x7f0]
push dword [ebp - 0x83c]
movss xmm0, dword [ebp - 0x7a4]
lea eax, [ebx + 0x64]
push edi
push dword [ebp - 0x884]
sub esp, 0xc
movss dword [esp + 8], xmm0
movss dword [esp + 4], xmm4
movss dword [esp], xmm3
push 0x18
push ecx
mov ecx, esp
push eax
call fcn.0043ce00
push ecx
mov ecx, esp
push dword [ebp - 0x80c]
call fcn.004a86c0
push ecx
mov ecx, esp
push dword [ebp - 0x808]
call fcn.004a86c0
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
mov ecx, dword [ebp - 0x7d4]
xor edx, edx
call fcn.0043a210
cmp byte [ebp - 0x8a4], 0
mov ecx, dword [ebp - 0x7cc]
movsd xmm3, qword [ebp - 0x7e0]
movss xmm2, dword [ebp - 0x7d0]
mov eax, dword [ecx + 0xc]
movd xmm1, dword [eax + 0xa80]
movsx eax, word [ecx + 4]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
mov eax, dword [ebp - 0x830]
mov dword [ebp - 0x7a0], eax
mulsd xmm1, xmm3
mulsd xmm1, xmm0
cvtpd2ps xmm0, xmm1
addss xmm0, xmm2
addss xmm0, dword [ebp - 0x7a8]
movss dword [ebp - 0x7a8], xmm0
je 0x49f893
xor edx, edx
mov byte [ebp - 0x785], 1
mov byte [ebp - 0x8f6], 1
test edi, edi
jle 0x49f87f
mov esi, dword [ebp - 0x850]
xor ecx, ecx
nop word [eax + eax]
mov eax, dword [ebp - 0x7e8]
inc edx
mov edi, dword [ebp - 0x890]
mov ax, word [eax + ecx*2 + 6]
mov word [edi + ecx*2], ax
mov eax, dword [ebp - 0x7b4]
mov edi, dword [ebp - 0x7f0]
mov eax, dword [eax + ecx*4]
mov dword [esi + ecx*4], eax
movsx ecx, dx
cmp ecx, edi
jl 0x49f850
mov ecx, dword [ebp - 0x790]
add ecx, 0xfffffff7
movzx eax, cx
mov ecx, dword [ebp - 0x790]
jmp 0x49f8ff
xor esi, esi
test edi, edi
jle 0x49f8ee
mov eax, dword [ebp - 0x810]
xor edx, edx
cwde
mov dword [ebp - 0x7e4], eax
nop dword [eax + eax]
mov edi, dword [ebp - 0x890]
lea ecx, [eax + edx]
mov eax, dword [ebp - 0x7e8]
inc esi
mov ax, word [eax + edx*2 + 6]
mov word [edi + ecx*2], ax
mov eax, dword [ebp - 0x7b4]
mov edi, dword [ebp - 0x7f0]
mov eax, dword [eax + edx*4]
mov edx, dword [ebp - 0x850]
mov dword [edx + ecx*4], eax
mov eax, dword [ebp - 0x7e4]
movsx edx, si
cmp edx, edi
jl 0x49f8b0
mov eax, dword [ebp - 0x810]
mov ecx, dword [ebp - 0x790]
add eax, 0xfffffff7
add eax, ecx
mov esi, dword [ebp - 0x79c]
mov edx, dword [ebp - 0x794]
mov dword [ebp - 0x810], eax
mov eax, dword [ebp - 0x7cc]
cmp byte [esi + 0x6fb], 0
je 0x49fbff
test byte [eax + 8], 0x80
je 0x49fbff
test byte [edx], 0x20
jne 0x49fbff
movsx eax, cx
mov edx, 2
xor ecx, ecx
add eax, 0xfffffff7
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.00560858
mov esi, eax
add esp, 4
mov eax, dword [ebp - 0x79c]
mov dword [ebp - 0x7d4], esi
movzx edi, byte [eax + 0x7ee]
movzx ecx, byte [eax + 0x7ef]
shl edi, 8
or edi, ecx
movzx ecx, byte [eax + 0x7f0]
mov eax, dword [ebp - 0x7cc]
shl edi, 8
or edi, ecx
mov dword [ebp - 0x870], edi
mov cx, word [eax + 8]
shr cx, 0xb
movzx eax, cx
mov dword [ebp - 0x844], eax
mov eax, dword [ebp - 0x790]
movzx edx, cx
add eax, 0xfffffff7
mov ecx, dword [ebp - 0x884]
push eax
mov dword [ebp - 0x8a8], edx
push edx
mov edx, esi
call fcn.0040a350
mov eax, dword [ebp - 0x798]
add esp, 8
movss xmm0, dword [ebp - 0x7a4]
mov eax, dword [eax + 0xc]
push 1
push ecx
mov ecx, dword [ebp - 0x790]
mov eax, dword [eax + 0x3ec]
add ecx, 0xfffffff7
movss dword [esp], xmm0
mov edx, eax
push ecx
push dword [ebp - 0x7f8]
mov ecx, esi
mov dword [ebp - 0x7c0], eax
push dword [ebp - 0x898]
call fcn.0040ec40
xor esi, esi
add esp, 0x14
cmp dword [ebp - 0x7f0], esi
jle 0x49fa77
mov ecx, dword [ebp - 0x7c0]
xor eax, eax
mov edi, dword [ebp - 0x7f0]
add ecx, 0x100
mov dword [ebp - 0x800], ecx
nop
mov edx, dword [ebp - 0x7b4]
push eax
movss xmm0, dword [edx + eax*4]
movss dword [ebp - 0x7e4], xmm0
call fcn.00410b00
movss xmm0, dword [ebp - 0x7e4]
inc esi
movss xmm3, dword [ebp - 0x7a4]
divss xmm0, xmm3
mov ecx, dword [ebp - 0x800]
movss dword [eax], xmm0
movsx eax, si
cmp eax, edi
jl 0x49fa30
mov edi, dword [ebp - 0x870]
jmp 0x49fa7f
movss xmm3, dword [ebp - 0x7a4]
mov ecx, dword [ebp - 0x7b4]
mov eax, dword [ebp - 0x79c]
movsd xmm1, qword [ebp - 0x8a0]
movss xmm4, dword [ebp - 0x7fc]
movss xmm0, dword [ecx]
subsd xmm1, qword [eax + 0x278]
cvtps2pd xmm0, xmm0
mov esi, dword [ebp - 0x7d4]
push edi
mov edi, dword [ebp - 0x7f0]
push edi
push esi
movss xmm2, dword [ebp - 0x834]
sub esp, 0xc
cmp word [ebp - 0x844], 8
mulsd xmm1, xmm0
movss xmm0, dword [ebp - 0x7bc]
cvtps2pd xmm0, xmm0
divsd xmm1, qword [ebp - 0x9c0]
movss dword [esp + 8], xmm3
addsd xmm1, xmm0
cvtps2pd xmm2, xmm2
cvtpd2ps xmm0, xmm1
cvtps2pd xmm1, xmm4
movss dword [esp + 4], xmm0
mulsd xmm1, qword [eax + 0x708]
lea eax, [ebx + 0x64]
divsd xmm1, qword [ebp - 0x8a0]
ja 0x49fb3d
mulsd xmm2, qword [ebp - 0xa30]
movaps xmm0, xmm4
addss xmm0, dword [ebp - 0x7c4]
cvtps2pd xmm0, xmm0
subsd xmm0, xmm1
subsd xmm0, xmm2
cvtpd2ps xmm0, xmm0
movss dword [esp], xmm0
push 8
jmp 0x49fb6b
movss xmm0, dword [ebp - 0x7c4]
subss xmm0, dword [ebp - 0x85c]
mulsd xmm2, qword [ebp - 0x960]
cvtps2pd xmm0, xmm0
subsd xmm0, xmm1
addsd xmm0, xmm2
cvtpd2ps xmm0, xmm0
movss dword [esp], xmm0
push 0
push ecx
mov ecx, esp
push eax
call fcn.0043ce00
push ecx
mov ecx, esp
push dword [ebp - 0x80c]
call fcn.004a86c0
push ecx
mov ecx, esp
push dword [ebp - 0x808]
call fcn.004a86c0
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
mov ecx, dword [ebp - 0x7c0]
xor edx, edx
call fcn.0043a210
mov edx, dword [ebp - 0x79c]
push esi
movzx ecx, byte [edx + 0x7e8]
movzx eax, byte [edx + 0x7e9]
shl ecx, 8
or ecx, eax
movzx eax, byte [edx + 0x7ea]
shl ecx, 8
or ecx, eax
mov dword [ebp - 0x83c], ecx
call fcn.00560853
movss xmm2, dword [ebp - 0x7d0]
add esp, 4
movsd xmm3, qword [ebp - 0x7e0]
mov esi, dword [ebp - 0x79c]
mov edx, dword [ebp - 0x794]
mov eax, dword [ebp - 0x7cc]
cmp byte [esi + 0x6fc], 0
je 0x49a196
movzx eax, word [eax + 8]
test eax, 0x100
je 0x49a196
test byte [edx], 0x20
jne 0x49a196
movss xmm0, dword [ebp - 0x7fc]
sub esp, 8
cvtps2pd xmm0, xmm0
shr ax, 0xb
movzx ecx, ax
mov dword [ebp - 0x8a8], ecx
movsd qword [esp], xmm3
mulsd xmm0, qword [esi + 0x710]
push esi
divsd xmm0, qword [ebp - 0x8a0]
cvttsd2si eax, xmm0
movd xmm0, edi
movzx eax, ax
push eax
mov eax, dword [ebp - 0x7cc]
cvtdq2pd xmm0, xmm0
mov eax, dword [eax + 0xc]
movd xmm1, dword [eax + 0xa80]
cvtdq2pd xmm1, xmm1
mulsd xmm1, xmm3
mulsd xmm1, xmm0
cvtpd2ps xmm0, xmm1
addss xmm0, xmm2
cvttss2si eax, xmm0
movss xmm0, dword [ebp - 0x7a4]
push eax
cvttss2si eax, dword [ebp - 0x7bc]
push eax
lea eax, [ebp - 0x6d4]
push eax
push ecx
sub esp, 8
lea eax, [ebx + 0x64]
mov ecx, esp
movss dword [esp + 4], xmm0
push eax
call fcn.0043ce00
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
push ecx
lea eax, [ebx + 0x5c]
mov ecx, esp
push eax
call fcn.0043ce00
mov ecx, dword [ebp - 0x7f4]
call fcn.004eb070
movss xmm2, dword [ebp - 0x7ac]
movss xmm4, dword [ebp - 0x7a8]
mov cl, byte [ebp - 0x785]
mov edi, dword [ebp - 0x790]
mov eax, dword [ebp - 0x794]
movss dword [ebp - 0x824], xmm2
movss dword [ebp - 0x854], xmm2
jmp 0x49d3b0
mov eax, dword [ebp - 0x86c]
lea esi, [edx + 4]
mov ecx, dword [ebp - 0x910]
mov edi, dword [ebp - 0x790]
cmp word [ecx], 2
jne 0x489ad6
mov ecx, dword [ebp - 0x79c]
cmp byte [ecx + 0x77f], 0
je 0x489ad6
cmp byte [ecx + 0x863], 0
jne 0x489ad6
cmp word [ebp - 0x84c], 0x40
jne 0x489ad6
cmp di, 0xd
jl 0x489ad6
mov ecx, 0xff3b
cmp ax, cx
jne 0x489ad6
mov eax, 0xff03
cmp word [edx + 2], ax
jne 0x489ad6
mov eax, 0x300c
cmp word [esi], ax
jne 0x489ad6
movsx eax, di
mov ecx, 0x300d
cmp word [edx + eax*2 - 0x12], cx
jne 0x489ad6
mov ecx, 0x306f
cmp word [edx + eax*2 - 0x10], cx
jne 0x489ad6
mov ecx, 0x30ad
cmp word [edx + eax*2 - 0xe], cx
jne 0x489ad6
mov ecx, 0x30e3
cmp word [edx + eax*2 - 0xc], cx
jne 0x489ad6
mov ecx, 0x30d7
cmp word [edx + eax*2 - 0xa], cx
jne 0x489ad6
mov ecx, 0x30b7
cmp word [edx + eax*2 - 8], cx
jne 0x489ad6
mov ecx, 0x30e7
cmp word [edx + eax*2 - 6], cx
jne 0x489ad6
mov ecx, 0x30f3
cmp word [edx + eax*2 - 4], cx
jne 0x489ad6
mov ecx, 0xff3d
cmp word [edx + eax*2 - 2], cx
jne 0x489ad6
mov eax, dword [ebp - 0x798]
mov edx, 3
mov edi, dword [ebp - 0x7a0]
mov dword [ebp - 0x830], edi
mov dword [ebp - 0x844], edx
mov eax, dword [eax + 0xc]
mov dword [ebp - 0x7c0], 0
mov ecx, dword [eax + 0x428]
mov eax, dword [ebp - 0x790]
add eax, 0xfffffff4
mov dword [ebp - 0x828], ecx
movzx esi, ax
mov eax, dword [ebp - 0x910]
mov dword [ebp - 0x7d4], esi
add dword [eax + 0x18], 0xa
test si, si
jle 0x4a006d
nop word [eax + eax]
movss xmm0, dword [ebp - 0x7a4]
mov eax, dword [ebp - 0x7e8]
push 1
push ecx
movss dword [esp], xmm0
push esi
push dword [ebp - 0x7f8]
lea eax, [eax + edx*2]
mov edx, ecx
push dword [ebp - 0x7b4]
mov ecx, eax
call fcn.0040ec40
mov ecx, dword [ebp - 0x7b4]
mov edi, 1
mov edx, dword [ebp - 0x910]
mov eax, edi
add esp, 0x14
movss xmm1, dword [ecx]
cmp ax, si
jge 0x49ff09
movd xmm2, dword [edx + 0xc]
cvtdq2ps xmm2, xmm2
nop word [eax + eax]
movsx eax, di
movaps xmm0, xmm1
addss xmm0, dword [ecx + eax*4]
comiss xmm0, xmm2
ja 0x49ff09
inc edi
movaps xmm1, xmm0
cmp di, si
jl 0x49fef0
cmp word [ebp - 0x7c0], 0
jne 0x49ff3b
movd xmm2, dword [edx + 0xc]
movd xmm0, dword [edx + 0x14]
cvtdq2ps xmm2, xmm2
cvtdq2ps xmm0, xmm0
subss xmm2, xmm1
mulss xmm2, dword [0x5ea4cc]
addss xmm2, xmm0
movss dword [ebp - 0x7c4], xmm2
movd xmm0, dword [edx + 0x18]
mov eax, dword [ebp - 0x844]
mov esi, dword [ebp - 0x7e8]
mov edx, dword [ebp - 0x828]
cvtdq2ps xmm0, xmm0
push 1
push ecx
lea ecx, [esi + eax*2]
movss dword [ebp - 0x7bc], xmm0
movss xmm0, dword [ebp - 0x7a4]
movss dword [esp], xmm0
push edi
push dword [ebp - 0x7f8]
push dword [ebp - 0x898]
call fcn.0040ec40
mov ecx, dword [ebp - 0x844]
add esp, 0x14
mov edx, dword [ebp - 0x7e8]
movsx esi, di
movss dword [ebp - 0x7d0], xmm0
push dword [ebp - 0x83c]
movss xmm0, dword [ebp - 0x7a4]
lea eax, [edx + ecx*2]
push esi
push eax
sub esp, 0xc
lea eax, [ebx + 0x64]
movss dword [esp + 8], xmm0
movss xmm0, dword [ebp - 0x7bc]
movss dword [esp + 4], xmm0
movss xmm0, dword [ebp - 0x7c4]
movss dword [esp], xmm0
push 0
push ecx
mov ecx, esp
push eax
call fcn.0043ce00
push ecx
mov ecx, esp
push dword [ebp - 0x80c]
call fcn.004a86c0
push ecx
mov ecx, esp
push dword [ebp - 0x808]
call fcn.004a86c0
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
mov ecx, dword [ebp - 0x828]
xor edx, edx
call fcn.0043a210
mov eax, dword [ebp - 0x798]
mov edx, dword [ebp - 0x844]
mov ecx, dword [ebp - 0x910]
add edx, esi
mov esi, dword [ebp - 0x7d4]
mov eax, dword [eax + 0xc]
sub esi, edi
inc dword [ebp - 0x7c0]
mov dword [ebp - 0x844], edx
mov dword [ebp - 0x7d4], esi
cvttss2si eax, dword [eax + 0xb94]
add dword [ecx + 0x18], eax
mov ecx, dword [ebp - 0x828]
test si, si
jg 0x49fe90
mov edi, dword [ebp - 0x830]
mov eax, dword [ebp - 0x910]
movss xmm2, dword [ebp - 0x7ac]
xor ecx, ecx
movss xmm4, dword [ebp - 0x7a8]
mov esi, dword [ebp - 0x79c]
mov word [eax], cx
mov cl, byte [ebp - 0x785]
mov eax, dword [ebp - 0x794]
mov dword [ebp - 0x7a0], edi
mov edi, dword [ebp - 0x790]
movss dword [ebp - 0x824], xmm2
movss dword [ebp - 0x854], xmm2
jmp 0x49d3b0
mov cl, byte [ebp - 0x81e]
mov byte [ebp - 0x9ac], cl
cmp ax, word [ebp - 0xa88]
jne 0x4a00e9
mov byte [ebp - 0x9ac], cl
cmp di, 1
jne 0x4a00e9
mov eax, dword [ebp - 0x794]
mov byte [ebp - 0x9ac], 0
and dword [eax], 0xfeffffff
cmp dword [ebp - 0x9b0], 2
ja 0x4a0183
mov edx, dword [ebp - 0x78c]
mov ecx, dword [ebp - 0x7e8]
call fcn.0040b510
cmp ax, 2
jne 0x4a017d
cmp dword [ebp - 0x9b0], 2
mov ecx, dword [ebp - 0x904]
mov eax, dword [ecx]
jne 0x4a014c
movss xmm4, dword [ebp - 0x7a8]
or eax, 3
mov esi, dword [ebp - 0x79c]
mov edi, dword [ebp - 0x790]
mov dword [ecx], eax
mov cl, byte [ebp - 0x785]
mov dword [ebp - 0x9b0], 3
jmp 0x49d3a2
movss xmm4, dword [ebp - 0x7a8]
and eax, 0xfffffffe
mov esi, dword [ebp - 0x79c]
or eax, 2
mov edi, dword [ebp - 0x790]
mov dword [ecx], eax
mov cl, byte [ebp - 0x785]
mov dword [ebp - 0x9b0], 2
jmp 0x49d3a2
mov edx, dword [ebp - 0x7e8]
mov eax, dword [ebp - 0x79c]
cmp dword [ebp - 0x9b0], 2
je 0x49312f
cmp byte [eax + 0x77f], 0
mov byte [ebp - 0x8fe], 0
mov byte [ebp - 0x81d], 0
je 0x4a0bc4
mov ax, word [esi + 8]
mov ecx, 0x210
and ax, cx
mov ecx, 0x200
cmp ax, cx
jne 0x4a0bc4
movsx eax, di
mov ecx, 0x5165
cmp word [edx + eax*2 - 6], cx
jne 0x49312f
mov ecx, 0x308b
cmp word [edx + eax*2 - 4], cx
jne 0x49312f
lea eax, [edi - 4]
movzx edi, ax
mov dword [ebp - 0x7f0], edi
test di, di
js 0x49312f
mov esi, 0xff03
nop dword [eax + eax]
movsx eax, di
movzx ecx, word [edx + eax*2]
cmp cx, si
je 0x49312f
cmp ecx, 0x2e
jne 0x4a039c
movzx edx, word [edx + eax*2 + 2]
mov dword [ebp - 0x78c], edx
cmp edx, 0x70
je 0x4a023e
cmp edx, 0x50
jne 0x4a026a
mov ecx, dword [ebp - 0x7e8]
movzx esi, word [ecx + eax*2 + 4]
cmp esi, 0x6e
je 0x4a0253
cmp esi, 0x4e
jne 0x4a0270
movzx ecx, word [ecx + eax*2 + 6]
cmp ecx, 0x67
je 0x4a0341
cmp ecx, 0x47
je 0x4a0341
mov ecx, dword [ebp - 0x7e8]
cmp edx, 0x67
je 0x4a027a
cmp edx, 0x47
jne 0x4a02a0
movzx esi, word [ecx + eax*2 + 4]
cmp esi, 0x69
je 0x4a0289
cmp esi, 0x49
jne 0x4a02a0
movzx ecx, word [ecx + eax*2 + 6]
cmp ecx, 0x66
je 0x4a0341
cmp ecx, 0x46
je 0x4a0341
cmp edx, 0x62
je 0x4a02aa
cmp edx, 0x42
jne 0x4a02ce
mov ecx, dword [ebp - 0x7e8]
movzx esi, word [ecx + eax*2 + 4]
cmp esi, 0x6d
je 0x4a02bf
cmp esi, 0x4d
jne 0x4a02d4
movzx ecx, word [ecx + eax*2 + 6]
cmp ecx, 0x70
je 0x4a0341
cmp ecx, 0x50
je 0x4a0341
mov ecx, dword [ebp - 0x7e8]
cmp edx, 0x6a
je 0x4a02e2
cmp edx, 0x4a
jne 0x4a0391
movzx esi, word [ecx + eax*2 + 4]
cmp esi, 0x70
je 0x4a02f1
cmp esi, 0x50
jne 0x4a0300
movzx ecx, word [ecx + eax*2 + 6]
cmp ecx, 0x67
je 0x4a0341
cmp ecx, 0x47
je 0x4a0341
cmp edx, 0x6a
je 0x4a030e
cmp edx, 0x4a
jne 0x4a0391
mov edx, dword [ebp - 0x7e8]
movzx esi, word [edx + eax*2 + 4]
cmp esi, 0x70
je 0x4a0323
cmp esi, 0x50
jne 0x4a0397
movzx ecx, word [edx + eax*2 + 6]
cmp ecx, 0x65
je 0x4a0332
cmp ecx, 0x45
jne 0x4a0397
movzx eax, word [edx + eax*2 + 8]
cmp eax, 0x67
je 0x4a0341
cmp eax, 0x47
jne 0x4a0397
lea eax, [edi - 1]
mov edi, dword [ebp - 0x7e8]
movzx edx, ax
movsx eax, dx
movzx eax, word [edi + eax*2]
mov edi, 0xff03
cmp ax, di
mov edi, dword [ebp - 0x7f0]
je 0x4a0391
cmp ax, word [ebp - 0xa94]
je 0x4a03cb
cmp ax, 0x28
je 0x4a03cb
mov edi, dword [ebp - 0x7e8]
dec edx
movsx eax, dx
movzx eax, word [edi + eax*2]
mov edi, 0xff03
cmp ax, di
mov edi, dword [ebp - 0x7f0]
jne 0x4a0364
mov edx, dword [ebp - 0x7e8]
mov esi, 0xff03
dec edi
mov dword [ebp - 0x7f0], edi
test di, di
jns 0x4a0210
movss xmm4, dword [ebp - 0x7a8]
mov esi, dword [ebp - 0x79c]
mov cl, byte [ebp - 0x785]
mov edi, dword [ebp - 0x790]
jmp 0x49d3a2
mov eax, dword [ebp - 0x78c]
xor edi, edi
cmp ax, 0x6a
je 0x4a03e3
cmp ax, 0x4a
jne 0x4a04a6
cmp si, 0x70
je 0x4a03f3
cmp si, 0x50
jne 0x4a04a6
cmp cx, 0x65
je 0x4a0403
cmp cx, 0x45
jne 0x4a04a6
mov ecx, dword [ebp - 0x7f0]
mov esi, dword [ebp - 0x7e8]
movsx eax, cx
movzx eax, word [esi + eax*2 + 8]
cmp eax, 0x67
je 0x4a0425
cmp eax, 0x47
jne 0x4a04ac
lea eax, [ecx + 4]
inc edx
movzx esi, ax
movzx eax, dx
cmp ax, si
jg 0x4a0468
mov ecx, dword [ebp - 0x7e8]
lea eax, [edi + edx]
cwde
movzx eax, word [ecx + eax*2]
movsx ecx, di
mov word [ebp + ecx*2 - 0x248], ax
cmp eax, 0x2f
jne 0x4a045f
mov eax, 0x5c
mov word [ebp + ecx*2 - 0x248], ax
inc edi
lea eax, [edi + edx]
cmp ax, si
jle 0x4a0434
movsx eax, di
add eax, eax
cmp eax, 0x200
jae 0x4a74a8
mov esi, dword [ebp - 0x980]
xor ecx, ecx
mov word [ebp + eax - 0x248], cx
mov ecx, esi
call fcn.0040d890
lea edx, [ebp - 0x248]
test eax, eax
je 0x4a04b4
lea ecx, [ebp - 0x648]
call fcn.0041dcd0
jmp 0x4a04c5
mov ecx, dword [ebp - 0x7f0]
lea eax, [ecx + 3]
jmp 0x4a0428
lea eax, [ebp - 0x648]
mov ecx, esi
push eax
call fcn.0040b570
add esp, 4
mov esi, dword [ebp - 0x984]
lea ecx, [ebp - 0x784]
push ecx
push 1
push SysReAllocString
mov dword [ebp - 0x784], 0
lea ecx, [ebp - 0x648]
mov dword [ebp - 0x780], 0
mov dword [ebp - 0x77c], 0
mov dword [ebp - 0x778], 0
mov eax, dword [esi]
push 0
push ecx
push esi
mov eax, dword [eax + 0xc]
call eax
test eax, eax
jne 0x4a0b59
mov eax, dword [ebp - 0x784]
lea edx, [ebp - 0x780]
push edx
push 0
push eax
mov ecx, dword [eax]
mov eax, dword [ecx + 0x34]
call eax
test eax, eax
jne 0x4a0b59
mov eax, dword [esi]
lea ecx, [ebp - 0x77c]
push ecx
push esi
mov eax, dword [eax + 0x28]
call eax
test eax, eax
jne 0x4a0b59
movsd xmm0, qword [ebp - 0x9d8]
mov eax, dword [ebp - 0x77c]
push 1
sub esp, 8
mov ecx, dword [eax]
movsd qword [esp], xmm0
push 0
push 0
push 0x5866f0
push dword [ebp - 0x780]
push eax
mov eax, dword [ecx + 0x20]
call eax
test eax, eax
jne 0x4a0b59
lea ecx, [ebx + 0x60]
call fcn.00410ad0
lea edx, [ebp - 0x778]
push edx
push 0
mov ecx, dword [eax]
push dword [ebp - 0x77c]
push eax
mov eax, dword [ecx + 0x14]
call eax
test eax, eax
jne 0x4a0b59
mov eax, dword [ebp - 0x778]
lea edx, [ebp - 0x738]
push edx
push eax
mov ecx, dword [eax]
mov eax, dword [ecx + 0x10]
call eax
cmp word [ebp - 0x84c], 0x40
mov eax, dword [ebp - 0x798]
cvttss2si ecx, dword [ebp - 0x738]
movsx edi, word [eax + 6]
cvttss2si esi, dword [ebp - 0x734]
jne 0x4a08cd
cmp edi, ecx
je 0x4a05ff
test ecx, ecx
je 0x4a05ff
mov eax, edi
imul eax, esi
cdq
idiv ecx
mov ecx, edi
mov esi, eax
cmp byte [ebp - 0x6b1], 0
movsd xmm4, qword [ebp - 0x7e0]
movss xmm6, dword [ebp - 0x91c]
movd xmm2, ecx
cvtdq2pd xmm2, xmm2
je 0x4a0673
movss xmm0, dword [ebp - 0x950]
movaps xmm3, xmm2
subss xmm0, xmm6
mulsd xmm3, xmm4
cvtps2pd xmm0, xmm0
comisd xmm0, xmm3
jbe 0x4a0673
movss xmm0, dword [ebp - 0x864]
movss xmm5, dword [ebp - 0x87c]
subss xmm0, xmm5
cvtps2pd xmm1, xmm0
movaps xmm0, xmm5
subss xmm0, xmm6
subsd xmm1, xmm3
cvtps2pd xmm0, xmm0
mulsd xmm1, qword [ebp - 0xc68]
addsd xmm1, xmm0
cvttsd2si eax, xmm1
jmp 0x4a067d
movss xmm5, dword [ebp - 0x87c]
xor eax, eax
mov edx, dword [ebp - 0x818]
mulsd xmm2, xmm4
movd xmm0, esi
cvtdq2pd xmm0, xmm0
cvttsd2si ecx, xmm2
movd xmm2, edi
mov edi, dword [ebp - 0x814]
mulsd xmm0, xmm4
mov dword [ebp - 0x7d4], ecx
mov ecx, dword [edx + 8]
mov edx, dword [edi]
cvtdq2pd xmm2, xmm2
movd xmm3, eax
mov eax, dword [ebp - 0x7f4]
cvttsd2si esi, xmm0
movsd xmm0, qword [eax + 0x18]
comisd xmm0, xmmword [ebp - 0xa70]
mov dword [ebp - 0x7e4], esi
movd xmm1, ecx
cvtdq2ps xmm1, xmm1
mulsd xmm2, xmm4
cvtdq2ps xmm3, xmm3
cvttsd2si eax, xmm2
subss xmm1, xmm6
jbe 0x4a0705
movd xmm0, eax
cvtdq2ps xmm0, xmm0
subss xmm1, xmm0
movd xmm0, edx
cvtdq2ps xmm0, xmm0
subss xmm1, xmm3
subss xmm1, xmm0
jmp 0x4a0733
cmp byte [ebp - 0x6b1], 0
movd xmm2, eax
movd xmm4, edx
cvtdq2ps xmm2, xmm2
cvtdq2ps xmm4, xmm4
jne 0x4a0727
movaps xmm0, xmm6
subss xmm0, xmm5
addss xmm1, xmm0
subss xmm1, xmm2
subss xmm1, xmm3
subss xmm1, xmm4
mov ecx, dword [ebp - 0x818]
movd xmm0, dword [edi + 4]
cvttss2si eax, xmm1
movd xmm1, dword [ecx + 4]
lea ecx, [ebx + 0x60]
cvtdq2ps xmm0, xmm0
mov dword [ebp - 0x78c], eax
mov dword [ebp - 0xc70], 0
mov dword [ebp - 0xc6c], 0
cvtdq2ps xmm1, xmm1
addss xmm1, dword [ebp - 0x7a8]
subss xmm1, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
add eax, dword [ebp - 0x7d4]
cvttss2si edi, xmm1
movss xmm1, dword [ebp - 0x7a4]
divss xmm0, xmm1
add esi, edi
movss dword [ebp - 0xc30], xmm0
movd xmm0, edi
cvtdq2ps xmm0, xmm0
movss dword [ebp - 0x8b0], xmm0
divss xmm0, xmm1
movss dword [ebp - 0xc2c], xmm0
movd xmm0, eax
lea eax, [ebp - 0xc80]
cvtdq2ps xmm0, xmm0
push eax
divss xmm0, xmm1
movss dword [ebp - 0xc28], xmm0
movd xmm0, esi
cvtdq2ps xmm0, xmm0
divss xmm0, xmm1
movss dword [ebp - 0xc24], xmm0
movups xmm0, xmmword [ebp - 0xc30]
movups xmmword [ebp - 0x758], xmm0
movaps xmm0, xmmword [0x5ea820]
movups xmmword [ebp - 0xc80], xmm0
call fcn.00410ad0
mov ecx, eax
call fcn.00487cf0
push 0
push 1
lea eax, [ebp - 0x758]
push eax
push dword [ebp - 0x778]
lea ecx, [ebx + 0x60]
call fcn.00410ad0
movss xmm3, dword [0x5ea4e0]
mov ecx, eax
call fcn.00487cd0
mov edx, dword [ebp - 0x910]
mov eax, 1
mov ecx, dword [ebp - 0x7d4]
mov word [edx], ax
mov eax, dword [ebp - 0x78c]
mov dword [edx + 4], eax
mov dword [edx + 8], edi
mov dword [edx + 0xc], ecx
mov ecx, dword [ebp - 0x7e4]
mov dword [edx + 0x10], ecx
mov dword [edx + 0x14], eax
mov eax, dword [ebp - 0x890]
mov dword [edx + 0x18], esi
movd xmm1, ecx
mov ecx, 0x306f
cvtdq2ps xmm1, xmm1
mov word [eax], cx
mov eax, dword [ebp - 0x850]
movss dword [eax], xmm1
movaps xmm0, xmm1
mov eax, dword [ebp - 0x818]
addss xmm0, dword [ebp - 0x7a8]
movd xmm1, dword [eax + 8]
mov eax, dword [ebp - 0x814]
cvtdq2ps xmm1, xmm1
movss dword [ebp - 0x7a8], xmm0
movd xmm0, dword [eax]
subss xmm1, dword [ebp - 0x81c]
cvtdq2ps xmm0, xmm0
subss xmm1, xmm0
movss dword [ebp - 0x888], xmm1
jmp 0x4a0b4f
cmp edi, esi
je 0x4a08e1
test esi, esi
je 0x4a08e1
mov eax, edi
imul eax, ecx
cdq
idiv esi
mov esi, edi
mov ecx, eax
mov dl, byte [ebp - 0x6b1]
movss xmm5, dword [ebp - 0x91c]
test dl, dl
je 0x4a093c
movss xmm0, dword [ebp - 0x950]
movd xmm1, esi
subss xmm0, xmm5
cvtdq2ps xmm1, xmm1
comiss xmm0, xmm1
jbe 0x4a093c
movss xmm4, dword [ebp - 0x87c]
movss xmm2, dword [ebp - 0x864]
movaps xmm0, xmm4
subss xmm2, xmm4
subss xmm0, xmm5
subss xmm2, xmm1
mulss xmm2, dword [0x5ea4cc]
addss xmm2, xmm0
cvttss2si eax, xmm2
jmp 0x4a0946
movss xmm4, dword [ebp - 0x87c]
xor eax, eax
movd xmm0, ecx
cvtdq2pd xmm0, xmm0
movd xmm3, eax
mulsd xmm0, qword [ebp - 0x7e0]
cvtdq2ps xmm3, xmm3
cvttsd2si edi, xmm0
movd xmm0, esi
cvtdq2pd xmm0, xmm0
mov dword [ebp - 0x78c], edi
mov edi, dword [ebp - 0x814]
mov eax, dword [edi + 4]
mulsd xmm0, qword [ebp - 0x7e0]
cvttsd2si ecx, xmm0
movd xmm0, dword [edi]
mov edi, dword [ebp - 0x7f4]
mov dword [ebp - 0x7e4], ecx
mov ecx, dword [ebp - 0x818]
cvtdq2ps xmm0, xmm0
movd xmm1, dword [ecx]
mov ecx, dword [ecx + 4]
cvtdq2ps xmm1, xmm1
addss xmm1, dword [ebp - 0x7a8]
subss xmm1, xmm0
movsd xmm0, qword [edi + 0x18]
comisd xmm0, xmmword [ebp - 0xa70]
cvttss2si esi, xmm1
jbe 0x4a09e2
movd xmm1, ecx
cvtdq2ps xmm1, xmm1
movd xmm0, eax
addss xmm1, xmm5
cvtdq2ps xmm0, xmm0
addss xmm1, xmm3
subss xmm1, xmm0
jmp 0x4a0a0e
movd xmm2, ecx
movaps xmm1, xmm3
movd xmm3, eax
cvtdq2ps xmm2, xmm2
cvtdq2ps xmm3, xmm3
addss xmm2, xmm5
test dl, dl
jne 0x4a0a06
movaps xmm0, xmm5
subss xmm0, xmm4
subss xmm2, xmm0
addss xmm1, xmm2
subss xmm1, xmm3
movd xmm0, esi
cvtdq2ps xmm0, xmm0
mov edi, dword [ebp - 0x78c]
mov dword [ebp - 0xd00], 0
mov dword [ebp - 0xcfc], 0
cvttss2si ecx, xmm1
lea eax, [edi + esi]
movss xmm1, dword [ebp - 0x7a4]
movss dword [ebp - 0x888], xmm0
divss xmm0, xmm1
movss dword [ebp - 0xc40], xmm0
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
divss xmm0, xmm1
movss dword [ebp - 0xc3c], xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mov eax, dword [ebp - 0x7e4]
add eax, ecx
lea ecx, [ebx + 0x60]
divss xmm0, xmm1
movss dword [ebp - 0xc38], xmm0
movd xmm0, eax
lea eax, [ebp - 0xd10]
cvtdq2ps xmm0, xmm0
push eax
divss xmm0, xmm1
movss dword [ebp - 0xc34], xmm0
movups xmm0, xmmword [ebp - 0xc40]
movups xmmword [ebp - 0x748], xmm0
movaps xmm0, xmmword [0x5ea820]
movups xmmword [ebp - 0xd10], xmm0
call fcn.00410ad0
mov ecx, eax
call fcn.00487cf0
push 0
push 1
lea eax, [ebp - 0x748]
push eax
push dword [ebp - 0x778]
lea ecx, [ebx + 0x60]
call fcn.00410ad0
movss xmm3, dword [0x5ea4e0]
mov ecx, eax
call fcn.00487cd0
mov eax, dword [ebp - 0x890]
mov ecx, 0x306f
movd xmm1, edi
cvtdq2ps xmm1, xmm1
mov word [eax], cx
mov eax, dword [ebp - 0x850]
movaps xmm0, xmm1
addss xmm0, dword [ebp - 0x7a8]
movss dword [eax], xmm1
mov eax, dword [ebp - 0x818]
movss dword [ebp - 0x7a8], xmm0
movd xmm1, dword [eax + 4]
mov eax, dword [ebp - 0x814]
cvtdq2ps xmm1, xmm1
movd xmm0, dword [eax + 4]
addss xmm1, dword [ebp - 0x81c]
cvtdq2ps xmm0, xmm0
subss xmm1, xmm0
movss dword [ebp - 0x8b0], xmm1
mov dword [ebp - 0x810], 1
mov ecx, dword [ebp - 0x778]
test ecx, ecx
je 0x4a0b6b
mov eax, dword [ecx]
push ecx
mov eax, dword [eax + 8]
call eax
mov ecx, dword [ebp - 0x77c]
test ecx, ecx
je 0x4a0b7d
mov eax, dword [ecx]
push ecx
mov eax, dword [eax + 8]
call eax
mov ecx, dword [ebp - 0x780]
test ecx, ecx
je 0x4a0b8f
mov eax, dword [ecx]
push ecx
mov eax, dword [eax + 8]
call eax
mov ecx, dword [ebp - 0x784]
test ecx, ecx
je 0x49312f
mov eax, dword [ecx]
push ecx
mov eax, dword [eax + 8]
call eax
movss xmm4, dword [ebp - 0x7a8]
mov esi, dword [ebp - 0x79c]
mov cl, byte [ebp - 0x785]
mov edi, dword [ebp - 0x790]
jmp 0x49d3a2
xor esi, esi
mov dword [ebp - 0x9a4], esi
cmp di, 7
jne 0x4a0c7b
movzx edi, word [edx]
lea ecx, [edx + 6]
mov eax, 0xff3b
cmp di, ax
jne 0x4a253b
mov eax, 0xff03
cmp word [edx + 2], ax
jne 0x4a1cbb
mov eax, 0x5b57
cmp word [ecx], ax
jne 0x4a1cbb
mov eax, 0x4e0b
cmp word [edx + 8], ax
jne 0x4a1cbb
mov esi, 0x3052
cmp word [edx + 0xa], si
jne 0x4a1cbb
mov esi, 0xff3d
cmp word [edx + 0xc], si
jne 0x4a1cbb
mov eax, dword [ebp - 0x93c]
xor ecx, ecx
movzx esi, word [eax]
nop
lea eax, [ecx + 1]
movzx edx, ax
movsx eax, cx
mov eax, dword [eax*4 + 0x5919a8]
cmp si, word [eax]
je 0x4a0c6e
mov ecx, edx
cmp cx, 9
jl 0x4a0c40
mov edx, dword [ebp - 0x7e8]
mov ecx, dword [ebp - 0x884]
jmp 0x4a1cbb
mov edi, dword [ebp - 0x790]
mov esi, edx
jmp 0x4a0d32
cmp di, 8
jne 0x4a0e0b
movzx edi, word [edx]
mov eax, 0xff3b
cmp di, ax
jne 0x4a2538
mov eax, 0xff03
cmp word [edx + 2], ax
jne 0x4a1cb8
mov eax, 0x5b57
cmp word [edx + 8], ax
jne 0x4a1cb8
mov ecx, 0x4e0b
cmp word [edx + 0xa], cx
jne 0x4a1cb8
mov ecx, 0x3052
cmp word [edx + 0xc], cx
jne 0x4a1cb8
mov ecx, 0xff3d
cmp word [edx + 0xe], cx
jne 0x4a1cb8
mov eax, dword [ebp - 0x93c]
mov ecx, 9
movzx esi, word [eax]
nop
movsx eax, cx
mov edx, dword [eax*4 + 0x5919a8]
cmp si, word [edx]
jne 0x4a0d0e
mov eax, dword [ebp - 0x884]
mov ax, word [eax]
cmp ax, word [edx + 2]
je 0x4a0d26
inc ecx
cmp cx, 0x1e
jl 0x4a0cf0
mov edx, dword [ebp - 0x7e8]
mov ecx, dword [ebp - 0x884]
jmp 0x4a1cbb
mov edi, dword [ebp - 0x790]
lea eax, [ecx + 1]
movzx esi, ax
mov dword [ebp - 0x9a4], esi
test si, si
jle 0x4a0fbe
movss xmm0, dword [ebp - 0x7a4]
mov edx, dword [ebp - 0x7a0]
push 1
push ecx
movss dword [esp], xmm0
lea ecx, [ebp - 0x6c0]
push 1
push dword [ebp - 0x7f8]
push dword [ebp - 0x7b4]
call fcn.0040ec40
mov eax, dword [ebp - 0x798]
movaps xmm2, xmm0
movsd xmm5, qword [ebp - 0x7e0]
xorps xmm0, xmm0
cvtss2sd xmm0, xmm2
mov edi, dword [ebp - 0x790]
add esp, 0x14
mov eax, dword [eax + 0xc]
mov cl, byte [ebp - 0x785]
mov byte [ebp - 0x8a4], 1
movss dword [ebp - 0x7d0], xmm2
movd xmm1, dword [eax + 0xa80]
cvtdq2pd xmm1, xmm1
movsx eax, si
mov esi, dword [ebp - 0x79c]
movss xmm2, dword [ebp - 0x7ac]
mulsd xmm1, xmm5
addsd xmm1, xmm0
movd xmm0, eax
mov eax, dword [ebp - 0x794]
cvtdq2ps xmm0, xmm0
cvtpd2ps xmm1, xmm1
mulss xmm1, xmm0
movaps xmm4, xmm1
movss dword [ebp - 0x9c8], xmm1
addss xmm4, dword [ebp - 0x7a8]
subss xmm4, dword [ebp - 0x9b4]
movss dword [ebp - 0x7a8], xmm4
jmp 0x49d3b8
cmp di, 0xa
jne 0x4a0ee2
movzx edi, word [edx]
mov eax, 0xff3b
cmp di, ax
jne 0x4a2538
mov eax, 0xff03
lea ecx, [edx + 6]
cmp word [edx + 2], ax
jne 0x4a1cbb
mov eax, 0x5929
cmp word [edx + 4], ax
jne 0x4a1cbb
mov eax, 0x304b
cmp word [ecx], ax
jne 0x4a1cbb
mov eax, 0x3089
cmp word [edx + 8], ax
jne 0x4a1cbb
mov eax, 0x5b57
cmp word [edx + 0xc], ax
jne 0x4a1cbb
mov eax, 0x4e0b
cmp word [edx + 0xe], ax
jne 0x4a1cbb
mov eax, 0x3052
cmp word [edx + 0x10], ax
jne 0x4a1cbb
mov eax, 0xff3d
cmp word [edx + 0x12], ax
jne 0x4a1cbb
mov eax, dword [ebp - 0x934]
xor ecx, ecx
movzx esi, word [eax]
nop dword [eax + eax]
lea eax, [ecx + 1]
movzx edx, ax
movsx eax, cx
mov eax, dword [eax*4 + 0x5919a8]
cmp si, word [eax]
je 0x4a0c6e
mov ecx, edx
cmp cx, 9
jl 0x4a0eb0
mov edx, dword [ebp - 0x7e8]
mov ecx, dword [ebp - 0x884]
jmp 0x4a1cbb
cmp di, 0xb
jne 0x4a0fc2
mov eax, 0xff3b
cmp word [edx], ax
jne 0x4a1cb8
mov esi, 0xff03
lea ecx, [edx + 4]
cmp word [edx + 2], si
jne 0x4a0fdc
mov eax, 0x5929
cmp word [ecx], ax
lea eax, [edx + 6]
jne 0x4a0fdf
mov esi, 0x304b
cmp word [eax], si
jne 0x4a0fdf
mov esi, 0x3089
cmp word [edx + 8], si
jne 0x4a0fdf
mov esi, 0x5b57
cmp word [edx + 0xe], si
jne 0x4a0fdf
mov esi, 0x4e0b
cmp word [edx + 0x10], si
jne 0x4a0fdf
mov esi, 0x3052
cmp word [edx + 0x12], si
jne 0x4a0fdf
mov esi, 0xff3d
cmp word [edx + 0x14], si
jne 0x4a0fdf
mov eax, dword [ebp - 0x934]
mov ecx, 9
movzx esi, word [eax]
movsx eax, cx
mov edx, dword [eax*4 + 0x5919a8]
cmp si, word [edx]
jne 0x4a0fa3
mov eax, dword [ebp - 0x7e8]
mov ax, word [eax + 0xc]
cmp ax, word [edx + 2]
je 0x4a0d2c
inc ecx
cmp cx, 0x1e
jl 0x4a0f80
mov edx, dword [ebp - 0x7e8]
mov eax, dword [ebp - 0x884]
mov ecx, dword [ebp - 0x93c]
jmp 0x4a0fdf
cmp di, 0xb
mov edx, dword [ebp - 0x7e8]
jl 0x4a10b5
mov eax, dword [ebp - 0x884]
mov ecx, dword [ebp - 0x93c]
jmp 0x4a0fdf
lea eax, [edx + 6]
mov esi, 0xff3b
cmp word [edx], si
mov esi, 0xff03
jne 0x4a10bd
cmp word [edx + 2], si
jne 0x4a10bd
mov esi, 0x3053
cmp word [ecx], si
jne 0x4a10bd
cmp word [eax], si
lea esi, [edx + 0xa]
jne 0x4a10c0
mov eax, 0x304b
cmp word [edx + 8], ax
jne 0x4a10c0
mov eax, 0x3089
cmp word [esi], ax
jne 0x4a10c0
mov eax, 0x5b57
cmp word [edx + 0xe], ax
jne 0x4a10c0
mov eax, 0x4e0b
cmp word [edx + 0x10], ax
jne 0x4a10c0
mov eax, 0x3052
cmp word [edx + 0x12], ax
jne 0x4a10c0
movzx edx, word [edx + 0xc]
xor ecx, ecx
nop
movsx eax, cx
mov eax, dword [eax*4 + 0x5919a8]
cmp dx, word [eax]
je 0x4a107e
inc ecx
cmp cx, 9
jl 0x4a1060
mov edx, dword [ebp - 0x7e8]
jmp 0x4a10c0
mov edx, dword [ebp - 0x904]
movsx eax, cx
lea ecx, [eax + 1]
inc eax
shl eax, 8
shl ecx, 0xd
or ecx, eax
mov eax, dword [edx]
and eax, 0xfffc00ff
or ecx, eax
mov eax, dword [ebp - 0x794]
or ecx, 8
mov dword [edx], ecx
mov edx, dword [ebp - 0x7e8]
or dword [eax], 0x20000
jmp 0x4a10c0
mov esi, dword [ebp - 0x934]
jmp 0x4a10c0
lea esi, [edx + 0xa]
cmp di, 0x16
jne 0x4a1463
mov eax, 0xff3b
cmp word [edx], ax
jne 0x4a1b02
mov eax, 0xff03
lea ecx, [edx + 4]
cmp word [edx + 2], ax
jne 0x4a168e
mov eax, 0x3053
cmp word [ecx], ax
lea eax, [edx + 6]
jne 0x4a129f
mov edi, 0x3053
cmp word [eax], di
jne 0x4a129f
mov esi, 0x304b
cmp word [edx + 8], si
lea esi, [edx + 0xa]
jne 0x4a129f
mov ecx, 0x3089
cmp word [esi], cx
lea ecx, [edx + 4]
jne 0x4a129f
mov edi, 0x6539
cmp word [edx + 0xc], di
jne 0x4a129f
mov edi, 0x884c
cmp word [edx + 0xe], di
jne 0x4a129f
mov esi, 0x5929
cmp word [edx + 0x10], si
lea esi, [edx + 0xa]
jne 0x4a129f
mov ecx, 0x4ed8
cmp word [edx + 0x12], cx
lea ecx, [edx + 4]
jne 0x4a129f
mov esi, 0x304d
cmp word [edx + 0x14], si
lea esi, [edx + 0xa]
jne 0x4a129f
mov edi, 0x3001
cmp word [edx + 0x16], di
jne 0x4a129f
mov ecx, 0x6298
cmp word [edx + 0x18], cx
lea ecx, [edx + 4]
jne 0x4a129f
mov edi, 0x308a
cmp word [edx + 0x1a], di
jne 0x4a129f
mov esi, 0x8fd4
cmp word [edx + 0x1c], si
lea esi, [edx + 0xa]
jne 0x4a129f
mov edi, 0x3057
cmp word [edx + 0x1e], di
jne 0x4a129f
mov edi, 0x3066
cmp word [edx + 0x20], di
jne 0x4a129f
mov ecx, 0x5b57
cmp word [edx + 0x24], cx
lea ecx, [edx + 4]
jne 0x4a129f
mov esi, 0x4e0b
cmp word [edx + 0x26], si
lea esi, [edx + 0xa]
jne 0x4a129f
mov esi, 0x3052
cmp word [edx + 0x28], si
lea esi, [edx + 0xa]
jne 0x4a129f
mov edi, 0xff3d
cmp word [edx + 0x2a], di
jne 0x4a129f
movzx edx, word [edx + 0x22]
xor ecx, ecx
nop dword [eax + eax]
movsx eax, cx
mov eax, dword [eax*4 + 0x5919a8]
cmp dx, word [eax]
je 0x4a1265
inc ecx
cmp cx, 9
jl 0x4a1230
movss xmm4, dword [ebp - 0x7a8]
mov esi, dword [ebp - 0x79c]
mov cl, byte [ebp - 0x785]
mov edi, dword [ebp - 0x790]
jmp 0x49d3a2
mov edx, dword [ebp - 0x904]
movss xmm4, dword [ebp - 0x7a8]
mov esi, dword [ebp - 0x79c]
mov edi, dword [ebp - 0x790]
mov eax, dword [edx]
movsx ecx, cx
and eax, 0xfffc00ff
inc ecx
shl ecx, 0xd
or ecx, eax
or ecx, 8
mov dword [edx], ecx
mov cl, byte [ebp - 0x785]
jmp 0x49d3a2
mov edi, 0x3053
cmp word [ecx], di
mov edi, dword [ebp - 0x790]
jne 0x4a168e
mov edi, 0x3053
cmp word [eax], di
mov edi, dword [ebp - 0x790]
jne 0x4a168e
mov eax, 0x304b
cmp word [edx + 8], ax
jne 0x4a168e
mov eax, 0x3089
cmp word [esi], ax
jne 0x4a168e
mov eax, 0x5b57
cmp word [edx + 0xe], ax
jne 0x4a168e
mov eax, 0x4e0b
cmp word [edx + 0x10], ax
jne 0x4a168e
mov eax, 0x3052
cmp word [edx + 0x12], ax
jne 0x4a168e
mov eax, 0x3001
cmp word [edx + 0x14], ax
jne 0x4a168e
mov eax, 0x6298
cmp word [edx + 0x16], ax
jne 0x4a168e
mov eax, 0x308a
cmp word [edx + 0x18], ax
jne 0x4a168e
mov eax, 0x8fd4
cmp word [edx + 0x1a], ax
jne 0x4a168e
mov eax, 0x3057
cmp word [edx + 0x1c], ax
jne 0x4a168e
mov eax, 0x3066
cmp word [edx + 0x1e], ax
mov eax, 0x5b57
jne 0x4a168e
cmp word [edx + 0x24], ax
jne 0x4a168e
mov eax, 0x4e0b
cmp word [edx + 0x26], ax
jne 0x4a168e
mov eax, 0x3052
cmp word [edx + 0x28], ax
jne 0x4a168e
mov eax, 0xff3d
cmp word [edx + 0x2a], ax
jne 0x4a168e
movzx edx, word [edx + 0xc]
xor ecx, ecx
nop dword [eax]
movsx eax, cx
mov eax, dword [eax*4 + 0x5919a8]
cmp dx, word [eax]
je 0x4a13c8
inc ecx
cmp cx, 9
jl 0x4a13b0
jmp 0x4a13e3
mov edx, dword [ebp - 0x904]
movsx ecx, cx
inc ecx
shl ecx, 8
mov eax, dword [edx]
and eax, 0xfffc00ff
or ecx, eax
or ecx, 8
mov dword [edx], ecx
mov edi, dword [ebp - 0x7e8]
mov ecx, 9
movzx esi, word [edi + 0x20]
movsx eax, cx
mov edx, dword [eax*4 + 0x5919a8]
cmp si, word [edx]
jne 0x4a140b
mov ax, word [edi + 0x22]
cmp ax, word [edx + 2]
je 0x4a1431
inc ecx
cmp cx, 0x1e
jl 0x4a13f2
movss xmm4, dword [ebp - 0x7a8]
mov esi, dword [ebp - 0x79c]
mov cl, byte [ebp - 0x785]
mov edi, dword [ebp - 0x790]
jmp 0x49d3a2
movss xmm4, dword [ebp - 0x7a8]
mov esi, dword [ebp - 0x79c]
mov edi, dword [ebp - 0x790]
movsx eax, cx
mov ecx, dword [ebp - 0x904]
shl eax, 0xd
add eax, 0x2000
or dword [ecx], eax
mov cl, byte [ebp - 0x785]
jmp 0x49d3a2
cmp di, 0x15
jne 0x4a1681
mov eax, 0xff3b
cmp word [edx], ax
jne 0x4a1cb8
mov eax, 0xff03
lea ecx, [edx + 4]
cmp word [edx + 2], ax
jne 0x4a168e
mov eax, 0x3053
cmp word [ecx], ax
lea eax, [edx + 6]
jne 0x4a1691
mov edi, 0x3053
cmp word [eax], di
mov edi, dword [ebp - 0x790]
jne 0x4a1691
mov esi, 0x304b
cmp word [edx + 8], si
jne 0x4a1691
mov edi, 0x3089
cmp word [edx + 0xa], di
mov edi, dword [ebp - 0x790]
jne 0x4a1691
mov ecx, 0x5b57
cmp word [edx + 0xe], cx
lea ecx, [edx + 4]
jne 0x4a1691
mov edi, 0x4e0b
cmp word [edx + 0x10], di
mov edi, dword [ebp - 0x790]
jne 0x4a1691
mov ecx, 0x3052
cmp word [edx + 0x12], cx
lea ecx, [edx + 4]
jne 0x4a1691
mov edi, 0x3001
cmp word [edx + 0x14], di
mov edi, dword [ebp - 0x790]
jne 0x4a1691
mov ecx, 0x6298
cmp word [edx + 0x16], cx
lea ecx, [edx + 4]
jne 0x4a1691
mov esi, 0x308a
cmp word [edx + 0x18], si
jne 0x4a1691
mov esi, 0x8fd4
cmp word [edx + 0x1a], si
jne 0x4a1691
mov esi, 0x3057
cmp word [edx + 0x1c], si
jne 0x4a1691
mov edi, 0x3066
cmp word [edx + 0x1e], di
mov edi, dword [ebp - 0x790]
jne 0x4a1691
mov edi, 0x5b57
cmp word [edx + 0x22], di
mov edi, dword [ebp - 0x790]
jne 0x4a1691
mov ecx, 0x4e0b
cmp word [edx + 0x24], cx
lea ecx, [edx + 4]
jne 0x4a1691
mov ecx, 0x3052
cmp word [edx + 0x26], cx
lea ecx, [edx + 4]
jne 0x4a1691
mov edi, 0xff3d
cmp word [edx + 0x28], di
mov edi, dword [ebp - 0x790]
jne 0x4a1691
movzx edx, word [edx + 0xc]
xor ecx, ecx
nop dword [eax]
movsx eax, cx
mov eax, dword [eax*4 + 0x5919a8]
cmp dx, word [eax]
je 0x4a15ee
inc ecx
cmp cx, 9
jl 0x4a15d0
mov esi, dword [ebp - 0x904]
jmp 0x4a1609
mov esi, dword [ebp - 0x904]
movsx ecx, cx
inc ecx
shl ecx, 8
mov eax, dword [esi]
and eax, 0xfffc00ff
or ecx, eax
or ecx, 8
mov dword [esi], ecx
mov eax, dword [ebp - 0x7e8]
xor ecx, ecx
movzx edx, word [eax + 0x20]
nop word [eax + eax]
movsx eax, cx
mov eax, dword [eax*4 + 0x5919a8]
cmp dx, word [eax]
je 0x4a1655
inc ecx
cmp cx, 9
jl 0x4a1620
movss xmm4, dword [ebp - 0x7a8]
mov esi, dword [ebp - 0x79c]
mov cl, byte [ebp - 0x785]
mov edi, dword [ebp - 0x790]
jmp 0x49d3a2
movss xmm4, dword [ebp - 0x7a8]
mov edi, dword [ebp - 0x790]
movsx eax, cx
mov cl, byte [ebp - 0x785]
shl eax, 0xd
add eax, 0x2000
or dword [esi], eax
mov esi, dword [ebp - 0x79c]
jmp 0x49d3a2
cmp di, 0xc
jl 0x4a1779
lea ecx, [edx + 4]
lea eax, [edx + 6]
mov esi, 0xff3b
cmp word [edx], si
jne 0x4a1779
mov edi, 0xff03
cmp word [edx + 2], di
mov edi, dword [ebp - 0x790]
jne 0x4a1779
mov edi, 0x3053
cmp word [ecx], di
mov edi, dword [ebp - 0x790]
jne 0x4a1779
mov ecx, 0x3053
cmp word [eax], cx
jne 0x4a1779
mov eax, 0x304b
cmp word [edx + 8], ax
jne 0x4a1779
mov eax, 0x3089
cmp word [edx + 0xa], ax
jne 0x4a1779
mov eax, 0x5b57
cmp word [edx + 0x10], ax
jne 0x4a1779
mov eax, 0x4e0b
cmp word [edx + 0x12], ax
jne 0x4a1779
mov eax, 0x3052
cmp word [edx + 0x14], ax
jne 0x4a1779
movzx esi, word [edx + 0xc]
mov ecx, 9
movsx eax, cx
mov edx, dword [eax*4 + 0x5919a8]
cmp si, word [edx]
jne 0x4a1741
mov eax, dword [ebp - 0x7e8]
mov ax, word [eax + 0xe]
cmp ax, word [edx + 2]
je 0x4a174a
inc ecx
cmp cx, 0x1e
jl 0x4a1722
jmp 0x4a1779
mov edx, dword [ebp - 0x904]
movsx eax, cx
lea ecx, [eax + 1]
inc eax
shl eax, 8
shl ecx, 0xd
or ecx, eax
mov eax, dword [edx]
and eax, 0xfffc00ff
or ecx, eax
mov eax, dword [ebp - 0x794]
or ecx, 8
mov dword [edx], ecx
or dword [eax], 0x20000
mov edx, dword [ebp - 0x7e8]
cmp di, 0x17
jne 0x4a1af3
movzx edi, word [edx]
mov eax, 0xff3b
cmp di, ax
jne 0x4a2538
mov eax, 0xff03
lea ecx, [edx + 6]
cmp word [edx + 2], ax
jne 0x4a1cbb
mov edi, 0x3053
cmp word [edx + 4], di
jne 0x4a195a
cmp word [ecx], di
jne 0x4a195a
mov eax, 0x304b
cmp word [edx + 8], ax
lea eax, [edx + 0xa]
jne 0x4a1964
mov edi, 0x3089
cmp word [eax], di
mov edi, 0x3053
jne 0x4a1964
mov edi, 0x6539
cmp word [edx + 0xc], di
mov edi, 0x3053
jne 0x4a1964
mov edi, 0x884c
cmp word [edx + 0xe], di
mov edi, 0x3053
jne 0x4a1964
mov edi, 0x5929
cmp word [edx + 0x10], di
mov edi, 0x3053
jne 0x4a1964
mov edi, 0x4ed8
cmp word [edx + 0x12], di
mov edi, 0x3053
jne 0x4a1964
mov edi, 0x304d
cmp word [edx + 0x14], di
mov edi, 0x3053
jne 0x4a1964
mov edi, 0x3001
cmp word [edx + 0x16], di
mov edi, 0x3053
jne 0x4a1964
mov edi, 0x6298
cmp word [edx + 0x18], di
mov edi, 0x3053
jne 0x4a1964
mov edi, 0x308a
cmp word [edx + 0x1a], di
mov edi, 0x3053
jne 0x4a1964
mov edi, 0x8fd4
cmp word [edx + 0x1c], di
mov edi, 0x3053
jne 0x4a1964
mov edi, 0x3057
cmp word [edx + 0x1e], di
mov edi, 0x3053
jne 0x4a1964
mov edi, 0x3066
cmp word [edx + 0x20], di
mov edi, 0x3053
jne 0x4a1964
mov edi, 0x5b57
cmp word [edx + 0x26], di
mov edi, 0x3053
jne 0x4a1964
mov edi, 0x4e0b
cmp word [edx + 0x28], di
mov edi, 0x3053
jne 0x4a1964
mov edi, 0x3052
cmp word [edx + 0x2a], di
mov edi, 0x3053
jne 0x4a1964
mov edi, 0xff3d
cmp word [edx + 0x2c], di
jne 0x4a195f
movzx esi, word [edx + 0x22]
mov ecx, 9
movsx eax, cx
mov edx, dword [eax*4 + 0x5919a8]
cmp si, word [edx]
jne 0x4a1934
mov eax, dword [ebp - 0x7e8]
mov ax, word [eax + 0x24]
cmp ax, word [edx + 2]
je 0x4a1265
inc ecx
cmp cx, 0x1e
jl 0x4a1911
movss xmm4, dword [ebp - 0x7a8]
mov esi, dword [ebp - 0x79c]
mov cl, byte [ebp - 0x785]
mov edi, dword [ebp - 0x790]
jmp 0x49d3a2
lea eax, [edx + 0xa]
jmp 0x4a1964
mov edi, 0x3053
cmp word [edx + 4], di
jne 0x4a1cbb
cmp word [ecx], di
jne 0x4a1cbb
mov edi, 0x304b
cmp word [edx + 8], di
jne 0x4a1cbb
mov edi, 0x3089
cmp word [eax], di
jne 0x4a1cbb
mov edi, 0x5b57
cmp word [edx + 0x10], di
jne 0x4a1cbb
mov edi, 0x4e0b
cmp word [edx + 0x12], di
jne 0x4a1cbb
mov edi, 0x3052
cmp word [edx + 0x14], di
jne 0x4a1cbb
mov edi, 0x3001
cmp word [edx + 0x16], di
jne 0x4a1cbb
mov edi, 0x6298
cmp word [edx + 0x18], di
jne 0x4a1cbb
mov edi, 0x308a
cmp word [edx + 0x1a], di
jne 0x4a1cbb
mov edi, 0x8fd4
cmp word [edx + 0x1c], di
jne 0x4a1cbb
mov edi, 0x3057
cmp word [edx + 0x1e], di
jne 0x4a1cbb
mov edi, 0x3066
cmp word [edx + 0x20], di
mov edi, 0x5b57
jne 0x4a1cbb
cmp word [edx + 0x26], di
jne 0x4a1cbb
mov edi, 0x4e0b
cmp word [edx + 0x28], di
jne 0x4a1cbb
mov edi, 0x3052
cmp word [edx + 0x2a], di
jne 0x4a1cbb
movzx esi, word [edx + 0xc]
mov ecx, 9
nop dword [eax]
nop word [eax + eax]
mov edi, dword [ebp - 0x7e8]
movsx eax, cx
mov edx, dword [eax*4 + 0x5919a8]
cmp si, word [edx]
jne 0x4a1a7f
mov ax, word [edi + 0xe]
cmp ax, word [edx + 2]
je 0x4a1a88
inc ecx
cmp cx, 0x1e
jl 0x4a1a60
jmp 0x4a1aa3
mov edx, dword [ebp - 0x904]
movsx ecx, cx
inc ecx
shl ecx, 8
mov eax, dword [edx]
and eax, 0xfffc00ff
or ecx, eax
or ecx, 8
mov dword [edx], ecx
movzx esi, word [edi + 0x22]
mov ecx, 9
nop dword [eax]
movsx eax, cx
mov edx, dword [eax*4 + 0x5919a8]
cmp si, word [edx]
jne 0x4a1acd
mov ax, word [edi + 0x24]
cmp ax, word [edx + 2]
je 0x4a1431
inc ecx
cmp cx, 0x1e
jl 0x4a1ab0
movss xmm4, dword [ebp - 0x7a8]
mov esi, dword [ebp - 0x79c]
mov cl, byte [ebp - 0x785]
mov edi, dword [ebp - 0x790]
jmp 0x49d3a2
cmp di, 0x16
jne 0x4a0c63
mov eax, 0xff3b
movzx edi, word [edx]
cmp di, ax
jne 0x4a2538
mov eax, 0xff03
lea ecx, [edx + 6]
cmp word [edx + 2], ax
jne 0x4a1cbb
mov eax, 0x3053
cmp word [edx + 4], ax
jne 0x4a1cbb
cmp word [ecx], ax
jne 0x4a1cbb
mov eax, 0x304b
cmp word [edx + 8], ax
jne 0x4a1cbb
mov edi, 0x3089
cmp word [edx + 0xa], di
jne 0x4a1cbb
mov edi, 0x5b57
cmp word [edx + 0x10], di
jne 0x4a1cbb
mov edi, 0x4e0b
cmp word [edx + 0x12], di
jne 0x4a1cbb
mov edi, 0x3052
cmp word [edx + 0x14], di
jne 0x4a1cbb
mov edi, 0x3001
cmp word [edx + 0x16], di
jne 0x4a1cbb
mov edi, 0x6298
cmp word [edx + 0x18], di
jne 0x4a1cbb
mov edi, 0x308a
cmp word [edx + 0x1a], di
jne 0x4a1cbb
mov edi, 0x8fd4
cmp word [edx + 0x1c], di
jne 0x4a1cbb
mov edi, 0x3057
cmp word [edx + 0x1e], di
jne 0x4a1cbb
mov edi, 0x3066
cmp word [edx + 0x20], di
mov edi, 0x5b57
jne 0x4a1cbb
cmp word [edx + 0x24], di
jne 0x4a1cbb
mov edi, 0x4e0b
cmp word [edx + 0x26], di
jne 0x4a1cbb
mov edi, 0x3052
cmp word [edx + 0x28], di
jne 0x4a1cbb
mov edi, 0xff3d
cmp word [edx + 0x2a], di
jne 0x4a1cbb
movzx esi, word [edx + 0xc]
mov ecx, 9
nop dword [eax]
nop word [eax + eax]
mov edi, dword [ebp - 0x7e8]
movsx eax, cx
mov edx, dword [eax*4 + 0x5919a8]
cmp si, word [edx]
jne 0x4a1c4f
mov ax, word [edi + 0xe]
cmp ax, word [edx + 2]
je 0x4a1c9b
inc ecx
cmp cx, 0x1e
jl 0x4a1c30
mov esi, dword [ebp - 0x904]
movzx edx, word [edi + 0x22]
xor ecx, ecx
movsx eax, cx
mov eax, dword [eax*4 + 0x5919a8]
cmp dx, word [eax]
je 0x4a1655
inc ecx
cmp cx, 9
jl 0x4a1c62
movss xmm4, dword [ebp - 0x7a8]
mov esi, dword [ebp - 0x79c]
mov cl, byte [ebp - 0x785]
mov edi, dword [ebp - 0x790]
jmp 0x49d3a2
mov esi, dword [ebp - 0x904]
movsx ecx, cx
inc ecx
shl ecx, 8
mov eax, dword [esi]
and eax, 0xfffc00ff
or ecx, eax
or ecx, 8
mov dword [esi], ecx
jmp 0x4a1c5c
lea ecx, [edx + 6]
movzx edi, word [edx]
mov esi, 0xff3b
cmp di, si
lea esi, [edx + 4]
jne 0x4a22db
mov eax, 0xff03
cmp word [edx + 2], ax
jne 0x4a22db
mov eax, 0x3053
cmp word [esi], ax
jne 0x4a22db
mov esi, eax
cmp word [ecx], si
lea esi, [edx + 4]
jne 0x4a22db
mov eax, 0x3067
cmp word [edx + 8], ax
jne 0x4a22db
mov esi, 0x5b57
cmp word [edx + 0xa], si
lea esi, [edx + 4]
jne 0x4a22db
mov eax, 0x4e0b
cmp word [edx + 0xc], ax
jne 0x4a22db
mov eax, 0x3052
cmp word [edx + 0xe], ax
jne 0x4a22db
mov eax, dword [ebp - 0x904]
mov edi, dword [ebp - 0x794]
and dword [eax], 0xfffc00f7
mov eax, dword [edi]
test eax, 0x80000
je 0x49312f
test al, 1
je 0x4a22b0
mov edx, dword [ebp - 0x79c]
movss xmm1, dword [0x5ea6d4]
movzx ecx, byte [edx + 0x7f4]
movzx eax, byte [edx + 0x7f5]
shl ecx, 8
or ecx, eax
movzx eax, byte [edx + 0x7f6]
shl ecx, 8
or ecx, eax
mov dword [ebp - 0xc44], 0x3f800000
mov eax, ecx
shr eax, 0x10
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x5ea8e0]
mov eax, ecx
shr eax, 8
movzx eax, al
cvtpd2ps xmm0, xmm0
divss xmm0, xmm1
movss dword [ebp - 0xc50], xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x5ea8e0]
movzx eax, cl
lea ecx, [ebx + 0x64]
cvtpd2ps xmm0, xmm0
divss xmm0, xmm1
movss dword [ebp - 0xc4c], xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x5ea8e0]
lea eax, [ebp - 0xc50]
push eax
cvtpd2ps xmm0, xmm0
divss xmm0, xmm1
movss dword [ebp - 0xc48], xmm0
call fcn.00410ad0
mov ecx, eax
call fcn.0043a180
movaps xmm0, xmmword [0x5ea820]
lea eax, [ebp - 0xc98]
push eax
lea ecx, [ebx + 0x60]
mov dword [ebp - 0xc88], 0
movups xmmword [ebp - 0xc98], xmm0
mov dword [ebp - 0xc84], 0
call fcn.00410ad0
mov ecx, eax
call fcn.00487cf0
cmp word [ebp - 0x84c], 0x40
mov ecx, dword [ebp - 0x9cc]
movss xmm3, dword [ebp - 0x7fc]
movsd xmm1, qword [ebp - 0x7e0]
mulss xmm3, dword [0x5ea4cc]
movsx eax, cx
mov ecx, dword [ebp - 0x9d0]
movss xmm4, dword [ebp - 0x7a4]
movsx ecx, cx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm1
jne 0x4a20b0
cmp byte [ebp - 0x891], 0
cvttsd2si edx, xmm0
movd xmm0, ecx
mov ecx, dword [ebp - 0x818]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm1
cvttsd2si esi, xmm0
je 0x4a1fc5
or dword [edi], 0x4000
movd xmm1, dword [ecx + 8]
mov edi, dword [ebp - 0x814]
cvtdq2ps xmm1, xmm1
mov ecx, dword [ecx + 4]
movd xmm0, dword [edi]
subss xmm1, dword [ebp - 0x950]
cvtdq2ps xmm0, xmm0
subss xmm1, xmm0
addss xmm1, dword [ebp - 0x834]
cvttss2si eax, xmm1
movd xmm1, dword [edi + 4]
cvtdq2ps xmm1, xmm1
movd xmm2, eax
lea eax, [ecx + edx]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
cvtdq2ps xmm2, xmm2
addss xmm0, xmm3
divss xmm2, xmm4
subss xmm0, xmm1
movss dword [ebp - 0xaa8], xmm2
movss dword [ebp - 0xab0], xmm2
cvttss2si eax, xmm0
movd xmm0, eax
lea eax, [ecx + esi]
cvtdq2ps xmm0, xmm0
lea ecx, [ebx + 0x60]
divss xmm0, xmm4
movss dword [ebp - 0xaa4], xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
subss xmm0, xmm3
subss xmm0, xmm1
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
divss xmm0, xmm4
movss dword [ebp - 0xaac], xmm0
call fcn.00410ad0
movsd xmm1, qword [ebp - 0x7e0]
mov esi, eax
cvtpd2ps xmm0, xmm1
push 0
push ecx
mov edi, dword [esi]
lea ecx, [ebx + 0x64]
movss dword [esp], xmm0
call fcn.00410ad0
push eax
push dword [ebp - 0xaa4]
push dword [ebp - 0xaa8]
push dword [ebp - 0xaac]
push dword [ebp - 0xab0]
jmp 0x4a22aa
movd xmm1, dword [ecx + 8]
mov edi, dword [ebp - 0x814]
cvtdq2ps xmm1, xmm1
mov ecx, dword [ecx + 4]
movd xmm0, dword [edi]
subss xmm1, dword [ebp - 0x91c]
cvtdq2ps xmm0, xmm0
subss xmm1, xmm0
addss xmm1, dword [ebp - 0x834]
cvttss2si eax, xmm1
movd xmm1, dword [edi + 4]
cvtdq2ps xmm1, xmm1
movd xmm2, eax
lea eax, [ecx + edx]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
cvtdq2ps xmm2, xmm2
addss xmm0, xmm3
divss xmm2, xmm4
subss xmm0, xmm1
movss dword [ebp - 0xab8], xmm2
movss dword [ebp - 0xac0], xmm2
cvttss2si eax, xmm0
movd xmm0, eax
lea eax, [ecx + esi]
cvtdq2ps xmm0, xmm0
lea ecx, [ebx + 0x60]
divss xmm0, xmm4
movss dword [ebp - 0xab4], xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
subss xmm0, xmm3
subss xmm0, xmm1
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
divss xmm0, xmm4
movss dword [ebp - 0xabc], xmm0
call fcn.00410ad0
movsd xmm1, qword [ebp - 0x7e0]
mov esi, eax
cvtpd2ps xmm0, xmm1
push 0
push ecx
mov edi, dword [esi]
lea ecx, [ebx + 0x64]
movss dword [esp], xmm0
call fcn.00410ad0
push eax
push dword [ebp - 0xab4]
push dword [ebp - 0xab8]
push dword [ebp - 0xabc]
push dword [ebp - 0xac0]
jmp 0x4a22aa
cmp byte [ebp - 0x891], 0
mov edx, dword [ebp - 0x818]
cvttsd2si eax, xmm0
movd xmm0, ecx
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm1
cvttsd2si esi, xmm0
je 0x4a21c6
or dword [edi], 0x4000
movd xmm1, dword [edx + 4]
mov edi, dword [ebp - 0x814]
mov edx, dword [edx]
add eax, edx
cvtdq2ps xmm1, xmm1
movd xmm0, dword [edi + 4]
addss xmm1, dword [ebp - 0x950]
cvtdq2ps xmm0, xmm0
subss xmm1, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
subss xmm1, dword [ebp - 0x834]
addss xmm0, xmm3
cvttss2si ecx, xmm1
movd xmm1, dword [edi]
cvtdq2ps xmm1, xmm1
movd xmm2, ecx
lea ecx, [ebx + 0x60]
subss xmm0, xmm1
cvtdq2ps xmm2, xmm2
cvttss2si eax, xmm0
divss xmm2, xmm4
movd xmm0, eax
lea eax, [edx + esi]
cvtdq2ps xmm0, xmm0
movss dword [ebp - 0xac4], xmm2
divss xmm0, xmm4
movss dword [ebp - 0xacc], xmm2
movss dword [ebp - 0xac8], xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
subss xmm0, xmm3
subss xmm0, xmm1
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
divss xmm0, xmm4
movss dword [ebp - 0xad0], xmm0
call fcn.00410ad0
movsd xmm1, qword [ebp - 0x7e0]
mov esi, eax
cvtpd2ps xmm0, xmm1
push 0
push ecx
mov edi, dword [esi]
lea ecx, [ebx + 0x64]
movss dword [esp], xmm0
call fcn.00410ad0
push eax
push dword [ebp - 0xac4]
push dword [ebp - 0xac8]
push dword [ebp - 0xacc]
push dword [ebp - 0xad0]
jmp 0x4a22aa
movd xmm1, dword [edx + 4]
mov edi, dword [ebp - 0x814]
mov edx, dword [edx]
add eax, edx
cvtdq2ps xmm1, xmm1
movd xmm0, dword [edi + 4]
addss xmm1, dword [ebp - 0x91c]
cvtdq2ps xmm0, xmm0
subss xmm1, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
subss xmm1, dword [ebp - 0x834]
addss xmm0, xmm3
cvttss2si ecx, xmm1
movd xmm1, dword [edi]
cvtdq2ps xmm1, xmm1
movd xmm2, ecx
lea ecx, [ebx + 0x60]
subss xmm0, xmm1
cvtdq2ps xmm2, xmm2
cvttss2si eax, xmm0
divss xmm2, xmm4
movd xmm0, eax
lea eax, [edx + esi]
cvtdq2ps xmm0, xmm0
movss dword [ebp - 0xad4], xmm2
divss xmm0, xmm4
movss dword [ebp - 0xadc], xmm2
movss dword [ebp - 0xad8], xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
subss xmm0, xmm3
subss xmm0, xmm1
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
divss xmm0, xmm4
movss dword [ebp - 0xae0], xmm0
call fcn.00410ad0
movsd xmm1, qword [ebp - 0x7e0]
mov esi, eax
cvtpd2ps xmm0, xmm1
push 0
push ecx
mov edi, dword [esi]
lea ecx, [ebx + 0x64]
movss dword [esp], xmm0
call fcn.00410ad0
push eax
push dword [ebp - 0xad4]
push dword [ebp - 0xad8]
push dword [ebp - 0xadc]
push dword [ebp - 0xae0]
mov eax, dword [edi + 0x3c]
push esi
call eax
mov eax, dword [ebp - 0x794]
movss xmm4, dword [ebp - 0x7a8]
mov esi, dword [ebp - 0x79c]
mov cl, byte [ebp - 0x785]
and dword [eax], 0xfff7fffc
mov edi, dword [ebp - 0x790]
jmp 0x49d3a8
mov eax, dword [ebp - 0x790]
cmp ax, 6
jne 0x4a234d
mov eax, 0xff3b
cmp di, ax
jne 0x4a253b
mov eax, 0xff03
cmp word [edx + 2], ax
jne 0x4a253b
mov eax, 0x5730
cmp word [esi], ax
jne 0x4a253b
mov eax, 0x4ed8
cmp word [ecx], ax
jne 0x4a253b
mov eax, 0x304d
cmp word [edx + 8], ax
jne 0x4a253b
mov esi, 0xff3d
cmp word [edx + 0xa], si
jne 0x4a253b
mov dword [ebp - 0x974], 1
jmp 0x4a2549
cmp ax, 0xa
jne 0x4a2454
mov eax, 0xff3b
cmp di, ax
jne 0x4a2538
mov eax, 0xff03
cmp word [edx + 2], ax
jne 0x4a2538
mov ecx, 0x5730
cmp word [edx + 4], cx
lea ecx, [edx + 6]
jne 0x4a253b
movzx eax, word [ecx]
mov esi, 0x304b
cmp ax, si
jne 0x4a23a3
mov eax, 0x3089
cmp word [edx + 8], ax
je 0x4a23c0
jmp 0x4a253b
mov esi, 0x3088
cmp ax, si
jne 0x4a253b
mov eax, 0x308a
cmp word [edx + 8], ax
jne 0x4a253b
mov eax, 0x5b57
cmp word [edx + 0xc], ax
jne 0x4a253b
mov eax, 0x4e0a
cmp word [edx + 0xe], ax
jne 0x4a253b
mov eax, 0x3052
cmp word [edx + 0x10], ax
jne 0x4a253b
mov eax, 0xff3d
cmp word [edx + 0x12], ax
jne 0x4a253b
mov eax, dword [ebp - 0x934]
xor ecx, ecx
movzx edx, word [eax]
nop word [eax + eax]
movsx eax, cx
mov eax, dword [eax*4 + 0x5919a8]
cmp dx, word [eax]
je 0x4a2437
inc ecx
cmp cx, 9
jl 0x4a2410
mov edx, dword [ebp - 0x7e8]
mov ecx, dword [ebp - 0x884]
jmp 0x4a253b
mov edx, dword [ebp - 0x7e8]
lea eax, [ecx + 2]
movzx ecx, ax
mov dword [ebp - 0x974], ecx
mov ecx, dword [ebp - 0x884]
jmp 0x4a253b
cmp ax, 0xb
jne 0x4a253b
mov eax, 0xff3b
cmp di, ax
jne 0x4a253b
mov eax, 0xff03
cmp word [edx + 2], ax
jne 0x4a253b
mov eax, 0x5730
cmp word [esi], ax
jne 0x4a253b
movzx eax, word [ecx]
mov esi, 0x304b
cmp ax, si
jne 0x4a24a6
mov eax, 0x3089
cmp word [edx + 8], ax
je 0x4a24c3
jmp 0x4a253b
mov esi, 0x3088
cmp ax, si
jne 0x4a253b
mov eax, 0x308a
cmp word [edx + 8], ax
jne 0x4a253b
mov eax, 0x5b57
cmp word [edx + 0xe], ax
jne 0x4a253b
mov eax, 0x4e0a
cmp word [edx + 0x10], ax
jne 0x4a253b
mov eax, 0x3052
cmp word [edx + 0x12], ax
jne 0x4a253b
mov eax, 0xff3d
cmp word [edx + 0x14], ax
jne 0x4a253b
mov eax, dword [ebp - 0x934]
mov ecx, 9
movzx esi, word [eax]
nop dword [eax]
movsx eax, cx
mov edx, dword [eax*4 + 0x5919a8]
cmp si, word [edx]
jne 0x4a2523
mov eax, dword [ebp - 0x7e8]
mov ax, word [eax + 0xc]
cmp ax, word [edx + 2]
je 0x4a2437
inc ecx
cmp cx, 0x1e
jl 0x4a2500
mov edx, dword [ebp - 0x7e8]
mov ecx, dword [ebp - 0x884]
jmp 0x4a253b
lea ecx, [edx + 6]
cmp word [ebp - 0x974], 0
jle 0x4a2625
mov esi, dword [ebp - 0x798]
mov eax, dword [ebp - 0xa3c]
cmp ax, word [esi + 0xa]
je 0x4a2625
movss xmm0, dword [ebp - 0x7a4]
mov edx, dword [ebp - 0x7a0]
push 1
push ecx
movss dword [esp], xmm0
lea ecx, [ebp - 0x6c0]
push 1
push dword [ebp - 0x7f8]
push dword [ebp - 0x7b4]
call fcn.0040ec40
mov eax, dword [ebp - 0x7f4]
add esp, 0x14
movss dword [ebp - 0x7d0], xmm0
mov eax, dword [eax + 0x14]
movzx eax, word [eax + 8]
cmp ax, 2
je 0x4a25f5
cmp ax, 1
je 0x4a25f5
movd xmm0, dword [ebp - 0x6b8]
movzx eax, word [esi + 0xa]
mov esi, dword [ebp - 0x79c]
mov cl, byte [ebp - 0x785]
mov edi, dword [ebp - 0x790]
cvtdq2ps xmm4, xmm0
mov dword [ebp - 0xa3c], eax
mov byte [ebp - 0x8a4], 1
addss xmm4, dword [ebp - 0x7a8]
movss dword [ebp - 0x7a8], xmm4
jmp 0x49d3a2
movzx eax, word [esi + 0xa]
movss xmm4, dword [ebp - 0x7a8]
mov esi, dword [ebp - 0x79c]
mov cl, byte [ebp - 0x785]
mov edi, dword [ebp - 0x790]
mov dword [ebp - 0xa3c], eax
mov byte [ebp - 0x8a4], 1
jmp 0x49d3a2
mov eax, dword [ebp - 0x790]
cmp ax, 0xa
jne 0x4a26f5
mov eax, 0xff3b
cmp di, ax
jne 0x4a2b1c
mov eax, 0xff03
cmp word [edx + 2], ax
jne 0x4a2b1c
mov edi, 0x3053
cmp word [edx + 4], di
jne 0x4a2b1c
cmp word [ecx], di
jne 0x4a2b1c
mov esi, 0x304b
cmp word [edx + 8], si
jne 0x4a2b1c
mov ecx, 0x3089
cmp word [edx + 0xa], cx
jne 0x4a2b1c
mov eax, 0x5730
cmp word [edx + 0xc], ax
jne 0x4a2b1c
mov eax, 0x4ed8
cmp word [edx + 0xe], ax
jne 0x4a2b1c
mov eax, 0x304d
cmp word [edx + 0x10], ax
jne 0x4a2b1c
mov eax, 0xff3d
cmp word [edx + 0x12], ax
jne 0x4a2b1c
mov eax, dword [ebp - 0x904]
movss xmm4, dword [ebp - 0x7a8]
mov esi, dword [ebp - 0x79c]
mov cl, byte [ebp - 0x785]
or dword [eax], 4
mov eax, dword [ebp - 0x96c]
mov edi, dword [ebp - 0x790]
mov byte [eax], 0
jmp 0x49d3a2
cmp ax, 0xc
jne 0x4a2896
mov eax, 0xff3b
cmp di, ax
jne 0x4a2b1c
mov eax, 0xff03
cmp word [edx + 2], ax
jne 0x4a2b1c
mov edi, 0x3053
cmp word [edx + 4], di
jne 0x4a27da
cmp word [ecx], di
jne 0x4a27da
mov esi, 0x3067
cmp word [edx + 8], si
lea esi, [edx + 0xa]
jne 0x4a27dd
mov edi, 0x5730
cmp word [esi], di
mov edi, 0x3053
jne 0x4a27dd
mov edi, 0x4ed8
cmp word [edx + 0xc], di
mov edi, 0x3053
jne 0x4a27dd
mov edi, 0x304d
cmp word [edx + 0xe], di
mov edi, 0x3053
jne 0x4a27dd
mov edi, 0x7d42
cmp word [edx + 0x10], di
mov edi, 0x3053
jne 0x4a27dd
mov edi, 0x308f
cmp word [edx + 0x12], di
mov edi, 0x3053
jne 0x4a27dd
mov edi, 0x308a
cmp word [edx + 0x14], di
mov edi, 0x3053
jne 0x4a27dd
mov eax, dword [ebp - 0x904]
movss xmm4, dword [ebp - 0x7a8]
mov esi, dword [ebp - 0x79c]
mov cl, byte [ebp - 0x785]
and dword [eax], 0xfffffffb
mov eax, dword [ebp - 0x96c]
mov edi, dword [ebp - 0x790]
mov byte [eax], 0
jmp 0x49d3a2
lea esi, [edx + 0xa]
cmp word [edx + 4], di
jne 0x4a2b1c
cmp word [ecx], di
jne 0x4a2b1c
mov eax, 0x3067
cmp word [edx + 8], ax
jne 0x4a2b1c
movzx eax, word [esi]
mov ecx, 0x5b57
cmp ax, cx
je 0x4a281a
mov ecx, 0x5730
cmp ax, cx
jne 0x4a2b1c
mov eax, 0x4e0a
cmp word [edx + 0xc], ax
jne 0x4a2b1c
mov eax, 0x3052
cmp word [edx + 0xe], ax
jne 0x4a2b1c
mov eax, 0x7d42
cmp word [edx + 0x10], ax
jne 0x4a2b1c
mov eax, 0x308f
cmp word [edx + 0x12], ax
jne 0x4a2b1c
mov eax, 0x308a
cmp word [edx + 0x14], ax
jne 0x4a2b1c
mov eax, dword [ebp - 0x904]
movss xmm4, dword [ebp - 0x7a8]
mov esi, dword [ebp - 0x79c]
mov cl, byte [ebp - 0x785]
and dword [eax], 0xfffffffb
mov eax, dword [ebp - 0x96c]
mov edi, dword [ebp - 0x790]
mov byte [eax], 0
jmp 0x49d3a2
cmp ax, 0xe
jne 0x4a29d0
mov eax, 0xff3b
cmp di, ax
jne 0x4a2b1c
mov eax, 0xff03
cmp word [edx + 2], ax
jne 0x4a2b1c
mov edi, 0x3053
cmp word [edx + 4], di
jne 0x4a2b1c
cmp word [ecx], di
jne 0x4a2b1c
mov esi, 0x304b
cmp word [edx + 8], si
jne 0x4a2b1c
mov ecx, 0x3089
cmp word [edx + 0xa], cx
jne 0x4a2b1c
mov eax, 0x5730
cmp word [edx + 0xc], ax
jne 0x4a2b1c
cmp word [edx + 0xe], si
jne 0x4a2b1c
cmp word [edx + 0x10], cx
jne 0x4a2b1c
mov eax, 0x5b57
cmp word [edx + 0x14], ax
jne 0x4a2b1c
mov eax, 0x4e0a
cmp word [edx + 0x16], ax
jne 0x4a2b1c
mov eax, 0x3052
cmp word [edx + 0x18], ax
jne 0x4a2b1c
mov eax, 0xff3d
cmp word [edx + 0x1a], ax
jne 0x4a2b1c
movzx esi, word [edx + 0x12]
xor ecx, ecx
nop dword [eax + eax]
lea eax, [ecx + 1]
movzx edx, ax
movsx eax, cx
mov eax, dword [eax*4 + 0x5919a8]
cmp si, word [eax]
je 0x4a299c
mov ecx, edx
cmp cx, 9
jl 0x4a2960
movss xmm4, dword [ebp - 0x7a8]
mov esi, dword [ebp - 0x79c]
mov cl, byte [ebp - 0x785]
mov edi, dword [ebp - 0x790]
jmp 0x49d3a2
mov eax, dword [ebp - 0x904]
movss xmm4, dword [ebp - 0x7a8]
mov esi, dword [ebp - 0x79c]
mov cl, byte [ebp - 0x785]
or dword [eax], 4
mov eax, dword [ebp - 0x96c]
mov edi, dword [ebp - 0x790]
mov byte [eax], 0
or word [eax], dx
jmp 0x49d3a2
cmp ax, 0xf
jne 0x4a2b1c
mov eax, 0xff3b
cmp di, ax
jne 0x4a2b1c
mov eax, 0xff03
cmp word [edx + 2], ax
jne 0x4a2b1c
mov edi, 0x3053
cmp word [edx + 4], di
jne 0x4a2b1c
cmp word [ecx], di
jne 0x4a2b1c
mov esi, 0x304b
cmp word [edx + 8], si
jne 0x4a2b1c
mov ecx, 0x3089
cmp word [edx + 0xa], cx
jne 0x4a2b1c
mov eax, 0x5730
cmp word [edx + 0xc], ax
jne 0x4a2b1c
cmp word [edx + 0xe], si
jne 0x4a2b1c
cmp word [edx + 0x10], cx
jne 0x4a2b1c
mov eax, 0x5b57
cmp word [edx + 0x16], ax
jne 0x4a2b1c
mov eax, 0x4e0a
cmp word [edx + 0x18], ax
jne 0x4a2b1c
mov eax, 0x3052
cmp word [edx + 0x1a], ax
jne 0x4a2b1c
mov eax, 0xff3d
cmp word [edx + 0x1c], ax
jne 0x4a2b1c
movzx esi, word [edx + 0x12]
mov ecx, 9
nop word [eax + eax]
movsx eax, cx
mov edx, dword [eax*4 + 0x5919a8]
cmp si, word [edx]
jne 0x4a2abf
mov eax, dword [ebp - 0x7e8]
mov ax, word [eax + 0x14]
cmp ax, word [edx + 2]
je 0x4a2ae5
inc ecx
cmp cx, 0x1e
jl 0x4a2aa0
movss xmm4, dword [ebp - 0x7a8]
mov esi, dword [ebp - 0x79c]
mov cl, byte [ebp - 0x785]
mov edi, dword [ebp - 0x790]
jmp 0x49d3a2
mov eax, dword [ebp - 0x904]
mov edx, dword [ebp - 0x96c]
movss xmm4, dword [ebp - 0x7a8]
mov esi, dword [ebp - 0x79c]
or dword [eax], 4
lea eax, [ecx + 1]
mov cl, byte [ebp - 0x785]
mov edi, dword [ebp - 0x790]
mov byte [edx], 0
or word [edx], ax
jmp 0x49d3a2
cmp byte [ebp - 0x891], 0
mov esi, dword [ebp - 0x794]
je 0x4a2e8e
test byte [esi], 2
je 0x4a2e8e
mov edx, dword [ebp - 0x79c]
movss xmm1, dword [0x5ea6d4]
movzx ecx, byte [edx + 0x7f4]
movzx eax, byte [edx + 0x7f5]
shl ecx, 8
or ecx, eax
movzx eax, byte [edx + 0x7f6]
shl ecx, 8
or ecx, eax
mov dword [ebp - 0xc54], 0x3f800000
mov eax, ecx
shr eax, 0x10
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x5ea8e0]
mov eax, ecx
shr eax, 8
movzx eax, al
cvtpd2ps xmm0, xmm0
divss xmm0, xmm1
movss dword [ebp - 0xc60], xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x5ea8e0]
movzx eax, cl
lea ecx, [ebx + 0x64]
cvtpd2ps xmm0, xmm0
divss xmm0, xmm1
movss dword [ebp - 0xc5c], xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x5ea8e0]
lea eax, [ebp - 0xc60]
push eax
cvtpd2ps xmm0, xmm0
divss xmm0, xmm1
movss dword [ebp - 0xc58], xmm0
call fcn.00410ad0
mov ecx, eax
call fcn.0043a180
movaps xmm0, xmmword [0x5ea820]
lea eax, [ebp - 0xcb0]
push eax
lea ecx, [ebx + 0x60]
mov dword [ebp - 0xca0], 0
movups xmmword [ebp - 0xcb0], xmm0
mov dword [ebp - 0xc9c], 0
call fcn.00410ad0
mov ecx, eax
call fcn.00487cf0
cmp word [ebp - 0x84c], 0x40
mov ecx, dword [ebp - 0x9d0]
movsx eax, cx
movss xmm2, dword [ebp - 0x7fc]
mulss xmm2, dword [0x5ea4cc]
mov ecx, dword [ebp - 0x818]
movd xmm0, eax
mov eax, dword [ebp - 0x9cc]
cvtdq2pd xmm0, xmm0
cwde
mulsd xmm0, qword [ebp - 0x7e0]
cvttsd2si edi, xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0x7e0]
cvttsd2si eax, xmm0
mov dword [ebp - 0x7d4], eax
mov eax, dword [ebp - 0x814]
jne 0x4a2d93
movd xmm1, dword [ecx + 8]
movd xmm0, dword [eax]
mov ecx, dword [ecx + 4]
cvtdq2ps xmm1, xmm1
cvtdq2ps xmm0, xmm0
subss xmm1, dword [ebp - 0x91c]
addss xmm1, dword [ebp - 0x834]
subss xmm1, xmm0
cvttss2si esi, xmm1
movd xmm1, dword [eax + 4]
lea eax, [ecx + edi]
movd xmm0, eax
mov eax, dword [ebp - 0x7d4]
cvtdq2ps xmm0, xmm0
add eax, ecx
lea ecx, [ebx + 0x60]
cvtdq2ps xmm1, xmm1
subss xmm0, xmm2
subss xmm0, xmm1
cvttss2si edx, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
addss xmm0, xmm2
movss xmm2, dword [ebp - 0x7a4]
subss xmm0, xmm1
movd xmm1, esi
cvtdq2ps xmm1, xmm1
cvttss2si eax, xmm0
divss xmm1, xmm2
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [ebp - 0xae8], xmm1
divss xmm0, xmm2
movss dword [ebp - 0xaf0], xmm1
movss dword [ebp - 0xae4], xmm0
movd xmm0, edx
cvtdq2ps xmm0, xmm0
divss xmm0, xmm2
movss dword [ebp - 0xaec], xmm0
call fcn.00410ad0
movsd xmm0, qword [ebp - 0x7e0]
mov esi, eax
cvtpd2ps xmm0, xmm0
push 0
push ecx
mov edi, dword [esi]
lea ecx, [ebx + 0x64]
movss dword [esp], xmm0
call fcn.00410ad0
push eax
push dword [ebp - 0xae4]
push dword [ebp - 0xae8]
push dword [ebp - 0xaec]
push dword [ebp - 0xaf0]
jmp 0x4a2e7f
movd xmm1, dword [ecx + 4]
movd xmm0, dword [eax + 4]
mov ecx, dword [ecx]
cvtdq2ps xmm1, xmm1
cvtdq2ps xmm0, xmm0
addss xmm1, dword [ebp - 0x91c]
subss xmm1, dword [ebp - 0x834]
subss xmm1, xmm0
cvttss2si edx, xmm1
movd xmm1, dword [eax]
lea eax, [ecx + edi]
movd xmm0, eax
mov eax, dword [ebp - 0x7d4]
cvtdq2ps xmm0, xmm0
add eax, ecx
lea ecx, [ebx + 0x60]
cvtdq2ps xmm1, xmm1
subss xmm0, xmm2
subss xmm0, xmm1
cvttss2si esi, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
addss xmm0, xmm2
movss xmm2, dword [ebp - 0x7a4]
subss xmm0, xmm1
movd xmm1, edx
cvtdq2ps xmm1, xmm1
cvttss2si eax, xmm0
divss xmm1, xmm2
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [ebp - 0xaf4], xmm1
divss xmm0, xmm2
movss dword [ebp - 0xafc], xmm1
movss dword [ebp - 0xaf8], xmm0
movd xmm0, esi
cvtdq2ps xmm0, xmm0
divss xmm0, xmm2
movss dword [ebp - 0xb00], xmm0
call fcn.00410ad0
movsd xmm0, qword [ebp - 0x7e0]
mov esi, eax
cvtpd2ps xmm0, xmm0
push 0
push ecx
mov edi, dword [esi]
lea ecx, [ebx + 0x64]
movss dword [esp], xmm0
call fcn.00410ad0
push eax
push dword [ebp - 0xaf4]
push dword [ebp - 0xaf8]
push dword [ebp - 0xafc]
push dword [ebp - 0xb00]
mov eax, dword [edi + 0x3c]
push esi
call eax
mov esi, dword [ebp - 0x794]
and dword [esi], 0xfffffffd
mov edi, dword [ebp - 0x790]
mov edx, dword [ebp - 0x7e8]
cmp di, 0xa
jne 0x4a2f70
mov eax, 0xff3b
cmp word [edx], ax
jne 0x4a2f7a
mov eax, 0xff03
cmp word [edx + 2], ax
jne 0x4a2f7a
mov ecx, 0x3053
cmp word [edx + 4], cx
jne 0x4a2f7a
cmp word [edx + 6], cx
jne 0x4a2f7a
mov eax, 0x304b
cmp word [edx + 8], ax
jne 0x4a2f7a
mov ecx, 0x3089
cmp word [edx + 0xa], cx
jne 0x4a2f7a
mov eax, 0x7f6b
cmp word [edx + 0xc], ax
jne 0x4a2f7a
mov eax, 0x56f2
cmp word [edx + 0xe], ax
jne 0x4a2f7a
mov eax, 0x307f
cmp word [edx + 0x10], ax
jne 0x4a2f7a
mov eax, 0xff3d
cmp word [edx + 0x12], ax
jne 0x4a2f7a
mov eax, dword [esi]
movss xmm4, dword [ebp - 0x7a8]
or eax, 3
movsd xmm5, qword [ebp - 0x7e0]
movss xmm2, dword [ebp - 0x7ac]
movss xmm0, dword [ebp - 0x7c8]
mov cl, byte [ebp - 0x785]
mov dword [esi], eax
test eax, 0x20000
je 0x4a2f5f
or eax, 0x80000
mov dword [esi], eax
mov esi, dword [ebp - 0x79c]
mov eax, dword [ebp - 0x794]
jmp 0x49d3c0
cmp di, 6
jl 0x4a3036
movsx eax, di
movzx ecx, word [edx + eax*2 - 0xa]
cmp cx, word [ebp - 0xa08]
je 0x4a3036
mov esi, 0x7f6b
cmp word [edx + eax*2 - 8], si
mov esi, dword [ebp - 0x794]
jne 0x4a3036
mov ecx, 0x56f2
cmp word [edx + eax*2 - 6], cx
movzx ecx, word [edx + eax*2 - 0xa]
jne 0x4a3036
mov edi, 0x307f
cmp word [edx + eax*2 - 4], di
mov edi, dword [ebp - 0x790]
jne 0x4a3036
mov esi, 0xff3d
cmp word [edx + eax*2 - 2], si
mov esi, dword [ebp - 0x794]
jne 0x4a3036
mov esi, 0xff03
cmp cx, si
mov esi, dword [ebp - 0x794]
je 0x4a3015
cmp di, 7
jl 0x4a301d
cmp cx, word [ebp - 0xa7c]
jne 0x4a301d
mov ecx, 0x4e8c
cmp word [edx + eax*2 - 0xc], cx
jne 0x4a301d
mov ecx, 0x306f
cmp word [edx + eax*2 - 0xe], cx
jne 0x4a301d
test dword [esi], 0x20000
je 0x4a3023
or dword [esi], 0x80003
movss xmm4, dword [ebp - 0x7a8]
mov esi, dword [ebp - 0x79c]
jmp 0x49d39c
cmp di, 0xc
jne 0x4a30c8
mov eax, 0xff3b
cmp word [edx], ax
jne 0x4a30d2
mov eax, 0xff03
cmp word [edx + 2], ax
jne 0x4a30d2
mov ecx, 0x3053
cmp word [edx + 4], cx
jne 0x4a30d2
cmp word [edx + 6], cx
jne 0x4a30d2
mov eax, 0x3067
cmp word [edx + 8], ax
jne 0x4a30d2
mov ecx, 0x7f6b
cmp word [edx + 0xa], cx
jne 0x4a30d2
mov eax, 0x56f2
cmp word [edx + 0xc], ax
jne 0x4a30d2
mov eax, 0x307f
cmp word [edx + 0xe], ax
jne 0x4a30d2
mov eax, 0x7d42
cmp word [edx + 0x10], ax
jne 0x4a30d2
mov eax, 0x308f
cmp word [edx + 0x12], ax
jne 0x4a30d2
mov eax, 0x308a
cmp word [edx + 0x14], ax
jne 0x4a30d2
mov ecx, 0xff3d
cmp word [edx + 0x16], cx
je 0x4a3145
jmp 0x4a30d2
cmp di, 9
jl 0x4a36bd
movsx eax, di
mov ecx, 0x7f6b
cmp word [edx + eax*2 - 0xe], cx
jne 0x4a36bd
mov ecx, 0x56f2
cmp word [edx + eax*2 - 0xc], cx
jne 0x4a36bd
mov ecx, 0x307f
cmp word [edx + eax*2 - 0xa], cx
jne 0x4a36bd
mov ecx, 0x7d42
cmp word [edx + eax*2 - 8], cx
jne 0x4a36bd
mov ecx, 0x308f
cmp word [edx + eax*2 - 6], cx
jne 0x4a36bd
mov ecx, 0x308a
cmp word [edx + eax*2 - 4], cx
mov ecx, 0xff3d
jne 0x4a36bd
cmp word [edx + eax*2 - 2], cx
jne 0x4a36bd
test byte [esi], 1
je 0x4a36a4
mov edx, dword [ebp - 0x79c]
movss xmm1, dword [0x5ea6d4]
movzx ecx, byte [edx + 0x7f4]
movzx eax, byte [edx + 0x7f5]
shl ecx, 8
or ecx, eax
movzx eax, byte [edx + 0x7f6]
shl ecx, 8
or ecx, eax
mov dword [ebp - 0xbf4], 0x3f800000
mov eax, ecx
shr eax, 0x10
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x5ea8e0]
mov eax, ecx
shr eax, 8
movzx eax, al
cvtpd2ps xmm0, xmm0
divss xmm0, xmm1
movss dword [ebp - 0xc00], xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x5ea8e0]
movzx eax, cl
lea ecx, [ebx + 0x64]
cvtpd2ps xmm0, xmm0
divss xmm0, xmm1
movss dword [ebp - 0xbfc], xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x5ea8e0]
lea eax, [ebp - 0xc00]
push eax
cvtpd2ps xmm0, xmm0
divss xmm0, xmm1
movss dword [ebp - 0xbf8], xmm0
call fcn.00410ad0
mov ecx, eax
call fcn.0043a180
movaps xmm0, xmmword [0x5ea820]
lea eax, [ebp - 0xcc8]
push eax
lea ecx, [ebx + 0x60]
mov dword [ebp - 0xcb8], 0
movups xmmword [ebp - 0xcc8], xmm0
mov dword [ebp - 0xcb4], 0
call fcn.00410ad0
mov ecx, eax
call fcn.00487cf0
cmp word [ebp - 0x84c], 0x40
mov ecx, dword [ebp - 0x9cc]
movss xmm3, dword [ebp - 0x7fc]
movsd xmm1, qword [ebp - 0x7e0]
mulss xmm3, dword [0x5ea4cc]
mov edi, dword [ebp - 0x814]
movss xmm4, dword [ebp - 0x7a4]
movsx eax, cx
mov ecx, dword [ebp - 0x9d0]
movsx ecx, cx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm1
jne 0x4a349e
cmp byte [ebp - 0x891], 0
cvttsd2si edx, xmm0
movd xmm0, ecx
mov ecx, dword [ebp - 0x818]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm1
cvttsd2si esi, xmm0
je 0x4a33b9
mov eax, dword [ebp - 0x794]
or dword [eax], 0x4000
movd xmm1, dword [ecx + 8]
movd xmm0, dword [edi]
cvtdq2ps xmm0, xmm0
mov ecx, dword [ecx + 4]
cvtdq2ps xmm1, xmm1
subss xmm1, dword [ebp - 0x950]
subss xmm1, xmm0
addss xmm1, dword [ebp - 0x834]
cvttss2si eax, xmm1
movd xmm1, dword [edi + 4]
cvtdq2ps xmm1, xmm1
movd xmm2, eax
lea eax, [ecx + edx]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
cvtdq2ps xmm2, xmm2
addss xmm0, xmm3
divss xmm2, xmm4
subss xmm0, xmm1
movss dword [ebp - 0xb08], xmm2
movss dword [ebp - 0xb10], xmm2
cvttss2si eax, xmm0
movd xmm0, eax
lea eax, [ecx + esi]
cvtdq2ps xmm0, xmm0
lea ecx, [ebx + 0x60]
divss xmm0, xmm4
movss dword [ebp - 0xb04], xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
subss xmm0, xmm3
subss xmm0, xmm1
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
divss xmm0, xmm4
movss dword [ebp - 0xb0c], xmm0
call fcn.00410ad0
movsd xmm1, qword [ebp - 0x7e0]
mov esi, eax
cvtpd2ps xmm0, xmm1
push 0
push ecx
mov edi, dword [esi]
lea ecx, [ebx + 0x64]
movss dword [esp], xmm0
call fcn.00410ad0
push eax
push dword [ebp - 0xb04]
push dword [ebp - 0xb08]
push dword [ebp - 0xb0c]
push dword [ebp - 0xb10]
jmp 0x4a3692
movd xmm1, dword [ecx + 8]
movd xmm0, dword [edi]
cvtdq2ps xmm0, xmm0
mov ecx, dword [ecx + 4]
cvtdq2ps xmm1, xmm1
subss xmm1, dword [ebp - 0x91c]
subss xmm1, xmm0
addss xmm1, dword [ebp - 0x834]
cvttss2si eax, xmm1
movd xmm1, dword [edi + 4]
cvtdq2ps xmm1, xmm1
movd xmm2, eax
lea eax, [ecx + edx]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
cvtdq2ps xmm2, xmm2
addss xmm0, xmm3
divss xmm2, xmm4
subss xmm0, xmm1
movss dword [ebp - 0xb18], xmm2
movss dword [ebp - 0xb20], xmm2
cvttss2si eax, xmm0
movd xmm0, eax
lea eax, [ecx + esi]
cvtdq2ps xmm0, xmm0
lea ecx, [ebx + 0x60]
divss xmm0, xmm4
movss dword [ebp - 0xb14], xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
subss xmm0, xmm3
subss xmm0, xmm1
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
divss xmm0, xmm4
movss dword [ebp - 0xb1c], xmm0
call fcn.00410ad0
movsd xmm1, qword [ebp - 0x7e0]
mov esi, eax
cvtpd2ps xmm0, xmm1
push 0
push ecx
mov edi, dword [esi]
lea ecx, [ebx + 0x64]
movss dword [esp], xmm0
call fcn.00410ad0
push eax
push dword [ebp - 0xb14]
push dword [ebp - 0xb18]
push dword [ebp - 0xb1c]
push dword [ebp - 0xb20]
jmp 0x4a3692
cmp byte [ebp - 0x891], 0
mov edx, dword [ebp - 0x818]
cvttsd2si eax, xmm0
movd xmm0, ecx
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm1
cvttsd2si esi, xmm0
je 0x4a35b4
mov ecx, dword [ebp - 0x794]
or dword [ecx], 0x4000
movd xmm1, dword [edx + 4]
movd xmm0, dword [edi + 4]
mov edx, dword [edx]
add eax, edx
cvtdq2ps xmm0, xmm0
cvtdq2ps xmm1, xmm1
addss xmm1, dword [ebp - 0x950]
subss xmm1, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
subss xmm1, dword [ebp - 0x834]
addss xmm0, xmm3
cvttss2si ecx, xmm1
movd xmm1, dword [edi]
cvtdq2ps xmm1, xmm1
movd xmm2, ecx
lea ecx, [ebx + 0x60]
subss xmm0, xmm1
cvtdq2ps xmm2, xmm2
cvttss2si eax, xmm0
divss xmm2, xmm4
movd xmm0, eax
lea eax, [esi + edx]
cvtdq2ps xmm0, xmm0
movss dword [ebp - 0xb24], xmm2
divss xmm0, xmm4
movss dword [ebp - 0xb2c], xmm2
movss dword [ebp - 0xb28], xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
subss xmm0, xmm3
subss xmm0, xmm1
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
divss xmm0, xmm4
movss dword [ebp - 0xb30], xmm0
call fcn.00410ad0
movsd xmm1, qword [ebp - 0x7e0]
mov esi, eax
cvtpd2ps xmm0, xmm1
push 0
push ecx
mov edi, dword [esi]
lea ecx, [ebx + 0x64]
movss dword [esp], xmm0
call fcn.00410ad0
push eax
push dword [ebp - 0xb24]
push dword [ebp - 0xb28]
push dword [ebp - 0xb2c]
push dword [ebp - 0xb30]
jmp 0x4a3692
movd xmm1, dword [edx + 4]
movd xmm0, dword [edi + 4]
mov edx, dword [edx]
add eax, edx
cvtdq2ps xmm0, xmm0
cvtdq2ps xmm1, xmm1
addss xmm1, dword [ebp - 0x91c]
subss xmm1, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
subss xmm1, dword [ebp - 0x834]
addss xmm0, xmm3
cvttss2si ecx, xmm1
movd xmm1, dword [edi]
cvtdq2ps xmm1, xmm1
movd xmm2, ecx
lea ecx, [ebx + 0x60]
subss xmm0, xmm1
cvtdq2ps xmm2, xmm2
cvttss2si eax, xmm0
divss xmm2, xmm4
movd xmm0, eax
lea eax, [esi + edx]
cvtdq2ps xmm0, xmm0
movss dword [ebp - 0xb34], xmm2
divss xmm0, xmm4
movss dword [ebp - 0xb3c], xmm2
movss dword [ebp - 0xb38], xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
subss xmm0, xmm3
subss xmm0, xmm1
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
divss xmm0, xmm4
movss dword [ebp - 0xb40], xmm0
call fcn.00410ad0
movsd xmm1, qword [ebp - 0x7e0]
mov esi, eax
cvtpd2ps xmm0, xmm1
push 0
push ecx
mov edi, dword [esi]
lea ecx, [ebx + 0x64]
movss dword [esp], xmm0
call fcn.00410ad0
push eax
push dword [ebp - 0xb34]
push dword [ebp - 0xb38]
push dword [ebp - 0xb3c]
push dword [ebp - 0xb40]
mov eax, dword [edi + 0x3c]
push esi
call eax
mov esi, dword [ebp - 0x794]
mov edi, dword [ebp - 0x790]
and dword [esi], 0xfff7fffc
movss xmm4, dword [ebp - 0x7a8]
mov esi, dword [ebp - 0x79c]
jmp 0x49d39c
cmp word [ebp - 0x84c], 0x40
jne 0x4a3f4c
cmp di, 6
jne 0x4a3779
mov eax, 0xff3b
cmp word [edx], ax
jne 0x4a5986
mov eax, 0xff03
lea ecx, [edx + 4]
cmp word [edx + 2], ax
jne 0x4a5897
mov eax, 0x7e26
cmp word [ecx], ax
lea eax, [edx + 6]
jne 0x4a589a
mov esi, 0x4e2d
cmp word [eax], si
jne 0x4a589a
mov esi, 0x6a2a
cmp word [edx + 8], si
mov esi, dword [ebp - 0x794]
jne 0x4a589a
mov edi, 0xff3d
cmp word [edx + 0xa], di
mov edi, dword [ebp - 0x790]
jne 0x4a589a
mov eax, dword [ebp - 0x798]
or dword [esi], 0x20
movss xmm4, dword [ebp - 0x7a8]
mov esi, dword [ebp - 0x79c]
mov dword [ebp - 0x970], eax
mov eax, dword [ebp - 0x8f0]
movzx eax, ax
mov dword [ebp - 0x90c], 0
mov dword [ebp - 0x868], eax
jmp 0x49d39c
cmp di, 9
jne 0x4a400b
mov eax, 0xff3b
cmp word [edx], ax
jne 0x4a5986
mov eax, 0xff03
lea ecx, [edx + 4]
cmp word [edx + 2], ax
jne 0x4a3f59
mov eax, 0x7e26
cmp word [ecx], ax
lea eax, [edx + 6]
jne 0x4a3f5c
mov edi, 0x4e2d
cmp word [eax], di
mov edi, dword [ebp - 0x790]
jne 0x4a3f5c
mov ecx, 0x6a2a
cmp word [edx + 8], cx
lea ecx, [edx + 4]
jne 0x4a3f5c
mov esi, 0x7d42
cmp word [edx + 0xa], si
jne 0x4a3f5c
mov edi, 0x308f
cmp word [edx + 0xc], di
mov edi, dword [ebp - 0x790]
jne 0x4a3f5c
mov edi, 0x308a
cmp word [edx + 0xe], di
mov edi, dword [ebp - 0x790]
jne 0x4a3f5c
mov esi, 0xff3d
cmp word [edx + 0x10], si
mov esi, dword [ebp - 0x794]
jne 0x4a3f5c
cmp dword [ebp - 0x970], 0
je 0x4a3f5c
mov ecx, dword [ebp - 0x90c]
test cx, cx
jne 0x4a3856
and dword [esi], 0xffffffdf
movss xmm4, dword [ebp - 0x7a8]
mov esi, dword [ebp - 0x79c]
jmp 0x49d39c
cmp byte [ebp - 0x92d], 0
jne 0x4a389a
mov eax, dword [esi]
test eax, 0x200
jne 0x4a389a
cmp byte [ebp - 0x92e], 0
jne 0x4a3889
test eax, 0x400
jne 0x4a3889
mov eax, dword [ebp - 0x798]
mov eax, dword [eax + 0xc]
mov edi, dword [eax + 0x428]
jmp 0x4a38a9
mov eax, dword [ebp - 0x798]
mov eax, dword [eax + 0xc]
mov edi, dword [eax + 0x464]
jmp 0x4a38a9
mov eax, dword [ebp - 0x798]
mov eax, dword [eax + 0xc]
mov edi, dword [eax + 0x458]
movss xmm0, dword [ebp - 0x7a4]
mov edx, edi
push 1
push ecx
movss dword [esp], xmm0
push ecx
push dword [ebp - 0x7f8]
lea ecx, [ebp - 0x44]
mov dword [ebp - 0x828], edi
push dword [ebp - 0x7b4]
call fcn.0040ec40
mov ecx, dword [ebp - 0x818]
movaps xmm7, xmm0
mov eax, dword [ebp - 0x814]
movaps xmm2, xmm7
movss xmm4, dword [ebp - 0x87c]
xor esi, esi
movss xmm3, dword [ebp - 0x864]
add esp, 0x14
movd xmm6, dword [ecx + 4]
subss xmm3, xmm4
movd xmm0, dword [eax + 4]
mov edx, dword [ecx + 8]
movd xmm1, dword [eax]
cvtdq2ps xmm0, xmm0
mov eax, dword [ebp - 0x798]
mov dword [ebp - 0x844], esi
cvtdq2ps xmm6, xmm6
mulss xmm3, dword [0x5ea4cc]
addss xmm6, dword [ebp - 0x7a8]
mulss xmm2, dword [0x5ea4cc]
cvtdq2ps xmm1, xmm1
subss xmm6, xmm0
movd xmm5, edx
cvtdq2ps xmm5, xmm5
cvttss2si ecx, xmm6
subss xmm5, xmm4
movss dword [ebp - 0x7d0], xmm7
mov dword [ebp - 0x6ac], ecx
mov eax, dword [eax + 0xc]
movss dword [ebp - 0x7bc], xmm6
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
mov ecx, dword [ebp - 0x970]
subss xmm5, xmm3
addss xmm0, dword [eax + 0xb94]
subss xmm5, xmm2
cvttss2si eax, xmm0
movd xmm0, edx
subss xmm5, xmm1
cvtdq2ps xmm0, xmm0
mov dword [ebp - 0x6a4], eax
movss dword [ebp - 0x7c4], xmm5
subss xmm0, xmm4
subss xmm0, xmm3
subss xmm0, xmm2
subss xmm0, xmm1
cvttss2si eax, xmm0
mov dword [ebp - 0x6b0], eax
movd xmm0, eax
cvtdq2ps xmm0, xmm0
addss xmm0, xmm7
cvttss2si eax, xmm0
movaps xmm0, xmm5
mov dword [ebp - 0x6a8], eax
mov eax, dword [ebp - 0x798]
movss dword [ebp - 0x7c0], xmm0
cmp ecx, eax
je 0x4a3bc1
mov dx, word [ebp - 0x868]
test byte [ecx + 8], 0x40
jne 0x4a3b9f
mov ecx, dword [ebp - 0x7ec]
test ecx, ecx
je 0x4a3b49
mov eax, dword [ebp - 0x970]
movsx esi, dx
movzx edi, word [eax + 4]
movsx eax, word [ecx + 4]
movsx edx, di
add edx, esi
cmp edx, eax
jle 0x4a3a60
nop word [eax + eax]
mov eax, dword [ebp - 0x7ec]
movsx ecx, word [ecx + 6]
movsx eax, word [eax + 4]
add ecx, eax
cmp ecx, esi
mov ecx, dword [ebp - 0x7ec]
jg 0x4a3a60
mov ecx, dword [ecx]
mov dword [ebp - 0x7ec], ecx
test ecx, ecx
jne 0x4a3a30
jmp 0x4a3b43
movzx esi, word [ecx + 4]
movsx eax, si
cmp edx, eax
jle 0x4a3b43
mov eax, dword [ebp - 0x88c]
test eax, eax
je 0x4a3a86
cmp ecx, eax
je 0x4a3a82
cmp dword [ecx + 8], eax
jne 0x4a3a86
mov cl, 1
jmp 0x4a3a88
xor cl, cl
push dword [ebp - 0x79c]
mov eax, dword [ebp - 0x844]
mov edx, dword [ebp - 0x7b4]
cwde
lea eax, [edx + eax*4]
push eax
push ecx
lea eax, [ebp - 0x6b0]
push eax
mov eax, dword [ebp - 0x7ec]
movzx eax, word [eax + 6]
push eax
push esi
push edi
push dword [ebp - 0x868]
lea eax, [ebx + 0x64]
sub esp, 0xc
mov ecx, esp
movss dword [esp + 8], xmm6
movss dword [esp + 4], xmm0
push eax
call fcn.0043ce00
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
movss xmm3, dword [ebp - 0x7a4]
mov ecx, dword [ebp - 0x7f4]
call fcn.004a7c00
mov eax, dword [ebp - 0x970]
movsx edx, word [ebp - 0x868]
movss xmm0, dword [ebp - 0x7c0]
movss xmm6, dword [ebp - 0x7bc]
movzx edi, word [eax + 4]
movsx eax, di
add edx, eax
mov eax, dword [ebp - 0x7ec]
movsx ecx, word [eax + 6]
movsx eax, word [eax + 4]
add ecx, eax
cmp edx, ecx
jl 0x4a3b43
mov ecx, dword [ebp - 0x7ec]
mov ecx, dword [ecx]
mov dword [ebp - 0x7ec], ecx
test ecx, ecx
jne 0x4a3a60
mov esi, dword [ebp - 0x844]
mov eax, dword [ebp - 0x970]
movzx edx, word [eax + 4]
xor eax, eax
mov ecx, edx
cmp ax, cx
jge 0x4a3b84
mov edi, dword [ebp - 0x7b4]
movsx eax, si
lea eax, [edi + eax*4]
nop dword [eax + eax]
addss xmm0, dword [eax]
add eax, 4
sub ecx, 1
jne 0x4a3b70
movss dword [ebp - 0x7c0], xmm0
mov eax, dword [ebp - 0x798]
add esi, edx
mov ecx, dword [ebp - 0x970]
mov dx, word [ebp - 0x868]
mov dword [ebp - 0x844], esi
add dx, word [ecx + 4]
mov ecx, dword [ecx]
mov word [ebp - 0x868], dx
mov dword [ebp - 0x970], ecx
cmp ecx, eax
je 0x4a3bbb
jmp 0x4a39f4
mov edi, dword [ebp - 0x828]
mov esi, dword [ebp - 0x8f4]
test esi, esi
je 0x4a3c0b
nop dword [eax + eax]
mov al, byte [esi + 8]
and al, 0xf
cmp al, 0xa
jae 0x4a3bff
movzx eax, word [esi + 6]
mov edx, eax
cmp ax, 0xffff
je 0x4a3dc8
movsx ecx, word [esi + 4]
cwde
add ecx, eax
mov eax, dword [ebp - 0x8f0]
cwde
cmp eax, ecx
jl 0x4a3dc8
mov esi, dword [esi]
mov dword [ebp - 0x8f4], esi
test esi, esi
jne 0x4a3bd0
mov esi, dword [ebp - 0x83c]
mov eax, dword [ebp - 0x90c]
movss xmm0, dword [ebp - 0x7a4]
push esi
cwde
push eax
lea eax, [ebp - 0x44]
push eax
sub esp, 0xc
lea eax, [ebx + 0x64]
movss dword [esp + 8], xmm0
movss xmm0, dword [ebp - 0x7bc]
movss dword [esp + 4], xmm0
movss xmm0, dword [ebp - 0x7c4]
movss dword [esp], xmm0
push 0
push ecx
mov ecx, esp
push eax
call fcn.0043ce00
push ecx
mov ecx, esp
push dword [ebp - 0x80c]
call fcn.004a86c0
push ecx
mov ecx, esp
push dword [ebp - 0x808]
call fcn.004a86c0
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
xor edx, edx
mov ecx, edi
call fcn.0043a210
mov eax, dword [ebp - 0x8f4]
test eax, eax
je 0x4a3d17
cmp byte [ebp - 0x68c], 0
je 0x4a3d17
test byte [eax + 8], 0x10
je 0x4a3cec
movss xmm0, dword [ebp - 0x7a4]
lea eax, [ebp - 0x69c]
push ecx
movss dword [esp], xmm0
push dword [ebp - 0x79c]
push dword [ebp - 0x814]
push eax
push 1
push ecx
lea eax, [ebx + 0x64]
mov ecx, esp
push eax
call fcn.0043ce00
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
mov ecx, dword [ebp - 0x7f4]
call fcn.004eeb40
mov edx, dword [ebp - 0x79c]
movzx ecx, byte [edx + 0x7e8]
movzx eax, byte [edx + 0x7e9]
shl ecx, 8
or ecx, eax
movzx eax, byte [edx + 0x7ea]
shl ecx, 8
or ecx, eax
mov dword [ebp - 0x83c], ecx
cmp byte [ebp - 0x8a4], 0
mov eax, dword [ebp - 0x798]
movsd xmm5, qword [ebp - 0x7e0]
mov ecx, dword [ebp - 0x800]
mov dword [ebp - 0x7a0], ecx
mov eax, dword [eax + 0xc]
movd xmm0, dword [eax + 0xa80]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm5
cvtpd2ps xmm4, xmm0
addss xmm4, dword [eax + 0xb94]
addss xmm4, dword [ebp - 0x7a8]
movss dword [ebp - 0x7a8], xmm4
je 0x4a3e73
mov ecx, dword [ebp - 0x818]
xor esi, esi
xor dh, dh
mov dword [ebp - 0x810], esi
mov byte [ebp - 0x8a4], 0
mov byte [ebp - 0x785], dh
movd xmm1, dword [ecx + 8]
mov ecx, dword [ebp - 0x814]
cvtdq2ps xmm1, xmm1
movd xmm0, dword [ecx]
subss xmm1, dword [ebp - 0x81c]
cvtdq2ps xmm0, xmm0
subss xmm1, xmm0
movss xmm0, dword [ebp - 0x7bc]
movss dword [ebp - 0x8b0], xmm0
movss dword [ebp - 0x888], xmm1
jmp 0x4a3e79
push dword [ebp - 0x968]
lea eax, [ebp - 0x6a0]
push 0
push 0
push eax
push dword [ebp - 0x814]
lea eax, [ebp - 0x6b0]
push dword [ebp - 0x7b4]
push eax
movzx eax, word [esi + 4]
push ecx
mov ecx, dword [ebp - 0x7f4]
mov dword [esp], 0
push edx
push eax
push 9
push dword [ebp - 0x8f0]
push 1
call fcn.004ee780
cvttss2si eax, dword [ebp - 0x7d0]
add eax, dword [ebp - 0x69c]
cmp byte [ebp - 0x68c], 0
mov dword [ebp - 0x694], eax
je 0x4a3c0b
mov ecx, dword [ebp - 0x7f4]
lea eax, [ebp - 0x69c]
push eax
push esi
call fcn.004eedb0
mov ecx, dword [ebp - 0x79c]
movzx esi, byte [ecx + 0x81b]
movzx eax, byte [ecx + 0x81c]
shl esi, 8
or esi, eax
movzx eax, byte [ecx + 0x81d]
shl esi, 8
or esi, eax
mov dword [ebp - 0x83c], esi
jmp 0x4a3c11
mov esi, dword [ebp - 0x810]
mov edi, dword [ebp - 0x90c]
xor ecx, ecx
mov byte [ebp - 0x85d], 0
cmp cx, di
jge 0x4a3eda
mov edx, dword [ebp - 0x850]
lea ecx, [ebp - 0x44]
movsx eax, si
mov esi, dword [ebp - 0x890]
movzx edi, di
lea edx, [edx + eax*4]
lea esi, [esi + eax*2]
nop dword [eax + eax]
mov ax, word [ecx]
lea edx, [edx + 4]
mov word [esi], ax
lea ecx, [ecx + 2]
mov dword [edx - 4], 0
lea esi, [esi + 2]
sub edi, 1
jne 0x4a3eb0
mov eax, dword [ebp - 0x798]
mov edi, dword [ebp - 0x90c]
mov eax, dword [eax + 0xc]
mov esi, dword [ebp - 0x810]
mov eax, dword [eax + 0xb94]
mov edx, dword [ebp - 0x850]
movss xmm2, dword [ebp - 0x7ac]
movsx ecx, si
add esi, edi
mov edi, dword [ebp - 0x790]
mov dword [ebp - 0x810], esi
mov esi, dword [ebp - 0x79c]
mov dword [edx + ecx*4], eax
mov eax, dword [ebp - 0x794]
mov cl, byte [ebp - 0x785]
mov dword [ebp - 0x90c], 0
mov byte [ebp - 0x92d], 0
and dword [eax], 0xffffffdf
mov eax, dword [ebp - 0x800]
mov dword [ebp - 0x830], eax
mov eax, dword [ebp - 0x794]
mov byte [ebp - 0x92e], 0
jmp 0x49d3b8
cmp di, 9
jne 0x4a400b
lea ecx, [edx + 4]
lea eax, [edx + 6]
mov esi, 0xff3b
cmp word [edx], si
mov esi, dword [ebp - 0x794]
jne 0x4a5708
mov edi, 0xff03
cmp word [edx + 2], di
mov edi, dword [ebp - 0x790]
jne 0x4a48a6
mov esi, 0x3053
cmp word [ecx], si
mov esi, dword [ebp - 0x794]
jne 0x4a48a6
mov ecx, 0x3053
cmp word [eax], cx
jne 0x4a48a6
mov eax, 0x304b
cmp word [edx + 8], ax
jne 0x4a48a6
mov ecx, 0x3089
cmp word [edx + 0xa], cx
jne 0x4a48a6
mov eax, 0x592a
cmp word [edx + 0xc], ax
jne 0x4a48a6
mov eax, 0x5b57
cmp word [edx + 0xe], ax
jne 0x4a48a6
mov eax, 0xff3d
cmp word [edx + 0x10], ax
jne 0x4a48a6
or dword [esi], 0x200
movss xmm4, dword [ebp - 0x7a8]
mov esi, dword [ebp - 0x79c]
jmp 0x49d39c
cmp di, 0xb
jne 0x4a42f4
mov eax, 0xff3b
cmp word [edx], ax
jne 0x4a5708
mov eax, 0xff03
lea ecx, [edx + 4]
cmp word [edx + 2], ax
jne 0x4a40a7
mov eax, 0x3053
cmp word [ecx], ax
lea eax, [edx + 6]
jne 0x4a40aa
mov esi, 0x3053
cmp word [eax], si
mov esi, dword [ebp - 0x794]
jne 0x4a40aa
mov edi, 0x3067
cmp word [edx + 8], di
jne 0x4a40aa
mov ecx, 0x592a
cmp word [edx + 0xa], cx
lea ecx, [edx + 4]
jne 0x4a40aa
mov edi, 0x5b57
cmp word [edx + 0xc], di
jne 0x4a40aa
mov esi, 0x7d42
cmp word [edx + 0xe], si
mov esi, dword [ebp - 0x794]
jne 0x4a40aa
mov ecx, 0x308f
cmp word [edx + 0x10], cx
lea ecx, [edx + 4]
jne 0x4a40aa
mov ecx, 0x308a
cmp word [edx + 0x12], cx
lea ecx, [edx + 4]
jne 0x4a40aa
and dword [esi], 0xfffffdff
jmp 0x4a40aa
lea eax, [edx + 6]
mov edi, 0xff3b
cmp word [edx], di
mov edi, dword [ebp - 0x790]
jne 0x4a4f17
mov edi, 0xff03
cmp word [edx + 2], di
mov edi, dword [ebp - 0x790]
jne 0x4a4168
mov edi, 0x30b4
cmp word [ecx], di
mov edi, dword [ebp - 0x790]
jne 0x4a4168
mov esi, 0x30b7
cmp word [eax], si
mov esi, dword [ebp - 0x794]
jne 0x4a4168
mov ecx, 0x30c3
cmp word [edx + 8], cx
jne 0x4a4168
mov esi, 0x30af
cmp word [edx + 0xa], si
mov esi, dword [ebp - 0x794]
jne 0x4a4168
mov edi, 0x4f53
cmp word [edx + 0xc], di
mov edi, dword [ebp - 0x790]
jne 0x4a4168
mov esi, 0x7d42
cmp word [edx + 0xe], si
mov esi, dword [ebp - 0x794]
jne 0x4a4168
mov ecx, 0x308f
cmp word [edx + 0x10], cx
jne 0x4a4168
mov edi, 0x308a
cmp word [edx + 0x12], di
mov edi, dword [ebp - 0x790]
jne 0x4a4168
mov esi, 0xff3d
cmp word [edx + 0x14], si
mov esi, dword [ebp - 0x794]
jne 0x4a4168
and dword [esi], 0xffeffdff
mov ecx, 0xff3b
cmp word [edx], cx
jne 0x4a4fcd
mov edi, 0xff03
cmp word [edx + 2], di
mov edi, dword [ebp - 0x790]
jne 0x4a420c
mov esi, 0x3053
cmp word [edx + 4], si
mov esi, dword [ebp - 0x794]
jne 0x4a420c
mov edi, 0x3053
cmp word [eax], di
mov edi, dword [ebp - 0x790]
jne 0x4a420c
mov esi, 0x3067
cmp word [edx + 8], si
mov esi, dword [ebp - 0x794]
jne 0x4a420c
mov ecx, 0x659c
cmp word [edx + 0xa], cx
jne 0x4a420c
mov edi, 0x4f53
cmp word [edx + 0xc], di
mov edi, dword [ebp - 0x790]
jne 0x4a420c
mov ecx, 0x7d42
cmp word [edx + 0xe], cx
jne 0x4a420c
mov esi, 0x308f
cmp word [edx + 0x10], si
mov esi, dword [ebp - 0x794]
jne 0x4a420c
mov edi, 0x308a
cmp word [edx + 0x12], di
mov edi, dword [ebp - 0x790]
jne 0x4a420c
and dword [esi], 0xfffffbff
mov ecx, 0xff3b
cmp word [edx], cx
jne 0x4a4fcd
mov edi, 0xff03
cmp word [edx + 2], di
mov edi, dword [ebp - 0x790]
jne 0x4a4b83
mov edi, 0x6bb5
cmp word [eax], di
mov edi, dword [ebp - 0x790]
jne 0x4a4b83
mov eax, 0x968e
cmp word [edx + 8], ax
jne 0x4a4b83
mov edi, 0x5927
cmp word [edx + 0xa], di
mov edi, dword [ebp - 0x790]
jne 0x4a4b83
mov eax, 0x304d
cmp word [edx + 0xc], ax
jne 0x4a4b83
mov eax, 0x306a
cmp word [edx + 0xe], ax
jne 0x4a4b83
mov eax, 0x6587
cmp word [edx + 0x10], ax
jne 0x4a4b83
mov eax, 0x5b57
cmp word [edx + 0x12], ax
jne 0x4a4b83
mov eax, 0xff3d
cmp word [edx + 0x14], ax
jne 0x4a4b83
or dword [esi], 0x800
mov cx, word [edx + 4]
call fcn.0040d690
movzx ecx, ax
lea eax, [ecx + 1]
movss xmm4, dword [ebp - 0x7a8]
movzx eax, ax
mov dword [ebp - 0x8b4], eax
mov eax, dword [esi]
movsx ecx, cx
and eax, 0xfffffff
shl ecx, 0x1c
or ecx, eax
mov dword [esi], ecx
mov esi, dword [ebp - 0x79c]
jmp 0x49d39c
cmp di, 0xc
jne 0x4a4494
mov eax, 0xff3b
cmp word [edx], ax
jne 0x4a5708
mov eax, 0xff03
cmp word [edx + 2], ax
jne 0x4a4b88
mov eax, 0x3053
lea ecx, [edx + 4]
cmp word [ecx], ax
lea eax, [edx + 6]
jne 0x4a43cf
mov esi, 0x3053
cmp word [eax], si
mov esi, dword [ebp - 0x794]
jne 0x4a43cf
mov ecx, 0x304b
cmp word [edx + 8], cx
lea ecx, [edx + 4]
jne 0x4a43cf
mov edi, 0x3089
cmp word [edx + 0xa], di
jne 0x4a43cf
mov edi, 0x30b4
cmp word [edx + 0xc], di
jne 0x4a43cf
mov esi, 0x30b7
cmp word [edx + 0xe], si
mov esi, dword [ebp - 0x794]
jne 0x4a43cf
mov ecx, 0x30c3
cmp word [edx + 0x10], cx
lea ecx, [edx + 4]
jne 0x4a43cf
mov esi, 0x30af
cmp word [edx + 0x12], si
mov esi, dword [ebp - 0x794]
jne 0x4a43cf
mov ecx, 0x4f53
cmp word [edx + 0x14], cx
lea ecx, [edx + 4]
jne 0x4a43cf
mov edi, 0xff3d
cmp word [edx + 0x16], di
mov edi, dword [ebp - 0x790]
jne 0x4a43cf
or dword [esi], 0x200
movss xmm4, dword [ebp - 0x7a8]
mov esi, dword [ebp - 0x79c]
jmp 0x49d39c
mov edi, 0xff11
cmp word [ecx], di
mov edi, dword [ebp - 0x790]
jne 0x4a4b83
mov ecx, 0xff10
cmp word [eax], cx
jne 0x4a4b83
mov eax, 0x6bb5
cmp word [edx + 8], ax
jne 0x4a4b83
mov ecx, 0x968e
cmp word [edx + 0xa], cx
jne 0x4a4b83
mov eax, 0x5927
cmp word [edx + 0xc], ax
jne 0x4a4b83
mov eax, 0x304d
cmp word [edx + 0xe], ax
jne 0x4a4b83
mov eax, 0x306a
cmp word [edx + 0x10], ax
jne 0x4a4b83
mov eax, 0x6587
cmp word [edx + 0x12], ax
jne 0x4a4b83
mov eax, 0x5b57
cmp word [edx + 0x14], ax
jne 0x4a4b83
mov ecx, 0xff3d
cmp word [edx + 0x16], cx
jne 0x4a4b83
mov eax, dword [esi]
movss xmm4, dword [ebp - 0x7a8]
and eax, 0xffff7ff
or eax, 0x90000800
mov dword [ebp - 0x8b4], 0xa
mov dword [esi], eax
mov esi, dword [ebp - 0x79c]
jmp 0x49d39c
cmp di, 0xe
jne 0x4a4652
mov eax, 0xff3b
cmp word [edx], ax
jne 0x4a5708
mov eax, 0xff03
lea ecx, [edx + 4]
cmp word [edx + 2], ax
jne 0x4a4563
mov eax, 0x3053
cmp word [ecx], ax
lea eax, [edx + 6]
jne 0x4a4566
mov esi, 0x3053
cmp word [eax], si
mov esi, dword [ebp - 0x794]
jne 0x4a4566
mov edi, 0x3067
cmp word [edx + 8], di
jne 0x4a4566
mov edi, 0x30b4
cmp word [edx + 0xa], di
jne 0x4a4566
mov esi, 0x30b7
cmp word [edx + 0xc], si
mov esi, dword [ebp - 0x794]
jne 0x4a4566
mov esi, 0x30c3
cmp word [edx + 0xe], si
mov esi, dword [ebp - 0x794]
jne 0x4a4566
mov ecx, 0x30af
cmp word [edx + 0x10], cx
lea ecx, [edx + 4]
jne 0x4a4566
mov ecx, 0x4f53
cmp word [edx + 0x12], cx
lea ecx, [edx + 4]
jne 0x4a4566
mov ecx, 0x7d42
cmp word [edx + 0x14], cx
lea ecx, [edx + 4]
jne 0x4a4566
mov edi, 0x308f
cmp word [edx + 0x16], di
jne 0x4a4566
mov edi, 0x308a
cmp word [edx + 0x18], di
jne 0x4a4566
and dword [esi], 0xfffffdff
jmp 0x4a4566
lea eax, [edx + 6]
mov edi, 0xff3b
cmp word [edx], di
mov edi, dword [ebp - 0x790]
jne 0x4a4e36
mov edi, 0xff03
cmp word [edx + 2], di
mov edi, dword [ebp - 0x790]
jne 0x4a4b83
mov esi, 0x3053
cmp word [ecx], si
mov esi, dword [ebp - 0x794]
jne 0x4a4b83
mov ecx, 0x3053
cmp word [eax], cx
jne 0x4a4b83
mov eax, 0x3067
cmp word [edx + 8], ax
jne 0x4a4b83
mov ecx, 0x5927
cmp word [edx + 0xa], cx
jne 0x4a4b83
mov eax, 0x304d
cmp word [edx + 0xc], ax
jne 0x4a4b83
mov eax, 0x306a
cmp word [edx + 0xe], ax
jne 0x4a4b83
mov eax, 0x6587
cmp word [edx + 0x10], ax
jne 0x4a4b83
mov eax, 0x5b57
cmp word [edx + 0x12], ax
jne 0x4a4b83
mov eax, 0x7d42
cmp word [edx + 0x14], ax
jne 0x4a4b83
mov eax, 0x308f
cmp word [edx + 0x16], ax
jne 0x4a4b83
mov eax, 0x308a
cmp word [edx + 0x18], ax
mov eax, 0xff03
jne 0x4a4b88
and dword [esi], 0xffff7ff
mov dword [ebp - 0x8b4], 0
jmp 0x4a4b88
cmp di, 5
jne 0x4a4713
mov eax, 0xff3b
lea ecx, [edx + 4]
cmp word [edx], ax
jne 0x4a570b
mov eax, 0xff03
cmp word [edx + 2], ax
jne 0x4a570b
mov eax, 0x592a
cmp word [ecx], ax
lea eax, [edx + 6]
jne 0x4a46c3
mov esi, 0x5b57
cmp word [eax], si
mov esi, dword [ebp - 0x794]
jne 0x4a46c3
mov edi, 0xff3d
cmp word [edx + 8], di
mov edi, dword [ebp - 0x790]
jne 0x4a46c3
or dword [esi], 0x100200
movss xmm4, dword [ebp - 0x7a8]
mov esi, dword [ebp - 0x79c]
jmp 0x49d39c
mov esi, 0x659c
cmp word [ecx], si
mov esi, dword [ebp - 0x794]
jne 0x4a570b
mov edi, 0x4f53
cmp word [eax], di
mov edi, dword [ebp - 0x790]
jne 0x4a570b
mov eax, 0xff3d
cmp word [edx + 8], ax
jne 0x4a570b
or dword [esi], 0x400
movss xmm4, dword [ebp - 0x7a8]
mov esi, dword [ebp - 0x79c]
jmp 0x49d39c
cmp di, 8
jne 0x4a489c
mov eax, 0xff3b
lea ecx, [edx + 4]
cmp word [edx], ax
jne 0x4a570b
mov eax, 0xff03
cmp word [edx + 2], ax
jne 0x4a47ad
mov eax, 0x592a
cmp word [ecx], ax
lea eax, [edx + 6]
jne 0x4a47b0
mov esi, 0x5b57
cmp word [eax], si
mov esi, dword [ebp - 0x794]
jne 0x4a47b0
mov edi, 0x7d42
cmp word [edx + 8], di
jne 0x4a47b0
mov esi, 0x308f
cmp word [edx + 0xa], si
mov esi, dword [ebp - 0x794]
jne 0x4a47b0
mov ecx, 0x308a
cmp word [edx + 0xc], cx
lea ecx, [edx + 4]
jne 0x4a47b0
mov edi, 0xff3d
cmp word [edx + 0xe], di
mov edi, dword [ebp - 0x790]
jne 0x4a47b0
and dword [esi], 0xffeffdff
mov esi, 0xff3b
cmp word [edx], si
mov esi, dword [ebp - 0x794]
jne 0x4a570e
jmp 0x4a47b0
lea eax, [edx + 6]
mov edi, 0xff03
cmp word [edx + 2], di
mov edi, dword [ebp - 0x790]
jne 0x4a5463
mov edi, 0x30b4
cmp word [ecx], di
jne 0x4a4833
mov esi, 0x30b7
cmp word [eax], si
mov esi, dword [ebp - 0x794]
jne 0x4a4833
mov ecx, 0x30c3
cmp word [edx + 8], cx
lea ecx, [edx + 4]
jne 0x4a4833
mov esi, 0x30af
cmp word [edx + 0xa], si
mov esi, dword [ebp - 0x794]
jne 0x4a4833
mov edi, 0x4f53
cmp word [edx + 0xc], di
jne 0x4a4833
mov edi, 0xff3d
cmp word [edx + 0xe], di
mov edi, dword [ebp - 0x790]
jne 0x4a4833
or dword [esi], 0x100200
movss xmm4, dword [ebp - 0x7a8]
mov esi, dword [ebp - 0x79c]
jmp 0x49d39c
mov edi, 0x659c
cmp word [ecx], di
mov edi, dword [ebp - 0x790]
jne 0x4a5463
mov ecx, 0x4f53
cmp word [eax], cx
jne 0x4a5463
mov eax, 0x7d42
cmp word [edx + 8], ax
jne 0x4a5463
mov ecx, 0x308f
cmp word [edx + 0xa], cx
jne 0x4a5463
mov eax, 0x308a
cmp word [edx + 0xc], ax
jne 0x4a5463
mov eax, 0xff3d
cmp word [edx + 0xe], ax
jne 0x4a5463
and dword [esi], 0xfffffbff
jmp 0x4a5463
cmp di, 9
jne 0x4a495e
mov eax, 0xff3b
lea ecx, [edx + 4]
cmp word [edx], ax
jne 0x4a570b
mov eax, 0xff03
cmp word [edx + 2], ax
jne 0x4a514f
mov eax, 0x3053
cmp word [ecx], ax
lea eax, [edx + 6]
jne 0x4a5152
mov edi, 0x3053
cmp word [eax], di
mov edi, dword [ebp - 0x790]
jne 0x4a5152
mov esi, 0x304b
cmp word [edx + 8], si
jne 0x4a5152
mov esi, 0x3089
cmp word [edx + 0xa], si
jne 0x4a5152
mov ecx, 0x659c
cmp word [edx + 0xc], cx
lea ecx, [edx + 4]
jne 0x4a5152
mov edi, 0x4f53
cmp word [edx + 0xe], di
mov edi, dword [ebp - 0x790]
jne 0x4a5152
mov esi, 0xff3d
cmp word [edx + 0x10], si
mov esi, dword [ebp - 0x794]
jne 0x4a5152
or dword [esi], 0x400
movss xmm4, dword [ebp - 0x7a8]
mov esi, dword [ebp - 0x79c]
jmp 0x49d39c
cmp di, 0xf
jne 0x4a4a76
mov eax, 0xff3b
cmp word [edx], ax
jne 0x4a5708
mov eax, 0xff03
cmp word [edx + 2], ax
jne 0x4a4b88
mov ecx, 0x3053
cmp word [edx + 4], cx
jne 0x4a4b88
cmp word [edx + 6], cx
jne 0x4a4b88
mov eax, 0x304b
cmp word [edx + 8], ax
jne 0x4a4b83
mov ecx, 0x3089
cmp word [edx + 0xa], cx
jne 0x4a4b83
mov eax, 0x6bb5
cmp word [edx + 0xe], ax
jne 0x4a4b83
mov eax, 0x968e
cmp word [edx + 0x10], ax
jne 0x4a4b83
mov eax, 0x5927
cmp word [edx + 0x12], ax
jne 0x4a4b83
mov eax, 0x304d
cmp word [edx + 0x14], ax
jne 0x4a4b83
mov eax, 0x306a
cmp word [edx + 0x16], ax
jne 0x4a4b83
mov eax, 0x6587
cmp word [edx + 0x18], ax
jne 0x4a4b83
mov eax, 0x5b57
cmp word [edx + 0x1a], ax
jne 0x4a4b83
mov ecx, 0xff3d
cmp word [edx + 0x1c], cx
jne 0x4a4b83
or dword [esi], 0x800
mov cx, word [edx + 0xc]
call fcn.0040d690
movss xmm4, dword [ebp - 0x7a8]
movzx ecx, ax
lea eax, [ecx + 1]
movsx ecx, cx
movzx eax, ax
mov dword [ebp - 0x8b4], eax
mov eax, dword [esi]
shl ecx, 0x1c
and eax, 0xfffffff
or ecx, eax
mov dword [esi], ecx
mov esi, dword [ebp - 0x79c]
jmp 0x49d39c
cmp di, 0x10
jne 0x4a4b79
mov eax, 0xff3b
cmp word [edx], ax
jne 0x4a5708
mov eax, 0xff03
cmp word [edx + 2], ax
jne 0x4a4b88
mov ecx, 0x3053
cmp word [edx + 4], cx
jne 0x4a4b88
cmp word [edx + 6], cx
jne 0x4a4b88
mov eax, 0x304b
cmp word [edx + 8], ax
jne 0x4a4b83
mov ecx, 0x3089
cmp word [edx + 0xa], cx
jne 0x4a4b83
mov eax, 0xff11
cmp word [edx + 0xc], ax
jne 0x4a4b83
mov eax, 0xff10
cmp word [edx + 0xe], ax
jne 0x4a4b83
mov eax, 0x6bb5
cmp word [edx + 0x10], ax
jne 0x4a4b83
mov eax, 0x968e
cmp word [edx + 0x12], ax
jne 0x4a4b83
mov eax, 0x5927
cmp word [edx + 0x14], ax
jne 0x4a4b83
mov eax, 0x304d
cmp word [edx + 0x16], ax
jne 0x4a4b83
mov eax, 0x306a
cmp word [edx + 0x18], ax
jne 0x4a4b83
mov eax, 0x6587
cmp word [edx + 0x1a], ax
jne 0x4a4b83
mov eax, 0x5b57
cmp word [edx + 0x1c], ax
jne 0x4a4b83
mov ecx, 0xff3d
cmp word [edx + 0x1e], cx
jne 0x4a4b83
mov eax, dword [esi]
movss xmm4, dword [ebp - 0x7a8]
and eax, 0xffff7ff
or eax, 0x90000800
mov dword [ebp - 0x8b4], 0xa
mov dword [esi], eax
mov esi, dword [ebp - 0x79c]
jmp 0x49d39c
cmp di, 0xb
jl 0x4a4c1b
mov eax, 0xff03
mov ecx, 0xff3b
cmp word [edx], cx
jne 0x4a4c1b
cmp word [edx + 2], ax
jne 0x4a4c1b
movsx eax, di
mov ecx, 0x5927
cmp word [edx + eax*2 - 0x12], cx
jne 0x4a4c1b
mov ecx, 0x304d
cmp word [edx + eax*2 - 0x10], cx
jne 0x4a4c1b
mov ecx, 0x306a
cmp word [edx + eax*2 - 0xe], cx
jne 0x4a4c1b
mov ecx, 0x6587
cmp word [edx + eax*2 - 0xc], cx
jne 0x4a4c1b
mov ecx, 0x5b57
cmp word [edx + eax*2 - 0xa], cx
jne 0x4a4c1b
mov ecx, 0x7d42
cmp word [edx + eax*2 - 8], cx
jne 0x4a4c1b
mov ecx, 0x308f
cmp word [edx + eax*2 - 6], cx
jne 0x4a4c1b
mov ecx, 0x308a
cmp word [edx + eax*2 - 4], cx
mov ecx, 0xff3d
jne 0x4a4c1b
cmp word [edx + eax*2 - 2], cx
jne 0x4a4c1b
and dword [esi], 0xffff7ff
mov dword [ebp - 0x8b4], 0
cmp di, 0xf
jne 0x4a4d0d
mov eax, 0xff3b
cmp word [edx], ax
jne 0x4a5708
mov eax, 0xff03
cmp word [edx + 2], ax
jne 0x4a50af
mov ecx, 0x3053
cmp word [edx + 4], cx
jne 0x4a50af
cmp word [edx + 6], cx
jne 0x4a50af
mov eax, 0x304b
cmp word [edx + 8], ax
jne 0x4a50aa
mov ecx, 0x3089
cmp word [edx + 0xa], cx
jne 0x4a50aa
mov eax, 0x6bb5
cmp word [edx + 0xe], ax
jne 0x4a50aa
mov eax, 0x968e
cmp word [edx + 0x10], ax
jne 0x4a50aa
mov eax, 0x5c0f
cmp word [edx + 0x12], ax
jne 0x4a50aa
mov eax, 0x3055
cmp word [edx + 0x14], ax
jne 0x4a50aa
mov eax, 0x306a
cmp word [edx + 0x16], ax
jne 0x4a50aa
mov eax, 0x6587
cmp word [edx + 0x18], ax
jne 0x4a50aa
mov eax, 0x5b57
cmp word [edx + 0x1a], ax
jne 0x4a50aa
mov ecx, 0xff3d
cmp word [edx + 0x1c], cx
jne 0x4a50aa
or dword [esi], 0x1000
mov cx, word [edx + 0xc]
call fcn.0040d690
movzx ecx, ax
or eax, 0xffffffff
sub eax, ecx
jmp 0x4a42c7
cmp di, 0x10
jne 0x4a4e2c
mov eax, 0xff3b
cmp word [edx], ax
jne 0x4a5708
mov eax, 0xff03
cmp word [edx + 2], ax
jne 0x4a50af
mov ecx, 0x3053
cmp word [edx + 4], cx
jne 0x4a50af
cmp word [edx + 6], cx
jne 0x4a50af
mov eax, 0x304b
cmp word [edx + 8], ax
jne 0x4a50aa
mov ecx, 0x3089
cmp word [edx + 0xa], cx
jne 0x4a50aa
mov eax, 0xff11
cmp word [edx + 0xc], ax
jne 0x4a50aa
mov eax, 0xff10
cmp word [edx + 0xe], ax
jne 0x4a50aa
mov eax, 0x6bb5
cmp word [edx + 0x10], ax
jne 0x4a50aa
mov eax, 0x968e
cmp word [edx + 0x12], ax
jne 0x4a50aa
mov eax, 0x5c0f
cmp word [edx + 0x14], ax
jne 0x4a50aa
mov eax, 0x3055
cmp word [edx + 0x16], ax
jne 0x4a50aa
mov eax, 0x306a
cmp word [edx + 0x18], ax
jne 0x4a50aa
mov eax, 0x6587
cmp word [edx + 0x1a], ax
jne 0x4a50aa
mov eax, 0x5b57
cmp word [edx + 0x1c], ax
jne 0x4a50aa
mov ecx, 0xff3d
cmp word [edx + 0x1e], cx
jne 0x4a50aa
mov eax, dword [esi]
movss xmm4, dword [ebp - 0x7a8]
and eax, 0xfffefff
or eax, 0x90001000
mov dword [ebp - 0x8b4], 0xfffffff6
mov dword [esi], eax
mov esi, dword [ebp - 0x79c]
jmp 0x49d39c
cmp di, 0xe
jne 0x4a4f0d
mov eax, 0xff3b
cmp word [edx], ax
jne 0x4a5708
mov eax, 0xff03
cmp word [edx + 2], ax
jne 0x4a50af
mov ecx, 0x3053
cmp word [edx + 4], cx
jne 0x4a50af
cmp word [edx + 6], cx
jne 0x4a50af
mov eax, 0x3067
cmp word [edx + 8], ax
jne 0x4a50aa
mov ecx, 0x5c0f
cmp word [edx + 0xa], cx
jne 0x4a50aa
mov eax, 0x3055
cmp word [edx + 0xc], ax
jne 0x4a50aa
mov eax, 0x306a
cmp word [edx + 0xe], ax
jne 0x4a50aa
mov eax, 0x6587
cmp word [edx + 0x10], ax
jne 0x4a50aa
mov eax, 0x5b57
cmp word [edx + 0x12], ax
jne 0x4a50aa
mov eax, 0x7d42
cmp word [edx + 0x14], ax
jne 0x4a50aa
mov eax, 0x308f
cmp word [edx + 0x16], ax
jne 0x4a50aa
mov eax, 0x308a
cmp word [edx + 0x18], ax
mov eax, 0xff03
jne 0x4a50af
and dword [esi], 0xfffefff
mov dword [ebp - 0x8b4], 0
jmp 0x4a50af
cmp di, 0xb
jne 0x4a4fd4
mov eax, 0xff3b
cmp word [edx], ax
jne 0x4a5708
mov eax, 0xff03
cmp word [edx + 2], ax
jne 0x4a50af
mov ecx, 0x6bb5
cmp word [edx + 6], cx
jne 0x4a50af
mov eax, 0x968e
cmp word [edx + 8], ax
jne 0x4a50aa
mov ecx, 0x5c0f
cmp word [edx + 0xa], cx
jne 0x4a50aa
mov eax, 0x3055
cmp word [edx + 0xc], ax
jne 0x4a50aa
mov eax, 0x306a
cmp word [edx + 0xe], ax
jne 0x4a50aa
mov eax, 0x6587
cmp word [edx + 0x10], ax
jne 0x4a50aa
mov eax, 0x5b57
cmp word [edx + 0x12], ax
jne 0x4a50aa
mov ecx, 0xff3d
cmp word [edx + 0x14], cx
jne 0x4a50aa
mov eax, dword [ebp - 0x93c]
or dword [esi], 0x1000
mov cx, word [eax]
call fcn.0040d690
movzx ecx, ax
or eax, 0xffffffff
sub eax, ecx
jmp 0x4a42c7
mov eax, ecx
jmp 0x4a4f1c
cmp di, 0xc
jne 0x4a50a0
mov eax, 0xff3b
cmp word [edx], ax
jne 0x4a5708
mov eax, 0xff03
cmp word [edx + 2], ax
jne 0x4a50af
mov ecx, 0xff11
cmp word [edx + 4], cx
jne 0x4a50af
mov ecx, 0xff10
cmp word [edx + 6], cx
jne 0x4a50af
mov eax, 0x6bb5
cmp word [edx + 8], ax
jne 0x4a50aa
mov ecx, 0x968e
cmp word [edx + 0xa], cx
jne 0x4a50aa
mov eax, 0x5c0f
cmp word [edx + 0xc], ax
jne 0x4a50aa
mov eax, 0x3055
cmp word [edx + 0xe], ax
jne 0x4a50aa
mov eax, 0x306a
cmp word [edx + 0x10], ax
jne 0x4a50aa
mov eax, 0x6587
cmp word [edx + 0x12], ax
jne 0x4a50aa
mov eax, 0x5b57
cmp word [edx + 0x14], ax
jne 0x4a50aa
mov ecx, 0xff3d
cmp word [edx + 0x16], cx
jne 0x4a50aa
mov eax, dword [esi]
movss xmm4, dword [ebp - 0x7a8]
and eax, 0xfffefff
or eax, 0x90001000
mov dword [ebp - 0x8b4], 0xfffffff6
mov dword [esi], eax
mov esi, dword [ebp - 0x79c]
jmp 0x49d39c
cmp di, 0xb
jl 0x4a5142
mov eax, 0xff03
mov ecx, 0xff3b
cmp word [edx], cx
jne 0x4a5142
cmp word [edx + 2], ax
jne 0x4a5142
movsx eax, di
mov ecx, 0x5c0f
cmp word [edx + eax*2 - 0x12], cx
jne 0x4a5142
mov ecx, 0x3055
cmp word [edx + eax*2 - 0x10], cx
jne 0x4a5142
mov ecx, 0x306a
cmp word [edx + eax*2 - 0xe], cx
jne 0x4a5142
mov ecx, 0x6587
cmp word [edx + eax*2 - 0xc], cx
jne 0x4a5142
mov ecx, 0x5b57
cmp word [edx + eax*2 - 0xa], cx
jne 0x4a5142
mov ecx, 0x7d42
cmp word [edx + eax*2 - 8], cx
jne 0x4a5142
mov ecx, 0x308f
cmp word [edx + eax*2 - 6], cx
jne 0x4a5142
mov ecx, 0x308a
cmp word [edx + eax*2 - 4], cx
mov ecx, 0xff3d
jne 0x4a5142
cmp word [edx + eax*2 - 2], cx
jne 0x4a5142
and dword [esi], 0xfffefff
mov dword [ebp - 0x8b4], 0
cmp di, 9
jne 0x4a529e
lea ecx, [edx + 4]
lea eax, [edx + 6]
mov esi, 0xff3b
cmp word [edx], si
mov esi, dword [ebp - 0x794]
jne 0x4a570e
mov edi, 0xff03
cmp word [edx + 2], di
mov edi, dword [ebp - 0x790]
jne 0x4a570e
mov esi, 0x4e0a
cmp word [ecx], si
jne 0x4a51f7
mov edi, 0x4ed8
cmp word [eax], di
mov edi, dword [ebp - 0x790]
jne 0x4a51f7
mov esi, 0x304d
cmp word [edx + 8], si
jne 0x4a51f7
mov ecx, 0x5c0f
cmp word [edx + 0xa], cx
lea ecx, [edx + 4]
jne 0x4a51f7
mov edi, 0x6587
cmp word [edx + 0xc], di
mov edi, dword [ebp - 0x790]
jne 0x4a51f7
mov esi, 0x5b57
cmp word [edx + 0xe], si
mov esi, dword [ebp - 0x794]
jne 0x4a51f7
mov edi, 0xff3d
cmp word [edx + 0x10], di
mov edi, dword [ebp - 0x790]
jne 0x4a51f7
or dword [esi], 0x40
movss xmm4, dword [ebp - 0x7a8]
mov esi, dword [ebp - 0x79c]
jmp 0x49d39c
mov esi, 0x4e0b
cmp word [ecx], si
mov esi, dword [ebp - 0x794]
jne 0x4a570e
mov edi, 0x4ed8
cmp word [eax], di
mov edi, dword [ebp - 0x790]
jne 0x4a570e
mov edi, 0x304d
cmp word [edx + 8], di
mov edi, dword [ebp - 0x790]
jne 0x4a570e
mov esi, 0x5c0f
cmp word [edx + 0xa], si
mov esi, dword [ebp - 0x794]
jne 0x4a570e
mov ecx, 0x6587
cmp word [edx + 0xc], cx
lea ecx, [edx + 4]
jne 0x4a570e
mov esi, 0x5b57
cmp word [edx + 0xe], si
mov esi, dword [ebp - 0x794]
jne 0x4a570e
mov edi, 0xff3d
cmp word [edx + 0x10], di
mov edi, dword [ebp - 0x790]
jne 0x4a570e
or dword [esi], 0x80
movss xmm4, dword [ebp - 0x7a8]
mov esi, dword [ebp - 0x79c]
jmp 0x49d39c
cmp di, 0xc
jne 0x4a5459
mov eax, 0xff3b
cmp word [edx], ax
jne 0x4a5708
mov eax, 0xff03
lea ecx, [edx + 4]
cmp word [edx + 2], ax
jne 0x4a570b
mov eax, 0x4e0a
cmp word [ecx], ax
lea eax, [edx + 6]
jne 0x4a5376
mov esi, 0x4ed8
cmp word [eax], si
jne 0x4a5376
mov edi, 0x304d
cmp word [edx + 8], di
mov edi, dword [ebp - 0x790]
jne 0x4a5376
mov esi, 0x5c0f
cmp word [edx + 0xa], si
jne 0x4a5376
mov esi, 0x6587
cmp word [edx + 0xc], si
jne 0x4a5376
mov esi, 0x5b57
cmp word [edx + 0xe], si
mov esi, dword [ebp - 0x794]
jne 0x4a5376
mov ecx, 0x7d42
cmp word [edx + 0x10], cx
lea ecx, [edx + 4]
jne 0x4a5376
mov edi, 0x308f
cmp word [edx + 0x12], di
mov edi, dword [ebp - 0x790]
jne 0x4a5376
mov edi, 0x308a
cmp word [edx + 0x14], di
mov edi, dword [ebp - 0x790]
jne 0x4a5376
mov edi, 0xff3d
cmp word [edx + 0x16], di
mov edi, dword [ebp - 0x790]
jne 0x4a5376
and dword [esi], 0xffffffbf
movss xmm4, dword [ebp - 0x7a8]
mov esi, dword [ebp - 0x79c]
jmp 0x49d39c
mov esi, 0x4e0b
cmp word [ecx], si
mov esi, dword [ebp - 0x794]
jne 0x4a570e
mov edi, 0x4ed8
cmp word [eax], di
mov edi, dword [ebp - 0x790]
jne 0x4a570e
mov edi, 0x304d
cmp word [edx + 8], di
mov edi, dword [ebp - 0x790]
jne 0x4a570e
mov esi, 0x5c0f
cmp word [edx + 0xa], si
mov esi, dword [ebp - 0x794]
jne 0x4a570e
mov ecx, 0x6587
cmp word [edx + 0xc], cx
lea ecx, [edx + 4]
jne 0x4a570e
mov esi, 0x5b57
cmp word [edx + 0xe], si
mov esi, dword [ebp - 0x794]
jne 0x4a570e
mov ecx, 0x7d42
cmp word [edx + 0x10], cx
lea ecx, [edx + 4]
jne 0x4a570e
mov edi, 0x308f
cmp word [edx + 0x12], di
mov edi, dword [ebp - 0x790]
jne 0x4a570e
mov edi, 0x308a
cmp word [edx + 0x14], di
mov edi, dword [ebp - 0x790]
jne 0x4a570e
mov edi, 0xff3d
cmp word [edx + 0x16], di
mov edi, dword [ebp - 0x790]
jne 0x4a570e
and dword [esi], 0xffffff7f
movss xmm4, dword [ebp - 0x7a8]
mov esi, dword [ebp - 0x79c]
jmp 0x49d39c
cmp di, 8
jne 0x4a557d
mov eax, 0xff3b
lea ecx, [edx + 4]
cmp word [edx], ax
jne 0x4a570b
mov eax, 0xff03
cmp word [edx + 2], ax
jne 0x4a570b
mov eax, 0x884c
cmp word [ecx], ax
lea eax, [edx + 6]
jne 0x4a54ee
mov esi, 0x53f3
cmp word [eax], si
jne 0x4a54ee
mov edi, 0x5c0f
cmp word [edx + 8], di
mov edi, dword [ebp - 0x790]
jne 0x4a54ee
mov esi, 0x66f8
cmp word [edx + 0xa], si
jne 0x4a54ee
mov esi, 0x304d
cmp word [edx + 0xc], si
mov esi, dword [ebp - 0x794]
jne 0x4a54ee
mov edi, 0xff3d
cmp word [edx + 0xe], di
mov edi, dword [ebp - 0x790]
jne 0x4a54ee
or dword [esi], 0x40
movss xmm4, dword [ebp - 0x7a8]
mov esi, dword [ebp - 0x79c]
jmp 0x49d39c
mov esi, 0x884c
cmp word [ecx], si
mov esi, dword [ebp - 0x794]
jne 0x4a570e
mov ecx, 0x5de6
cmp word [eax], cx
lea ecx, [edx + 4]
jne 0x4a570e
mov edi, 0x5c0f
cmp word [edx + 8], di
mov edi, dword [ebp - 0x790]
jne 0x4a570e
mov ecx, 0x66f8
cmp word [edx + 0xa], cx
lea ecx, [edx + 4]
jne 0x4a570e
mov esi, 0x304d
cmp word [edx + 0xc], si
mov esi, dword [ebp - 0x794]
jne 0x4a570e
mov edi, 0xff3d
cmp word [edx + 0xe], di
mov edi, dword [ebp - 0x790]
jne 0x4a570e
or dword [esi], 0x80
movss xmm4, dword [ebp - 0x7a8]
mov esi, dword [ebp - 0x79c]
jmp 0x49d39c
cmp di, 0xb
jne 0x4a5708
mov eax, 0xff3b
cmp word [edx], ax
jne 0x4a5708
mov eax, 0xff03
lea ecx, [edx + 4]
cmp word [edx + 2], ax
jne 0x4a570b
mov eax, 0x884c
cmp word [ecx], ax
lea eax, [edx + 6]
jne 0x4a5656
mov edi, 0x53f3
cmp word [eax], di
mov edi, dword [ebp - 0x790]
jne 0x4a5656
mov esi, 0x5c0f
cmp word [edx + 8], si
mov esi, dword [ebp - 0x794]
jne 0x4a5656
mov edi, 0x66f8
cmp word [edx + 0xa], di
mov edi, dword [ebp - 0x790]
jne 0x4a5656
mov edi, 0x304d
cmp word [edx + 0xc], di
mov edi, dword [ebp - 0x790]
jne 0x4a5656
mov esi, 0x7d42
cmp word [edx + 0xe], si
mov esi, dword [ebp - 0x794]
jne 0x4a5656
mov ecx, 0x308f
cmp word [edx + 0x10], cx
lea ecx, [edx + 4]
jne 0x4a5656
mov esi, 0x308a
cmp word [edx + 0x12], si
mov esi, dword [ebp - 0x794]
jne 0x4a5656
mov edi, 0xff3d
cmp word [edx + 0x14], di
mov edi, dword [ebp - 0x790]
jne 0x4a5656
and dword [esi], 0xffffffbf
movss xmm4, dword [ebp - 0x7a8]
mov esi, dword [ebp - 0x79c]
jmp 0x49d39c
mov edx, 0x884c
cmp word [ecx], dx
mov edx, dword [ebp - 0x7e8]
jne 0x4a570e
mov edi, 0x5de6
cmp word [eax], di
mov edi, dword [ebp - 0x790]
jne 0x4a570e
mov esi, 0x5c0f
cmp word [edx + 8], si
mov esi, dword [ebp - 0x794]
jne 0x4a570e
mov ecx, 0x66f8
cmp word [edx + 0xa], cx
lea ecx, [edx + 4]
jne 0x4a570e
mov edi, 0x304d
cmp word [edx + 0xc], di
mov edi, dword [ebp - 0x790]
jne 0x4a570e
mov ecx, 0x7d42
cmp word [edx + 0xe], cx
lea ecx, [edx + 4]
jne 0x4a570e
mov esi, 0x308f
cmp word [edx + 0x10], si
mov esi, dword [ebp - 0x794]
jne 0x4a570e
mov esi, 0x308a
cmp word [edx + 0x12], si
mov esi, dword [ebp - 0x794]
jne 0x4a570e
mov edi, 0xff3d
cmp word [edx + 0x14], di
mov edi, dword [ebp - 0x790]
jne 0x4a570e
and dword [esi], 0xffffff7f
movss xmm4, dword [ebp - 0x7a8]
mov esi, dword [ebp - 0x79c]
jmp 0x49d39c
lea ecx, [edx + 4]
lea eax, [edx + 6]
cmp word [ebp - 0x84c], 0x40
jne 0x4a5986
cmp di, 0xa
jne 0x4a57d0
mov edi, 0xff3b
cmp word [edx], di
mov edi, dword [ebp - 0x790]
jne 0x4a5986
mov esi, 0xff03
cmp word [edx + 2], si
mov esi, dword [ebp - 0x794]
jne 0x4a5986
mov edi, 0x3053
cmp word [ecx], di
mov edi, dword [ebp - 0x790]
jne 0x4a5986
mov ecx, 0x3053
cmp word [eax], cx
jne 0x4a5986
mov eax, 0x304b
cmp word [edx + 8], ax
jne 0x4a5986
mov eax, 0x3089
cmp word [edx + 0xa], ax
jne 0x4a5986
mov eax, 0x6a2a
cmp word [edx + 0xc], ax
jne 0x4a5986
mov eax, 0x7d44
cmp word [edx + 0xe], ax
jne 0x4a5986
mov eax, 0x307f
cmp word [edx + 0x10], ax
jne 0x4a5986
mov eax, 0xff3d
cmp word [edx + 0x12], ax
je 0x4a58fd
jmp 0x4a5986
cmp di, 6
je 0x4a589a
cmp di, 0xc
jne 0x4a5916
mov esi, 0xff3b
cmp word [edx], si
jne 0x4a5986
mov edi, 0xff03
cmp word [edx + 2], di
mov edi, dword [ebp - 0x790]
jne 0x4a5986
mov esi, 0x3053
cmp word [ecx], si
mov esi, dword [ebp - 0x794]
jne 0x4a5986
mov ecx, 0x3053
cmp word [eax], cx
jne 0x4a5986
mov eax, 0x3067
cmp word [edx + 8], ax
jne 0x4a5986
mov eax, 0x6a2a
cmp word [edx + 0xa], ax
jne 0x4a5986
mov eax, 0x7d44
cmp word [edx + 0xc], ax
jne 0x4a5986
mov eax, 0x307f
cmp word [edx + 0xe], ax
jne 0x4a5986
mov eax, 0x7d42
cmp word [edx + 0x10], ax
jne 0x4a5986
mov eax, 0x308f
cmp word [edx + 0x12], ax
jne 0x4a5986
mov eax, 0x308a
cmp word [edx + 0x14], ax
je 0x4a5980
jmp 0x4a5986
lea eax, [edx + 6]
mov esi, 0xff3b
cmp word [edx], si
jne 0x4a5986
mov edi, 0xff03
cmp word [edx + 2], di
mov edi, dword [ebp - 0x790]
jne 0x4a5986
mov esi, 0x6a2a
cmp word [ecx], si
mov esi, dword [ebp - 0x794]
jne 0x4a5986
mov ecx, 0x7d44
cmp word [eax], cx
jne 0x4a5986
mov eax, 0x307f
cmp word [edx + 8], ax
jne 0x4a5986
mov eax, 0xff3d
cmp word [edx + 0xa], ax
jne 0x4a5986
or dword [esi], 0x100
movss xmm4, dword [ebp - 0x7a8]
mov esi, dword [ebp - 0x79c]
jmp 0x49d39c
cmp di, 9
jne 0x4a5986
mov eax, 0xff3b
cmp word [edx], ax
jne 0x4a5986
mov eax, 0xff03
cmp word [edx + 2], ax
lea eax, [edx + 4]
jne 0x4a5989
mov ecx, 0x6a2a
cmp word [eax], cx
jne 0x4a5989
mov ecx, 0x7d44
cmp word [edx + 6], cx
jne 0x4a5986
mov eax, 0x307f
cmp word [edx + 8], ax
jne 0x4a5986
mov eax, 0x7d42
cmp word [edx + 0xa], ax
jne 0x4a5986
mov eax, 0x308f
cmp word [edx + 0xc], ax
jne 0x4a5986
mov eax, 0x308a
cmp word [edx + 0xe], ax
jne 0x4a5986
mov eax, 0xff3d
cmp word [edx + 0x10], ax
jne 0x4a5986
and dword [esi], 0xfffffeff
lea eax, [edx + 4]
mov esi, dword [ebp - 0x79c]
cmp byte [esi + 0x860], 0
jne 0x4a5b6d
cmp di, 6
jne 0x4a5a78
mov ecx, 0xff3b
cmp word [edx], cx
jne 0x4a5b6d
mov esi, 0xff03
cmp word [edx + 2], si
mov esi, dword [ebp - 0x79c]
jne 0x4a5b6d
mov edi, 0x5272
cmp word [eax], di
lea eax, [edx + 6]
mov edi, dword [ebp - 0x790]
jne 0x4a5b55
mov esi, 0x308a
cmp word [eax], si
mov esi, dword [ebp - 0x79c]
jne 0x4a5b55
mov esi, 0x6ce8
cmp word [edx + 8], si
mov esi, dword [ebp - 0x79c]
jne 0x4a5b55
movss xmm4, dword [ebp - 0x7a8]
mov edi, 0xff3d
cmp word [edx + 0xa], di
mov edi, dword [ebp - 0x790]
jne 0x4a5b5d
mov eax, dword [ebp - 0x794]
movaps xmm0, xmm4
mov ecx, dword [ebp - 0x810]
movsd xmm5, qword [ebp - 0x7e0]
movss xmm2, dword [ebp - 0x7ac]
or dword [eax], 0x40000
movzx ecx, cx
mov dword [ebp - 0xa00], 0
movss dword [ebp - 0x7c8], xmm0
mov dword [ebp - 0xa38], ecx
mov byte [ebp - 0x875], 0
mov cl, byte [ebp - 0x785]
jmp 0x49d3c0
cmp di, 9
jne 0x4a5b6d
mov edi, 0xff3b
cmp word [edx], di
mov edi, dword [ebp - 0x790]
jne 0x4a5b6d
mov esi, 0xff03
cmp word [edx + 2], si
mov esi, dword [ebp - 0x79c]
jne 0x4a5b6d
mov ecx, 0x5272
cmp word [eax], cx
lea eax, [edx + 6]
jne 0x4a5b55
mov edi, 0x308a
cmp word [eax], di
mov edi, dword [ebp - 0x790]
jne 0x4a5b55
mov edi, 0x6ce8
cmp word [edx + 8], di
mov edi, dword [ebp - 0x790]
jne 0x4a5b55
mov esi, 0x7d42
cmp word [edx + 0xa], si
mov esi, dword [ebp - 0x79c]
jne 0x4a5b55
mov ecx, 0x308f
cmp word [edx + 0xc], cx
jne 0x4a5b55
mov ecx, 0x308a
cmp word [edx + 0xe], cx
jne 0x4a5b55
mov ecx, 0xff3d
cmp word [edx + 0x10], cx
jne 0x4a5b55
mov ecx, dword [ebp - 0x794]
movss xmm1, dword [ebp - 0x914]
mov eax, dword [ecx]
test eax, 0x40000
je 0x4a5b75
movaps xmm4, xmm1
mov byte [ebp - 0x8a4], 1
maxss xmm4, dword [ebp - 0x7a8]
and eax, 0xfffbffff
mov dword [ecx], eax
xor cl, cl
mov byte [ebp - 0x785], cl
movss dword [ebp - 0x7a8], xmm4
jmp 0x4a5b83
movss xmm4, dword [ebp - 0x7a8]
movss xmm1, dword [ebp - 0x914]
mov cl, byte [ebp - 0x785]
jmp 0x4a5b86
movss xmm1, dword [ebp - 0x914]
movss xmm4, dword [ebp - 0x7a8]
mov cl, byte [ebp - 0x785]
lea eax, [edx + 6]
cmp byte [esi + 0x860], 0
jne 0x4a5d96
cmp di, 0xa
jne 0x4a5c9b
mov edi, 0xff3b
cmp word [edx], di
mov edi, dword [ebp - 0x790]
jne 0x4a5d96
mov esi, 0xff03
cmp word [edx + 2], si
mov esi, dword [ebp - 0x79c]
jne 0x4a5d96
mov esi, 0x3053
cmp word [edx + 4], si
mov esi, dword [ebp - 0x79c]
jne 0x4a5d96
mov edi, 0x3053
cmp word [eax], di
mov edi, dword [ebp - 0x790]
jne 0x4a5d96
mov eax, 0x304b
cmp word [edx + 8], ax
jne 0x4a5d96
mov esi, 0x3089
cmp word [edx + 0xa], si
mov esi, dword [ebp - 0x79c]
jne 0x4a5d96
mov eax, 0x5272
cmp word [edx + 0xc], ax
jne 0x4a5d96
mov eax, 0x308a
cmp word [edx + 0xe], ax
jne 0x4a5d96
mov eax, 0x6ce8
cmp word [edx + 0x10], ax
jne 0x4a5d96
mov eax, 0xff3d
cmp word [edx + 0x12], ax
jne 0x4a5d96
mov eax, dword [ebp - 0x794]
movaps xmm0, xmm4
mov edx, dword [ebp - 0x810]
movsd xmm5, qword [ebp - 0x7e0]
movss xmm2, dword [ebp - 0x7ac]
or dword [eax], 0x40000
movzx edx, dx
mov dword [ebp - 0xa00], 0
movss dword [ebp - 0x7c8], xmm0
mov dword [ebp - 0xa38], edx
mov byte [ebp - 0x875], 0
jmp 0x49d3c0
cmp di, 0xc
jne 0x4a5d96
mov edi, 0xff3b
cmp word [edx], di
mov edi, dword [ebp - 0x790]
jne 0x4a5d96
mov esi, 0xff03
cmp word [edx + 2], si
mov esi, dword [ebp - 0x79c]
jne 0x4a5d96
mov edi, 0x3053
cmp word [edx + 4], di
mov edi, dword [ebp - 0x790]
jne 0x4a5d96
mov edi, 0x3053
cmp word [eax], di
mov edi, dword [ebp - 0x790]
jne 0x4a5d96
mov eax, 0x3067
cmp word [edx + 8], ax
jne 0x4a5d96
mov edi, 0x5272
cmp word [edx + 0xa], di
mov edi, dword [ebp - 0x790]
jne 0x4a5d96
mov eax, 0x308a
cmp word [edx + 0xc], ax
jne 0x4a5d96
mov eax, 0x6ce8
cmp word [edx + 0xe], ax
jne 0x4a5d96
mov eax, 0x7d42
cmp word [edx + 0x10], ax
jne 0x4a5d96
mov eax, 0x308f
cmp word [edx + 0x12], ax
mov eax, 0x308a
jne 0x4a5d96
cmp word [edx + 0x14], ax
jne 0x4a5d96
mov eax, 0xff3d
cmp word [edx + 0x16], ax
jne 0x4a5d96
mov eax, dword [ebp - 0x794]
mov eax, dword [eax]
test eax, 0x40000
je 0x4a5d96
mov ecx, dword [ebp - 0x794]
movaps xmm0, xmm1
maxss xmm0, xmm4
mov byte [ebp - 0x8a4], 1
and eax, 0xfffbffff
mov dword [ecx], eax
xor cl, cl
mov byte [ebp - 0x785], cl
movaps xmm4, xmm0
movss dword [ebp - 0x7a8], xmm4
cmp byte [esi + 0x863], 0
jne 0x4a6446
cmp word [ebp - 0x84c], 0x40
jne 0x4a6446
cmp byte [esi + 0x77f], 0
je 0x4a6446
mov eax, dword [ebp - 0x910]
cmp word [eax], 2
mov eax, dword [ebp - 0x794]
jne 0x4a644c
mov eax, dword [eax]
test al, 8
je 0x4a624f
cmp di, 0xc
jne 0x4a6134
mov eax, 0xff3b
cmp word [edx], ax
jne 0x4a5e89
mov eax, 0xff03
cmp word [edx + 2], ax
jne 0x4a5e89
mov edi, 0x30ad
cmp word [edx + 4], di
mov edi, dword [ebp - 0x790]
jne 0x4a5e89
mov edi, 0x30e3
cmp word [edx + 6], di
mov edi, dword [ebp - 0x790]
jne 0x4a5e89
mov eax, 0x30d7
cmp word [edx + 8], ax
jne 0x4a5e89
mov esi, 0x30b7
cmp word [edx + 0xa], si
mov esi, dword [ebp - 0x79c]
jne 0x4a5e89
mov eax, 0x30e7
cmp word [edx + 0xc], ax
jne 0x4a5e89
mov eax, 0x30f3
cmp word [edx + 0xe], ax
jne 0x4a5e89
mov eax, 0x7d42
cmp word [edx + 0x10], ax
jne 0x4a5e89
mov eax, 0x308f
cmp word [edx + 0x12], ax
jne 0x4a5e89
mov eax, 0x308a
cmp word [edx + 0x14], ax
jne 0x4a5e89
mov eax, 0xff3d
cmp word [edx + 0x16], ax
je 0x4a6230
mov eax, dword [ebp - 0x798]
test byte [eax + 8], 8
jne 0x4a6446
mov ecx, dword [ebp - 0x798]
mov edx, 2
mov eax, dword [ebp - 0x7a0]
mov esi, dword [ebp - 0x790]
mov dword [ebp - 0x830], eax
mov eax, dword [ecx + 0xc]
xor ecx, ecx
mov edi, dword [eax + 0x428]
movsx eax, si
inc eax
mov dword [ebp - 0x924], edi
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.00560858
mov ecx, dword [ebp - 0x7e8]
add esp, 4
mov edx, esi
mov dword [ebp - 0x828], eax
push 1
push eax
call fcn.0040c7c0
movzx esi, ax
xor ecx, ecx
mov eax, dword [ebp - 0x910]
add esp, 8
mov dword [ebp - 0x7d4], esi
mov dword [ebp - 0x844], ecx
mov dword [ebp - 0x7c0], ecx
add dword [eax + 0x18], 0xa
test si, si
jle 0x4a60f1
movss xmm0, dword [ebp - 0x7a4]
mov edx, edi
mov eax, dword [ebp - 0x828]
push 1
push ecx
movss dword [esp], xmm0
push esi
push dword [ebp - 0x7f8]
lea eax, [eax + ecx*2]
push dword [ebp - 0x7b4]
mov ecx, eax
call fcn.0040ec40
mov ecx, dword [ebp - 0x7b4]
mov edi, 1
mov edx, dword [ebp - 0x910]
mov eax, edi
add esp, 0x14
movss xmm1, dword [ecx]
cmp ax, si
jae 0x4a5f99
movd xmm2, dword [edx + 0xc]
cvtdq2ps xmm2, xmm2
nop word [eax + eax]
movsx eax, di
movaps xmm0, xmm1
addss xmm0, dword [ecx + eax*4]
comiss xmm0, xmm2
ja 0x4a5f99
inc edi
movaps xmm1, xmm0
cmp di, si
jl 0x4a5f80
cmp word [ebp - 0x7c0], 0
jne 0x4a5fcb
movd xmm2, dword [edx + 0xc]
movd xmm0, dword [edx + 0x14]
cvtdq2ps xmm2, xmm2
cvtdq2ps xmm0, xmm0
subss xmm2, xmm1
mulss xmm2, dword [0x5ea4cc]
addss xmm2, xmm0
movss dword [ebp - 0x7c4], xmm2
movd xmm0, dword [edx + 0x18]
mov eax, dword [ebp - 0x844]
mov esi, dword [ebp - 0x828]
mov edx, dword [ebp - 0x924]
cvtdq2ps xmm0, xmm0
push 1
push ecx
lea ecx, [esi + eax*2]
movss dword [ebp - 0x7bc], xmm0
movss xmm0, dword [ebp - 0x7a4]
movss dword [esp], xmm0
push edi
push dword [ebp - 0x7f8]
push dword [ebp - 0x898]
call fcn.0040ec40
mov ecx, dword [ebp - 0x844]
add esp, 0x14
mov edx, dword [ebp - 0x828]
movsx esi, di
movss dword [ebp - 0x7d0], xmm0
push dword [ebp - 0x83c]
movss xmm0, dword [ebp - 0x7a4]
lea eax, [edx + ecx*2]
push esi
push eax
sub esp, 0xc
lea eax, [ebx + 0x64]
movss dword [esp + 8], xmm0
movss xmm0, dword [ebp - 0x7bc]
movss dword [esp + 4], xmm0
movss xmm0, dword [ebp - 0x7c4]
movss dword [esp], xmm0
push 0
push ecx
mov ecx, esp
push eax
call fcn.0043ce00
push ecx
mov ecx, esp
push dword [ebp - 0x80c]
call fcn.004a86c0
push ecx
mov ecx, esp
push dword [ebp - 0x808]
call fcn.004a86c0
push ecx
lea eax, [ebx + 0x60]
mov ecx, esp
push eax
call fcn.0043ce00
mov ecx, dword [ebp - 0x924]
xor edx, edx
call fcn.0043a210
mov eax, dword [ebp - 0x798]
mov ecx, dword [ebp - 0x844]
mov edx, dword [ebp - 0x910]
add ecx, esi
mov esi, dword [ebp - 0x7d4]
mov eax, dword [eax + 0xc]
sub esi, edi
inc dword [ebp - 0x7c0]
mov edi, dword [ebp - 0x924]
mov dword [ebp - 0x844], ecx
cvttss2si eax, dword [eax + 0xb94]
mov dword [ebp - 0x7d4], esi
add dword [edx + 0x18], eax
test si, si
jg 0x4a5f20
push dword [ebp - 0x828]
call fcn.00560853
mov eax, dword [ebp - 0x830]
add esp, 4
movss xmm4, dword [ebp - 0x7a8]
mov esi, dword [ebp - 0x79c]
mov cl, byte [ebp - 0x785]
mov edi, dword [ebp - 0x790]
mov dword [ebp - 0x7a0], eax
mov eax, dword [ebp - 0x910]
add dword [eax + 0x18], 0xfffffff6
jmp 0x49d3a2
cmp di, 0xf
jne 0x4a5e89
mov eax, 0xff3b
cmp word [edx], ax
jne 0x4a5e89
mov eax, 0xff03
cmp word [edx + 2], ax
jne 0x4a5e89
mov esi, 0x3053
cmp word [edx + 4], si
mov esi, dword [ebp - 0x79c]
jne 0x4a5e89
mov edi, 0x3053
cmp word [edx + 6], di
mov edi, dword [ebp - 0x790]
jne 0x4a5e89
mov eax, 0x3067
cmp word [edx + 8], ax
jne 0x4a5e89
mov edi, 0x30ad
cmp word [edx + 0xa], di
mov edi, dword [ebp - 0x790]
jne 0x4a5e89
mov eax, 0x30e3
cmp word [edx + 0xc], ax
jne 0x4a5e89
mov eax, 0x30d7
cmp word [edx + 0xe], ax
jne 0x4a5e89
mov eax, 0x30b7
cmp word [edx + 0x10], ax
jne 0x4a5e89
mov eax, 0x30e7
cmp word [edx + 0x12], ax
jne 0x4a5e89
mov eax, 0x30f3
cmp word [edx + 0x14], ax
jne 0x4a5e89
cmp di, 9
jne 0x4a631a
mov edi, 0xff3b
cmp word [edx], di
mov edi, dword [ebp - 0x790]
jne 0x49d3a2
mov esi, 0xff03
cmp word [edx + 2], si
mov esi, dword [ebp - 0x79c]
jne 0x49d3a2
mov edi, 0x30ad
cmp word [edx + 4], di
mov edi, dword [ebp - 0x790]
jne 0x49d3a2
mov edi, 0x30e3
cmp word [edx + 6], di
mov edi, dword [ebp - 0x790]
jne 0x49d3a2
mov edi, 0x30d7
cmp word [edx + 8], di
mov edi, dword [ebp - 0x790]
jne 0x49d3a2
mov esi, 0x30b7
cmp word [edx + 0xa], si
mov esi, dword [ebp - 0x79c]
jne 0x49d3a2
mov esi, 0x30e7
cmp word [edx + 0xc], si
mov esi, dword [ebp - 0x79c]
jne 0x49d3a2
mov esi, 0x30f3
cmp word [edx + 0xe], si
mov esi, dword [ebp - 0x79c]
jne 0x49d3a2
mov edi, 0xff3d
cmp word [edx + 0x10], di
mov edi, dword [ebp - 0x790]
je 0x4a6434
jmp 0x49d3a2
cmp di, 0xd
jne 0x4a6446
mov edi, 0xff3b
cmp word [edx], di
mov edi, dword [ebp - 0x790]
jne 0x49d3a2
mov esi, 0xff03
cmp word [edx + 2], si
mov esi, dword [ebp - 0x79c]
jne 0x49d3a2
mov esi, 0x3053
cmp word [edx + 4], si
mov esi, dword [ebp - 0x79c]
jne 0x49d3a2
mov esi, 0x3053
cmp word [edx + 6], si
mov esi, dword [ebp - 0x79c]
jne 0x49d3a2
mov edi, 0x304b
cmp word [edx + 8], di
mov edi, dword [ebp - 0x790]
jne 0x49d3a2
mov esi, 0x3089
cmp word [edx + 0xa], si
mov esi, dword [ebp - 0x79c]
jne 0x49d3a2
mov edi, 0x30ad
cmp word [edx + 0xc], di
mov edi, dword [ebp - 0x790]
jne 0x49d3a2
mov edi, 0x30e3
cmp word [edx + 0xe], di
mov edi, dword [ebp - 0x790]
jne 0x49d3a2
mov edi, 0x30d7
cmp word [edx + 0x10], di
mov edi, dword [ebp - 0x790]
jne 0x49d3a2
mov esi, 0x30b7
cmp word [edx + 0x12], si
mov esi, dword [ebp - 0x79c]
jne 0x49d3a2
mov esi, 0x30e7
cmp word [edx + 0x14], si
mov esi, dword [ebp - 0x79c]
jne 0x49d3a2
mov edx, dword [ebp - 0x794]
or eax, 8
mov dword [edx], eax
mov eax, edx
jmp 0x49d3a8
mov eax, dword [ebp - 0x794]
cmp di, 0xb
jne 0x4a656d
mov eax, 0xff3b
cmp word [edx], ax
mov eax, dword [ebp - 0x794]
jne 0x49d3a8
mov esi, 0xff03
cmp word [edx + 2], si
mov esi, dword [ebp - 0x79c]
jne 0x49d3a8
mov esi, 0x30da
cmp word [edx + 4], si
mov esi, dword [ebp - 0x79c]
jne 0x49d3a8
mov eax, 0x30fc
cmp word [edx + 6], ax
mov eax, dword [ebp - 0x794]
jne 0x49d3a8
mov edi, 0x30b8
cmp word [edx + 8], di
mov edi, dword [ebp - 0x790]
jne 0x49d3a8
mov edi, 0x306e
cmp word [edx + 0xa], di
mov edi, dword [ebp - 0x790]
jne 0x49d3a8
mov eax, 0x5de6
cmp word [edx + 0xc], ax
mov eax, dword [ebp - 0x794]
jne 0x49d3a8
mov esi, 0x53f3
cmp word [edx + 0xe], si
mov esi, dword [ebp - 0x79c]
jne 0x49d3a8
mov eax, 0x4e2d
cmp word [edx + 0x10], ax
mov eax, dword [ebp - 0x794]
jne 0x49d3a8
mov eax, 0x592e
cmp word [edx + 0x12], ax
mov eax, dword [ebp - 0x794]
jne 0x49d3a8
mov esi, 0xff3d
cmp word [edx + 0x14], si
mov esi, dword [ebp - 0x79c]
movsd xmm5, qword [ebp - 0x7e0]
movss xmm2, dword [ebp - 0x7ac]
movss xmm0, dword [ebp - 0x7c8]
jne 0x49d3c0
mov edx, dword [ebp - 0x96c]
mov edi, 0x4000
or word [edx], di
mov edi, dword [ebp - 0x790]
jmp 0x49d3c0
cmp di, 0xf
jne 0x49d3a8
mov esi, 0xff3b
cmp word [edx], si
mov esi, dword [ebp - 0x79c]
jne 0x49d3a8
mov eax, 0xff03
cmp word [edx + 2], ax
mov eax, dword [ebp - 0x794]
jne 0x49d3a8
mov esi, 0x3053
cmp word [edx + 4], si
mov esi, dword [ebp - 0x79c]
jne 0x49d3a8
mov eax, 0x3053
cmp word [edx + 6], ax
mov eax, dword [ebp - 0x794]
jne 0x49d3a8
mov eax, 0x304b
cmp word [edx + 8], ax
mov eax, dword [ebp - 0x794]
jne 0x49d3a8
mov esi, 0x3089
cmp word [edx + 0xa], si
mov esi, dword [ebp - 0x79c]
jne 0x49d3a8
mov edi, 0x30da
cmp word [edx + 0xc], di
mov edi, dword [ebp - 0x790]
jne 0x49d3a8
mov esi, 0x30fc
cmp word [edx + 0xe], si
mov esi, dword [ebp - 0x79c]
jne 0x49d3a8
mov eax, 0x30b8
cmp word [edx + 0x10], ax
mov eax, dword [ebp - 0x794]
jne 0x49d3a8
mov eax, 0x306e
cmp word [edx + 0x12], ax
mov eax, dword [ebp - 0x794]
jne 0x49d3a8
mov edi, 0x5de6
cmp word [edx + 0x14], di
mov edi, dword [ebp - 0x790]
jne 0x49d3a8
mov esi, 0x53f3
cmp word [edx + 0x16], si
mov esi, dword [ebp - 0x79c]
jne 0x49d3a8
mov eax, 0x4e2d
cmp word [edx + 0x18], ax
mov eax, dword [ebp - 0x794]
jne 0x49d3a8
mov esi, 0x592e
cmp word [edx + 0x1a], si
mov esi, dword [ebp - 0x79c]
jne 0x49d3a8
mov edi, 0xff3d
cmp word [edx + 0x1c], di
mov edi, dword [ebp - 0x790]
jmp 0x4a6536
movss xmm4, dword [ebp - 0x7a8]
mov esi, dword [ebp - 0x79c]
mov cl, byte [ebp - 0x785]
jmp 0x49d3a8
movss xmm4, dword [ebp - 0x7a8]
mov edi, dword [ebp - 0x790]
mov cl, byte [ebp - 0x785]
mov esi, dword [ebp - 0x79c]
movss xmm2, dword [ebp - 0x7ac]
mov eax, dword [ebp - 0x794]
jmp 0x49d3b8
movss xmm4, dword [ebp - 0x7a8]
mov esi, eax
mov cl, byte [ebp - 0x785]
mov edi, dword [ebp - 0x790]
jmp 0x49d3a2
test edx, edx
je 0x4a6e0b
add dword [ebp - 0x8f0], edi
cmp byte [ebp - 0x8a4], 0
je 0x4a6788
test cl, cl
je 0x4a6788
movss xmm0, dword [ebp - 0x7c4]
xor dh, dh
movss dword [ebp - 0x888], xmm0
xor cl, cl
movss xmm0, dword [ebp - 0x7bc]
movss dword [ebp - 0x8b0], xmm0
mov byte [ebp - 0x785], dh
cmp byte [ebp - 0x8f6], dh
je 0x4a6766
mov byte [ebp - 0x8f6], dh
jmp 0x4a6770
mov dword [ebp - 0x810], 0
cmp byte [ebp - 0x968], 0
mov edx, 1
movzx ecx, cl
cmovne ecx, edx
mov dword [ebp - 0x8a4], ecx
mov ecx, dword [ebp - 0x798]
cmp ecx, dword [ebp - 0x9f4]
jne 0x4a6df5
movss xmm0, dword [ebp - 0x99c]
xor dh, dh
mov dword [ebp - 0x978], 0
movss dword [ebp - 0x8fc], xmm0
movss dword [ebp - 0x880], xmm0
mov byte [ebp - 0x8a4], 1
mov byte [ebp - 0x785], dh
movss dword [ebp - 0x7a8], xmm2
cmp byte [ebp - 0x891], dh
je 0x4a6cc2
test eax, 0x4001
je 0x4a6cc2
movzx ecx, byte [esi + 0x7f4]
movzx eax, byte [esi + 0x7f5]
shl ecx, 8
or ecx, eax
movss xmm1, dword [0x5ea6d4]
movzx eax, byte [esi + 0x7f6]
shl ecx, 8
or ecx, eax
mov dword [ebp - 0xc04], 0x3f800000
mov eax, ecx
shr eax, 0x10
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x5ea8e0]
mov eax, ecx
shr eax, 8
movzx eax, al
cvtpd2ps xmm0, xmm0
divss xmm0, xmm1
movss dword [ebp - 0xc10], xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x5ea8e0]
movzx eax, cl
lea ecx, [ebx + 0x64]
cvtpd2ps xmm0, xmm0
divss xmm0, xmm1
movss dword [ebp - 0xc0c], xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x5ea8e0]
lea eax, [ebp - 0xc10]
push eax
cvtpd2ps xmm0, xmm0
divss xmm0, xmm1
movss dword [ebp - 0xc08], xmm0
call fcn.00410ad0
mov ecx, eax
call fcn.0043a180
movaps xmm0, xmmword [0x5ea820]
lea eax, [ebp - 0xce0]
push eax
lea ecx, [ebx + 0x60]
mov dword [ebp - 0xcd0], 0
movups xmmword [ebp - 0xce0], xmm0
mov dword [ebp - 0xccc], 0
call fcn.00410ad0
mov ecx, eax
call fcn.00487cf0
cmp word [ebp - 0x84c], 0x40
mov ecx, dword [ebp - 0x9d0]
movsx eax, cx
movss xmm3, dword [ebp - 0x7fc]
mulss xmm3, dword [0x5ea4cc]
movd xmm0, eax
mov eax, dword [ebp - 0x9cc]
cvtdq2pd xmm0, xmm0
cwde
mulsd xmm0, qword [ebp - 0x7e0]
cvttsd2si ecx, xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
mov dword [ebp - 0x78c], ecx
mulsd xmm0, qword [ebp - 0x7e0]
cvttsd2si eax, xmm0
mov dword [ebp - 0x7d4], eax
mov eax, dword [ebp - 0x814]
jne 0x4a6afd
mov ecx, dword [ebp - 0x818]
movd xmm1, dword [eax]
cvtdq2ps xmm1, xmm1
movd xmm2, dword [ecx + 8]
mov ecx, dword [ecx + 4]
cvtdq2ps xmm2, xmm2
movaps xmm0, xmm2
subss xmm0, dword [ebp - 0x91c]
subss xmm2, dword [ebp - 0x950]
subss xmm0, xmm1
subss xmm2, xmm1
movd xmm1, dword [eax + 4]
mov eax, dword [ebp - 0x78c]
add eax, ecx
cvtdq2ps xmm1, xmm1
addss xmm0, dword [ebp - 0x834]
addss xmm2, dword [ebp - 0x834]
cvttss2si esi, xmm0
movd xmm0, eax
mov eax, dword [ebp - 0x7d4]
cvtdq2ps xmm0, xmm0
add eax, ecx
lea ecx, [ebx + 0x60]
cvttss2si edi, xmm2
subss xmm0, xmm3
movss xmm2, dword [ebp - 0x7a4]
subss xmm0, xmm1
cvttss2si edx, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
addss xmm0, xmm3
subss xmm0, xmm1
movd xmm1, esi
cvtdq2ps xmm1, xmm1
cvttss2si eax, xmm0
divss xmm1, xmm2
mov dword [ebp - 0x78c], eax
movd xmm0, edx
movss dword [ebp - 0x7e4], xmm1
movss dword [ebp - 0xb48], xmm1
movd xmm1, edi
cvtdq2ps xmm0, xmm0
cvtdq2ps xmm1, xmm1
divss xmm0, xmm2
divss xmm1, xmm2
movss dword [ebp - 0xb44], xmm0
movss dword [ebp - 0xa78], xmm1
movss dword [ebp - 0xa74], xmm0
call fcn.00410ad0
movsd xmm0, qword [ebp - 0x7e0]
mov edi, eax
cvtpd2ps xmm0, xmm0
push 0
push ecx
mov esi, dword [edi]
lea ecx, [ebx + 0x64]
movss dword [esp], xmm0
call fcn.00410ad0
push eax
push dword [ebp - 0xb44]
mov eax, dword [esi + 0x3c]
push dword [ebp - 0xb48]
push dword [ebp - 0xa74]
push dword [ebp - 0xa78]
push edi
call eax
movd xmm0, dword [ebp - 0x78c]
lea ecx, [ebx + 0x60]
cvtdq2ps xmm0, xmm0
movss xmm1, dword [ebp - 0x7e4]
divss xmm0, dword [ebp - 0x7a4]
movss dword [ebp - 0xb50], xmm1
movss xmm1, dword [ebp - 0xa78]
movss dword [ebp - 0xb4c], xmm0
movss dword [ebp - 0xb58], xmm1
movss dword [ebp - 0xb54], xmm0
call fcn.00410ad0
mov esi, eax
push 0
push ecx
mov edi, dword [esi]
movsd xmm1, qword [ebp - 0x7e0]
lea ecx, [ebx + 0x64]
cvtpd2ps xmm0, xmm1
movss dword [esp], xmm0
call fcn.00410ad0
push eax
push dword [ebp - 0xb4c]
push dword [ebp - 0xb50]
push dword [ebp - 0xb54]
push dword [ebp - 0xb58]
jmp 0x4a6caa
mov edx, dword [ebp - 0x818]
movd xmm1, dword [eax + 4]
cvtdq2ps xmm1, xmm1
movd xmm2, dword [edx + 4]
mov edx, dword [edx]
cvtdq2ps xmm2, xmm2
movaps xmm0, xmm2
addss xmm0, dword [ebp - 0x91c]
addss xmm2, dword [ebp - 0x950]
subss xmm0, xmm1
subss xmm2, xmm1
movd xmm1, dword [eax]
lea eax, [ecx + edx]
cvtdq2ps xmm1, xmm1
subss xmm0, dword [ebp - 0x834]
subss xmm2, dword [ebp - 0x834]
cvttss2si edi, xmm0
movd xmm0, eax
mov eax, dword [ebp - 0x7d4]
cvtdq2ps xmm0, xmm0
add eax, edx
cvttss2si esi, xmm2
subss xmm0, xmm3
movss xmm2, dword [ebp - 0x7a4]
subss xmm0, xmm1
cvttss2si ecx, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
addss xmm0, xmm3
subss xmm0, xmm1
movd xmm1, esi
cvtdq2ps xmm1, xmm1
cvttss2si eax, xmm0
divss xmm1, xmm2
mov dword [ebp - 0x78c], eax
movd xmm0, ecx
lea ecx, [ebx + 0x60]
movss dword [ebp - 0x7e4], xmm1
movss dword [ebp - 0xb5c], xmm1
movd xmm1, edi
cvtdq2ps xmm0, xmm0
cvtdq2ps xmm1, xmm1
divss xmm0, xmm2
divss xmm1, xmm2
movss dword [ebp - 0xb60], xmm0
movss dword [ebp - 0x9f4], xmm1
movss dword [ebp - 0xb68], xmm0
movss dword [ebp - 0xb64], xmm1
call fcn.00410ad0
movsd xmm0, qword [ebp - 0x7e0]
mov edi, eax
cvtpd2ps xmm0, xmm0
push 0
push ecx
mov esi, dword [edi]
lea ecx, [ebx + 0x64]
movss dword [esp], xmm0
call fcn.00410ad0
push eax
push dword [ebp - 0xb5c]
mov eax, dword [esi + 0x3c]
push dword [ebp - 0xb60]
push dword [ebp - 0xb64]
push dword [ebp - 0xb68]
push edi
call eax
movd xmm0, dword [ebp - 0x78c]
lea ecx, [ebx + 0x60]
cvtdq2ps xmm0, xmm0
movss xmm1, dword [ebp - 0x7e4]
divss xmm0, dword [ebp - 0x7a4]
movss dword [ebp - 0xb6c], xmm1
movss dword [ebp - 0xb70], xmm0
movss dword [ebp - 0xb78], xmm0
movss xmm0, dword [ebp - 0x9f4]
movss dword [ebp - 0xb74], xmm0
call fcn.00410ad0
mov esi, eax
push 0
push ecx
mov edi, dword [esi]
movsd xmm1, qword [ebp - 0x7e0]
lea ecx, [ebx + 0x64]
cvtpd2ps xmm0, xmm1
movss dword [esp], xmm0
call fcn.00410ad0
push eax
push dword [ebp - 0xb6c]
push dword [ebp - 0xb70]
push dword [ebp - 0xb74]
push dword [ebp - 0xb78]
mov eax, dword [edi + 0x3c]
push esi
call eax
mov eax, dword [ebp - 0x794]
mov ecx, dword [ebp - 0x798]
and dword [eax], 0xffffbfff
movsd xmm0, qword [ebp - 0x6f8]
movsd xmm1, qword [ebp - 0x718]
movsd xmm2, qword [ebp - 0x730]
addsd xmm0, xmm1
addsd xmm0, qword [ebp - 0x710]
comisd xmm2, xmm0
movsd xmm0, qword [ebp - 0x948]
jbe 0x4a6d01
mov byte [ebp - 0x801], 1
addsd xmm0, xmm2
jmp 0x4a6d0c
mov byte [ebp - 0x801], 0
addsd xmm0, xmm1
sub esp, 8
movsd qword [ebp - 0x948], xmm0
movsd xmm0, qword [ebp - 0x7e0]
lea eax, [ebp - 0x6b1]
movsd qword [esp], xmm0
push eax
lea eax, [ebp - 0x774]
push eax
lea eax, [ebp - 0x6b9]
push eax
lea eax, [ebp - 0x730]
push eax
lea eax, [ebp - 0x720]
push eax
lea eax, [ebp - 0x700]
push eax
lea eax, [ebp - 0x6f0]
push eax
lea eax, [ebp - 0x710]
push eax
lea eax, [ebp - 0x718]
push eax
lea eax, [ebp - 0x6f8]
push eax
lea eax, [ebp - 0x6b8]
push eax
push dword [ebp - 0x94c]
push dword [ebp - 0x874]
push ecx
mov ecx, dword [ebp - 0x7f4]
call fcn.004e8ca0
movsd xmm5, qword [ebp - 0x7e0]
ucomisd xmm5, qword [ebp - 0x9d8]
mov dword [ebp - 0x9f4], eax
lahf
test ah, 0x44
jnp 0x4a6dbf
movd xmm0, dword [ebp - 0x6b8]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm5
cvttsd2si eax, xmm0
mov dword [ebp - 0x6b8], eax
cmp byte [ebp - 0x801], 0
jne 0x4a6dfe
movsd xmm0, qword [ebp - 0x6f8]
xor esi, esi
addsd xmm0, qword [ebp - 0x710]
mov dword [ebp - 0x790], esi
addsd xmm0, qword [ebp - 0x948]
movsd qword [ebp - 0x948], xmm0
jmp 0x4a730f
movsx eax, di
add dword [ebp - 0x978], eax
xor esi, esi
mov dword [ebp - 0x790], esi
jmp 0x4a730f
cmp byte [ebp - 0x891], 0
je 0x4a6e18
test al, 1
jne 0x4a6e23
test eax, 0x4000
je 0x4a72f5
movzx ecx, byte [esi + 0x7f4]
movzx eax, byte [esi + 0x7f5]
shl ecx, 8
or ecx, eax
movss xmm1, dword [0x5ea6d4]
movzx eax, byte [esi + 0x7f6]
shl ecx, 8
or ecx, eax
mov dword [ebp - 0xc14], 0x3f800000
mov eax, ecx
shr eax, 0x10
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x5ea8e0]
mov eax, ecx
shr eax, 8
movzx eax, al
cvtpd2ps xmm0, xmm0
divss xmm0, xmm1
movss dword [ebp - 0xc20], xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x5ea8e0]
movzx eax, cl
lea ecx, [ebx + 0x64]
cvtpd2ps xmm0, xmm0
divss xmm0, xmm1
movss dword [ebp - 0xc1c], xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x5ea8e0]
lea eax, [ebp - 0xc20]
push eax
cvtpd2ps xmm0, xmm0
divss xmm0, xmm1
movss dword [ebp - 0xc18], xmm0
call fcn.00410ad0
mov ecx, eax
call fcn.0043a180
movaps xmm0, xmmword [0x5ea820]
lea eax, [ebp - 0xcf8]
push eax
lea ecx, [ebx + 0x60]
mov dword [ebp - 0xce8], 0
movups xmmword [ebp - 0xcf8], xmm0
mov dword [ebp - 0xce4], 0
call fcn.00410ad0
mov ecx, eax
call fcn.00487cf0
cmp word [ebp - 0x84c], 0x40
mov ecx, dword [ebp - 0x9d0]
movsx eax, cx
movss xmm3, dword [ebp - 0x7fc]
mulss xmm3, dword [0x5ea4cc]
movd xmm0, eax
mov eax, dword [ebp - 0x9cc]
cvtdq2pd xmm0, xmm0
cwde
mulsd xmm0, qword [ebp - 0x7e0]
cvttsd2si ecx, xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
mov dword [ebp - 0x78c], ecx
mulsd xmm0, qword [ebp - 0x7e0]
cvttsd2si eax, xmm0
mov dword [ebp - 0x7d4], eax
mov eax, dword [ebp - 0x814]
jne 0x4a7136
mov ecx, dword [ebp - 0x818]
movd xmm1, dword [eax]
cvtdq2ps xmm1, xmm1
movd xmm2, dword [ecx + 8]
mov ecx, dword [ecx + 4]
cvtdq2ps xmm2, xmm2
movaps xmm0, xmm2
subss xmm0, dword [ebp - 0x91c]
subss xmm2, dword [ebp - 0x950]
subss xmm0, xmm1
subss xmm2, xmm1
movd xmm1, dword [eax + 4]
mov eax, dword [ebp - 0x78c]
add eax, ecx
cvtdq2ps xmm1, xmm1
addss xmm0, dword [ebp - 0x834]
addss xmm2, dword [ebp - 0x834]
cvttss2si esi, xmm0
movd xmm0, eax
mov eax, dword [ebp - 0x7d4]
cvtdq2ps xmm0, xmm0
add eax, ecx
lea ecx, [ebx + 0x60]
cvttss2si edi, xmm2
subss xmm0, xmm3
movss xmm2, dword [ebp - 0x7a4]
subss xmm0, xmm1
cvttss2si edx, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
addss xmm0, xmm3
subss xmm0, xmm1
movd xmm1, esi
cvtdq2ps xmm1, xmm1
cvttss2si eax, xmm0
divss xmm1, xmm2
mov dword [ebp - 0x78c], eax
movd xmm0, edx
movss dword [ebp - 0x7e4], xmm1
movss dword [ebp - 0xbb4], xmm1
movd xmm1, edi
cvtdq2ps xmm0, xmm0
cvtdq2ps xmm1, xmm1
divss xmm0, xmm2
divss xmm1, xmm2
movss dword [ebp - 0xbb0], xmm0
movss dword [ebp - 0xa68], xmm1
movss dword [ebp - 0xa64], xmm0
call fcn.00410ad0
movsd xmm0, qword [ebp - 0x7e0]
mov edi, eax
cvtpd2ps xmm0, xmm0
push 0
push ecx
mov esi, dword [edi]
lea ecx, [ebx + 0x64]
movss dword [esp], xmm0
call fcn.00410ad0
push eax
push dword [ebp - 0xbb0]
mov eax, dword [esi + 0x3c]
push dword [ebp - 0xbb4]
push dword [ebp - 0xa64]
push dword [ebp - 0xa68]
push edi
call eax
movd xmm0, dword [ebp - 0x78c]
lea ecx, [ebx + 0x60]
cvtdq2ps xmm0, xmm0
movss xmm1, dword [ebp - 0x7e4]
divss xmm0, dword [ebp - 0x7a4]
movss dword [ebp - 0xb84], xmm1
movss xmm1, dword [ebp - 0xa68]
movss dword [ebp - 0xb80], xmm0
movss dword [ebp - 0xb8c], xmm1
movss dword [ebp - 0xb88], xmm0
call fcn.00410ad0
mov esi, eax
push 0
push ecx
mov edi, dword [esi]
movsd xmm1, qword [ebp - 0x7e0]
lea ecx, [ebx + 0x64]
cvtpd2ps xmm0, xmm1
movss dword [esp], xmm0
call fcn.00410ad0
push eax
push dword [ebp - 0xb80]
push dword [ebp - 0xb84]
push dword [ebp - 0xb88]
push dword [ebp - 0xb8c]
jmp 0x4a72e3
mov edx, dword [ebp - 0x818]
movd xmm1, dword [eax + 4]
cvtdq2ps xmm1, xmm1
movd xmm2, dword [edx + 4]
mov edx, dword [edx]
cvtdq2ps xmm2, xmm2
movaps xmm0, xmm2
addss xmm0, dword [ebp - 0x91c]
addss xmm2, dword [ebp - 0x950]
subss xmm0, xmm1
subss xmm2, xmm1
movd xmm1, dword [eax]
lea eax, [ecx + edx]
cvtdq2ps xmm1, xmm1
subss xmm0, dword [ebp - 0x834]
subss xmm2, dword [ebp - 0x834]
cvttss2si edi, xmm0
movd xmm0, eax
mov eax, dword [ebp - 0x7d4]
cvtdq2ps xmm0, xmm0
add eax, edx
cvttss2si esi, xmm2
subss xmm0, xmm3
movss xmm2, dword [ebp - 0x7a4]
subss xmm0, xmm1
cvttss2si ecx, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
addss xmm0, xmm3
subss xmm0, xmm1
movd xmm1, esi
cvtdq2ps xmm1, xmm1
cvttss2si eax, xmm0
divss xmm1, xmm2
mov dword [ebp - 0x78c], eax
movd xmm0, ecx
lea ecx, [ebx + 0x60]
movss dword [ebp - 0x7e4], xmm1
movss dword [ebp - 0xb90], xmm1
movd xmm1, edi
cvtdq2ps xmm0, xmm0
cvtdq2ps xmm1, xmm1
divss xmm0, xmm2
divss xmm1, xmm2
movss dword [ebp - 0xb94], xmm0
movss dword [ebp - 0x7d4], xmm1
movss dword [ebp - 0xb9c], xmm0
movss dword [ebp - 0xb98], xmm1
call fcn.00410ad0
movsd xmm0, qword [ebp - 0x7e0]
mov edi, eax
cvtpd2ps xmm0, xmm0
push 0
push ecx
mov esi, dword [edi]
lea ecx, [ebx + 0x64]
movss dword [esp], xmm0
call fcn.00410ad0
push eax
push dword [ebp - 0xb90]
mov eax, dword [esi + 0x3c]
push dword [ebp - 0xb94]
push dword [ebp - 0xb98]
push dword [ebp - 0xb9c]
push edi
call eax
movd xmm0, dword [ebp - 0x78c]
lea ecx, [ebx + 0x60]
cvtdq2ps xmm0, xmm0
movss xmm1, dword [ebp - 0x7e4]
divss xmm0, dword [ebp - 0x7a4]
movss dword [ebp - 0xba0], xmm1
movss dword [ebp - 0xba4], xmm0
movss dword [ebp - 0xbac], xmm0
movss xmm0, dword [ebp - 0x7d4]
movss dword [ebp - 0xba8], xmm0
call fcn.00410ad0
mov esi, eax
push 0
push ecx
mov edi, dword [esi]
movsd xmm1, qword [ebp - 0x7e0]
lea ecx, [ebx + 0x64]
cvtpd2ps xmm0, xmm1
movss dword [esp], xmm0
call fcn.00410ad0
push eax
push dword [ebp - 0xba0]
push dword [ebp - 0xba4]
push dword [ebp - 0xba8]
push dword [ebp - 0xbac]
mov eax, dword [edi + 0x3c]
push esi
call eax
mov eax, dword [ebp - 0x794]
and dword [eax], 0xffffbfff
movsd xmm5, qword [ebp - 0x7e0]
xor cl, cl
mov byte [ebp - 0x915], cl
jmp 0x4a7315
movsd xmm5, qword [ebp - 0x7e0]
mov cl, byte [ebp - 0x915]
mov esi, dword [ebp - 0x9c4]
mov eax, dword [ebp - 0x988]
mov edx, dword [ebp - 0xa34]
movss xmm2, dword [ebp - 0x7d0]
inc edx
movsx edi, si
mov esi, dword [ebp - 0x790]
mov dword [ebp - 0xa34], edx
mov eax, dword [eax + edi*4 + 4]
cmp dx, word [eax]
mov edx, dword [ebp - 0x79c]
jl 0x488950
mov edx, dword [ebp - 0x9c4]
xor esi, esi
mov eax, dword [ebp - 0x988]
inc edx
movss xmm2, dword [ebp - 0x7d0]
mov dword [ebp - 0x9c4], edx
cmp dx, word [eax]
jl 0x488910
mov edx, dword [ebp - 0x988]
xor eax, eax
xor esi, esi
mov edx, dword [edx + 0x1004]
mov dword [ebp - 0x988], edx
test edx, edx
je 0x4a7414
movss xmm2, dword [ebp - 0x7d0]
jmp 0x4888f0
push esi
call fcn.00560853
add esp, 4
push dword [ebp - 0x890]
call fcn.00560853
add esp, 4
push dword [ebp - 0x7b4]
call fcn.00560853
add esp, 4
push dword [ebp - 0x898]
call fcn.00560853
add esp, 4
push dword [ebp - 0x850]
call fcn.00560853
add esp, 4
push dword [ebp - 0x7f8]
call fcn.00560853
add esp, 4
lea ecx, [ebx + 0x5c]
call fcn.00410ae0
lea ecx, [ebx + 0x60]
call fcn.00410ae0
lea ecx, [ebx + 0x64]
call fcn.00410ae0
movss xmm0, dword [ebp - 0x7a8]
jmp 0x4a7488
push dword [ebp - 0x7e8]
call fcn.00560853
add esp, 4
push dword [ebp - 0x890]
call fcn.00560853
add esp, 4
push dword [ebp - 0x7b4]
call fcn.00560853
add esp, 4
push dword [ebp - 0x898]
call fcn.00560853
add esp, 4
push dword [ebp - 0x850]
call fcn.00560853
add esp, 4
push dword [ebp - 0x7f8]
call fcn.00560853
add esp, 4
lea ecx, [ebx + 0x5c]
call fcn.00410ae0
lea ecx, [ebx + 0x60]
call fcn.00410ae0
lea ecx, [ebx + 0x64]
call fcn.00410ae0
movss xmm0, dword [ebp - 0x7ac]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.0056060a
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret 0x78
call fcn.0056073a
int3