40b969:	5e                   	pop    %esi
40b96a:	5b                   	pop    %ebx
40b96b:	5d                   	pop    %ebp
40b96c:	c2 04 00             	ret    $0x4
40b96f:	8d b7 d0 01 00 00    	lea    0x1d0(%edi),%esi
40b975:	8b ce                	mov    %esi,%ecx
40b977:	e8 1b e0 ff ff       	call   0x409997
40b97c:	ff 75 08             	push   0x8(%ebp)
40b97f:	0f b6 87 dc 02 00 00 	movzbl 0x2dc(%edi),%eax
40b986:	8d 8f f0 01 00 00    	lea    0x1f0(%edi),%ecx
40b98c:	50                   	push   %eax
40b98d:	0f b6 87 dd 02 00 00 	movzbl 0x2dd(%edi),%eax
40b994:	50                   	push   %eax
40b995:	ff b7 d4 02 00 00    	push   0x2d4(%edi)
40b99b:	8d 87 e0 01 00 00    	lea    0x1e0(%edi),%eax
40b9a1:	53                   	push   %ebx
40b9a2:	50                   	push   %eax
40b9a3:	ff 76 08             	push   0x8(%esi)
40b9a6:	e8 dd a5 00 00       	call   0x415f88
40b9ab:	eb bb                	jmp    0x40b968
40b9ad:	55                   	push   %ebp
40b9ae:	8b ec                	mov    %esp,%ebp
40b9b0:	56                   	push   %esi
40b9b1:	8b 75 08             	mov    0x8(%ebp),%esi
40b9b4:	57                   	push   %edi
40b9b5:	8b f9                	mov    %ecx,%edi
40b9b7:	8b 46 04             	mov    0x4(%esi),%eax
40b9ba:	8d 8f d0 01 00 00    	lea    0x1d0(%edi),%ecx
40b9c0:	ff 30                	push   (%eax)
40b9c2:	e8 d5 e4 ff ff       	call   0x409e9c
40b9c7:	83 7e 08 02          	cmpl   $0x2,0x8(%esi)
40b9cb:	0f 82 b0 56 03 00    	jb     0x441081
40b9d1:	8b 46 04             	mov    0x4(%esi),%eax
40b9d4:	8b 70 04             	mov    0x4(%eax),%esi
40b9d7:	8b ce                	mov    %esi,%ecx
40b9d9:	e8 b9 df ff ff       	call   0x409997
40b9de:	ff 76 08             	push   0x8(%esi)
40b9e1:	8d 8f e0 01 00 00    	lea    0x1e0(%edi),%ecx
40b9e7:	e8 bb c7 ff ff       	call   0x4081a7
40b9ec:	5f                   	pop    %edi
40b9ed:	5e                   	pop    %esi
40b9ee:	5d                   	pop    %ebp
40b9ef:	c2 04 00             	ret    $0x4
40b9f2:	55                   	push   %ebp
40b9f3:	8b ec                	mov    %esp,%ebp
40b9f5:	8b 45 08             	mov    0x8(%ebp),%eax
40b9f8:	33 c9                	xor    %ecx,%ecx
40b9fa:	8b 55 0c             	mov    0xc(%ebp),%edx
40b9fd:	53                   	push   %ebx
40b9fe:	56                   	push   %esi
40b9ff:	8b 58 04             	mov    0x4(%eax),%ebx
40ba02:	57                   	push   %edi
40ba03:	8b 3a                	mov    (%edx),%edi
40ba05:	8b 34 bb             	mov    (%ebx,%edi,4),%esi
40ba08:	0f bf 46 08          	movswl 0x8(%esi),%eax
40ba0c:	83 f8 47             	cmp    $0x47,%eax
40ba0f:	74 31                	je     0x40ba42
40ba11:	83 f8 48             	cmp    $0x48,%eax
40ba14:	74 2f                	je     0x40ba45
40ba16:	83 f8 7f             	cmp    $0x7f,%eax
40ba19:	74 36                	je     0x40ba51
40ba1b:	85 c9                	test   %ecx,%ecx
40ba1d:	75 09                	jne    0x40ba28
40ba1f:	85 c0                	test   %eax,%eax
40ba21:	74 0c                	je     0x40ba2f
40ba23:	83 f8 40             	cmp    $0x40,%eax
40ba26:	74 11                	je     0x40ba39
40ba28:	8d 47 01             	lea    0x1(%edi),%eax
40ba2b:	89 02                	mov    %eax,(%edx)
40ba2d:	eb d4                	jmp    0x40ba03
40ba2f:	83 3e 03             	cmpl   $0x3,(%esi)
40ba32:	74 f4                	je     0x40ba28
40ba34:	83 3e 26             	cmpl   $0x26,(%esi)
40ba37:	7f 11                	jg     0x40ba4a
40ba39:	33 c0                	xor    %eax,%eax
40ba3b:	5f                   	pop    %edi
40ba3c:	5e                   	pop    %esi
40ba3d:	5b                   	pop    %ebx
40ba3e:	5d                   	pop    %ebp
40ba3f:	c2 08 00             	ret    $0x8
40ba42:	41                   	inc    %ecx
40ba43:	eb d6                	jmp    0x40ba1b
40ba45:	49                   	dec    %ecx
40ba46:	78 f1                	js     0x40ba39
40ba48:	eb cc                	jmp    0x40ba16
40ba4a:	83 3e 2a             	cmpl   $0x2a,(%esi)
40ba4d:	7f ea                	jg     0x40ba39
40ba4f:	eb d7                	jmp    0x40ba28
40ba51:	f7 d9                	neg    %ecx
40ba53:	1b c9                	sbb    %ecx,%ecx
40ba55:	8b c1                	mov    %ecx,%eax
40ba57:	eb e2                	jmp    0x40ba3b
40ba59:	cc                   	int3
40ba5a:	cc                   	int3
40ba5b:	cc                   	int3
40ba5c:	cc                   	int3
40ba5d:	cc                   	int3
40ba5e:	cc                   	int3
40ba5f:	cc                   	int3
40ba60:	55                   	push   %ebp
40ba61:	8b ec                	mov    %esp,%ebp
40ba63:	83 ec 34             	sub    $0x34,%esp
40ba66:	53                   	push   %ebx
40ba67:	56                   	push   %esi
40ba68:	57                   	push   %edi
40ba69:	8b 7d 08             	mov    0x8(%ebp),%edi
40ba6c:	8a 4f 09             	mov    0x9(%edi),%cl
40ba6f:	8b 57 04             	mov    0x4(%edi),%edx
40ba72:	84 c9                	test   %cl,%cl
40ba74:	0f 85 ad 01 00 00    	jne    0x40bc27
40ba7a:	8b c2                	mov    %edx,%eax
40ba7c:	8b 00                	mov    (%eax),%eax
40ba7e:	89 45 08             	mov    %eax,0x8(%ebp)
40ba81:	84 c9                	test   %cl,%cl
40ba83:	0f 85 a6 01 00 00    	jne    0x40bc2f
40ba89:	80 7f 08 00          	cmpb   $0x0,0x8(%edi)
40ba8d:	0f 84 03 56 03 00    	je     0x441096
40ba93:	c6 47 09 01          	movb   $0x1,0x9(%edi)
40ba97:	ff 0f                	decl   (%edi)
40ba99:	83 f8 11             	cmp    $0x11,%eax
40ba9c:	0f 84 30 07 00 00    	je     0x40c1d2
40baa2:	83 f8 0a             	cmp    $0xa,%eax
40baa5:	0f 84 27 07 00 00    	je     0x40c1d2
40baab:	83 f8 10             	cmp    $0x10,%eax
40baae:	0f 84 1e 07 00 00    	je     0x40c1d2
40bab4:	8b 5d 0c             	mov    0xc(%ebp),%ebx
40bab7:	8b 4b 04             	mov    0x4(%ebx),%ecx
40baba:	83 f9 02             	cmp    $0x2,%ecx
40babd:	0f 8c bd 0a 00 00    	jl     0x40c580
40bac3:	83 f8 0f             	cmp    $0xf,%eax
40bac6:	0f 87 50 01 00 00    	ja     0x40bc1c
40bacc:	ff 24 85 88 c5 40 00 	jmp    *0x40c588(,%eax,4)
40bad3:	83 f9 01             	cmp    $0x1,%ecx
40bad6:	0f 84 2b 0a 00 00    	je     0x40c507
40badc:	80 7b 0d 00          	cmpb   $0x0,0xd(%ebx)
40bae0:	0f 85 68 06 00 00    	jne    0x40c14e
40bae6:	8b 7b 08             	mov    0x8(%ebx),%edi
40bae9:	83 f9 02             	cmp    $0x2,%ecx
40baec:	0f 84 1f 03 00 00    	je     0x40be11
40baf2:	80 7b 0d 00          	cmpb   $0x0,0xd(%ebx)
40baf6:	8b 43 08             	mov    0x8(%ebx),%eax
40baf9:	0f 85 b7 06 00 00    	jne    0x40c1b6
40baff:	8b 70 10             	mov    0x10(%eax),%esi
40bb02:	8b 4e 0c             	mov    0xc(%esi),%ecx
40bb05:	8b c1                	mov    %ecx,%eax
40bb07:	83 f8 03             	cmp    $0x3,%eax
40bb0a:	0f 85 08 03 00 00    	jne    0x40be18
40bb10:	8b 47 0c             	mov    0xc(%edi),%eax
40bb13:	3b c1                	cmp    %ecx,%eax
40bb15:	0f 85 24 05 00 00    	jne    0x40c03f
40bb1b:	dd 07                	fldl   (%edi)
40bb1d:	dc 0e                	fmull  (%esi)
40bb1f:	dd 1e                	fstpl  (%esi)
40bb21:	8b 4e 08             	mov    0x8(%esi),%ecx
40bb24:	85 c9                	test   %ecx,%ecx
40bb26:	0f 85 22 59 03 00    	jne    0x44144e
40bb2c:	83 7b 04 01          	cmpl   $0x1,0x4(%ebx)
40bb30:	0f 84 e3 00 00 00    	je     0x40bc19
40bb36:	80 7b 0d 00          	cmpb   $0x0,0xd(%ebx)
40bb3a:	0f 85 ab 02 00 00    	jne    0x40bdeb
40bb40:	80 7b 0c 00          	cmpb   $0x0,0xc(%ebx)
40bb44:	0f 84 a0 57 03 00    	je     0x4412ea
40bb4a:	ff 4b 04             	decl   0x4(%ebx)
40bb4d:	33 c0                	xor    %eax,%eax
40bb4f:	c6 43 0d 01          	movb   $0x1,0xd(%ebx)
40bb53:	5f                   	pop    %edi
40bb54:	5e                   	pop    %esi
40bb55:	5b                   	pop    %ebx
40bb56:	8b e5                	mov    %ebp,%esp
40bb58:	5d                   	pop    %ebp
40bb59:	c2 08 00             	ret    $0x8
40bb5c:	83 f9 01             	cmp    $0x1,%ecx
40bb5f:	0f 84 db 09 00 00    	je     0x40c540
40bb65:	80 7b 0d 00          	cmpb   $0x0,0xd(%ebx)
40bb69:	0f 85 9b 59 03 00    	jne    0x44150a
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)