40a91d:	c3                   	ret
40a91e:	00 00                	add    %al,(%eax)
40a920:	41                   	inc    %ecx
40a921:	4d                   	dec    %ebp
40a922:	2f                   	das
40a923:	50                   	push   %eax
40a924:	4d                   	dec    %ebp
40a925:	00 00                	add    %al,(%eax)
40a927:	00 41 2f             	add    %al,0x2f(%ecx)
40a92a:	50                   	push   %eax
40a92b:	00 41 4d             	add    %al,0x4d(%ecx)
40a92e:	50                   	push   %eax
40a92f:	4d                   	dec    %ebp
40a930:	00 00                	add    %al,(%eax)
40a932:	00 00                	add    %al,(%eax)
40a934:	41                   	inc    %ecx
40a935:	41                   	inc    %ecx
40a936:	41                   	inc    %ecx
40a937:	41                   	inc    %ecx
40a938:	00 00                	add    %al,(%eax)
40a93a:	00 00                	add    %al,(%eax)
40a93c:	41                   	inc    %ecx
40a93d:	41                   	inc    %ecx
40a93e:	41                   	inc    %ecx
40a93f:	00 20                	add    %ah,(%eax)
40a941:	00 00                	add    %al,(%eax)
40a943:	00 55 8b             	add    %dl,-0x75(%ebp)
40a946:	ec                   	in     (%dx),%al
40a947:	81 c4 f8 fe ff ff    	add    $0xfffffef8,%esp
40a94d:	53                   	push   %ebx
40a94e:	56                   	push   %esi
40a94f:	8b da                	mov    %edx,%ebx
40a951:	8b f0                	mov    %eax,%esi
40a953:	33 c0                	xor    %eax,%eax
40a955:	89 85 fc fe ff ff    	mov    %eax,-0x104(%ebp)
40a95b:	33 c0                	xor    %eax,%eax
40a95d:	89 85 f8 fe ff ff    	mov    %eax,-0x108(%ebp)
40a963:	85 db                	test   %ebx,%ebx
40a965:	74 0b                	je     0x40a972
40a967:	55                   	push   %ebp
40a968:	8b c3                	mov    %ebx,%eax
40a96a:	e8 21 f8 ff ff       	call   0x40a190
40a96f:	59                   	pop    %ecx
40a970:	eb 0c                	jmp    0x40a97e
40a972:	55                   	push   %ebp
40a973:	b8 9c a9 40 00       	mov    $0x40a99c,%eax
40a978:	e8 13 f8 ff ff       	call   0x40a190
40a97d:	59                   	pop    %ecx
40a97e:	8d 95 00 ff ff ff    	lea    -0x100(%ebp),%edx
40a984:	8b c6                	mov    %esi,%eax
40a986:	8b 8d fc fe ff ff    	mov    -0x104(%ebp),%ecx
40a98c:	e8 af 97 ff ff       	call   0x404140
40a991:	5e                   	pop    %esi
40a992:	5b                   	pop    %ebx
40a993:	8b e5                	mov    %ebp,%esp
40a995:	5d                   	pop    %ebp
40a996:	c2 08 00             	ret    $0x8
40a999:	00 00                	add    %al,(%eax)
40a99b:	00 43 00             	add    %al,0x0(%ebx)
40a99e:	00 00                	add    %al,(%eax)
40a9a0:	55                   	push   %ebp
40a9a1:	8b ec                	mov    %esp,%ebp
40a9a3:	ff 75 0c             	push   0xc(%ebp)
40a9a6:	ff 75 08             	push   0x8(%ebp)
40a9a9:	8b 15 8c 56 47 00    	mov    0x47568c,%edx
40a9af:	e8 90 ff ff ff       	call   0x40a944
40a9b4:	5d                   	pop    %ebp
40a9b5:	c2 08 00             	ret    $0x8
40a9b8:	55                   	push   %ebp
40a9b9:	8b ec                	mov    %esp,%ebp
40a9bb:	ff 75 0c             	push   0xc(%ebp)
40a9be:	ff 75 08             	push   0x8(%ebp)
40a9c1:	33 d2                	xor    %edx,%edx
40a9c3:	e8 7c ff ff ff       	call   0x40a944
40a9c8:	5d                   	pop    %ebp
40a9c9:	c2 08 00             	ret    $0x8
40a9cc:	53                   	push   %ebx
40a9cd:	56                   	push   %esi
40a9ce:	57                   	push   %edi
40a9cf:	8b fa                	mov    %edx,%edi
40a9d1:	8b f0                	mov    %eax,%esi
40a9d3:	8b 1f                	mov    (%edi),%ebx
40a9d5:	eb 01                	jmp    0x40a9d8
40a9d7:	43                   	inc    %ebx
40a9d8:	8b c6                	mov    %esi,%eax
40a9da:	e8 31 99 ff ff       	call   0x404310
40a9df:	3b d8                	cmp    %eax,%ebx
40a9e1:	7f 07                	jg     0x40a9ea
40a9e3:	80 7c 1e ff 20       	cmpb   $0x20,-0x1(%esi,%ebx,1)
40a9e8:	74 ed                	je     0x40a9d7
40a9ea:	89 1f                	mov    %ebx,(%edi)
40a9ec:	5f                   	pop    %edi
40a9ed:	5e                   	pop    %esi
40a9ee:	5b                   	pop    %ebx
40a9ef:	c3                   	ret
40a9f0:	55                   	push   %ebp
40a9f1:	8b ec                	mov    %esp,%ebp
40a9f3:	83 c4 f4             	add    $0xfffffff4,%esp
40a9f6:	53                   	push   %ebx
40a9f7:	56                   	push   %esi
40a9f8:	57                   	push   %edi
40a9f9:	89 4d f8             	mov    %ecx,-0x8(%ebp)
40a9fc:	89 55 fc             	mov    %edx,-0x4(%ebp)
40a9ff:	8b f8                	mov    %eax,%edi
40aa01:	c6 45 f7 00          	movb   $0x0,-0x9(%ebp)
40aa05:	8b 45 08             	mov    0x8(%ebp),%eax
40aa08:	c6 00 00             	movb   $0x0,(%eax)
40aa0b:	8b 55 fc             	mov    -0x4(%ebp),%edx
40aa0e:	8b c7                	mov    %edi,%eax
40aa10:	e8 b7 ff ff ff       	call   0x40a9cc
40aa15:	8b 5d fc             	mov    -0x4(%ebp),%ebx
40aa18:	8b 1b                	mov    (%ebx),%ebx
40aa1a:	33 f6                	xor    %esi,%esi
40aa1c:	eb 17                	jmp    0x40aa35
40aa1e:	8b c6                	mov    %esi,%eax
40aa20:	03 c0                	add    %eax,%eax
40aa22:	8d 04 80             	lea    (%eax,%eax,4),%eax
40aa25:	33 d2                	xor    %edx,%edx
40aa27:	8a 54 1f ff          	mov    -0x1(%edi,%ebx,1),%dl
40aa2b:	66 83 ea 30          	sub    $0x30,%dx
40aa2f:	66 03 c2             	add    %dx,%ax
40aa32:	8b f0                	mov    %eax,%esi
40aa34:	43                   	inc    %ebx
40aa35:	8b c7                	mov    %edi,%eax
40aa37:	e8 d4 98 ff ff       	call   0x404310
40aa3c:	3b d8                	cmp    %eax,%ebx
40aa3e:	7f 11                	jg     0x40aa51
40aa40:	8a 44 1f ff          	mov    -0x1(%edi,%ebx,1),%al
40aa44:	04 d0                	add    $0xd0,%al
40aa46:	2c 0a                	sub    $0xa,%al
40aa48:	73 07                	jae    0x40aa51
40aa4a:	66 81 fe e8 03       	cmp    $0x3e8,%si
40aa4f:	72 cd                	jb     0x40aa1e
40aa51:	8b 45 fc             	mov    -0x4(%ebp),%eax
40aa54:	3b 18                	cmp    (%eax),%ebx
40aa56:	7e 1d                	jle    0x40aa75
40aa58:	8b c3                	mov    %ebx,%eax
40aa5a:	8b 55 fc             	mov    -0x4(%ebp),%edx
40aa5d:	8b 12                	mov    (%edx),%edx
40aa5f:	2a c2                	sub    %dl,%al
40aa61:	8b 55 08             	mov    0x8(%ebp),%edx
40aa64:	88 02                	mov    %al,(%edx)
40aa66:	8b 45 fc             	mov    -0x4(%ebp),%eax
40aa69:	89 18                	mov    %ebx,(%eax)
40aa6b:	8b 45 f8             	mov    -0x8(%ebp),%eax
40aa6e:	66 89 30             	mov    %si,(%eax)
40aa71:	c6 45 f7 01          	movb   $0x1,-0x9(%ebp)
40aa75:	8a 45 f7             	mov    -0x9(%ebp),%al
40aa78:	5f                   	pop    %edi
40aa79:	5e                   	pop    %esi
40aa7a:	5b                   	pop    %ebx
40aa7b:	8b e5                	mov    %ebp,%esp
40aa7d:	5d                   	pop    %ebp
40aa7e:	c2 04 00             	ret    $0x4
40aa81:	8d 40 00             	lea    0x0(%eax),%eax
40aa84:	55                   	push   %ebp
40aa85:	8b ec                	mov    %esp,%ebp
40aa87:	83 c4 f8             	add    $0xfffffff8,%esp
40aa8a:	53                   	push   %ebx
40aa8b:	56                   	push   %esi
40aa8c:	57                   	push   %edi
40aa8d:	33 db                	xor    %ebx,%ebx
40aa8f:	89 5d f8             	mov    %ebx,-0x8(%ebp)
40aa92:	8b f9                	mov    %ecx,%edi
40aa94:	8b f2                	mov    %edx,%esi
40aa96:	89 45 fc             	mov    %eax,-0x4(%ebp)
40aa99:	33 c0                	xor    %eax,%eax
40aa9b:	55                   	push   %ebp
40aa9c:	68 fd aa 40 00       	push   $0x40aafd
40aaa1:	64 ff 30             	push   %fs:(%eax)
40aaa4:	64 89 20             	mov    %esp,%fs:(%eax)
40aaa7:	33 db                	xor    %ebx,%ebx
40aaa9:	85 ff                	test   %edi,%edi
40aaab:	74 3a                	je     0x40aae7
40aaad:	8b d6                	mov    %esi,%edx
40aaaf:	8b 45 fc             	mov    -0x4(%ebp),%eax
40aab2:	e8 15 ff ff ff       	call   0x40a9cc
40aab7:	8d 45 f8             	lea    -0x8(%ebp),%eax
40aaba:	50                   	push   %eax
40aabb:	8b c7                	mov    %edi,%eax
40aabd:	e8 4e 98 ff ff       	call   0x404310
40aac2:	8b c8                	mov    %eax,%ecx
40aac4:	8b 16                	mov    (%esi),%edx
40aac6:	8b 45 fc             	mov    -0x4(%ebp),%eax
40aac9:	e8 a2 9a ff ff       	call   0x404570
40aace:	8b 55 f8             	mov    -0x8(%ebp),%edx
40aad1:	8b c7                	mov    %edi,%eax
40aad3:	e8 2c d5 ff ff       	call   0x408004
40aad8:	85 c0                	test   %eax,%eax
40aada:	75 0b                	jne    0x40aae7
40aadc:	8b c7                	mov    %edi,%eax
40aade:	e8 2d 98 ff ff       	call   0x404310
40aae3:	01 06                	add    %eax,(%esi)
40aae5:	b3 01                	mov    $0x1,%bl
40aae7:	33 c0                	xor    %eax,%eax
40aae9:	5a                   	pop    %edx
40aaea:	59                   	pop    %ecx
40aaeb:	59                   	pop    %ecx
40aaec:	64 89 10             	mov    %edx,%fs:(%eax)
40aaef:	68 04 ab 40 00       	push   $0x40ab04
40aaf4:	8d 45 f8             	lea    -0x8(%ebp),%eax
40aaf7:	e8 54 95 ff ff       	call   0x404050
40aafc:	c3                   	ret
40aafd:	e9 52 8f ff ff       	jmp    0x403a54
40ab02:	eb f0                	jmp    0x40aaf4
40ab04:	8b c3                	mov    %ebx,%eax
40ab06:	5f                   	pop    %edi
40ab07:	5e                   	pop    %esi
40ab08:	5b                   	pop    %ebx
40ab09:	59                   	pop    %ecx
40ab0a:	59                   	pop    %ecx
40ab0b:	5d                   	pop    %ebp
40ab0c:	c3                   	ret
40ab0d:	8d 40 00             	lea    0x0(%eax),%eax
40ab10:	53                   	push   %ebx
40ab11:	56                   	push   %esi
40ab12:	57                   	push   %edi
40ab13:	51                   	push   %ecx
40ab14:	88 0c 24             	mov    %cl,(%esp)
40ab17:	8b fa                	mov    %edx,%edi
40ab19:	8b f0                	mov    %eax,%esi
40ab1b:	33 db                	xor    %ebx,%ebx
40ab1d:	8b d7                	mov    %edi,%edx
40ab1f:	8b c6                	mov    %esi,%eax
40ab21:	e8 a6 fe ff ff       	call   0x40a9cc
40ab26:	8b c6                	mov    %esi,%eax
40ab28:	e8 e3 97 ff ff       	call   0x404310
40ab2d:	3b 07                	cmp    (%edi),%eax
40ab2f:	7c 0f                	jl     0x40ab40
40ab31:	8b 07                	mov    (%edi),%eax
40ab33:	8a 44 06 ff          	mov    -0x1(%esi,%eax,1),%al
40ab37:	3a 04 24             	cmp    (%esp),%al
40ab3a:	75 04                	jne    0x40ab40
40ab3c:	ff 07                	incl   (%edi)
40ab3e:	b3 01                	mov    $0x1,%bl
40ab40:	8b c3                	mov    %ebx,%eax
40ab42:	5a                   	pop    %edx
40ab43:	5f                   	pop    %edi
40ab44:	5e                   	pop    %esi
40ab45:	5b                   	pop    %ebx
40ab46:	c3                   	ret
40ab47:	90                   	nop
40ab48:	53                   	push   %ebx
40ab49:	56                   	push   %esi
40ab4a:	57                   	push   %edi
40ab4b:	8b f0                	mov    %eax,%esi
40ab4d:	33 db                	xor    %ebx,%ebx
40ab4f:	bf 01 00 00 00       	mov    $0x1,%edi
40ab54:	eb 29                	jmp    0x40ab7f
40ab56:	8a 44 3e ff          	mov    -0x1(%esi,%edi,1),%al
40ab5a:	24 df                	and    $0xdf,%al
40ab5c:	2c 44                	sub    $0x44,%al
40ab5e:	74 1a                	je     0x40ab7a
40ab60:	fe c8                	dec    %al
40ab62:	74 0a                	je     0x40ab6e
40ab64:	2c 08                	sub    $0x8,%al
40ab66:	74 0e                	je     0x40ab76
40ab68:	2c 0c                	sub    $0xc,%al
40ab6a:	74 06                	je     0x40ab72
40ab6c:	eb 10                	jmp    0x40ab7e
40ab6e:	b3 02                	mov    $0x2,%bl
40ab70:	eb 1a                	jmp    0x40ab8c
40ab72:	b3 02                	mov    $0x2,%bl
40ab74:	eb 16                	jmp    0x40ab8c
40ab76:	33 db                	xor    %ebx,%ebx
40ab78:	eb 12                	jmp    0x40ab8c
40ab7a:	b3 01                	mov    $0x1,%bl
40ab7c:	eb 0e                	jmp    0x40ab8c
40ab7e:	47                   	inc    %edi
40ab7f:	8b c6                	mov    %esi,%eax
40ab81:	e8 8a 97 ff ff       	call   0x404310
40ab86:	3b f8                	cmp    %eax,%edi
40ab88:	7e cc                	jle    0x40ab56
40ab8a:	33 db                	xor    %ebx,%ebx
40ab8c:	8b c3                	mov    %ebx,%eax
40ab8e:	5f                   	pop    %edi
40ab8f:	5e                   	pop    %esi
40ab90:	5b                   	pop    %ebx
40ab91:	c3                   	ret
40ab92:	8b c0                	mov    %eax,%eax
40ab94:	53                   	push   %ebx
40ab95:	56                   	push   %esi
40ab96:	8b da                	mov    %edx,%ebx
40ab98:	8b f0                	mov    %eax,%esi
40ab9a:	eb 23                	jmp    0x40abbf
40ab9c:	8b 03                	mov    (%ebx),%eax
40ab9e:	8a 44 06 ff          	mov    -0x1(%esi,%eax,1),%al
40aba2:	25 ff 00 00 00       	and    $0xff,%eax
40aba7:	0f a3 05 0c 91 46 00 	bt     %eax,0x46910c
40abae:	73 0d                	jae    0x40abbd
40abb0:	8b 13                	mov    (%ebx),%edx
40abb2:	8b c6                	mov    %esi,%eax
40abb4:	e8 63 1b 00 00       	call   0x40c71c
40abb9:	89 03                	mov    %eax,(%ebx)
40abbb:	eb 02                	jmp    0x40abbf
40abbd:	ff 03                	incl   (%ebx)
40abbf:	8b c6                	mov    %esi,%eax
40abc1:	e8 4a 97 ff ff       	call   0x404310
40abc6:	3b 03                	cmp    (%ebx),%eax
40abc8:	7c 0c                	jl     0x40abd6
40abca:	8b 03                	mov    (%ebx),%eax
40abcc:	8a 44 06 ff          	mov    -0x1(%esi,%eax,1),%al
40abd0:	04 d0                	add    $0xd0,%al
40abd2:	2c 0a                	sub    $0xa,%al
40abd4:	73 c6                	jae    0x40ab9c
40abd6:	5e                   	pop    %esi
40abd7:	5b                   	pop    %ebx
40abd8:	c3                   	ret
40abd9:	8d 40 00             	lea    0x0(%eax),%eax
40abdc:	53                   	push   %ebx
40abdd:	56                   	push   %esi
40abde:	57                   	push   %edi
40abdf:	55                   	push   %ebp
40abe0:	51                   	push   %ecx
40abe1:	8b e8                	mov    %eax,%ebp
40abe3:	33 c0                	xor    %eax,%eax
40abe5:	89 04 24             	mov    %eax,(%esp)
40abe8:	bf 07 00 00 00       	mov    $0x7,%edi
40abed:	bb 50 57 47 00       	mov    $0x475750,%ebx
40abf2:	be 6c 57 47 00       	mov    $0x47576c,%esi
40abf7:	83 3b 00             	cmpl   $0x0,(%ebx)
40abfa:	74 29                	je     0x40ac25
40abfc:	8b c5                	mov    %ebp,%eax
40abfe:	e8 0d 99 ff ff       	call   0x404510
40ac03:	50                   	push   %eax
40ac04:	8b 03                	mov    (%ebx),%eax
40ac06:	e8 05 99 ff ff       	call   0x404510
40ac0b:	5a                   	pop    %edx
40ac0c:	e8 83 1c 00 00       	call   0x40c894
40ac11:	85 c0                	test   %eax,%eax
40ac13:	74 07                	je     0x40ac1c
40ac15:	8b 06                	mov    (%esi),%eax
40ac17:	89 04 24             	mov    %eax,(%esp)
40ac1a:	eb 09                	jmp    0x40ac25
40ac1c:	83 c6 04             	add    $0x4,%esi
40ac1f:	83 c3 04             	add    $0x4,%ebx
40ac22:	4f                   	dec    %edi
40ac23:	75 d2                	jne    0x40abf7
40ac25:	8b 04 24             	mov    (%esp),%eax
40ac28:	5a                   	pop    %edx
40ac29:	5d                   	pop    %ebp
40ac2a:	5f                   	pop    %edi
40ac2b:	5e                   	pop    %esi
40ac2c:	5b                   	pop    %ebx
40ac2d:	c3                   	ret
40ac2e:	8b c0                	mov    %eax,%eax
40ac30:	55                   	push   %ebp
40ac31:	8b ec                	mov    %esp,%ebp
40ac33:	53                   	push   %ebx
40ac34:	8b d8                	mov    %eax,%ebx