af18f1:	e8 39 ed 93 ff       	call   0x43062f
af18f6:	03 45 f0             	add    -0x10(%ebp),%eax
af18f9:	03 d8                	add    %eax,%ebx
af18fb:	8b 45 f8             	mov    -0x8(%ebp),%eax
af18fe:	03 45 e4             	add    -0x1c(%ebp),%eax
af1901:	89 45 f8             	mov    %eax,-0x8(%ebp)
af1904:	eb 03                	jmp    0xaf1909
af1906:	8b 45 f8             	mov    -0x8(%ebp),%eax
af1909:	6a 04                	push   $0x4
af190b:	5a                   	pop    %edx
af190c:	03 fa                	add    %edx,%edi
af190e:	83 6d ec 01          	subl   $0x1,-0x14(%ebp)
af1912:	75 ab                	jne    0xaf18bf
af1914:	89 5d 10             	mov    %ebx,0x10(%ebp)
af1917:	33 db                	xor    %ebx,%ebx
af1919:	43                   	inc    %ebx
af191a:	89 75 ec             	mov    %esi,-0x14(%ebp)
af191d:	3b f3                	cmp    %ebx,%esi
af191f:	0f 86 2d 03 00 00    	jbe    0xaf1c52
af1925:	39 45 10             	cmp    %eax,0x10(%ebp)
af1928:	0f 87 24 03 00 00    	ja     0xaf1c52
af192e:	33 c9                	xor    %ecx,%ecx
af1930:	8b c6                	mov    %esi,%eax
af1932:	f7 e2                	mul    %edx
af1934:	0f 90 c1             	seto   %cl
af1937:	f7 d9                	neg    %ecx
af1939:	0b c8                	or     %eax,%ecx
af193b:	51                   	push   %ecx
af193c:	e8 56 3e 94 ff       	call   0x435797
af1941:	8b 55 f4             	mov    -0xc(%ebp),%edx
af1944:	8b f8                	mov    %eax,%edi
af1946:	db 45 14             	fildl  0x14(%ebp)
af1949:	59                   	pop    %ecx
af194a:	89 7d f0             	mov    %edi,-0x10(%ebp)
af194d:	8b 42 54             	mov    0x54(%edx),%eax
af1950:	8b 08                	mov    (%eax),%ecx
af1952:	8b 45 14             	mov    0x14(%ebp),%eax
af1955:	89 0f                	mov    %ecx,(%edi)
af1957:	85 c0                	test   %eax,%eax
af1959:	79 06                	jns    0xaf1961
af195b:	dc 05 30 48 c4 00    	faddl  0xc44830
af1961:	dd 59 20             	fstpl  0x20(%ecx)
af1964:	8b 07                	mov    (%edi),%eax
af1966:	89 5d e4             	mov    %ebx,-0x1c(%ebp)
af1969:	dd 40 20             	fldl   0x20(%eax)
af196c:	dc 05 c8 9f bf 00    	faddl  0xbf9fc8
af1972:	dd 55 cc             	fstl   -0x34(%ebp)
af1975:	39 5a 08             	cmp    %ebx,0x8(%edx)
af1978:	76 5b                	jbe    0xaf19d5
af197a:	8d 77 04             	lea    0x4(%edi),%esi
af197d:	8b da                	mov    %edx,%ebx
af197f:	8b 7d e4             	mov    -0x1c(%ebp),%edi
af1982:	8b 43 54             	mov    0x54(%ebx),%eax
af1985:	dd d8                	fstp   %st(0)
af1987:	8b 04 b8             	mov    (%eax,%edi,4),%eax
af198a:	8b 48 10             	mov    0x10(%eax),%ecx
af198d:	89 4d e4             	mov    %ecx,-0x1c(%ebp)
af1990:	e8 9a ec 93 ff       	call   0x43062f
af1995:	8b 55 e4             	mov    -0x1c(%ebp),%edx
af1998:	8b c8                	mov    %eax,%ecx
af199a:	8b 82 a0 00 00 00    	mov    0xa0(%edx),%eax
af19a0:	03 8a b8 00 00 00    	add    0xb8(%edx),%ecx
af19a6:	2b 82 a8 00 00 00    	sub    0xa8(%edx),%eax
af19ac:	3b c1                	cmp    %ecx,%eax
af19ae:	76 13                	jbe    0xaf19c3
af19b0:	8d 42 40             	lea    0x40(%edx),%eax
af19b3:	89 06                	mov    %eax,(%esi)
af19b5:	83 c6 04             	add    $0x4,%esi
af19b8:	dd 40 20             	fldl   0x20(%eax)
af19bb:	dc 45 cc             	faddl  -0x34(%ebp)
af19be:	dd 55 cc             	fstl   -0x34(%ebp)
af19c1:	eb 03                	jmp    0xaf19c6
af19c3:	dd 45 cc             	fldl   -0x34(%ebp)
af19c6:	47                   	inc    %edi
af19c7:	3b 7b 08             	cmp    0x8(%ebx),%edi
af19ca:	72 b6                	jb     0xaf1982
af19cc:	8b 75 ec             	mov    -0x14(%ebp),%esi
af19cf:	33 db                	xor    %ebx,%ebx
af19d1:	8b 7d f0             	mov    -0x10(%ebp),%edi
af19d4:	43                   	inc    %ebx
af19d5:	8b 55 f8             	mov    -0x8(%ebp),%edx
af19d8:	db 45 f8             	fildl  -0x8(%ebp)
af19db:	85 d2                	test   %edx,%edx
af19dd:	79 06                	jns    0xaf19e5
af19df:	dc 05 30 48 c4 00    	faddl  0xc44830
af19e5:	dd 5d c4             	fstpl  -0x3c(%ebp)
af19e8:	dd 45 c4             	fldl   -0x3c(%ebp)
af19eb:	dd 55 c4             	fstl   -0x3c(%ebp)
af19ee:	de f1                	fdivp  %st,%st(1)
af19f0:	33 c9                	xor    %ecx,%ecx
af19f2:	dd 55 bc             	fstl   -0x44(%ebp)
af19f5:	85 f6                	test   %esi,%esi
af19f7:	74 10                	je     0xaf1a09
af19f9:	8b 04 8f             	mov    (%edi,%ecx,4),%eax
af19fc:	41                   	inc    %ecx
af19fd:	dd 40 20             	fldl   0x20(%eax)
af1a00:	d8 c9                	fmul   %st(1),%st
af1a02:	dd 58 08             	fstpl  0x8(%eax)
af1a05:	3b ce                	cmp    %esi,%ecx
af1a07:	72 f0                	jb     0xaf19f9
af1a09:	52                   	push   %edx
af1a0a:	56                   	push   %esi
af1a0b:	57                   	push   %edi
af1a0c:	dd d8                	fstp   %st(0)
af1a0e:	e8 12 6f 93 ff       	call   0x428925
af1a13:	32 d2                	xor    %dl,%dl
af1a15:	83 c4 0c             	add    $0xc,%esp
af1a18:	88 55 ff             	mov    %dl,-0x1(%ebp)
af1a1b:	8b cb                	mov    %ebx,%ecx
af1a1d:	3b f3                	cmp    %ebx,%esi
af1a1f:	0f 86 96 00 00 00    	jbe    0xaf1abb
af1a25:	eb 02                	jmp    0xaf1a29
af1a27:	dd d8                	fstp   %st(0)
af1a29:	8b 04 8f             	mov    (%edi,%ecx,4),%eax
af1a2c:	89 45 ec             	mov    %eax,-0x14(%ebp)
af1a2f:	8b 40 10             	mov    0x10(%eax),%eax
af1a32:	8b b8 a0 00 00 00    	mov    0xa0(%eax),%edi
af1a38:	2b b8 a8 00 00 00    	sub    0xa8(%eax),%edi
af1a3e:	8b 45 ec             	mov    -0x14(%ebp),%eax
af1a41:	89 7d e4             	mov    %edi,-0x1c(%ebp)
af1a44:	8b 78 04             	mov    0x4(%eax),%edi
af1a47:	8b 45 e4             	mov    -0x1c(%ebp),%eax
af1a4a:	3b f8                	cmp    %eax,%edi
af1a4c:	89 7d e8             	mov    %edi,-0x18(%ebp)
af1a4f:	8b 7d f0             	mov    -0x10(%ebp),%edi
af1a52:	76 4a                	jbe    0xaf1a9e
af1a54:	89 45 d8             	mov    %eax,-0x28(%ebp)
af1a57:	db 45 d8             	fildl  -0x28(%ebp)
af1a5a:	85 c0                	test   %eax,%eax
af1a5c:	79 06                	jns    0xaf1a64
af1a5e:	dc 05 30 48 c4 00    	faddl  0xc44830
af1a64:	8b 45 e8             	mov    -0x18(%ebp),%eax
af1a67:	dd 5d d4             	fstpl  -0x2c(%ebp)
af1a6a:	dd 45 d4             	fldl   -0x2c(%ebp)
af1a6d:	db 45 e8             	fildl  -0x18(%ebp)
af1a70:	85 c0                	test   %eax,%eax
af1a72:	79 06                	jns    0xaf1a7a
af1a74:	dc 05 30 48 c4 00    	faddl  0xc44830
af1a7a:	8b 45 ec             	mov    -0x14(%ebp),%eax
af1a7d:	8a d3                	mov    %bl,%dl
af1a7f:	dd 5d d4             	fstpl  -0x2c(%ebp)
af1a82:	dc 75 d4             	fdivl  -0x2c(%ebp)
af1a85:	d9 e8                	fld1
af1a87:	d8 e1                	fsub   %st(1),%st
af1a89:	dc 48 20             	fmull  0x20(%eax)
af1a8c:	dc 6d cc             	fsubrl -0x34(%ebp)
af1a8f:	dd 55 cc             	fstl   -0x34(%ebp)
af1a92:	dd 40 20             	fldl   0x20(%eax)
af1a95:	de ca                	fmulp  %st,%st(2)
af1a97:	d9 c9                	fxch   %st(1)
af1a99:	dd 58 20             	fstpl  0x20(%eax)
af1a9c:	eb 03                	jmp    0xaf1aa1
af1a9e:	dd 45 cc             	fldl   -0x34(%ebp)
af1aa1:	41                   	inc    %ecx
af1aa2:	3b ce                	cmp    %esi,%ecx
af1aa4:	72 81                	jb     0xaf1a27
af1aa6:	dd 45 c4             	fldl   -0x3c(%ebp)
af1aa9:	84 d2                	test   %dl,%dl
af1aab:	88 55 ff             	mov    %dl,-0x1(%ebp)
af1aae:	8b 55 f8             	mov    -0x8(%ebp),%edx
af1ab1:	0f 85 37 ff ff ff    	jne    0xaf19ee
af1ab7:	dd d8                	fstp   %st(0)
af1ab9:	dd d8                	fstp   %st(0)
af1abb:	33 c0                	xor    %eax,%eax
af1abd:	89 45 e8             	mov    %eax,-0x18(%ebp)
af1ac0:	85 f6                	test   %esi,%esi
af1ac2:	0f 84 9c 00 00 00    	je     0xaf1b64
af1ac8:	eb 02                	jmp    0xaf1acc
af1aca:	dd d8                	fstp   %st(0)
af1acc:	8b 04 87             	mov    (%edi,%eax,4),%eax
af1acf:	89 45 d8             	mov    %eax,-0x28(%ebp)
af1ad2:	8b 48 10             	mov    0x10(%eax),%ecx
af1ad5:	8b 40 04             	mov    0x4(%eax),%eax
af1ad8:	89 4d e4             	mov    %ecx,-0x1c(%ebp)
af1adb:	89 45 ec             	mov    %eax,-0x14(%ebp)
af1ade:	e8 0c 63 93 ff       	call   0x427def
af1ae3:	39 45 ec             	cmp    %eax,-0x14(%ebp)
af1ae6:	76 55                	jbe    0xaf1b3d
af1ae8:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
af1aeb:	e8 ff 62 93 ff       	call   0x427def
af1af0:	89 45 e4             	mov    %eax,-0x1c(%ebp)
af1af3:	db 45 e4             	fildl  -0x1c(%ebp)
af1af6:	85 c0                	test   %eax,%eax
af1af8:	79 06                	jns    0xaf1b00
af1afa:	dc 05 30 48 c4 00    	faddl  0xc44830
af1b00:	8b 45 ec             	mov    -0x14(%ebp),%eax
af1b03:	dd 5d e0             	fstpl  -0x20(%ebp)
af1b06:	dd 45 e0             	fldl   -0x20(%ebp)
af1b09:	db 45 ec             	fildl  -0x14(%ebp)
af1b0c:	85 c0                	test   %eax,%eax
af1b0e:	79 06                	jns    0xaf1b16
af1b10:	dc 05 30 48 c4 00    	faddl  0xc44830
af1b16:	8b 45 d8             	mov    -0x28(%ebp),%eax
af1b19:	8a d3                	mov    %bl,%dl
af1b1b:	dd 5d e0             	fstpl  -0x20(%ebp)
af1b1e:	dc 75 e0             	fdivl  -0x20(%ebp)
af1b21:	88 55 ff             	mov    %dl,-0x1(%ebp)
af1b24:	d9 e8                	fld1
af1b26:	d8 e1                	fsub   %st(1),%st
af1b28:	dc 48 20             	fmull  0x20(%eax)
af1b2b:	dc 6d cc             	fsubrl -0x34(%ebp)
af1b2e:	dd 55 cc             	fstl   -0x34(%ebp)
af1b31:	dd 40 20             	fldl   0x20(%eax)
af1b34:	de ca                	fmulp  %st,%st(2)
af1b36:	d9 c9                	fxch   %st(1)
af1b38:	dd 58 20             	fstpl  0x20(%eax)
af1b3b:	eb 06                	jmp    0xaf1b43
af1b3d:	dd 45 cc             	fldl   -0x34(%ebp)
af1b40:	8a 55 ff             	mov    -0x1(%ebp),%dl
af1b43:	8b 45 e8             	mov    -0x18(%ebp),%eax
af1b46:	40                   	inc    %eax
af1b47:	89 45 e8             	mov    %eax,-0x18(%ebp)
af1b4a:	3b c6                	cmp    %esi,%eax
af1b4c:	0f 82 78 ff ff ff    	jb     0xaf1aca
af1b52:	dd 45 c4             	fldl   -0x3c(%ebp)
af1b55:	84 d2                	test   %dl,%dl
af1b57:	8b 55 f8             	mov    -0x8(%ebp),%edx
af1b5a:	0f 85 8e fe ff ff    	jne    0xaf19ee
af1b60:	dd d8                	fstp   %st(0)
af1b62:	dd d8                	fstp   %st(0)
af1b64:	33 c0                	xor    %eax,%eax
af1b66:	89 45 e4             	mov    %eax,-0x1c(%ebp)
af1b69:	85 f6                	test   %esi,%esi
af1b6b:	0f 84 87 00 00 00    	je     0xaf1bf8
af1b71:	eb 02                	jmp    0xaf1b75
af1b73:	dd d8                	fstp   %st(0)
af1b75:	8b 04 87             	mov    (%edi,%eax,4),%eax
af1b78:	89 45 ec             	mov    %eax,-0x14(%ebp)
af1b7b:	8b 40 10             	mov    0x10(%eax),%eax
af1b7e:	8b 88 b8 00 00 00    	mov    0xb8(%eax),%ecx
af1b84:	89 4d e8             	mov    %ecx,-0x18(%ebp)
af1b87:	8b c8                	mov    %eax,%ecx
af1b89:	e8 a1 ea 93 ff       	call   0x43062f
af1b8e:	8b 55 ec             	mov    -0x14(%ebp),%edx
af1b91:	03 45 e8             	add    -0x18(%ebp),%eax
af1b94:	3b 42 04             	cmp    0x4(%edx),%eax
af1b97:	76 3c                	jbe    0xaf1bd5
af1b99:	8b 4a 10             	mov    0x10(%edx),%ecx
af1b9c:	e8 8e ea 93 ff       	call   0x43062f
af1ba1:	03 45 e8             	add    -0x18(%ebp),%eax
af1ba4:	89 45 d8             	mov    %eax,-0x28(%ebp)
af1ba7:	db 45 d8             	fildl  -0x28(%ebp)
af1baa:	79 06                	jns    0xaf1bb2
af1bac:	dc 05 30 48 c4 00    	faddl  0xc44830
af1bb2:	dd 5d d4             	fstpl  -0x2c(%ebp)
af1bb5:	dd 45 d4             	fldl   -0x2c(%ebp)
af1bb8:	8a cb                	mov    %bl,%cl
af1bba:	dc 75 bc             	fdivl  -0x44(%ebp)
af1bbd:	8b 45 ec             	mov    -0x14(%ebp),%eax
af1bc0:	88 4d ff             	mov    %cl,-0x1(%ebp)
af1bc3:	d9 c0                	fld    %st(0)
af1bc5:	dc 60 20             	fsubl  0x20(%eax)
af1bc8:	dc 45 cc             	faddl  -0x34(%ebp)
af1bcb:	dd 55 cc             	fstl   -0x34(%ebp)
af1bce:	d9 c9                	fxch   %st(1)
af1bd0:	dd 58 20             	fstpl  0x20(%eax)
af1bd3:	eb 06                	jmp    0xaf1bdb
af1bd5:	dd 45 cc             	fldl   -0x34(%ebp)
af1bd8:	8a 4d ff             	mov    -0x1(%ebp),%cl
af1bdb:	8b 45 e4             	mov    -0x1c(%ebp),%eax
af1bde:	40                   	inc    %eax
af1bdf:	89 45 e4             	mov    %eax,-0x1c(%ebp)
af1be2:	3b c6                	cmp    %esi,%eax
af1be4:	72 8d                	jb     0xaf1b73
af1be6:	dd 45 c4             	fldl   -0x3c(%ebp)
af1be9:	8b 55 f8             	mov    -0x8(%ebp),%edx
af1bec:	84 c9                	test   %cl,%cl
af1bee:	0f 85 fa fd ff ff    	jne    0xaf19ee
af1bf4:	dd d8                	fstp   %st(0)
af1bf6:	dd d8                	fstp   %st(0)
af1bf8:	8b 07                	mov    (%edi),%eax
af1bfa:	8b 4d 0c             	mov    0xc(%ebp),%ecx
af1bfd:	39 48 04             	cmp    %ecx,0x4(%eax)
af1c00:	76 49                	jbe    0xaf1c4b
af1c02:	3b f3                	cmp    %ebx,%esi
af1c04:	76 2c                	jbe    0xaf1c32
af1c06:	8b 04 9f             	mov    (%edi,%ebx,4),%eax
af1c09:	8b 50 10             	mov    0x10(%eax),%edx
af1c0c:	8b 8a a0 00 00 00    	mov    0xa0(%edx),%ecx
af1c12:	2b 48 04             	sub    0x4(%eax),%ecx
af1c15:	2b 8a a8 00 00 00    	sub    0xa8(%edx),%ecx
af1c1b:	74 0d                	je     0xaf1c2a
af1c1d:	51                   	push   %ecx
af1c1e:	8b 4d f4             	mov    -0xc(%ebp),%ecx
af1c21:	52                   	push   %edx
af1c22:	ff 75 08             	push   0x8(%ebp)
af1c25:	e8 85 8d 93 ff       	call   0x42a9af
af1c2a:	43                   	inc    %ebx
af1c2b:	3b de                	cmp    %esi,%ebx
af1c2d:	72 d7                	jb     0xaf1c06
af1c2f:	8b 4d 0c             	mov    0xc(%ebp),%ecx
af1c32:	33 c0                	xor    %eax,%eax
af1c34:	50                   	push   %eax
af1c35:	8b 07                	mov    (%edi),%eax
af1c37:	8b 40 04             	mov    0x4(%eax),%eax
af1c3a:	2b c1                	sub    %ecx,%eax
af1c3c:	8b 4d f4             	mov    -0xc(%ebp),%ecx
af1c3f:	50                   	push   %eax
af1c40:	ff 75 08             	push   0x8(%ebp)
af1c43:	e8 25 0b 94 ff       	call   0x43276d
af1c48:	89 45 dc             	mov    %eax,-0x24(%ebp)
af1c4b:	57                   	push   %edi
af1c4c:	e8 c1 c9 94 ff       	call   0x43e612
af1c51:	59                   	pop    %ecx
af1c52:	5f                   	pop    %edi
af1c53:	5e                   	pop    %esi
af1c54:	8b 45 dc             	mov    -0x24(%ebp),%eax
af1c57:	5b                   	pop    %ebx
af1c58:	8b e5                	mov    %ebp,%esp
af1c5a:	5d                   	pop    %ebp
af1c5b:	c2 10 00             	ret    $0x10
af1c5e:	cc                   	int3
af1c5f:	cc                   	int3
af1c60:	cc                   	int3
af1c61:	cc                   	int3
af1c62:	cc                   	int3
af1c63:	cc                   	int3
af1c64:	cc                   	int3
af1c65:	cc                   	int3
af1c66:	cc                   	int3
af1c67:	cc                   	int3
af1c68:	cc                   	int3
af1c69:	cc                   	int3
af1c6a:	cc                   	int3
af1c6b:	cc                   	int3
af1c6c:	cc                   	int3
af1c6d:	cc                   	int3
af1c6e:	cc                   	int3
af1c6f:	cc                   	int3
af1c70:	cc                   	int3
af1c71:	cc                   	int3
af1c72:	cc                   	int3
af1c73:	cc                   	int3
af1c74:	cc                   	int3
af1c75:	cc                   	int3
af1c76:	cc                   	int3
af1c77:	cc                   	int3
af1c78:	cc                   	int3
af1c79:	cc                   	int3
af1c7a:	cc                   	int3
af1c7b:	cc                   	int3
af1c7c:	cc                   	int3
af1c7d:	cc                   	int3
af1c7e:	cc                   	int3
af1c7f:	cc                   	int3
af1c80:	cc                   	int3
af1c81:	cc                   	int3
af1c82:	cc                   	int3
af1c83:	cc                   	int3
af1c84:	cc                   	int3