4019cf:	c7 84 24 88 01 00 00 	movl   $0x4b1c8c,0x188(%esp)
4019d6:	8c 1c 4b 00
4019da:	c7 84 24 94 01 00 00 	movl   $0x4b1cb0,0x194(%esp)
4019e1:	b0 1c 4b 00
4019e5:	c7 84 24 9c 01 00 00 	movl   $0x4b1cd4,0x19c(%esp)
4019ec:	d4 1c 4b 00
4019f0:	c7 84 24 a0 01 00 00 	movl   $0x4b1ce4,0x1a0(%esp)
4019f7:	e4 1c 4b 00
4019fb:	89 94 24 a4 01 00 00 	mov    %edx,0x1a4(%esp)
401a02:	c7 84 24 a8 01 00 00 	movl   $0x4b1d08,0x1a8(%esp)
401a09:	08 1d 4b 00
401a0d:	c7 84 24 ac 01 00 00 	movl   $0x4b1d14,0x1ac(%esp)
401a14:	14 1d 4b 00
401a18:	c7 84 24 b4 01 00 00 	movl   $0x4b1a7c,0x1b4(%esp)
401a1f:	7c 1a 4b 00
401a23:	89 44 24 28          	mov    %eax,0x28(%esp)
401a27:	e8 b8 bb 00 00       	call   0x40d5e4
401a2c:	84 c0                	test   %al,%al
401a2e:	0f 84 df 4e 07 00    	je     0x476913
401a34:	6a 2a                	push   $0x2a
401a36:	58                   	pop    %eax
401a37:	66 39 06             	cmp    %ax,(%esi)
401a3a:	0f 84 d3 4e 07 00    	je     0x476913
401a40:	83 7c 24 1c 01       	cmpl   $0x1,0x1c(%esp)
401a45:	0f 84 68 01 00 00    	je     0x401bb3
401a4b:	8b 74 24 24          	mov    0x24(%esp),%esi
401a4f:	6a 29                	push   $0x29
401a51:	8b 4e 04             	mov    0x4(%esi),%ecx
401a54:	e8 93 01 00 00       	call   0x401bec
401a59:	84 c0                	test   %al,%al
401a5b:	0f 85 5d 01 00 00    	jne    0x401bbe
401a61:	8b 4e 04             	mov    0x4(%esi),%ecx
401a64:	e8 1d b8 00 00       	call   0x40d286
401a69:	89 44 24 18          	mov    %eax,0x18(%esp)
401a6d:	6a 1e                	push   $0x1e
401a6f:	33 db                	xor    %ebx,%ebx
401a71:	5f                   	pop    %edi
401a72:	89 5c 24 20          	mov    %ebx,0x20(%esp)
401a76:	89 7c 24 24          	mov    %edi,0x24(%esp)
401a7a:	8d 34 1f             	lea    (%edi,%ebx,1),%esi
401a7d:	d1 fe                	sar    $1,%esi
401a7f:	8b c6                	mov    %esi,%eax
401a81:	6b c0 0c             	imul   $0xc,%eax,%eax
401a84:	ff 74 04 40          	push   0x40(%esp,%eax,1)
401a88:	ff 74 24 14          	push   0x14(%esp)
401a8c:	e8 16 f5 01 00       	call   0x420fa7
401a91:	59                   	pop    %ecx
401a92:	59                   	pop    %ecx
401a93:	85 c0                	test   %eax,%eax
401a95:	79 09                	jns    0x401aa0
401a97:	8d 7e ff             	lea    -0x1(%esi),%edi
401a9a:	3b df                	cmp    %edi,%ebx
401a9c:	7e dc                	jle    0x401a7a
401a9e:	eb 06                	jmp    0x401aa6
401aa0:	0f 8f 23 01 00 00    	jg     0x401bc9
401aa6:	3b df                	cmp    %edi,%ebx
401aa8:	89 5c 24 20          	mov    %ebx,0x20(%esp)
401aac:	8b 5d 0c             	mov    0xc(%ebp),%ebx
401aaf:	89 7c 24 24          	mov    %edi,0x24(%esp)
401ab3:	8b 7c 24 3c          	mov    0x3c(%esp),%edi
401ab7:	0f 8f 56 4e 07 00    	jg     0x476913
401abd:	83 64 24 14 00       	andl   $0x0,0x14(%esp)
401ac2:	6b f6 0c             	imul   $0xc,%esi,%esi
401ac5:	8b 44 34 48          	mov    0x48(%esp,%esi,1),%eax
401ac9:	89 44 24 38          	mov    %eax,0x38(%esp)
401acd:	0f b7 08             	movzwl (%eax),%ecx
401ad0:	83 f9 64             	cmp    $0x64,%ecx
401ad3:	0f 85 c8 4a 07 00    	jne    0x4765a1
401ad9:	8d 4c 24 20          	lea    0x20(%esp),%ecx
401add:	51                   	push   %ecx
401ade:	8d 54 24 18          	lea    0x18(%esp),%edx
401ae2:	8b c8                	mov    %eax,%ecx
401ae4:	c7 44 24 18 01 00 00 	movl   $0x1,0x18(%esp)
401aeb:	00
401aec:	e8 17 01 00 00       	call   0x401c08
401af1:	59                   	pop    %ecx
401af2:	8d 4c 24 28          	lea    0x28(%esp),%ecx
401af6:	e8 25 11 01 00       	call   0x412c20
401afb:	8b 44 24 20          	mov    0x20(%esp),%eax
401aff:	c7 44 24 34 01 00 00 	movl   $0x1,0x34(%esp)
401b06:	00
401b07:	89 44 24 28          	mov    %eax,0x28(%esp)
401b0b:	8b 44 24 14          	mov    0x14(%esp),%eax
401b0f:	8b 4c 34 48          	mov    0x48(%esp,%esi,1),%ecx
401b13:	ff 44 24 14          	incl   0x14(%esp)
401b17:	0f b7 04 41          	movzwl (%ecx,%eax,2),%eax
401b1b:	83 f8 69             	cmp    $0x69,%eax
401b1e:	0f 8f d8 4d 07 00    	jg     0x4768fc
401b24:	0f 84 7f 4d 07 00    	je     0x4768a9
401b2a:	83 e8 23             	sub    $0x23,%eax
401b2d:	0f 84 ad 4b 07 00    	je     0x4766e0
401b33:	83 e8 30             	sub    $0x30,%eax
401b36:	0f 84 43 4b 07 00    	je     0x47667f
401b3c:	83 e8 0f             	sub    $0xf,%eax
401b3f:	0f 85 da 4a 07 00    	jne    0x47661f
401b45:	8b 44 34 44          	mov    0x44(%esp,%esi,1),%eax
401b49:	8b cb                	mov    %ebx,%ecx
401b4b:	0f b6 30             	movzbl (%eax),%esi
401b4e:	89 44 24 10          	mov    %eax,0x10(%esp)
401b52:	e8 c9 10 01 00       	call   0x412c20
401b57:	83 7c 24 1c 01       	cmpl   $0x1,0x1c(%esp)
401b5c:	c7 43 0c 01 00 00 00 	movl   $0x1,0xc(%ebx)
401b63:	89 33                	mov    %esi,(%ebx)
401b65:	76 22                	jbe    0x401b89
401b67:	8b 45 08             	mov    0x8(%ebp),%eax
401b6a:	6a 29                	push   $0x29
401b6c:	8b 48 04             	mov    0x4(%eax),%ecx
401b6f:	8b 49 04             	mov    0x4(%ecx),%ecx
401b72:	e8 75 00 00 00       	call   0x401bec
401b77:	84 c0                	test   %al,%al
401b79:	75 56                	jne    0x401bd1
401b7b:	83 7c 24 18 00       	cmpl   $0x0,0x18(%esp)
401b80:	8b 4c 24 10          	mov    0x10(%esp),%ecx
401b84:	0f 95 c0             	setne  %al
401b87:	88 01                	mov    %al,(%ecx)
401b89:	8b 44 24 14          	mov    0x14(%esp),%eax
401b8d:	8b 74 24 38          	mov    0x38(%esp),%esi
401b91:	8d 34 46             	lea    (%esi,%eax,2),%esi
401b94:	89 74 24 10          	mov    %esi,0x10(%esp)
401b98:	0f b7 06             	movzwl (%esi),%eax
401b9b:	85 c0                	test   %eax,%eax
401b9d:	75 3f                	jne    0x401bde
401b9f:	8d 4c 24 28          	lea    0x28(%esp),%ecx
401ba3:	e8 78 10 01 00       	call   0x412c20
401ba8:	5f                   	pop    %edi
401ba9:	5e                   	pop    %esi
401baa:	33 c0                	xor    %eax,%eax
401bac:	5b                   	pop    %ebx
401bad:	8b e5                	mov    %ebp,%esp
401baf:	5d                   	pop    %ebp
401bb0:	c2 08 00             	ret    $0x8
401bb3:	33 c9                	xor    %ecx,%ecx
401bb5:	89 4c 24 18          	mov    %ecx,0x18(%esp)
401bb9:	e9 af fe ff ff       	jmp    0x401a6d
401bbe:	33 f6                	xor    %esi,%esi
401bc0:	89 74 24 18          	mov    %esi,0x18(%esp)
401bc4:	e9 a4 fe ff ff       	jmp    0x401a6d
401bc9:	8d 5e 01             	lea    0x1(%esi),%ebx
401bcc:	e9 c9 fe ff ff       	jmp    0x401a9a
401bd1:	8d 4c 24 28          	lea    0x28(%esp),%ecx
401bd5:	e8 ac b6 00 00       	call   0x40d286
401bda:	85 c0                	test   %eax,%eax
401bdc:	eb a2                	jmp    0x401b80
401bde:	83 f8 2a             	cmp    $0x2a,%eax
401be1:	0f 84 86 fe ff ff    	je     0x401a6d
401be7:	e9 27 4d 07 00       	jmp    0x476913
401bec:	55                   	push   %ebp
401bed:	8b ec                	mov    %esp,%ebp
401bef:	56                   	push   %esi
401bf0:	6a 0a                	push   $0xa
401bf2:	8b f1                	mov    %ecx,%esi
401bf4:	e8 eb b9 00 00       	call   0x40d5e4
401bf9:	84 c0                	test   %al,%al
401bfb:	0f 85 b8 fe 06 00    	jne    0x471ab9
401c01:	33 c0                	xor    %eax,%eax
401c03:	5e                   	pop    %esi
401c04:	5d                   	pop    %ebp
401c05:	c2 04 00             	ret    $0x4
401c08:	55                   	push   %ebp
401c09:	8b ec                	mov    %esp,%ebp
401c0b:	51                   	push   %ecx
401c0c:	51                   	push   %ecx
401c0d:	56                   	push   %esi
401c0e:	57                   	push   %edi
401c0f:	8b f9                	mov    %ecx,%edi
401c11:	33 c0                	xor    %eax,%eax
401c13:	8b f2                	mov    %edx,%esi
401c15:	c7 45 f8 01 00 00 00 	movl   $0x1,-0x8(%ebp)
401c1c:	88 45 ff             	mov    %al,-0x1(%ebp)
401c1f:	85 ff                	test   %edi,%edi
401c21:	74 74                	je     0x401c97
401c23:	8b 06                	mov    (%esi),%eax
401c25:	0f b7 04 47          	movzwl (%edi,%eax,2),%eax
401c29:	50                   	push   %eax
401c2a:	e8 a1 fa 01 00       	call   0x4216d0
401c2f:	59                   	pop    %ecx
401c30:	85 c0                	test   %eax,%eax
401c32:	75 67                	jne    0x401c9b
401c34:	8b 0e                	mov    (%esi),%ecx
401c36:	53                   	push   %ebx
401c37:	0f b7 04 4f          	movzwl (%edi,%ecx,2),%eax
401c3b:	8b 5d 08             	mov    0x8(%ebp),%ebx
401c3e:	33 d2                	xor    %edx,%edx
401c40:	89 13                	mov    %edx,(%ebx)
401c42:	83 e8 2b             	sub    $0x2b,%eax
401c45:	74 5c                	je     0x401ca3
401c47:	48                   	dec    %eax
401c48:	48                   	dec    %eax
401c49:	74 54                	je     0x401c9f
401c4b:	8b 06                	mov    (%esi),%eax
401c4d:	66 39 14 47          	cmp    %dx,(%edi,%eax,2)
401c51:	74 34                	je     0x401c87
401c53:	8b 06                	mov    (%esi),%eax
401c55:	0f b7 04 47          	movzwl (%edi,%eax,2),%eax
401c59:	50                   	push   %eax
401c5a:	e8 c6 00 02 00       	call   0x421d25
401c5f:	59                   	pop    %ecx
401c60:	85 c0                	test   %eax,%eax
401c62:	74 23                	je     0x401c87
401c64:	8b 03                	mov    (%ebx),%eax
401c66:	8b 16                	mov    (%esi),%edx
401c68:	6b c0 0a             	imul   $0xa,%eax,%eax
401c6b:	0f b7 0c 57          	movzwl (%edi,%edx,2),%ecx
401c6f:	83 c0 d0             	add    $0xffffffd0,%eax
401c72:	03 c1                	add    %ecx,%eax
401c74:	8d 4a 01             	lea    0x1(%edx),%ecx
401c77:	89 03                	mov    %eax,(%ebx)
401c79:	33 c0                	xor    %eax,%eax
401c7b:	c6 45 ff 01          	movb   $0x1,-0x1(%ebp)
401c7f:	89 0e                	mov    %ecx,(%esi)
401c81:	66 39 04 4f          	cmp    %ax,(%edi,%ecx,2)
401c85:	75 cc                	jne    0x401c53
401c87:	8b 0b                	mov    (%ebx),%ecx
401c89:	0f af 4d f8          	imul   -0x8(%ebp),%ecx
401c8d:	8a 45 ff             	mov    -0x1(%ebp),%al
401c90:	89 0b                	mov    %ecx,(%ebx)
401c92:	5b                   	pop    %ebx
401c93:	5f                   	pop    %edi
401c94:	5e                   	pop    %esi
401c95:	c9                   	leave
401c96:	c3                   	ret
401c97:	32 c0                	xor    %al,%al
401c99:	eb f8                	jmp    0x401c93
401c9b:	ff 06                	incl   (%esi)
401c9d:	eb 84                	jmp    0x401c23
401c9f:	83 4d f8 ff          	orl    $0xffffffff,-0x8(%ebp)
401ca3:	8d 41 01             	lea    0x1(%ecx),%eax
401ca6:	89 06                	mov    %eax,(%esi)
401ca8:	eb a1                	jmp    0x401c4b
401caa:	55                   	push   %ebp
401cab:	8b ec                	mov    %esp,%ebp
401cad:	8b 55 08             	mov    0x8(%ebp),%edx
401cb0:	56                   	push   %esi
401cb1:	8b 02                	mov    (%edx),%eax
401cb3:	83 ec 10             	sub    $0x10,%esp
401cb6:	8b f4                	mov    %esp,%esi
401cb8:	81 c1 38 01 00 00    	add    $0x138,%ecx
401cbe:	89 06                	mov    %eax,(%esi)
401cc0:	8b 42 04             	mov    0x4(%edx),%eax
401cc3:	89 46 04             	mov    %eax,0x4(%esi)
401cc6:	8b 42 08             	mov    0x8(%edx),%eax
401cc9:	89 46 08             	mov    %eax,0x8(%esi)
401ccc:	8b 42 0c             	mov    0xc(%edx),%eax
401ccf:	89 46 0c             	mov    %eax,0xc(%esi)
401cd2:	ff 00                	incl   (%eax)
401cd4:	e8 57 a0 00 00       	call   0x40bd30
401cd9:	5e                   	pop    %esi
401cda:	5d                   	pop    %ebp
401cdb:	c2 04 00             	ret    $0x4
401cde:	55                   	push   %ebp
401cdf:	8b ec                	mov    %esp,%ebp
401ce1:	83 e4 f8             	and    $0xfffffff8,%esp
401ce4:	81 ec 9c 00 00 00    	sub    $0x9c,%esp
401cea:	53                   	push   %ebx
401ceb:	8b 5d 08             	mov    0x8(%ebp),%ebx
401cee:	56                   	push   %esi
401cef:	57                   	push   %edi
401cf0:	8b 7b 08             	mov    0x8(%ebx),%edi
401cf3:	68 00 04 00 00       	push   $0x400
401cf8:	8d 4c 24 24          	lea    0x24(%esp),%ecx
401cfc:	e8 0e 4e 00 00       	call   0x406b0f
401d01:	be 00 00 02 00       	mov    $0x20000,%esi
401d06:	56                   	push   %esi
401d07:	e8 de d7 01 00       	call   0x41f4ea
401d0c:	59                   	pop    %ecx
401d0d:	50                   	push   %eax
401d0e:	8d 4c 24 18          	lea    0x18(%esp),%ecx
401d12:	e8 a0 2a 00 00       	call   0x4047b7
401d17:	56                   	push   %esi
401d18:	e8 cd d7 01 00       	call   0x41f4ea
401d1d:	59                   	pop    %ecx
401d1e:	50                   	push   %eax
401d1f:	8d 4c 24 5c          	lea    0x5c(%esp),%ecx
401d23:	e8 8f 2a 00 00       	call   0x4047b7
401d28:	8b 43 04             	mov    0x4(%ebx),%eax
401d2b:	8b 30                	mov    (%eax),%esi
401d2d:	8b ce                	mov    %esi,%ecx
401d2f:	e8 38 76 00 00       	call   0x40936c
401d34:	8b 5e 08             	mov    0x8(%esi),%ebx
401d37:	8d 4c 24 48          	lea    0x48(%esp),%ecx
401d3b:	e8 b7 ba 00 00       	call   0x40d7f7
401d40:	8d 4c 24 60          	lea    0x60(%esp),%ecx
401d44:	e8 5e 09 00 00       	call   0x4026a7
401d49:	68 18 26 4b 00       	push   $0x4b2618
401d4e:	8d 4c 24 34          	lea    0x34(%esp),%ecx
401d52:	e8 c2 b0 00 00       	call   0x40ce19
401d57:	8d 44 24 30          	lea    0x30(%esp),%eax
401d5b:	50                   	push   %eax
401d5c:	8d 4c 24 64          	lea    0x64(%esp),%ecx
401d60:	e8 16 51 00 00       	call   0x406e7b
401d65:	8d 4c 24 30          	lea    0x30(%esp),%ecx
401d69:	e8 c9 ad 00 00       	call   0x40cb37
401d6e:	53                   	push   %ebx
401d6f:	8d 4c 24 64          	lea    0x64(%esp),%ecx
401d73:	e8 e6 50 00 00       	call   0x406e5e
401d78:	33 f6                	xor    %esi,%esi
401d7a:	8b ce                	mov    %esi,%ecx
401d7c:	8d 47 ff             	lea    -0x1(%edi),%eax
401d7f:	c7 44 24 30 4c dc 49 	movl   $0x49dc4c,0x30(%esp)
401d86:	00
401d87:	89 74 24 34          	mov    %esi,0x34(%esp)
401d8b:	89 74 24 38          	mov    %esi,0x38(%esp)
401d8f:	89 74 24 3c          	mov    %esi,0x3c(%esp)
401d93:	89 4c 24 10          	mov    %ecx,0x10(%esp)
401d97:	89 44 24 40          	mov    %eax,0x40(%esp)
401d9b:	3b 73 04             	cmp    0x4(%ebx),%esi
401d9e:	0f 8d 29 01 00 00    	jge    0x401ecd
401da4:	51                   	push   %ecx
401da5:	8d 44 24 34          	lea    0x34(%esp),%eax
401da9:	50                   	push   %eax
401daa:	56                   	push   %esi
401dab:	8d 4c 24 6c          	lea    0x6c(%esp),%ecx
401daf:	e8 1a 03 00 00       	call   0x4020ce
401db4:	85 c0                	test   %eax,%eax
401db6:	0f 8e 08 01 00 00    	jle    0x401ec4
401dbc:	8b 44 24 34          	mov    0x34(%esp),%eax
401dc0:	8d 4c 24 20          	lea    0x20(%esp),%ecx
401dc4:	8b 00                	mov    (%eax),%eax
401dc6:	8b 38                	mov    (%eax),%edi
401dc8:	8b 40 04             	mov    0x4(%eax),%eax
401dcb:	89 44 24 1c          	mov    %eax,0x1c(%esp)
401dcf:	8b c7                	mov    %edi,%eax
401dd1:	2b c6                	sub    %esi,%eax
401dd3:	50                   	push   %eax
401dd4:	56                   	push   %esi
401dd5:	53                   	push   %ebx
401dd6:	e8 a9 95 00 00       	call   0x40b384
401ddb:	8b 74 24 1c          	mov    0x1c(%esp),%esi
401ddf:	03 f7                	add    %edi,%esi
401de1:	57                   	push   %edi
401de2:	8b cb                	mov    %ebx,%ecx
401de4:	89 74 24 48          	mov    %esi,0x48(%esp)
401de8:	e8 99 02 00 00       	call   0x402086
401ded:	6a 25                	push   $0x25
401def:	59                   	pop    %ecx
401df0:	66 39 08             	cmp    %cx,(%eax)
401df3:	75 17                	jne    0x401e0c
401df5:	8d 47 01             	lea    0x1(%edi),%eax
401df8:	50                   	push   %eax
401df9:	8b cb                	mov    %ebx,%ecx
401dfb:	e8 86 02 00 00       	call   0x402086
401e00:	6a 25                	push   $0x25
401e02:	59                   	pop    %ecx
401e03:	66 39 08             	cmp    %cx,(%eax)
401e06:	0f 84 0f 01 00 00    	je     0x401f1b
401e0c:	57                   	push   %edi
401e0d:	8b cb                	mov    %ebx,%ecx
401e0f:	e8 72 02 00 00       	call   0x402086
401e14:	6a 5c                	push   $0x5c
401e16:	59                   	pop    %ecx