8ca7e8:	2b d1                	sub    %ecx,%edx
8ca7ea:	03 c1                	add    %ecx,%eax
8ca7ec:	52                   	push   %edx
8ca7ed:	ff 75 0c             	push   0xc(%ebp)
8ca7f0:	50                   	push   %eax
8ca7f1:	eb 57                	jmp    0x8ca84a
8ca7f3:	8b 45 10             	mov    0x10(%ebp),%eax
8ca7f6:	2b 45 08             	sub    0x8(%ebp),%eax
8ca7f9:	03 45 0c             	add    0xc(%ebp),%eax
8ca7fc:	50                   	push   %eax
8ca7fd:	ff 75 10             	push   0x10(%ebp)
8ca800:	ff 75 0c             	push   0xc(%ebp)
8ca803:	ff 75 08             	push   0x8(%ebp)
8ca806:	ff 75 cc             	push   -0x34(%ebp)
8ca809:	ff 15 5c 32 d8 00    	call   *0xd8325c
8ca80f:	ff 75 14             	push   0x14(%ebp)
8ca812:	8b 45 14             	mov    0x14(%ebp),%eax
8ca815:	ff 75 10             	push   0x10(%ebp)
8ca818:	2b 45 10             	sub    0x10(%ebp),%eax
8ca81b:	03 45 08             	add    0x8(%ebp),%eax
8ca81e:	50                   	push   %eax
8ca81f:	ff 75 08             	push   0x8(%ebp)
8ca822:	ff 75 cc             	push   -0x34(%ebp)
8ca825:	ff 15 5c 32 d8 00    	call   *0xd8325c
8ca82b:	8b 45 10             	mov    0x10(%ebp),%eax
8ca82e:	2b 45 08             	sub    0x8(%ebp),%eax
8ca831:	99                   	cltd
8ca832:	2b c2                	sub    %edx,%eax
8ca834:	8b 55 14             	mov    0x14(%ebp),%edx
8ca837:	8b c8                	mov    %eax,%ecx
8ca839:	8b 45 0c             	mov    0xc(%ebp),%eax
8ca83c:	d1 f9                	sar    $1,%ecx
8ca83e:	2b d1                	sub    %ecx,%edx
8ca840:	03 c1                	add    %ecx,%eax
8ca842:	52                   	push   %edx
8ca843:	ff 75 10             	push   0x10(%ebp)
8ca846:	50                   	push   %eax
8ca847:	ff 75 08             	push   0x8(%ebp)
8ca84a:	ff 75 cc             	push   -0x34(%ebp)
8ca84d:	ff 15 78 32 d8 00    	call   *0xd83278
8ca853:	57                   	push   %edi
8ca854:	8d 4d c8             	lea    -0x38(%ebp),%ecx
8ca857:	e8 ca 66 b6 ff       	call   0x430f26
8ca85c:	ff 75 f0             	push   -0x10(%ebp)
8ca85f:	8d 4d c8             	lea    -0x38(%ebp),%ecx
8ca862:	e8 c5 c0 b5 ff       	call   0x42692c
8ca867:	8d 8d 74 ff ff ff    	lea    -0x8c(%ebp),%ecx
8ca86d:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
8ca871:	c7 85 74 ff ff ff dc 	movl   $0xc3a7dc,-0x8c(%ebp)
8ca878:	a7 c3 00
8ca87b:	e8 b8 e5 b6 ff       	call   0x438e38
8ca880:	dd 05 80 d9 c3 00    	fldl   0xc3d980
8ca886:	dd 05 f0 b7 bd 00    	fldl   0xbdb7f0
8ca88c:	d9 ee                	fldz
8ca88e:	dd 85 64 ff ff ff    	fldl   -0x9c(%ebp)
8ca894:	dd 45 80             	fldl   -0x80(%ebp)
8ca897:	dd 85 4c ff ff ff    	fldl   -0xb4(%ebp)
8ca89d:	d9 cd                	fxch   %st(5)
8ca89f:	d9 c9                	fxch   %st(1)
8ca8a1:	d9 cc                	fxch   %st(4)
8ca8a3:	d9 cb                	fxch   %st(3)
8ca8a5:	d9 c5                	fld    %st(5)
8ca8a7:	83 ce ff             	or     $0xffffffff,%esi
8ca8aa:	dd 95 6c ff ff ff    	fstl   -0x94(%ebp)
8ca8b0:	d9 cb                	fxch   %st(3)
8ca8b2:	89 75 a0             	mov    %esi,-0x60(%ebp)
8ca8b5:	d8 de                	fcomp  %st(6)
8ca8b7:	0b fe                	or     %esi,%edi
8ca8b9:	df e0                	fnstsw %ax
8ca8bb:	89 7d 98             	mov    %edi,-0x68(%ebp)
8ca8be:	f6 c4 41             	test   $0x41,%ah
8ca8c1:	0f 85 36 03 00 00    	jne    0x8cabfd
8ca8c7:	d9 cc                	fxch   %st(4)
8ca8c9:	b9 68 01 00 00       	mov    $0x168,%ecx
8ca8ce:	de c5                	faddp  %st,%st(5)
8ca8d0:	89 4d f0             	mov    %ecx,-0x10(%ebp)
8ca8d3:	d9 cc                	fxch   %st(4)
8ca8d5:	d8 ca                	fmul   %st(2),%st
8ca8d7:	dd 95 14 ff ff ff    	fstl   -0xec(%ebp)
8ca8dd:	db 45 e0             	fildl  -0x20(%ebp)
8ca8e0:	dd 5d e8             	fstpl  -0x18(%ebp)
8ca8e3:	dd 45 e8             	fldl   -0x18(%ebp)
8ca8e6:	dd 5d e8             	fstpl  -0x18(%ebp)
8ca8e9:	eb 08                	jmp    0x8ca8f3
8ca8eb:	d9 cb                	fxch   %st(3)
8ca8ed:	d9 cc                	fxch   %st(4)
8ca8ef:	d9 c9                	fxch   %st(1)
8ca8f1:	d9 cb                	fxch   %st(3)
8ca8f3:	d8 d9                	fcomp  %st(1)
8ca8f5:	df e0                	fnstsw %ax
8ca8f7:	f6 c4 01             	test   $0x1,%ah
8ca8fa:	75 08                	jne    0x8ca904
8ca8fc:	8b 45 90             	mov    -0x70(%ebp),%eax
8ca8ff:	89 45 e0             	mov    %eax,-0x20(%ebp)
8ca902:	eb 03                	jmp    0x8ca907
8ca904:	89 4d e0             	mov    %ecx,-0x20(%ebp)
8ca907:	db 45 e0             	fildl  -0x20(%ebp)
8ca90a:	dd 5d dc             	fstpl  -0x24(%ebp)
8ca90d:	dd 45 dc             	fldl   -0x24(%ebp)
8ca910:	d9 c0                	fld    %st(0)
8ca912:	dc 8d 44 ff ff ff    	fmull  -0xbc(%ebp)
8ca918:	d9 c0                	fld    %st(0)
8ca91a:	d8 c4                	fadd   %st(4),%st
8ca91c:	dd 85 3c ff ff ff    	fldl   -0xc4(%ebp)
8ca922:	dc c1                	fadd   %st,%st(1)
8ca924:	d9 cf                	fxch   %st(7)
8ca926:	d8 d1                	fcom   %st(1)
8ca928:	df e0                	fnstsw %ax
8ca92a:	f6 c4 05             	test   $0x5,%ah
8ca92d:	7b 17                	jnp    0x8ca946
8ca92f:	d9 ce                	fxch   %st(6)
8ca931:	d8 d1                	fcom   %st(1)
8ca933:	df e0                	fnstsw %ax
8ca935:	f6 c4 41             	test   $0x41,%ah
8ca938:	75 0a                	jne    0x8ca944
8ca93a:	dd d9                	fstp   %st(1)
8ca93c:	dd d9                	fstp   %st(1)
8ca93e:	dd dd                	fstp   %st(5)
8ca940:	d9 c4                	fld    %st(4)
8ca942:	eb 21                	jmp    0x8ca965
8ca944:	d9 ce                	fxch   %st(6)
8ca946:	d8 d1                	fcom   %st(1)
8ca948:	df e0                	fnstsw %ax
8ca94a:	dd d9                	fstp   %st(1)
8ca94c:	f6 c4 05             	test   $0x5,%ah
8ca94f:	7a 08                	jp     0x8ca959
8ca951:	dd d9                	fstp   %st(1)
8ca953:	dd dd                	fstp   %st(5)
8ca955:	d9 c4                	fld    %st(4)
8ca957:	eb 06                	jmp    0x8ca95f
8ca959:	d9 ce                	fxch   %st(6)
8ca95b:	d8 c4                	fadd   %st(4),%st
8ca95d:	de c1                	faddp  %st,%st(1)
8ca95f:	d9 cc                	fxch   %st(4)
8ca961:	d9 cd                	fxch   %st(5)
8ca963:	d9 cc                	fxch   %st(4)
8ca965:	e8 ce 5a b4 ff       	call   0x410438
8ca96a:	d9 c0                	fld    %st(0)
8ca96c:	88 45 e6             	mov    %al,-0x1a(%ebp)
8ca96f:	dc 8d 34 ff ff ff    	fmull  -0xcc(%ebp)
8ca975:	d9 c0                	fld    %st(0)
8ca977:	d8 c4                	fadd   %st(4),%st
8ca979:	dd 85 2c ff ff ff    	fldl   -0xd4(%ebp)
8ca97f:	dc c1                	fadd   %st,%st(1)
8ca981:	d9 ce                	fxch   %st(6)
8ca983:	d8 d1                	fcom   %st(1)
8ca985:	df e0                	fnstsw %ax
8ca987:	f6 c4 05             	test   $0x5,%ah
8ca98a:	7b 17                	jnp    0x8ca9a3
8ca98c:	d9 cf                	fxch   %st(7)
8ca98e:	d8 d1                	fcom   %st(1)
8ca990:	df e0                	fnstsw %ax
8ca992:	f6 c4 41             	test   $0x41,%ah
8ca995:	75 0a                	jne    0x8ca9a1
8ca997:	dd d9                	fstp   %st(1)
8ca999:	dd d9                	fstp   %st(1)
8ca99b:	dd dc                	fstp   %st(4)
8ca99d:	d9 c3                	fld    %st(3)
8ca99f:	eb 21                	jmp    0x8ca9c2
8ca9a1:	d9 cf                	fxch   %st(7)
8ca9a3:	d8 d1                	fcom   %st(1)
8ca9a5:	df e0                	fnstsw %ax
8ca9a7:	dd d9                	fstp   %st(1)
8ca9a9:	f6 c4 05             	test   $0x5,%ah
8ca9ac:	7a 08                	jp     0x8ca9b6
8ca9ae:	dd d9                	fstp   %st(1)
8ca9b0:	dd dc                	fstp   %st(4)
8ca9b2:	d9 c3                	fld    %st(3)
8ca9b4:	eb 06                	jmp    0x8ca9bc
8ca9b6:	d9 cd                	fxch   %st(5)
8ca9b8:	d8 c4                	fadd   %st(4),%st
8ca9ba:	de c1                	faddp  %st,%st(1)
8ca9bc:	d9 cc                	fxch   %st(4)
8ca9be:	d9 cd                	fxch   %st(5)
8ca9c0:	d9 cc                	fxch   %st(4)
8ca9c2:	e8 71 5a b4 ff       	call   0x410438
8ca9c7:	dc 8d 24 ff ff ff    	fmull  -0xdc(%ebp)
8ca9cd:	88 45 e7             	mov    %al,-0x19(%ebp)
8ca9d0:	d9 c0                	fld    %st(0)
8ca9d2:	d8 c3                	fadd   %st(3),%st
8ca9d4:	dd 85 1c ff ff ff    	fldl   -0xe4(%ebp)
8ca9da:	dc c1                	fadd   %st,%st(1)
8ca9dc:	d9 ce                	fxch   %st(6)
8ca9de:	d8 d1                	fcom   %st(1)
8ca9e0:	df e0                	fnstsw %ax
8ca9e2:	f6 c4 05             	test   $0x5,%ah
8ca9e5:	7b 17                	jnp    0x8ca9fe
8ca9e7:	d9 cd                	fxch   %st(5)
8ca9e9:	d8 d1                	fcom   %st(1)
8ca9eb:	df e0                	fnstsw %ax
8ca9ed:	f6 c4 41             	test   $0x41,%ah
8ca9f0:	75 10                	jne    0x8caa02
8ca9f2:	dd d9                	fstp   %st(1)
8ca9f4:	dd dd                	fstp   %st(5)
8ca9f6:	dd d8                	fstp   %st(0)
8ca9f8:	dd da                	fstp   %st(2)
8ca9fa:	dd d8                	fstp   %st(0)
8ca9fc:	eb 21                	jmp    0x8caa1f
8ca9fe:	dd dd                	fstp   %st(5)
8caa00:	eb 02                	jmp    0x8caa04
8caa02:	dd d8                	fstp   %st(0)
8caa04:	d8 dc                	fcomp  %st(4)
8caa06:	df e0                	fnstsw %ax
8caa08:	f6 c4 41             	test   $0x41,%ah
8caa0b:	75 08                	jne    0x8caa15
8caa0d:	dd dc                	fstp   %st(4)
8caa0f:	dd db                	fstp   %st(3)
8caa11:	dd d8                	fstp   %st(0)
8caa13:	eb 08                	jmp    0x8caa1d
8caa15:	dd db                	fstp   %st(3)
8caa17:	d9 cb                	fxch   %st(3)
8caa19:	de c1                	faddp  %st,%st(1)
8caa1b:	de c1                	faddp  %st,%st(1)
8caa1d:	d9 c9                	fxch   %st(1)
8caa1f:	d9 c9                	fxch   %st(1)
8caa21:	e8 12 5a b4 ff       	call   0x410438
8caa26:	83 7d bc 00          	cmpl   $0x0,-0x44(%ebp)
8caa2a:	75 0b                	jne    0x8caa37
8caa2c:	83 7d 20 ff          	cmpl   $0xffffffff,0x20(%ebp)
8caa30:	74 05                	je     0x8caa37
8caa32:	8b 5d 20             	mov    0x20(%ebp),%ebx
8caa35:	eb 15                	jmp    0x8caa4c
8caa37:	0f b6 d8             	movzbl %al,%ebx
8caa3a:	0f b6 45 e7          	movzbl -0x19(%ebp),%eax
8caa3e:	c1 e3 08             	shl    $0x8,%ebx
8caa41:	0b d8                	or     %eax,%ebx
8caa43:	0f b6 45 e6          	movzbl -0x1a(%ebp),%eax
8caa47:	c1 e3 08             	shl    $0x8,%ebx
8caa4a:	0b d8                	or     %eax,%ebx
8caa4c:	51                   	push   %ecx
8caa4d:	51                   	push   %ecx
8caa4e:	dd 1c 24             	fstpl  (%esp)
8caa51:	e8 24 9b b3 ff       	call   0x40457a
8caa56:	dc 4d e8             	fmull  -0x18(%ebp)
8caa59:	d9 ee                	fldz
8caa5b:	de c1                	faddp  %st,%st(1)
8caa5d:	e8 ba 8f b3 ff       	call   0x403a1c
8caa62:	dd 85 6c ff ff ff    	fldl   -0x94(%ebp)
8caa68:	8b f0                	mov    %eax,%esi
8caa6a:	03 75 c4             	add    -0x3c(%ebp),%esi
8caa6d:	dd 1c 24             	fstpl  (%esp)
8caa70:	e8 c7 97 b3 ff       	call   0x40423c
8caa75:	dc 4d e8             	fmull  -0x18(%ebp)
8caa78:	d9 ee                	fldz
8caa7a:	de c1                	faddp  %st,%st(1)
8caa7c:	59                   	pop    %ecx
8caa7d:	59                   	pop    %ecx
8caa7e:	e8 99 8f b3 ff       	call   0x403a1c
8caa83:	8b 4d a4             	mov    -0x5c(%ebp),%ecx
8caa86:	8d 3c 01             	lea    (%ecx,%eax,1),%edi
8caa89:	8b 45 d8             	mov    -0x28(%ebp),%eax
8caa8c:	85 c0                	test   %eax,%eax
8caa8e:	0f 8e 88 00 00 00    	jle    0x8cab1c
8caa94:	db 45 d8             	fildl  -0x28(%ebp)
8caa97:	3b 75 c4             	cmp    -0x3c(%ebp),%esi
8caa9a:	7e 0e                	jle    0x8caaaa
8caa9c:	dd 5d 94             	fstpl  -0x6c(%ebp)
8caa9f:	dd 45 94             	fldl   -0x6c(%ebp)
8caaa2:	dc 0d f0 b7 bd 00    	fmull  0xbdb7f0
8caaa8:	eb 0c                	jmp    0x8caab6
8caaaa:	dd 5d 94             	fstpl  -0x6c(%ebp)
8caaad:	dd 45 94             	fldl   -0x6c(%ebp)
8caab0:	dc 0d 50 48 c4 00    	fmull  0xc44850
8caab6:	e8 61 8f b3 ff       	call   0x403a1c
8caabb:	8b 55 a0             	mov    -0x60(%ebp),%edx
8caabe:	03 f0                	add    %eax,%esi
8caac0:	83 fa ff             	cmp    $0xffffffff,%edx
8caac3:	0f 84 d0 00 00 00    	je     0x8cab99
8caac9:	33 c9                	xor    %ecx,%ecx
8caacb:	3b 75 c4             	cmp    -0x3c(%ebp),%esi
8caace:	0f 9f c1             	setg   %cl
8caad1:	33 c0                	xor    %eax,%eax
8caad3:	3b 55 c4             	cmp    -0x3c(%ebp),%edx
8caad6:	0f 9f c0             	setg   %al
8caad9:	3b c1                	cmp    %ecx,%eax
8caadb:	0f 84 b8 00 00 00    	je     0x8cab99
8caae1:	3b f2                	cmp    %edx,%esi
8caae3:	7d 07                	jge    0x8caaec
8caae5:	8b c6                	mov    %esi,%eax
8caae7:	89 45 e0             	mov    %eax,-0x20(%ebp)
8caaea:	eb 05                	jmp    0x8caaf1
8caaec:	8b c2                	mov    %edx,%eax
8caaee:	89 55 e0             	mov    %edx,-0x20(%ebp)
8caaf1:	3b f2                	cmp    %edx,%esi
8caaf3:	7e 02                	jle    0x8caaf7
8caaf5:	8b d6                	mov    %esi,%edx
8caaf7:	3b c2                	cmp    %edx,%eax
8caaf9:	0f 8d 9a 00 00 00    	jge    0x8cab99
8caaff:	53                   	push   %ebx
8cab00:	57                   	push   %edi
8cab01:	50                   	push   %eax
8cab02:	ff 75 b8             	push   -0x48(%ebp)
8cab05:	ff 75 b4             	push   -0x4c(%ebp)
8cab08:	ff 75 c0             	push   -0x40(%ebp)
8cab0b:	e8 c6 d1 b6 ff       	call   0x437cd6
8cab10:	8b 45 e0             	mov    -0x20(%ebp),%eax
8cab13:	8b 55 a0             	mov    -0x60(%ebp),%edx
8cab16:	40                   	inc    %eax
8cab17:	89 45 e0             	mov    %eax,-0x20(%ebp)
8cab1a:	eb d5                	jmp    0x8caaf1
8cab1c:	79 7b                	jns    0x8cab99
8cab1e:	db 45 d8             	fildl  -0x28(%ebp)
8cab21:	3b f9                	cmp    %ecx,%edi
8cab23:	7e 0e                	jle    0x8cab33
8cab25:	dd 5d 9c             	fstpl  -0x64(%ebp)
8cab28:	dd 45 9c             	fldl   -0x64(%ebp)
8cab2b:	dc 0d 50 48 c4 00    	fmull  0xc44850
8cab31:	eb 0c                	jmp    0x8cab3f
8cab33:	dd 5d 9c             	fstpl  -0x64(%ebp)
8cab36:	dd 45 9c             	fldl   -0x64(%ebp)
8cab39:	dc 0d f0 b7 bd 00    	fmull  0xbdb7f0
8cab3f:	e8 d8 8e b3 ff       	call   0x403a1c
8cab44:	8b 55 98             	mov    -0x68(%ebp),%edx
8cab47:	03 f8                	add    %eax,%edi
8cab49:	83 fa ff             	cmp    $0xffffffff,%edx
8cab4c:	74 4b                	je     0x8cab99
8cab4e:	33 c9                	xor    %ecx,%ecx
8cab50:	3b 7d a4             	cmp    -0x5c(%ebp),%edi
8cab53:	0f 9f c1             	setg   %cl
8cab56:	33 c0                	xor    %eax,%eax
8cab58:	3b 55 a4             	cmp    -0x5c(%ebp),%edx
8cab5b:	0f 9f c0             	setg   %al
8cab5e:	3b c1                	cmp    %ecx,%eax
8cab60:	74 37                	je     0x8cab99
8cab62:	3b fa                	cmp    %edx,%edi
8cab64:	7d 07                	jge    0x8cab6d
8cab66:	8b c7                	mov    %edi,%eax
8cab68:	89 45 e0             	mov    %eax,-0x20(%ebp)
8cab6b:	eb 05                	jmp    0x8cab72
8cab6d:	8b c2                	mov    %edx,%eax
8cab6f:	89 55 e0             	mov    %edx,-0x20(%ebp)
8cab72:	3b fa                	cmp    %edx,%edi
8cab74:	7e 02                	jle    0x8cab78
8cab76:	8b d7                	mov    %edi,%edx
8cab78:	3b c2                	cmp    %edx,%eax
8cab7a:	7d 1d                	jge    0x8cab99
8cab7c:	53                   	push   %ebx
8cab7d:	50                   	push   %eax
8cab7e:	56                   	push   %esi
8cab7f:	ff 75 b8             	push   -0x48(%ebp)
8cab82:	ff 75 b4             	push   -0x4c(%ebp)
8cab85:	ff 75 c0             	push   -0x40(%ebp)
8cab88:	e8 49 d1 b6 ff       	call   0x437cd6
8cab8d:	8b 45 e0             	mov    -0x20(%ebp),%eax
8cab90:	8b 55 98             	mov    -0x68(%ebp),%edx
8cab93:	40                   	inc    %eax
8cab94:	89 45 e0             	mov    %eax,-0x20(%ebp)
8cab97:	eb d9                	jmp    0x8cab72
8cab99:	53                   	push   %ebx
8cab9a:	57                   	push   %edi