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
40cd3f:	3b 5d f4             	cmp    -0xc(%ebp),%ebx
40cd42:	7d 05                	jge    0x40cd49
40cd44:	3b 75 fc             	cmp    -0x4(%ebp),%esi
40cd47:	7c d6                	jl     0x40cd1f
40cd49:	3b 75 fc             	cmp    -0x4(%ebp),%esi
40cd4c:	75 22                	jne    0x40cd70
40cd4e:	3b 5d f4             	cmp    -0xc(%ebp),%ebx
40cd51:	7d 1d                	jge    0x40cd70
40cd53:	0f b6 44 1f ff       	movzbl -0x1(%edi,%ebx,1),%eax
40cd58:	0f b6 c0             	movzbl %al,%eax
40cd5b:	0f a3 05 0c 08 46 00 	bt     %eax,0x46080c
40cd62:	73 0c                	jae    0x40cd70
40cd64:	8b d3                	mov    %ebx,%edx
40cd66:	8b c7                	mov    %edi,%eax
40cd68:	e8 6b 01 00 00       	call   0x40ced8
40cd6d:	48                   	dec    %eax
40cd6e:	8b d8                	mov    %eax,%ebx
40cd70:	8b 45 f8             	mov    -0x8(%ebp),%eax
40cd73:	89 30                	mov    %esi,(%eax)
40cd75:	8b 45 08             	mov    0x8(%ebp),%eax
40cd78:	89 18                	mov    %ebx,(%eax)
40cd7a:	5f                   	pop    %edi
40cd7b:	5e                   	pop    %esi
40cd7c:	5b                   	pop    %ebx
40cd7d:	8b e5                	mov    %ebp,%esp
40cd7f:	5d                   	pop    %ebp
40cd80:	c2 04 00             	ret    $0x4
40cd83:	90                   	nop
40cd84:	53                   	push   %ebx
40cd85:	56                   	push   %esi
40cd86:	57                   	push   %edi
40cd87:	83 c4 f8             	add    $0xfffffff8,%esp
40cd8a:	8b da                	mov    %edx,%ebx
40cd8c:	8b f0                	mov    %eax,%esi
40cd8e:	33 c0                	xor    %eax,%eax
40cd90:	89 04 24             	mov    %eax,(%esp)
40cd93:	85 db                	test   %ebx,%ebx
40cd95:	7f 04                	jg     0x40cd9b
40cd97:	b0 01                	mov    $0x1,%al
40cd99:	eb 10                	jmp    0x40cdab
40cd9b:	8b c6                	mov    %esi,%eax
40cd9d:	85 c0                	test   %eax,%eax
40cd9f:	74 05                	je     0x40cda6
40cda1:	83 e8 04             	sub    $0x4,%eax
40cda4:	8b 00                	mov    (%eax),%eax
40cda6:	3b c3                	cmp    %ebx,%eax
40cda8:	0f 9c c0             	setl   %al
40cdab:	84 c0                	test   %al,%al
40cdad:	75 4d                	jne    0x40cdfc
40cdaf:	83 fb 01             	cmp    $0x1,%ebx
40cdb2:	7e 45                	jle    0x40cdf9
40cdb4:	80 3d d4 08 47 00 00 	cmpb   $0x0,0x4708d4
40cdbb:	74 3c                	je     0x40cdf9
40cdbd:	54                   	push   %esp
40cdbe:	8d 4c 24 08          	lea    0x8(%esp),%ecx
40cdc2:	8b fb                	mov    %ebx,%edi
40cdc4:	4f                   	dec    %edi
40cdc5:	8b d7                	mov    %edi,%edx
40cdc7:	8b c6                	mov    %esi,%eax
40cdc9:	e8 26 ff ff ff       	call   0x40ccf4
40cdce:	3b 7c 24 04          	cmp    0x4(%esp),%edi
40cdd2:	7e 04                	jle    0x40cdd8
40cdd4:	b0 01                	mov    $0x1,%al
40cdd6:	eb 11                	jmp    0x40cde9
40cdd8:	8b c6                	mov    %esi,%eax
40cdda:	85 c0                	test   %eax,%eax
40cddc:	74 05                	je     0x40cde3
40cdde:	83 e8 04             	sub    $0x4,%eax
40cde1:	8b 00                	mov    (%eax),%eax
40cde3:	3b 04 24             	cmp    (%esp),%eax
40cde6:	0f 9e c0             	setle  %al
40cde9:	84 c0                	test   %al,%al
40cdeb:	74 07                	je     0x40cdf4
40cded:	33 c0                	xor    %eax,%eax
40cdef:	89 04 24             	mov    %eax,(%esp)
40cdf2:	eb 08                	jmp    0x40cdfc
40cdf4:	ff 04 24             	incl   (%esp)
40cdf7:	eb 03                	jmp    0x40cdfc
40cdf9:	89 1c 24             	mov    %ebx,(%esp)
40cdfc:	8b 04 24             	mov    (%esp),%eax
40cdff:	59                   	pop    %ecx
40ce00:	5a                   	pop    %edx
40ce01:	5f                   	pop    %edi
40ce02:	5e                   	pop    %esi
40ce03:	5b                   	pop    %ebx
40ce04:	c3                   	ret
40ce05:	8d 40 00             	lea    0x0(%eax),%eax
40ce08:	53                   	push   %ebx
40ce09:	56                   	push   %esi
40ce0a:	83 c4 f8             	add    $0xfffffff8,%esp
40ce0d:	8b d8                	mov    %eax,%ebx
40ce0f:	33 c0                	xor    %eax,%eax
40ce11:	89 04 24             	mov    %eax,(%esp)
40ce14:	85 d2                	test   %edx,%edx
40ce16:	7e 56                	jle    0x40ce6e
40ce18:	8b f3                	mov    %ebx,%esi
40ce1a:	8b c6                	mov    %esi,%eax
40ce1c:	85 c0                	test   %eax,%eax
40ce1e:	74 05                	je     0x40ce25
40ce20:	83 e8 04             	sub    $0x4,%eax
40ce23:	8b 00                	mov    (%eax),%eax
40ce25:	3b c2                	cmp    %edx,%eax
40ce27:	7d 0d                	jge    0x40ce36
40ce29:	8b c6                	mov    %esi,%eax
40ce2b:	85 c0                	test   %eax,%eax
40ce2d:	74 05                	je     0x40ce34
40ce2f:	83 e8 04             	sub    $0x4,%eax
40ce32:	8b 00                	mov    (%eax),%eax
40ce34:	8b d0                	mov    %eax,%edx
40ce36:	80 3d d4 08 47 00 00 	cmpb   $0x0,0x4708d4
40ce3d:	74 2c                	je     0x40ce6b
40ce3f:	54                   	push   %esp
40ce40:	8d 4c 24 08          	lea    0x8(%esp),%ecx
40ce44:	8b c3                	mov    %ebx,%eax
40ce46:	e8 a9 fe ff ff       	call   0x40ccf4
40ce4b:	8b c6                	mov    %esi,%eax
40ce4d:	85 c0                	test   %eax,%eax
40ce4f:	74 05                	je     0x40ce56
40ce51:	83 e8 04             	sub    $0x4,%eax
40ce54:	8b 00                	mov    (%eax),%eax
40ce56:	3b 04 24             	cmp    (%esp),%eax
40ce59:	7d 13                	jge    0x40ce6e
40ce5b:	8b c6                	mov    %esi,%eax
40ce5d:	85 c0                	test   %eax,%eax
40ce5f:	74 05                	je     0x40ce66
40ce61:	83 e8 04             	sub    $0x4,%eax
40ce64:	8b 00                	mov    (%eax),%eax
40ce66:	89 04 24             	mov    %eax,(%esp)
40ce69:	eb 03                	jmp    0x40ce6e
40ce6b:	89 14 24             	mov    %edx,(%esp)
40ce6e:	8b 04 24             	mov    (%esp),%eax
40ce71:	59                   	pop    %ecx
40ce72:	5a                   	pop    %edx
40ce73:	5e                   	pop    %esi
40ce74:	5b                   	pop    %ebx
40ce75:	c3                   	ret
40ce76:	8b c0                	mov    %eax,%eax
40ce78:	53                   	push   %ebx
40ce79:	8b d8                	mov    %eax,%ebx
40ce7b:	80 3d d4 08 47 00 00 	cmpb   $0x0,0x4708d4
40ce82:	74 0a                	je     0x40ce8e
40ce84:	53                   	push   %ebx
40ce85:	e8 de 9e ff ff       	call   0x406d68
40ce8a:	2b c3                	sub    %ebx,%eax
40ce8c:	5b                   	pop    %ebx
40ce8d:	c3                   	ret
40ce8e:	b8 01 00 00 00       	mov    $0x1,%eax
40ce93:	5b                   	pop    %ebx
40ce94:	c3                   	ret
40ce95:	8d 40 00             	lea    0x0(%eax),%eax
40ce98:	50                   	push   %eax
40ce99:	e8 ca 9e ff ff       	call   0x406d68
40ce9e:	c3                   	ret
40ce9f:	90                   	nop
40cea0:	53                   	push   %ebx
40cea1:	56                   	push   %esi
40cea2:	8b f2                	mov    %edx,%esi
40cea4:	8b d8                	mov    %eax,%ebx
40cea6:	b8 01 00 00 00       	mov    $0x1,%eax
40ceab:	80 3d d4 08 47 00 00 	cmpb   $0x0,0x4708d4
40ceb2:	74 20                	je     0x40ced4
40ceb4:	0f b6 54 33 ff       	movzbl -0x1(%ebx,%esi,1),%edx
40ceb9:	0f b6 d2             	movzbl %dl,%edx
40cebc:	0f a3 15 0c 08 46 00 	bt     %edx,0x46080c
40cec3:	73 0f                	jae    0x40ced4
40cec5:	8b c3                	mov    %ebx,%eax
40cec7:	e8 18 7d ff ff       	call   0x404be4
40cecc:	03 c6                	add    %esi,%eax
40cece:	48                   	dec    %eax
40cecf:	e8 a4 ff ff ff       	call   0x40ce78
40ced4:	5e                   	pop    %esi
40ced5:	5b                   	pop    %ebx
40ced6:	c3                   	ret
40ced7:	90                   	nop
40ced8:	53                   	push   %ebx