41cb34:	c9                   	leave
41cb35:	c2 10 00             	ret    $0x10
41cb38:	83 e8 0c             	sub    $0xc,%eax
41cb3b:	74 22                	je     0x41cb5f
41cb3d:	83 e8 01             	sub    $0x1,%eax
41cb40:	74 22                	je     0x41cb64
41cb42:	83 e8 01             	sub    $0x1,%eax
41cb45:	74 1d                	je     0x41cb64
41cb47:	48                   	dec    %eax
41cb48:	83 e8 01             	sub    $0x1,%eax
41cb4b:	0f 84 fe 01 00 00    	je     0x41cd4f
41cb51:	83 e8 04             	sub    $0x4,%eax
41cb54:	74 0e                	je     0x41cb64
41cb56:	83 e8 01             	sub    $0x1,%eax
41cb59:	75 d1                	jne    0x41cb2c
41cb5b:	33 db                	xor    %ebx,%ebx
41cb5d:	eb 0c                	jmp    0x41cb6b
41cb5f:	33 db                	xor    %ebx,%ebx
41cb61:	89 5d 14             	mov    %ebx,0x14(%ebp)
41cb64:	85 db                	test   %ebx,%ebx
41cb66:	74 c4                	je     0x41cb2c
41cb68:	8b 5b 0c             	mov    0xc(%ebx),%ebx
41cb6b:	89 5d 14             	mov    %ebx,0x14(%ebp)
41cb6e:	eb 84                	jmp    0x41caf4
41cb70:	83 7b 14 00          	cmpl   $0x0,0x14(%ebx)
41cb74:	0f b7 0e             	movzwl (%esi),%ecx
41cb77:	8b c1                	mov    %ecx,%eax
41cb79:	89 45 f0             	mov    %eax,-0x10(%ebp)
41cb7c:	89 45 f8             	mov    %eax,-0x8(%ebp)
41cb7f:	8d 46 02             	lea    0x2(%esi),%eax
41cb82:	89 45 e8             	mov    %eax,-0x18(%ebp)
41cb85:	74 1f                	je     0x41cba6
41cb87:	ff 73 14             	push   0x14(%ebx)
41cb8a:	50                   	push   %eax
41cb8b:	8d 45 e4             	lea    -0x1c(%ebp),%eax
41cb8e:	56                   	push   %esi
41cb8f:	50                   	push   %eax
41cb90:	e8 02 78 fe ff       	call   0x404397
41cb95:	83 c4 10             	add    $0x10,%esp
41cb98:	39 30                	cmp    %esi,(%eax)
41cb9a:	0f 85 e9 00 00 00    	jne    0x41cc89
41cba0:	8b 55 fc             	mov    -0x4(%ebp),%edx
41cba3:	0f b7 0e             	movzwl (%esi),%ecx
41cba6:	8b 43 20             	mov    0x20(%ebx),%eax
41cba9:	89 45 f4             	mov    %eax,-0xc(%ebp)
41cbac:	85 c0                	test   %eax,%eax
41cbae:	74 38                	je     0x41cbe8
41cbb0:	f7 42 5c 00 08 00 00 	testl  $0x800,0x5c(%edx)
41cbb7:	74 16                	je     0x41cbcf
41cbb9:	ff 75 f8             	push   -0x8(%ebp)
41cbbc:	8b 4a 70             	mov    0x70(%edx),%ecx
41cbbf:	e8 81 67 00 00       	call   0x423345
41cbc4:	8b 7d 10             	mov    0x10(%ebp),%edi
41cbc7:	8b 75 0c             	mov    0xc(%ebp),%esi
41cbca:	0f b7 c0             	movzwl %ax,%eax
41cbcd:	eb 03                	jmp    0x41cbd2
41cbcf:	0f b7 c1             	movzwl %cx,%eax
41cbd2:	ff 75 f4             	push   -0xc(%ebp)
41cbd5:	0f b7 c0             	movzwl %ax,%eax
41cbd8:	50                   	push   %eax
41cbd9:	e8 81 79 fe ff       	call   0x40455f
41cbde:	59                   	pop    %ecx
41cbdf:	59                   	pop    %ecx
41cbe0:	84 c0                	test   %al,%al
41cbe2:	0f 85 a1 00 00 00    	jne    0x41cc89
41cbe8:	8b 4d f0             	mov    -0x10(%ebp),%ecx
41cbeb:	b8 00 01 00 00       	mov    $0x100,%eax
41cbf0:	66 3b c8             	cmp    %ax,%cx
41cbf3:	73 22                	jae    0x41cc17
41cbf5:	83 7b 18 00          	cmpl   $0x0,0x18(%ebx)
41cbf9:	0f 84 8f 00 00 00    	je     0x41cc8e
41cbff:	0f b7 d1             	movzwl %cx,%edx
41cc02:	33 c0                	xor    %eax,%eax
41cc04:	8b ca                	mov    %edx,%ecx
41cc06:	40                   	inc    %eax
41cc07:	83 e1 07             	and    $0x7,%ecx
41cc0a:	c1 ea 03             	shr    $0x3,%edx
41cc0d:	d3 e0                	shl    %cl,%eax
41cc0f:	8b 4b 18             	mov    0x18(%ebx),%ecx
41cc12:	84 04 0a             	test   %al,(%edx,%ecx,1)
41cc15:	eb 70                	jmp    0x41cc87
41cc17:	8b 43 1c             	mov    0x1c(%ebx),%eax
41cc1a:	85 c0                	test   %eax,%eax
41cc1c:	74 25                	je     0x41cc43
41cc1e:	8b 48 08             	mov    0x8(%eax),%ecx
41cc21:	8b 40 04             	mov    0x4(%eax),%eax
41cc24:	c6 45 ec 00          	movb   $0x0,-0x14(%ebp)
41cc28:	ff 75 ec             	push   -0x14(%ebp)
41cc2b:	8d 1c 41             	lea    (%ecx,%eax,2),%ebx
41cc2e:	8d 45 f8             	lea    -0x8(%ebp),%eax
41cc31:	50                   	push   %eax
41cc32:	53                   	push   %ebx
41cc33:	51                   	push   %ecx
41cc34:	e8 32 6f fe ff       	call   0x403b6b
41cc39:	83 c4 10             	add    $0x10,%esp
41cc3c:	3b c3                	cmp    %ebx,%eax
41cc3e:	8b 5d 14             	mov    0x14(%ebp),%ebx
41cc41:	75 46                	jne    0x41cc89
41cc43:	0f b7 43 24          	movzwl 0x24(%ebx),%eax
41cc47:	66 85 c0             	test   %ax,%ax
41cc4a:	74 19                	je     0x41cc65
41cc4c:	8b 4d fc             	mov    -0x4(%ebp),%ecx
41cc4f:	50                   	push   %eax
41cc50:	ff 75 f8             	push   -0x8(%ebp)
41cc53:	8b 49 70             	mov    0x70(%ecx),%ecx
41cc56:	e8 10 54 00 00       	call   0x42206b
41cc5b:	8b 7d 10             	mov    0x10(%ebp),%edi
41cc5e:	8b 75 0c             	mov    0xc(%ebp),%esi
41cc61:	84 c0                	test   %al,%al
41cc63:	75 24                	jne    0x41cc89
41cc65:	83 7b 28 00          	cmpl   $0x0,0x28(%ebx)
41cc69:	74 23                	je     0x41cc8e
41cc6b:	8b 45 fc             	mov    -0x4(%ebp),%eax
41cc6e:	ff 70 70             	push   0x70(%eax)
41cc71:	ff 73 28             	push   0x28(%ebx)
41cc74:	ff 75 f8             	push   -0x8(%ebp)
41cc77:	e8 85 77 fe ff       	call   0x404401
41cc7c:	8b 7d 10             	mov    0x10(%ebp),%edi
41cc7f:	83 c4 0c             	add    $0xc,%esp
41cc82:	8b 75 0c             	mov    0xc(%ebp),%esi
41cc85:	84 c0                	test   %al,%al
41cc87:	74 05                	je     0x41cc8e
41cc89:	33 c9                	xor    %ecx,%ecx
41cc8b:	41                   	inc    %ecx
41cc8c:	eb 02                	jmp    0x41cc90
41cc8e:	33 c9                	xor    %ecx,%ecx
41cc90:	8b 43 08             	mov    0x8(%ebx),%eax
41cc93:	83 e0 01             	and    $0x1,%eax
41cc96:	3b c8                	cmp    %eax,%ecx
41cc98:	0f 85 8e fe ff ff    	jne    0x41cb2c
41cc9e:	8b 75 e8             	mov    -0x18(%ebp),%esi
41cca1:	8b 55 fc             	mov    -0x4(%ebp),%edx
41cca4:	89 75 0c             	mov    %esi,0xc(%ebp)
41cca7:	3b f7                	cmp    %edi,%esi
41cca9:	0f 85 c1 fe ff ff    	jne    0x41cb70
41ccaf:	e9 78 fe ff ff       	jmp    0x41cb2c
41ccb4:	ff 72 5c             	push   0x5c(%edx)
41ccb7:	8b 4b 1c             	mov    0x1c(%ebx),%ecx
41ccba:	8d 7e 02             	lea    0x2(%esi),%edi
41ccbd:	ff 72 70             	push   0x70(%edx)
41ccc0:	8d 41 02             	lea    0x2(%ecx),%eax
41ccc3:	50                   	push   %eax
41ccc4:	51                   	push   %ecx
41ccc5:	57                   	push   %edi
41ccc6:	8d 45 14             	lea    0x14(%ebp),%eax
41ccc9:	56                   	push   %esi
41ccca:	50                   	push   %eax
41cccb:	e8 e9 62 fe ff       	call   0x402fb9
41ccd0:	8b 75 0c             	mov    0xc(%ebp),%esi
41ccd3:	83 c4 1c             	add    $0x1c,%esp
41ccd6:	39 30                	cmp    %esi,(%eax)
41ccd8:	0f 85 4e fe ff ff    	jne    0x41cb2c
41ccde:	8b 55 fc             	mov    -0x4(%ebp),%edx
41cce1:	8b f7                	mov    %edi,%esi
41cce3:	89 75 0c             	mov    %esi,0xc(%ebp)
41cce6:	3b 75 10             	cmp    0x10(%ebp),%esi
41cce9:	75 c9                	jne    0x41ccb4
41cceb:	e9 3c fe ff ff       	jmp    0x41cb2c
41ccf0:	c6 45 14 00          	movb   $0x0,0x14(%ebp)
41ccf4:	8d 45 e8             	lea    -0x18(%ebp),%eax
41ccf7:	ff 75 14             	push   0x14(%ebp)
41ccfa:	c7 45 e8 0a 00 00 00 	movl   $0xa,-0x18(%ebp)
41cd01:	50                   	push   %eax
41cd02:	57                   	push   %edi
41cd03:	56                   	push   %esi
41cd04:	e8 84 6e fe ff       	call   0x403b8d
41cd09:	8b 4d 08             	mov    0x8(%ebp),%ecx
41cd0c:	83 c4 10             	add    $0x10,%esp
41cd0f:	89 01                	mov    %eax,(%ecx)
41cd11:	8b c1                	mov    %ecx,%eax
41cd13:	e9 19 fe ff ff       	jmp    0x41cb31
41cd18:	6a 0a                	push   $0xa
41cd1a:	58                   	pop    %eax
41cd1b:	66 39 46 fe          	cmp    %ax,-0x2(%esi)
41cd1f:	0f 84 07 fe ff ff    	je     0x41cb2c
41cd25:	89 45 e8             	mov    %eax,-0x18(%ebp)
41cd28:	8d 45 e8             	lea    -0x18(%ebp),%eax
41cd2b:	c6 45 14 00          	movb   $0x0,0x14(%ebp)
41cd2f:	ff 75 14             	push   0x14(%ebp)
41cd32:	50                   	push   %eax
41cd33:	57                   	push   %edi
41cd34:	56                   	push   %esi
41cd35:	e8 53 6e fe ff       	call   0x403b8d
41cd3a:	8b f0                	mov    %eax,%esi
41cd3c:	83 c4 10             	add    $0x10,%esp
41cd3f:	3b f7                	cmp    %edi,%esi
41cd41:	0f 84 e5 fd ff ff    	je     0x41cb2c
41cd47:	83 c6 02             	add    $0x2,%esi
41cd4a:	e9 dd fd ff ff       	jmp    0x41cb2c
41cd4f:	85 db                	test   %ebx,%ebx
41cd51:	74 22                	je     0x41cd75
41cd53:	ff 73 0c             	push   0xc(%ebx)
41cd56:	8d 45 14             	lea    0x14(%ebp),%eax
41cd59:	8b ca                	mov    %edx,%ecx
41cd5b:	57                   	push   %edi
41cd5c:	56                   	push   %esi
41cd5d:	50                   	push   %eax
41cd5e:	e8 6c fd ff ff       	call   0x41cacf
41cd63:	8b 75 0c             	mov    0xc(%ebp),%esi
41cd66:	8b 55 fc             	mov    -0x4(%ebp),%edx
41cd69:	8b 38                	mov    (%eax),%edi
41cd6b:	89 7d 10             	mov    %edi,0x10(%ebp)
41cd6e:	8b 5b 18             	mov    0x18(%ebx),%ebx
41cd71:	3b f7                	cmp    %edi,%esi
41cd73:	75 da                	jne    0x41cd4f
41cd75:	8b 45 08             	mov    0x8(%ebp),%eax
41cd78:	89 38                	mov    %edi,(%eax)
41cd7a:	e9 b2 fd ff ff       	jmp    0x41cb31
41cd7f:	55                   	push   %ebp
41cd80:	8b ec                	mov    %esp,%ebp
41cd82:	51                   	push   %ecx
41cd83:	51                   	push   %ecx
41cd84:	56                   	push   %esi
41cd85:	57                   	push   %edi
41cd86:	e8 a4 00 03 00       	call   0x44ce2f
41cd8b:	ff 75 0c             	push   0xc(%ebp)
41cd8e:	8b f8                	mov    %eax,%edi
41cd90:	ff 75 08             	push   0x8(%ebp)
41cd93:	8b 37                	mov    (%edi),%esi
41cd95:	83 27 00             	andl   $0x0,(%edi)
41cd98:	e8 86 69 03 00       	call   0x453723
41cd9d:	8b 45 14             	mov    0x14(%ebp),%eax
41cda0:	83 c4 08             	add    $0x8,%esp
41cda3:	83 7d 10 00          	cmpl   $0x0,0x10(%ebp)
41cda7:	8b 0f                	mov    (%edi),%ecx
41cda9:	dd 55 f8             	fstl   -0x8(%ebp)
41cdac:	89 08                	mov    %ecx,(%eax)
41cdae:	89 37                	mov    %esi,(%edi)
41cdb0:	5f                   	pop    %edi
41cdb1:	5e                   	pop    %esi
41cdb2:	74 2c                	je     0x41cde0
41cdb4:	66 0f 6e 45 10       	movd   0x10(%ebp),%xmm0
41cdb9:	83 ec 10             	sub    $0x10,%esp
41cdbc:	f3 0f e6 c0          	cvtdq2pd %xmm0,%xmm0
41cdc0:	dd d8                	fstp   %st(0)
41cdc2:	f2 0f 11 44 24 08    	movsd  %xmm0,0x8(%esp)
41cdc8:	f2 0f 10 05 00 69 49 	movsd  0x496900,%xmm0
41cdcf:	00
41cdd0:	f2 0f 11 04 24       	movsd  %xmm0,(%esp)
41cdd5:	e8 96 6d 03 00       	call   0x453b70
41cdda:	dc 4d f8             	fmull  -0x8(%ebp)
41cddd:	83 c4 10             	add    $0x10,%esp
41cde0:	c9                   	leave
41cde1:	c3                   	ret
41cde2:	55                   	push   %ebp
41cde3:	8b ec                	mov    %esp,%ebp
41cde5:	51                   	push   %ecx
41cde6:	56                   	push   %esi
41cde7:	57                   	push   %edi
41cde8:	e8 42 00 03 00       	call   0x44ce2f
41cded:	ff 75 0c             	push   0xc(%ebp)
41cdf0:	8b f8                	mov    %eax,%edi
41cdf2:	ff 75 08             	push   0x8(%ebp)
41cdf5:	8b 37                	mov    (%edi),%esi
41cdf7:	83 27 00             	andl   $0x0,(%edi)
41cdfa:	e8 3b 69 03 00       	call   0x45373a
41cdff:	83 7d 10 00          	cmpl   $0x0,0x10(%ebp)
41ce03:	8b 45 14             	mov    0x14(%ebp),%eax
41ce06:	59                   	pop    %ecx
41ce07:	59                   	pop    %ecx
41ce08:	8b 0f                	mov    (%edi),%ecx
41ce0a:	89 08                	mov    %ecx,(%eax)
41ce0c:	89 37                	mov    %esi,(%edi)
41ce0e:	5f                   	pop    %edi
41ce0f:	d9 5d fc             	fstps  -0x4(%ebp)
41ce12:	5e                   	pop    %esi
41ce13:	74 35                	je     0x41ce4a
41ce15:	66 0f 6e 45 10       	movd   0x10(%ebp),%xmm0
41ce1a:	83 ec 10             	sub    $0x10,%esp
41ce1d:	0f 5b c0             	cvtdq2ps %xmm0,%xmm0
41ce20:	0f 5a c0             	cvtps2pd %xmm0,%xmm0
41ce23:	f2 0f 11 44 24 08    	movsd  %xmm0,0x8(%esp)
41ce29:	f2 0f 10 05 00 69 49 	movsd  0x496900,%xmm0
41ce30:	00
41ce31:	f2 0f 11 04 24       	movsd  %xmm0,(%esp)
41ce36:	e8 35 6d 03 00       	call   0x453b70
41ce3b:	d9 5d 10             	fstps  0x10(%ebp)
41ce3e:	d9 45 10             	flds   0x10(%ebp)
41ce41:	83 c4 10             	add    $0x10,%esp
41ce44:	d8 4d fc             	fmuls  -0x4(%ebp)
41ce47:	d9 5d fc             	fstps  -0x4(%ebp)
41ce4a:	d9 45 fc             	flds   -0x4(%ebp)
41ce4d:	c9                   	leave
41ce4e:	c3                   	ret
41ce4f:	b8 50 8d 4b 00       	mov    $0x4b8d50,%eax
41ce54:	c3                   	ret
41ce55:	56                   	push   %esi
41ce56:	8b f1                	mov    %ecx,%esi
41ce58:	8b 4e 24             	mov    0x24(%esi),%ecx
41ce5b:	85 c9                	test   %ecx,%ecx
41ce5d:	74 12                	je     0x41ce71
41ce5f:	8b 11                	mov    (%ecx),%edx
41ce61:	3b ce                	cmp    %esi,%ecx
41ce63:	0f 95 c0             	setne  %al
41ce66:	0f b6 c0             	movzbl %al,%eax
41ce69:	50                   	push   %eax
41ce6a:	ff 52 10             	call   *0x10(%edx)
41ce6d:	83 66 24 00          	andl   $0x0,0x24(%esi)
41ce71:	5e                   	pop    %esi
41ce72:	c3                   	ret
41ce73:	55                   	push   %ebp
41ce74:	8b ec                	mov    %esp,%ebp
41ce76:	56                   	push   %esi
41ce77:	8b 75 08             	mov    0x8(%ebp),%esi
41ce7a:	eb 0c                	jmp    0x41ce88
41ce7c:	8b ce                	mov    %esi,%ecx
41ce7e:	8b 76 10             	mov    0x10(%esi),%esi
41ce81:	6a 01                	push   $0x1
41ce83:	e8 fa 36 ff ff       	call   0x410582
41ce88:	85 f6                	test   %esi,%esi
41ce8a:	75 f0                	jne    0x41ce7c
41ce8c:	5e                   	pop    %esi
41ce8d:	5d                   	pop    %ebp
41ce8e:	c2 04 00             	ret    $0x4
41ce91:	55                   	push   %ebp
41ce92:	8b ec                	mov    %esp,%ebp
41ce94:	56                   	push   %esi
41ce95:	8b 75 08             	mov    0x8(%ebp),%esi
41ce98:	eb 0c                	jmp    0x41cea6
41ce9a:	8b ce                	mov    %esi,%ecx
41ce9c:	8b 76 10             	mov    0x10(%esi),%esi
41ce9f:	6a 01                	push   $0x1
41cea1:	e8 31 37 ff ff       	call   0x4105d7
41cea6:	85 f6                	test   %esi,%esi
41cea8:	75 f0                	jne    0x41ce9a
41ceaa:	5e                   	pop    %esi
41ceab:	5d                   	pop    %ebp
41ceac:	c2 04 00             	ret    $0x4
41ceaf:	56                   	push   %esi
41ceb0:	8b f1                	mov    %ecx,%esi
41ceb2:	8b 0e                	mov    (%esi),%ecx
41ceb4:	85 c9                	test   %ecx,%ecx
41ceb6:	74 15                	je     0x41cecd
41ceb8:	83 c8 ff             	or     $0xffffffff,%eax
41cebb:	f0 0f c1 41 20       	lock xadd %eax,0x20(%ecx)
41cec0:	75 0b                	jne    0x41cecd
41cec2:	6a 00                	push   $0x0
41cec4:	ff 36                	push   (%esi)
41cec6:	e8 1c b0 ff ff       	call   0x417ee7
41cecb:	59                   	pop    %ecx
41cecc:	59                   	pop    %ecx
41cecd:	83 26 00             	andl   $0x0,(%esi)
41ced0:	5e                   	pop    %esi
41ced1:	c3                   	ret
41ced2:	56                   	push   %esi
41ced3:	8b f1                	mov    %ecx,%esi
41ced5:	8b 0e                	mov    (%esi),%ecx
41ced7:	85 c9                	test   %ecx,%ecx
41ced9:	74 15                	je     0x41cef0
41cedb:	83 c8 ff             	or     $0xffffffff,%eax