40c94f:	8b 0d 44 d6 46 00    	mov    0x46d644,%ecx
40c955:	b2 01                	mov    $0x1,%dl
40c957:	a1 8c 7f 40 00       	mov    0x407f8c,%eax
40c95c:	e8 97 f9 ff ff       	call   0x40c2f8
40c961:	a3 20 09 47 00       	mov    %eax,0x470920
40c966:	a1 f0 d3 46 00       	mov    0x46d3f0,%eax
40c96b:	c7 00 bc c4 40 00    	movl   $0x40c4bc,(%eax)
40c971:	a1 0c d5 46 00       	mov    0x46d50c,%eax
40c976:	c7 00 28 c9 40 00    	movl   $0x40c928,(%eax)
40c97c:	a1 68 d4 46 00       	mov    0x46d468,%eax
40c981:	8b 15 ec 79 40 00    	mov    0x4079ec,%edx
40c987:	89 10                	mov    %edx,(%eax)
40c989:	a1 ec d4 46 00       	mov    0x46d4ec,%eax
40c98e:	c7 00 7c c6 40 00    	movl   $0x40c67c,(%eax)
40c994:	a1 14 d5 46 00       	mov    0x46d514,%eax
40c999:	c7 00 60 c8 40 00    	movl   $0x40c860,(%eax)
40c99f:	b8 c8 c5 40 00       	mov    $0x40c5c8,%eax
40c9a4:	8b 15 6c d6 46 00    	mov    0x46d66c,%edx
40c9aa:	89 02                	mov    %eax,(%edx)
40c9ac:	b8 e4 c5 40 00       	mov    $0x40c5e4,%eax
40c9b1:	8b 15 d4 d3 46 00    	mov    0x46d3d4,%edx
40c9b7:	89 02                	mov    %eax,(%edx)
40c9b9:	c3                   	ret
40c9ba:	8b c0                	mov    %eax,%eax
40c9bc:	83 3d 1c 09 47 00 00 	cmpl   $0x0,0x47091c
40c9c3:	74 1a                	je     0x40c9df
40c9c5:	a1 1c 09 47 00       	mov    0x47091c,%eax
40c9ca:	c6 40 0c 01          	movb   $0x1,0xc(%eax)
40c9ce:	a1 1c 09 47 00       	mov    0x47091c,%eax
40c9d3:	8b 10                	mov    (%eax),%edx
40c9d5:	ff 52 f8             	call   *-0x8(%edx)
40c9d8:	33 c0                	xor    %eax,%eax
40c9da:	a3 1c 09 47 00       	mov    %eax,0x47091c
40c9df:	83 3d 20 09 47 00 00 	cmpl   $0x0,0x470920
40c9e6:	74 1a                	je     0x40ca02
40c9e8:	a1 20 09 47 00       	mov    0x470920,%eax
40c9ed:	c6 40 0c 01          	movb   $0x1,0xc(%eax)
40c9f1:	a1 20 09 47 00       	mov    0x470920,%eax
40c9f6:	e8 f9 6e ff ff       	call   0x4038f4
40c9fb:	33 c0                	xor    %eax,%eax
40c9fd:	a3 20 09 47 00       	mov    %eax,0x470920
40ca02:	a1 f0 d3 46 00       	mov    0x46d3f0,%eax
40ca07:	33 d2                	xor    %edx,%edx
40ca09:	89 10                	mov    %edx,(%eax)
40ca0b:	a1 0c d5 46 00       	mov    0x46d50c,%eax
40ca10:	33 d2                	xor    %edx,%edx
40ca12:	89 10                	mov    %edx,(%eax)
40ca14:	a1 68 d4 46 00       	mov    0x46d468,%eax
40ca19:	33 d2                	xor    %edx,%edx
40ca1b:	89 10                	mov    %edx,(%eax)
40ca1d:	a1 ec d4 46 00       	mov    0x46d4ec,%eax
40ca22:	33 d2                	xor    %edx,%edx
40ca24:	89 10                	mov    %edx,(%eax)
40ca26:	a1 14 d5 46 00       	mov    0x46d514,%eax
40ca2b:	33 d2                	xor    %edx,%edx
40ca2d:	89 10                	mov    %edx,(%eax)
40ca2f:	a1 6c d6 46 00       	mov    0x46d66c,%eax
40ca34:	33 d2                	xor    %edx,%edx
40ca36:	89 10                	mov    %edx,(%eax)
40ca38:	c3                   	ret
40ca39:	8d 40 00             	lea    0x0(%eax),%eax
40ca3c:	81 c4 6c ff ff ff    	add    $0xffffff6c,%esp
40ca42:	c7 04 24 94 00 00 00 	movl   $0x94,(%esp)
40ca49:	54                   	push   %esp
40ca4a:	e8 b1 9f ff ff       	call   0x406a00
40ca4f:	85 c0                	test   %eax,%eax
40ca51:	74 50                	je     0x40caa3
40ca53:	8b 44 24 10          	mov    0x10(%esp),%eax
40ca57:	a3 c4 07 46 00       	mov    %eax,0x4607c4
40ca5c:	8b 44 24 04          	mov    0x4(%esp),%eax
40ca60:	a3 c8 07 46 00       	mov    %eax,0x4607c8
40ca65:	8b 44 24 08          	mov    0x8(%esp),%eax
40ca69:	a3 cc 07 46 00       	mov    %eax,0x4607cc
40ca6e:	83 3d c4 07 46 00 01 	cmpl   $0x1,0x4607c4
40ca75:	75 10                	jne    0x40ca87
40ca77:	8b 44 24 0c          	mov    0xc(%esp),%eax
40ca7b:	25 ff ff 00 00       	and    $0xffff,%eax
40ca80:	a3 d0 07 46 00       	mov    %eax,0x4607d0
40ca85:	eb 09                	jmp    0x40ca90
40ca87:	8b 44 24 0c          	mov    0xc(%esp),%eax
40ca8b:	a3 d0 07 46 00       	mov    %eax,0x4607d0
40ca90:	b8 d4 07 46 00       	mov    $0x4607d4,%eax
40ca95:	8d 54 24 14          	lea    0x14(%esp),%edx
40ca99:	b9 80 00 00 00       	mov    $0x80,%ecx
40ca9e:	e8 ed 7e ff ff       	call   0x404990
40caa3:	81 c4 94 00 00 00    	add    $0x94,%esp
40caa9:	c3                   	ret
40caaa:	8b c0                	mov    %eax,%eax
40caac:	3b 05 c8 07 46 00    	cmp    0x4607c8,%eax
40cab2:	7c 13                	jl     0x40cac7
40cab4:	3b 05 c8 07 46 00    	cmp    0x4607c8,%eax
40caba:	75 08                	jne    0x40cac4
40cabc:	3b 15 cc 07 46 00    	cmp    0x4607cc,%edx
40cac2:	7e 03                	jle    0x40cac7
40cac4:	33 c0                	xor    %eax,%eax
40cac6:	c3                   	ret
40cac7:	b0 01                	mov    $0x1,%al
40cac9:	c3                   	ret
40caca:	8b c0                	mov    %eax,%eax
40cacc:	55                   	push   %ebp
40cacd:	8b ec                	mov    %esp,%ebp
40cacf:	83 c4 e8             	add    $0xffffffe8,%esp
40cad2:	53                   	push   %ebx
40cad3:	33 d2                	xor    %edx,%edx
40cad5:	89 55 fc             	mov    %edx,-0x4(%ebp)
40cad8:	8b d8                	mov    %eax,%ebx
40cada:	33 c0                	xor    %eax,%eax
40cadc:	55                   	push   %ebp
40cadd:	68 a2 cb 40 00       	push   $0x40cba2
40cae2:	64 ff 30             	push   %fs:(%eax)
40cae5:	64 89 20             	mov    %esp,%fs:(%eax)
40cae8:	c7 45 f8 ff ff ff ff 	movl   $0xffffffff,-0x8(%ebp)
40caef:	8d 45 fc             	lea    -0x4(%ebp),%eax
40caf2:	8b d3                	mov    %ebx,%edx
40caf4:	e8 bf 7c ff ff       	call   0x4047b8
40caf9:	8d 45 fc             	lea    -0x4(%ebp),%eax
40cafc:	e8 33 81 ff ff       	call   0x404c34
40cb01:	8d 45 f4             	lea    -0xc(%ebp),%eax
40cb04:	50                   	push   %eax
40cb05:	8b 45 fc             	mov    -0x4(%ebp),%eax
40cb08:	e8 d7 80 ff ff       	call   0x404be4
40cb0d:	50                   	push   %eax
40cb0e:	e8 e5 9f ff ff       	call   0x406af8
40cb13:	8b d8                	mov    %eax,%ebx
40cb15:	85 db                	test   %ebx,%ebx
40cb17:	74 73                	je     0x40cb8c
40cb19:	8b c3                	mov    %ebx,%eax
40cb1b:	e8 cc 61 ff ff       	call   0x402cec
40cb20:	89 45 f0             	mov    %eax,-0x10(%ebp)
40cb23:	33 c0                	xor    %eax,%eax
40cb25:	55                   	push   %ebp
40cb26:	68 85 cb 40 00       	push   $0x40cb85
40cb2b:	64 ff 30             	push   %fs:(%eax)
40cb2e:	64 89 20             	mov    %esp,%fs:(%eax)
40cb31:	8b 45 f0             	mov    -0x10(%ebp),%eax
40cb34:	50                   	push   %eax
40cb35:	53                   	push   %ebx
40cb36:	8b 45 f4             	mov    -0xc(%ebp),%eax
40cb39:	50                   	push   %eax
40cb3a:	8b 45 fc             	mov    -0x4(%ebp),%eax
40cb3d:	e8 a2 80 ff ff       	call   0x404be4
40cb42:	50                   	push   %eax
40cb43:	e8 a8 9f ff ff       	call   0x406af0
40cb48:	85 c0                	test   %eax,%eax
40cb4a:	74 23                	je     0x40cb6f
40cb4c:	8d 45 e8             	lea    -0x18(%ebp),%eax
40cb4f:	50                   	push   %eax
40cb50:	8d 45 ec             	lea    -0x14(%ebp),%eax
40cb53:	50                   	push   %eax
40cb54:	68 b4 cb 40 00       	push   $0x40cbb4
40cb59:	8b 45 f0             	mov    -0x10(%ebp),%eax
40cb5c:	50                   	push   %eax
40cb5d:	e8 9e 9f ff ff       	call   0x406b00
40cb62:	85 c0                	test   %eax,%eax
40cb64:	74 09                	je     0x40cb6f
40cb66:	8b 45 ec             	mov    -0x14(%ebp),%eax
40cb69:	8b 40 08             	mov    0x8(%eax),%eax
40cb6c:	89 45 f8             	mov    %eax,-0x8(%ebp)
40cb6f:	33 c0                	xor    %eax,%eax
40cb71:	5a                   	pop    %edx
40cb72:	59                   	pop    %ecx
40cb73:	59                   	pop    %ecx
40cb74:	64 89 10             	mov    %edx,%fs:(%eax)
40cb77:	68 8c cb 40 00       	push   $0x40cb8c
40cb7c:	8b 45 f0             	mov    -0x10(%ebp),%eax
40cb7f:	e8 84 61 ff ff       	call   0x402d08
40cb84:	c3                   	ret
40cb85:	e9 fe 74 ff ff       	jmp    0x404088
40cb8a:	eb f0                	jmp    0x40cb7c
40cb8c:	33 c0                	xor    %eax,%eax
40cb8e:	5a                   	pop    %edx
40cb8f:	59                   	pop    %ecx
40cb90:	59                   	pop    %ecx
40cb91:	64 89 10             	mov    %edx,%fs:(%eax)
40cb94:	68 a9 cb 40 00       	push   $0x40cba9
40cb99:	8d 45 fc             	lea    -0x4(%ebp),%eax
40cb9c:	e8 7f 7b ff ff       	call   0x404720
40cba1:	c3                   	ret
40cba2:	e9 e1 74 ff ff       	jmp    0x404088
40cba7:	eb f0                	jmp    0x40cb99
40cba9:	8b 45 f8             	mov    -0x8(%ebp),%eax
40cbac:	5b                   	pop    %ebx
40cbad:	8b e5                	mov    %ebp,%esp
40cbaf:	5d                   	pop    %ebp
40cbb0:	c3                   	ret
40cbb1:	00 00                	add    %al,(%eax)
40cbb3:	00 5c 00 00          	add    %bl,0x0(%eax,%eax,1)
40cbb7:	00 56 57             	add    %dl,0x57(%esi)
40cbba:	8b fa                	mov    %edx,%edi
40cbbc:	33 d2                	xor    %edx,%edx
40cbbe:	85 c0                	test   %eax,%eax
40cbc0:	74 62                	je     0x40cc24
40cbc2:	80 3c 38 00          	cmpb   $0x0,(%eax,%edi,1)
40cbc6:	74 5c                	je     0x40cc24
40cbc8:	85 ff                	test   %edi,%edi
40cbca:	75 13                	jne    0x40cbdf
40cbcc:	0f b6 00             	movzbl (%eax),%eax
40cbcf:	0f b6 c0             	movzbl %al,%eax
40cbd2:	0f a3 05 0c 08 46 00 	bt     %eax,0x46080c
40cbd9:	73 49                	jae    0x40cc24
40cbdb:	b2 01                	mov    $0x1,%dl
40cbdd:	eb 45                	jmp    0x40cc24
40cbdf:	8b f7                	mov    %edi,%esi
40cbe1:	4e                   	dec    %esi
40cbe2:	eb 01                	jmp    0x40cbe5
40cbe4:	4e                   	dec    %esi
40cbe5:	85 f6                	test   %esi,%esi
40cbe7:	7c 10                	jl     0x40cbf9
40cbe9:	0f b6 0c 30          	movzbl (%eax,%esi,1),%ecx
40cbed:	0f b6 c9             	movzbl %cl,%ecx
40cbf0:	0f a3 0d 0c 08 46 00 	bt     %ecx,0x46080c
40cbf7:	72 eb                	jb     0x40cbe4
40cbf9:	8b cf                	mov    %edi,%ecx
40cbfb:	2b ce                	sub    %esi,%ecx
40cbfd:	81 e1 01 00 00 80    	and    $0x80000001,%ecx
40cc03:	79 05                	jns    0x40cc0a
40cc05:	49                   	dec    %ecx
40cc06:	83 c9 fe             	or     $0xfffffffe,%ecx
40cc09:	41                   	inc    %ecx
40cc0a:	85 c9                	test   %ecx,%ecx
40cc0c:	75 04                	jne    0x40cc12
40cc0e:	b2 02                	mov    $0x2,%dl
40cc10:	eb 12                	jmp    0x40cc24
40cc12:	0f b6 04 38          	movzbl (%eax,%edi,1),%eax
40cc16:	0f b6 c0             	movzbl %al,%eax
40cc19:	0f a3 05 0c 08 46 00 	bt     %eax,0x46080c
40cc20:	73 02                	jae    0x40cc24
40cc22:	b2 01                	mov    $0x1,%dl
40cc24:	8b c2                	mov    %edx,%eax
40cc26:	5f                   	pop    %edi
40cc27:	5e                   	pop    %esi
40cc28:	c3                   	ret
40cc29:	8d 40 00             	lea    0x0(%eax),%eax
40cc2c:	53                   	push   %ebx
40cc2d:	56                   	push   %esi
40cc2e:	8b f2                	mov    %edx,%esi
40cc30:	8b d8                	mov    %eax,%ebx
40cc32:	33 c0                	xor    %eax,%eax
40cc34:	80 3d d4 08 47 00 00 	cmpb   $0x0,0x4708d4
40cc3b:	74 0f                	je     0x40cc4c
40cc3d:	8b c3                	mov    %ebx,%eax
40cc3f:	e8 a0 7f ff ff       	call   0x404be4
40cc44:	8b d6                	mov    %esi,%edx
40cc46:	4a                   	dec    %edx
40cc47:	e8 6c ff ff ff       	call   0x40cbb8
40cc4c:	5e                   	pop    %esi
40cc4d:	5b                   	pop    %ebx
40cc4e:	c3                   	ret
40cc4f:	90                   	nop
40cc50:	33 c9                	xor    %ecx,%ecx
40cc52:	80 3d d4 08 47 00 00 	cmpb   $0x0,0x4708d4
40cc59:	74 07                	je     0x40cc62
40cc5b:	e8 58 ff ff ff       	call   0x40cbb8
40cc60:	8b c8                	mov    %eax,%ecx
40cc62:	8b c1                	mov    %ecx,%eax
40cc64:	c3                   	ret
40cc65:	8d 40 00             	lea    0x0(%eax),%eax
40cc68:	53                   	push   %ebx
40cc69:	8b d8                	mov    %eax,%ebx
40cc6b:	8b cb                	mov    %ebx,%ecx
40cc6d:	85 c9                	test   %ecx,%ecx
40cc6f:	74 05                	je     0x40cc76
40cc71:	83 e9 04             	sub    $0x4,%ecx
40cc74:	8b 09                	mov    (%ecx),%ecx
40cc76:	3b d1                	cmp    %ecx,%edx
40cc78:	7e 0b                	jle    0x40cc85
40cc7a:	8b d3                	mov    %ebx,%edx
40cc7c:	85 d2                	test   %edx,%edx
40cc7e:	74 05                	je     0x40cc85
40cc80:	83 ea 04             	sub    $0x4,%edx
40cc83:	8b 12                	mov    (%edx),%edx
40cc85:	e8 02 00 00 00       	call   0x40cc8c
40cc8a:	5b                   	pop    %ebx
40cc8b:	c3                   	ret
40cc8c:	53                   	push   %ebx
40cc8d:	56                   	push   %esi
40cc8e:	57                   	push   %edi
40cc8f:	55                   	push   %ebp
40cc90:	8b ea                	mov    %edx,%ebp
40cc92:	8b f8                	mov    %eax,%edi
40cc94:	33 f6                	xor    %esi,%esi
40cc96:	85 ed                	test   %ebp,%ebp
40cc98:	7f 04                	jg     0x40cc9e
40cc9a:	b0 01                	mov    $0x1,%al
40cc9c:	eb 10                	jmp    0x40ccae
40cc9e:	8b c7                	mov    %edi,%eax
40cca0:	85 c0                	test   %eax,%eax
40cca2:	74 05                	je     0x40cca9
40cca4:	83 e8 04             	sub    $0x4,%eax
40cca7:	8b 00                	mov    (%eax),%eax
40cca9:	3b c5                	cmp    %ebp,%eax
40ccab:	0f 9c c0             	setl   %al
40ccae:	84 c0                	test   %al,%al
40ccb0:	75 3a                	jne    0x40ccec
40ccb2:	8b f5                	mov    %ebp,%esi
40ccb4:	80 3d d4 08 47 00 00 	cmpb   $0x0,0x4708d4
40ccbb:	74 2f                	je     0x40ccec
40ccbd:	bb 01 00 00 00       	mov    $0x1,%ebx
40ccc2:	33 f6                	xor    %esi,%esi
40ccc4:	3b eb                	cmp    %ebx,%ebp
40ccc6:	7c 24                	jl     0x40ccec
40ccc8:	0f b6 44 1f ff       	movzbl -0x1(%edi,%ebx,1),%eax
40cccd:	0f b6 c0             	movzbl %al,%eax
40ccd0:	0f a3 05 0c 08 46 00 	bt     %eax,0x46080c
40ccd7:	73 0d                	jae    0x40cce6
40ccd9:	8b d3                	mov    %ebx,%edx
40ccdb:	8b c7                	mov    %edi,%eax
40ccdd:	e8 f6 01 00 00       	call   0x40ced8
40cce2:	8b d8                	mov    %eax,%ebx
40cce4:	eb 01                	jmp    0x40cce7
40cce6:	43                   	inc    %ebx
40cce7:	46                   	inc    %esi
40cce8:	3b eb                	cmp    %ebx,%ebp
40ccea:	7d dc                	jge    0x40ccc8
40ccec:	8b c6                	mov    %esi,%eax
40ccee:	5d                   	pop    %ebp
40ccef:	5f                   	pop    %edi
40ccf0:	5e                   	pop    %esi
40ccf1:	5b                   	pop    %ebx
40ccf2:	c3                   	ret
40ccf3:	90                   	nop
40ccf4:	55                   	push   %ebp
40ccf5:	8b ec                	mov    %esp,%ebp
40ccf7:	83 c4 f4             	add    $0xfffffff4,%esp
40ccfa:	53                   	push   %ebx
40ccfb:	56                   	push   %esi
40ccfc:	57                   	push   %edi
40ccfd:	89 4d f8             	mov    %ecx,-0x8(%ebp)
40cd00:	89 55 fc             	mov    %edx,-0x4(%ebp)
40cd03:	8b f8                	mov    %eax,%edi
40cd05:	8b c7                	mov    %edi,%eax
40cd07:	85 c0                	test   %eax,%eax
40cd09:	74 05                	je     0x40cd10
40cd0b:	83 e8 04             	sub    $0x4,%eax
40cd0e:	8b 00                	mov    (%eax),%eax
40cd10:	89 45 f4             	mov    %eax,-0xc(%ebp)
40cd13:	be 01 00 00 00       	mov    $0x1,%esi
40cd18:	bb 01 00 00 00       	mov    $0x1,%ebx
40cd1d:	eb 20                	jmp    0x40cd3f
40cd1f:	46                   	inc    %esi
40cd20:	0f b6 44 1f ff       	movzbl -0x1(%edi,%ebx,1),%eax
40cd25:	0f b6 c0             	movzbl %al,%eax
40cd28:	0f a3 05 0c 08 46 00 	bt     %eax,0x46080c
40cd2f:	73 0d                	jae    0x40cd3e
40cd31:	8b d3                	mov    %ebx,%edx
40cd33:	8b c7                	mov    %edi,%eax
40cd35:	e8 9e 01 00 00       	call   0x40ced8
40cd3a:	8b d8                	mov    %eax,%ebx
40cd3c:	eb 01                	jmp    0x40cd3f
40cd3e:	43                   	inc    %ebx