40bb6f:	8b 7b 08             	mov    0x8(%ebx),%edi
40bb72:	83 f9 02             	cmp    $0x2,%ecx
40bb75:	0f 85 9a 59 03 00    	jne    0x441515
40bb7b:	8b 33                	mov    (%ebx),%esi
40bb7d:	8b 4f 0c             	mov    0xc(%edi),%ecx
40bb80:	8b c1                	mov    %ecx,%eax
40bb82:	c1 e0 04             	shl    $0x4,%eax
40bb85:	03 46 0c             	add    0xc(%esi),%eax
40bb88:	8b 04 85 38 4f 4a 00 	mov    0x4a4f38(,%eax,4),%eax
40bb8f:	83 f8 03             	cmp    $0x3,%eax
40bb92:	0f 85 01 07 00 00    	jne    0x40c299
40bb98:	d9 e8                	fld1
40bb9a:	d9 ee                	fldz
40bb9c:	3b c8                	cmp    %eax,%ecx
40bb9e:	0f 85 ba 03 00 00    	jne    0x40bf5e
40bba4:	dd 07                	fldl   (%edi)
40bba6:	dd 55 f8             	fstl   -0x8(%ebp)
40bba9:	8b 46 0c             	mov    0xc(%esi),%eax
40bbac:	83 f8 03             	cmp    $0x3,%eax
40bbaf:	0f 85 1c 5a 03 00    	jne    0x4415d1
40bbb5:	dd da                	fstp   %st(2)
40bbb7:	dd d8                	fstp   %st(0)
40bbb9:	dd 06                	fldl   (%esi)
40bbbb:	de d9                	fcompp
40bbbd:	df e0                	fnstsw %ax
40bbbf:	f6 c4 41             	test   $0x41,%ah
40bbc2:	0f 84 9f 04 00 00    	je     0x40c067
40bbc8:	83 7b 04 02          	cmpl   $0x2,0x4(%ebx)
40bbcc:	0f 85 92 5a 03 00    	jne    0x441664
40bbd2:	8b 33                	mov    (%ebx),%esi
40bbd4:	8b 4e 08             	mov    0x8(%esi),%ecx
40bbd7:	85 c9                	test   %ecx,%ecx
40bbd9:	0f 85 5f 08 00 00    	jne    0x40c43e
40bbdf:	8b 46 0c             	mov    0xc(%esi),%eax
40bbe2:	83 f8 05             	cmp    $0x5,%eax
40bbe5:	0f 8d 8d 5a 03 00    	jge    0x441678
40bbeb:	c7 06 00 00 00 00    	movl   $0x0,(%esi)
40bbf1:	c6 06 00             	movb   $0x0,(%esi)
40bbf4:	c7 46 0c 09 00 00 00 	movl   $0x9,0xc(%esi)
40bbfb:	83 7b 04 01          	cmpl   $0x1,0x4(%ebx)
40bbff:	74 18                	je     0x40bc19
40bc01:	80 7b 0d 00          	cmpb   $0x0,0xd(%ebx)
40bc05:	0f 85 0d 5b 03 00    	jne    0x441718
40bc0b:	80 7b 0c 00          	cmpb   $0x0,0xc(%ebx)
40bc0f:	0f 84 d5 56 03 00    	je     0x4412ea
40bc15:	c6 43 0d 01          	movb   $0x1,0xd(%ebx)
40bc19:	ff 4b 04             	decl   0x4(%ebx)
40bc1c:	33 c0                	xor    %eax,%eax
40bc1e:	5f                   	pop    %edi
40bc1f:	5e                   	pop    %esi
40bc20:	5b                   	pop    %ebx
40bc21:	8b e5                	mov    %ebp,%esp
40bc23:	5d                   	pop    %ebp
40bc24:	c2 08 00             	ret    $0x8
40bc27:	8b 42 04             	mov    0x4(%edx),%eax
40bc2a:	e9 4d fe ff ff       	jmp    0x40ba7c
40bc2f:	8b 72 04             	mov    0x4(%edx),%esi
40bc32:	52                   	push   %edx
40bc33:	e8 34 54 01 00       	call   0x42106c
40bc38:	8b 45 08             	mov    0x8(%ebp),%eax
40bc3b:	83 c4 04             	add    $0x4,%esp
40bc3e:	89 77 04             	mov    %esi,0x4(%edi)
40bc41:	c6 47 09 00          	movb   $0x0,0x9(%edi)
40bc45:	e9 3f fe ff ff       	jmp    0x40ba89
40bc4a:	83 f9 01             	cmp    $0x1,%ecx
40bc4d:	0f 84 08 09 00 00    	je     0x40c55b
40bc53:	80 7b 0d 00          	cmpb   $0x0,0xd(%ebx)
40bc57:	0f 85 d7 5a 03 00    	jne    0x441734
40bc5d:	8b 7b 08             	mov    0x8(%ebx),%edi
40bc60:	83 f9 02             	cmp    $0x2,%ecx
40bc63:	0f 85 0f 08 00 00    	jne    0x40c478
40bc69:	8b 0b                	mov    (%ebx),%ecx
40bc6b:	8b 51 0c             	mov    0xc(%ecx),%edx
40bc6e:	8b c2                	mov    %edx,%eax
40bc70:	c1 e0 04             	shl    $0x4,%eax
40bc73:	03 47 0c             	add    0xc(%edi),%eax
40bc76:	89 4d 0c             	mov    %ecx,0xc(%ebp)
40bc79:	8b 04 85 38 4f 4a 00 	mov    0x4a4f38(,%eax,4),%eax
40bc80:	83 f8 03             	cmp    $0x3,%eax
40bc83:	0f 85 fd 06 00 00    	jne    0x40c386
40bc89:	d9 e8                	fld1
40bc8b:	d9 ee                	fldz
40bc8d:	3b d0                	cmp    %eax,%edx
40bc8f:	0f 85 e9 5a 03 00    	jne    0x44177e
40bc95:	dd 01                	fldl   (%ecx)
40bc97:	dd 55 f8             	fstl   -0x8(%ebp)
40bc9a:	8b 47 0c             	mov    0xc(%edi),%eax
40bc9d:	83 f8 03             	cmp    $0x3,%eax
40bca0:	0f 85 3b 04 00 00    	jne    0x40c0e1
40bca6:	dd da                	fstp   %st(2)
40bca8:	dd d8                	fstp   %st(0)
40bcaa:	dd 07                	fldl   (%edi)
40bcac:	de d9                	fcompp
40bcae:	df e0                	fnstsw %ax
40bcb0:	f6 c4 41             	test   $0x41,%ah
40bcb3:	0f 84 75 02 00 00    	je     0x40bf2e
40bcb9:	83 7b 04 02          	cmpl   $0x2,0x4(%ebx)
40bcbd:	0f 85 ca 07 00 00    	jne    0x40c48d
40bcc3:	8b 33                	mov    (%ebx),%esi
40bcc5:	8b 4e 08             	mov    0x8(%esi),%ecx
40bcc8:	85 c9                	test   %ecx,%ecx
40bcca:	0f 85 5c 07 00 00    	jne    0x40c42c
40bcd0:	8b 46 0c             	mov    0xc(%esi),%eax
40bcd3:	83 f8 05             	cmp    $0x5,%eax
40bcd6:	0f 8c 0f ff ff ff    	jl     0x40bbeb
40bcdc:	e9 9d 5b 03 00       	jmp    0x44187e
40bce1:	83 f9 01             	cmp    $0x1,%ecx
40bce4:	0f 84 0f 08 00 00    	je     0x40c4f9
40bcea:	80 7b 0d 00          	cmpb   $0x0,0xd(%ebx)
40bcee:	0f 84 63 03 00 00    	je     0x40c057
40bcf4:	8b 43 08             	mov    0x8(%ebx),%eax
40bcf7:	8b 78 10             	mov    0x10(%eax),%edi
40bcfa:	89 7d 08             	mov    %edi,0x8(%ebp)
40bcfd:	83 f9 02             	cmp    $0x2,%ecx
40bd00:	0f 85 b8 04 00 00    	jne    0x40c1be
40bd06:	8b 33                	mov    (%ebx),%esi
40bd08:	8b 46 0c             	mov    0xc(%esi),%eax
40bd0b:	89 75 0c             	mov    %esi,0xc(%ebp)
40bd0e:	83 f8 03             	cmp    $0x3,%eax
40bd11:	0f 85 b4 01 00 00    	jne    0x40becb
40bd17:	8b 47 0c             	mov    0xc(%edi),%eax
40bd1a:	83 f8 03             	cmp    $0x3,%eax
40bd1d:	0f 85 87 54 03 00    	jne    0x4411aa
40bd23:	dd 07                	fldl   (%edi)
40bd25:	dc 06                	faddl  (%esi)
40bd27:	dd 1e                	fstpl  (%esi)
40bd29:	8b 4e 08             	mov    0x8(%esi),%ecx
40bd2c:	85 c9                	test   %ecx,%ecx
40bd2e:	0f 85 e4 54 03 00    	jne    0x441218
40bd34:	83 7b 04 01          	cmpl   $0x1,0x4(%ebx)
40bd38:	0f 84 db fe ff ff    	je     0x40bc19
40bd3e:	80 7b 0d 00          	cmpb   $0x0,0xd(%ebx)
40bd42:	0f 84 c3 fe ff ff    	je     0x40bc0b
40bd48:	8b 73 08             	mov    0x8(%ebx),%esi
40bd4b:	8b 7e 10             	mov    0x10(%esi),%edi
40bd4e:	85 f6                	test   %esi,%esi
40bd50:	74 2d                	je     0x40bd7f
40bd52:	8b 4e 08             	mov    0x8(%esi),%ecx
40bd55:	85 c9                	test   %ecx,%ecx
40bd57:	0f 85 cd 54 03 00    	jne    0x44122a
40bd5d:	8b 46 0c             	mov    0xc(%esi),%eax
40bd60:	83 f8 05             	cmp    $0x5,%eax
40bd63:	0f 8d d3 54 03 00    	jge    0x44123c
40bd69:	56                   	push   %esi
40bd6a:	c7 46 0c 01 00 00 00 	movl   $0x1,0xc(%esi)
40bd71:	c7 06 00 00 00 00    	movl   $0x0,(%esi)
40bd77:	e8 f0 52 01 00       	call   0x42106c
40bd7c:	83 c4 04             	add    $0x4,%esp
40bd7f:	89 7b 08             	mov    %edi,0x8(%ebx)
40bd82:	c6 43 0d 00          	movb   $0x0,0xd(%ebx)
40bd86:	e9 80 fe ff ff       	jmp    0x40bc0b
40bd8b:	83 f9 01             	cmp    $0x1,%ecx
40bd8e:	0f 84 6c 07 00 00    	je     0x40c500
40bd94:	80 7b 0d 00          	cmpb   $0x0,0xd(%ebx)
40bd98:	0f 84 c1 02 00 00    	je     0x40c05f
40bd9e:	8b 43 08             	mov    0x8(%ebx),%eax
40bda1:	8b 78 10             	mov    0x10(%eax),%edi
40bda4:	89 7d 08             	mov    %edi,0x8(%ebp)
40bda7:	83 f9 02             	cmp    $0x2,%ecx
40bdaa:	0f 85 99 01 00 00    	jne    0x40bf49
40bdb0:	8b 33                	mov    (%ebx),%esi
40bdb2:	8b 46 0c             	mov    0xc(%esi),%eax
40bdb5:	89 75 0c             	mov    %esi,0xc(%ebp)
40bdb8:	83 f8 03             	cmp    $0x3,%eax
40bdbb:	0f 85 36 02 00 00    	jne    0x40bff7
40bdc1:	8b cf                	mov    %edi,%ecx
40bdc3:	e8 30 df ff ff       	call   0x409cf8
40bdc8:	dc 2e                	fsubrl (%esi)
40bdca:	dd 1e                	fstpl  (%esi)
40bdcc:	8b 4e 08             	mov    0x8(%esi),%ecx
40bdcf:	85 c9                	test   %ecx,%ecx
40bdd1:	0f 85 ae 55 03 00    	jne    0x441385
40bdd7:	83 7b 04 01          	cmpl   $0x1,0x4(%ebx)
40bddb:	0f 84 38 fe ff ff    	je     0x40bc19
40bde1:	80 7b 0d 00          	cmpb   $0x0,0xd(%ebx)
40bde5:	0f 84 55 fd ff ff    	je     0x40bb40
40bdeb:	8b 73 08             	mov    0x8(%ebx),%esi
40bdee:	8b 7e 10             	mov    0x10(%esi),%edi
40bdf1:	85 f6                	test   %esi,%esi
40bdf3:	74 10                	je     0x40be05
40bdf5:	8b ce                	mov    %esi,%ecx
40bdf7:	e8 24 dc ff ff       	call   0x409a20
40bdfc:	56                   	push   %esi
40bdfd:	e8 6a 52 01 00       	call   0x42106c
40be02:	83 c4 04             	add    $0x4,%esp
40be05:	89 7b 08             	mov    %edi,0x8(%ebx)
40be08:	c6 43 0d 00          	movb   $0x0,0xd(%ebx)
40be0c:	e9 2f fd ff ff       	jmp    0x40bb40
40be11:	8b 33                	mov    (%ebx),%esi
40be13:	e9 ea fc ff ff       	jmp    0x40bb02
40be18:	48                   	dec    %eax
40be19:	83 f8 0a             	cmp    $0xa,%eax
40be1c:	0f 87 ff fc ff ff    	ja     0x40bb21
40be22:	0f b6 80 dc c5 40 00 	movzbl 0x40c5dc(%eax),%eax
40be29:	ff 24 85 c8 c5 40 00 	jmp    *0x40c5c8(,%eax,4)
40be30:	8b 47 0c             	mov    0xc(%edi),%eax
40be33:	83 f8 01             	cmp    $0x1,%eax
40be36:	0f 84 7a 02 00 00    	je     0x40c0b6
40be3c:	83 f8 02             	cmp    $0x2,%eax
40be3f:	0f 84 66 55 03 00    	je     0x4413ab
40be45:	83 f9 03             	cmp    $0x3,%ecx
40be48:	74 1d                	je     0x40be67
40be4a:	8b ce                	mov    %esi,%ecx
40be4c:	e8 a7 de ff ff       	call   0x409cf8
40be51:	8b ce                	mov    %esi,%ecx
40be53:	dd 5d f8             	fstpl  -0x8(%ebp)
40be56:	e8 c5 db ff ff       	call   0x409a20
40be5b:	dd 45 f8             	fldl   -0x8(%ebp)
40be5e:	dd 1e                	fstpl  (%esi)
40be60:	c7 46 0c 03 00 00 00 	movl   $0x3,0xc(%esi)
40be67:	8b cf                	mov    %edi,%ecx
40be69:	e8 8a de ff ff       	call   0x409cf8
40be6e:	e9 aa fc ff ff       	jmp    0x40bb1d
40be73:	83 f9 01             	cmp    $0x1,%ecx
40be76:	0f 84 aa 06 00 00    	je     0x40c526
40be7c:	80 7b 0d 00          	cmpb   $0x0,0xd(%ebx)
40be80:	0f 85 ad 02 00 00    	jne    0x40c133
40be86:	8b 7b 08             	mov    0x8(%ebx),%edi
40be89:	83 f9 02             	cmp    $0x2,%ecx
40be8c:	0f 84 7b 04 00 00    	je     0x40c30d
40be92:	80 7b 0d 00          	cmpb   $0x0,0xd(%ebx)
40be96:	8b 43 08             	mov    0x8(%ebx),%eax
40be99:	0f 85 9f 02 00 00    	jne    0x40c13e
40be9f:	8b 70 10             	mov    0x10(%eax),%esi
40bea2:	8b 4e 0c             	mov    0xc(%esi),%ecx
40bea5:	8b c1                	mov    %ecx,%eax
40bea7:	83 f8 03             	cmp    $0x3,%eax
40beaa:	0f 85 d2 01 00 00    	jne    0x40c082
40beb0:	8b cf                	mov    %edi,%ecx
40beb2:	e8 41 de ff ff       	call   0x409cf8
40beb7:	dc 3e                	fdivrl (%esi)
40beb9:	dd 1e                	fstpl  (%esi)
40bebb:	8b 4e 08             	mov    0x8(%esi),%ecx
40bebe:	85 c9                	test   %ecx,%ecx
40bec0:	0f 84 66 fc ff ff    	je     0x40bb2c
40bec6:	e9 83 55 03 00       	jmp    0x44144e
40becb:	83 f8 01             	cmp    $0x1,%eax
40bece:	0f 85 54 04 00 00    	jne    0x40c328
40bed4:	8b 4f 0c             	mov    0xc(%edi),%ecx
40bed7:	3b c8                	cmp    %eax,%ecx
40bed9:	0f 84 1e 02 00 00    	je     0x40c0fd
40bedf:	83 f9 02             	cmp    $0x2,%ecx
40bee2:	0f 84 a9 52 03 00    	je     0x441191
40bee8:	83 f8 03             	cmp    $0x3,%eax
40beeb:	74 1d                	je     0x40bf0a
40beed:	8b ce                	mov    %esi,%ecx
40beef:	e8 04 de ff ff       	call   0x409cf8
40bef4:	8b ce                	mov    %esi,%ecx
40bef6:	dd 5d f8             	fstpl  -0x8(%ebp)
40bef9:	e8 22 db ff ff       	call   0x409a20
40befe:	dd 45 f8             	fldl   -0x8(%ebp)
40bf01:	dd 1e                	fstpl  (%esi)
40bf03:	c7 46 0c 03 00 00 00 	movl   $0x3,0xc(%esi)
40bf0a:	8b cf                	mov    %edi,%ecx
40bf0c:	e8 e7 dd ff ff       	call   0x409cf8
40bf11:	dc 06                	faddl  (%esi)
40bf13:	e9 0f fe ff ff       	jmp    0x40bd27
40bf18:	e8 7f dd ff ff       	call   0x409c9c
40bf1d:	8b cf                	mov    %edi,%ecx
40bf1f:	8b f0                	mov    %eax,%esi
40bf21:	e8 76 dd ff ff       	call   0x409c9c
40bf26:	3b f0                	cmp    %eax,%esi
40bf28:	0f 8d 8b fd ff ff    	jge    0x40bcb9
40bf2e:	83 7b 04 02          	cmpl   $0x2,0x4(%ebx)
40bf32:	0f 85 34 59 03 00    	jne    0x44186c
40bf38:	8b 33                	mov    (%ebx),%esi
40bf3a:	8b ce                	mov    %esi,%ecx
40bf3c:	e8 df da ff ff       	call   0x409a20
40bf41:	c6 06 01             	movb   $0x1,(%esi)
40bf44:	e9 ab fc ff ff       	jmp    0x40bbf4
40bf49:	80 7b 0d 00          	cmpb   $0x0,0xd(%ebx)
40bf4d:	8b 43 08             	mov    0x8(%ebx),%eax
40bf50:	0f 85 f0 01 00 00    	jne    0x40c146
40bf56:	8b 70 10             	mov    0x10(%eax),%esi
40bf59:	e9 54 fe ff ff       	jmp    0x40bdb2
40bf5e:	49                   	dec    %ecx
40bf5f:	83 f9 09             	cmp    $0x9,%ecx
40bf62:	0f 87 e9 05 00 00    	ja     0x40c551
40bf68:	ff 24 8d e8 c5 40 00 	jmp    *0x40c5e8(,%ecx,4)
40bf6f:	db 07                	fildl  (%edi)
40bf71:	dd 55 f8             	fstl   -0x8(%ebp)
40bf74:	e9 30 fc ff ff       	jmp    0x40bba9
40bf79:	83 f9 01             	cmp    $0x1,%ecx
40bf7c:	0f 84 ab 05 00 00    	je     0x40c52d
40bf82:	80 7b 0d 00          	cmpb   $0x0,0xd(%ebx)
40bf86:	0f 85 3e 05 00 00    	jne    0x40c4ca
40bf8c:	8b 7b 08             	mov    0x8(%ebx),%edi
40bf8f:	83 f9 02             	cmp    $0x2,%ecx
40bf92:	0f 85 e2 54 03 00    	jne    0x44147a
40bf98:	8b 33                	mov    (%ebx),%esi
40bf9a:	8b 46 0c             	mov    0xc(%esi),%eax
40bf9d:	83 f8 04             	cmp    $0x4,%eax
40bfa0:	0f 85 2f 05 00 00    	jne    0x40c4d5
40bfa6:	8b cf                	mov    %edi,%ecx
40bfa8:	e8 ea d9 ff ff       	call   0x409997
40bfad:	8b 76 08             	mov    0x8(%esi),%esi
40bfb0:	8b ce                	mov    %esi,%ecx
40bfb2:	8b 47 08             	mov    0x8(%edi),%eax
40bfb5:	3b f0                	cmp    %eax,%esi
40bfb7:	0f 84 e8 54 03 00    	je     0x4414a5
40bfbd:	6a ff                	push   $0xffffffff
40bfbf:	6a 00                	push   $0x0
40bfc1:	50                   	push   %eax
40bfc2:	e8 ea bb ff ff       	call   0x407bb1
40bfc7:	83 7b 04 01          	cmpl   $0x1,0x4(%ebx)
40bfcb:	0f 84 48 fc ff ff    	je     0x40bc19
40bfd1:	80 7b 0d 00          	cmpb   $0x0,0xd(%ebx)
40bfd5:	0f 84 30 fc ff ff    	je     0x40bc0b
40bfdb:	8b 4b 08             	mov    0x8(%ebx),%ecx
40bfde:	8b 71 10             	mov    0x10(%ecx),%esi
40bfe1:	85 c9                	test   %ecx,%ecx
40bfe3:	74 06                	je     0x40bfeb
40bfe5:	51                   	push   %ecx
40bfe6:	e8 fb 3b 01 00       	call   0x41fbe6
40bfeb:	89 73 08             	mov    %esi,0x8(%ebx)
40bfee:	c6 43 0d 00          	movb   $0x0,0xd(%ebx)
40bff2:	e9 14 fc ff ff       	jmp    0x40bc0b
40bff7:	83 f8 01             	cmp    $0x1,%eax
40bffa:	0f 85 df 02 00 00    	jne    0x40c2df
40c000:	8b 4f 0c             	mov    0xc(%edi),%ecx
40c003:	3b c8                	cmp    %eax,%ecx
40c005:	0f 84 b8 03 00 00    	je     0x40c3c3
40c00b:	83 f9 02             	cmp    $0x2,%ecx
40c00e:	0f 84 58 53 03 00    	je     0x44136c
40c014:	83 f8 03             	cmp    $0x3,%eax
40c017:	0f 84 a4 fd ff ff    	je     0x40bdc1
40c01d:	8b ce                	mov    %esi,%ecx
40c01f:	e8 d4 dc ff ff       	call   0x409cf8
40c024:	8b ce                	mov    %esi,%ecx
40c026:	dd 5d f8             	fstpl  -0x8(%ebp)
40c029:	e8 f2 d9 ff ff       	call   0x409a20
40c02e:	dd 45 f8             	fldl   -0x8(%ebp)
40c031:	dd 1e                	fstpl  (%esi)
40c033:	c7 46 0c 03 00 00 00 	movl   $0x3,0xc(%esi)
40c03a:	e9 82 fd ff ff       	jmp    0x40bdc1
40c03f:	48                   	dec    %eax
40c040:	83 f8 09             	cmp    $0x9,%eax
40c043:	0f 87 d6 04 00 00    	ja     0x40c51f
40c049:	ff 24 85 10 c6 40 00 	jmp    *0x40c610(,%eax,4)
40c050:	db 07                	fildl  (%edi)
40c052:	e9 c6 fa ff ff       	jmp    0x40bb1d
40c057:	8b 7b 08             	mov    0x8(%ebx),%edi
40c05a:	e9 9b fc ff ff       	jmp    0x40bcfa
40c05f:	8b 7b 08             	mov    0x8(%ebx),%edi
40c062:	e9 3d fd ff ff       	jmp    0x40bda4
40c067:	83 7b 04 02          	cmpl   $0x2,0x4(%ebx)
40c06b:	0f 85 df 55 03 00    	jne    0x441650
40c071:	8b 33                	mov    (%ebx),%esi
40c073:	8b ce                	mov    %esi,%ecx
40c075:	e8 a6 d9 ff ff       	call   0x409a20