488d2a:	5e                   	pop    %esi
488d2b:	5d                   	pop    %ebp
488d2c:	c3                   	ret
488d2d:	8b ff                	mov    %edi,%edi
488d2f:	55                   	push   %ebp
488d30:	8b ec                	mov    %esp,%ebp
488d32:	83 ec 18             	sub    $0x18,%esp
488d35:	8b 45 08             	mov    0x8(%ebp),%eax
488d38:	8b c8                	mov    %eax,%ecx
488d3a:	53                   	push   %ebx
488d3b:	8b 5d 0c             	mov    0xc(%ebp),%ebx
488d3e:	83 e0 3f             	and    $0x3f,%eax
488d41:	c1 f9 06             	sar    $0x6,%ecx
488d44:	56                   	push   %esi
488d45:	57                   	push   %edi
488d46:	6b f8 38             	imul   $0x38,%eax,%edi
488d49:	8b 04 8d 00 88 4c 00 	mov    0x4c8800(,%ecx,4),%eax
488d50:	89 4d f4             	mov    %ecx,-0xc(%ebp)
488d53:	8b 4c 07 18          	mov    0x18(%edi,%eax,1),%ecx
488d57:	89 4d ec             	mov    %ecx,-0x14(%ebp)
488d5a:	8b 4d 10             	mov    0x10(%ebp),%ecx
488d5d:	85 c9                	test   %ecx,%ecx
488d5f:	74 0c                	je     0x488d6d
488d61:	80 3b 0a             	cmpb   $0xa,(%ebx)
488d64:	75 07                	jne    0x488d6d
488d66:	80 4c 07 28 04       	orb    $0x4,0x28(%edi,%eax,1)
488d6b:	eb 05                	jmp    0x488d72
488d6d:	80 64 07 28 fb       	andb   $0xfb,0x28(%edi,%eax,1)
488d72:	03 cb                	add    %ebx,%ecx
488d74:	8b c3                	mov    %ebx,%eax
488d76:	89 4d f0             	mov    %ecx,-0x10(%ebp)
488d79:	8b f3                	mov    %ebx,%esi
488d7b:	89 45 f8             	mov    %eax,-0x8(%ebp)
488d7e:	3b d9                	cmp    %ecx,%ebx
488d80:	0f 83 eb 00 00 00    	jae    0x488e71
488d86:	8a 10                	mov    (%eax),%dl
488d88:	80 fa 1a             	cmp    $0x1a,%dl
488d8b:	0f 84 c3 00 00 00    	je     0x488e54
488d91:	40                   	inc    %eax
488d92:	80 fa 0d             	cmp    $0xd,%dl
488d95:	74 07                	je     0x488d9e
488d97:	89 45 f8             	mov    %eax,-0x8(%ebp)
488d9a:	88 16                	mov    %dl,(%esi)
488d9c:	eb 26                	jmp    0x488dc4
488d9e:	3b c1                	cmp    %ecx,%eax
488da0:	73 30                	jae    0x488dd2
488da2:	8a 08                	mov    (%eax),%cl
488da4:	33 c0                	xor    %eax,%eax
488da6:	80 f9 0a             	cmp    $0xa,%cl
488da9:	0f 94 c0             	sete   %al
488dac:	40                   	inc    %eax
488dad:	01 45 f8             	add    %eax,-0x8(%ebp)
488db0:	80 f9 0a             	cmp    $0xa,%cl
488db3:	0f 94 c0             	sete   %al
488db6:	fe c8                	dec    %al
488db8:	24 03                	and    $0x3,%al
488dba:	04 0a                	add    $0xa,%al
488dbc:	88 06                	mov    %al,(%esi)
488dbe:	8b 45 f8             	mov    -0x8(%ebp),%eax
488dc1:	8b 4d f0             	mov    -0x10(%ebp),%ecx
488dc4:	33 d2                	xor    %edx,%edx
488dc6:	42                   	inc    %edx
488dc7:	03 f2                	add    %edx,%esi
488dc9:	3b c1                	cmp    %ecx,%eax
488dcb:	72 b9                	jb     0x488d86
488dcd:	e9 9f 00 00 00       	jmp    0x488e71
488dd2:	6a 00                	push   $0x0
488dd4:	8d 45 f0             	lea    -0x10(%ebp),%eax
488dd7:	50                   	push   %eax
488dd8:	6a 01                	push   $0x1
488dda:	8d 45 ff             	lea    -0x1(%ebp),%eax
488ddd:	50                   	push   %eax
488dde:	ff 75 ec             	push   -0x14(%ebp)
488de1:	ff 15 94 e1 49 00    	call   *0x49e194
488de7:	85 c0                	test   %eax,%eax
488de9:	74 64                	je     0x488e4f
488deb:	83 7d f0 00          	cmpl   $0x0,-0x10(%ebp)
488def:	74 5e                	je     0x488e4f
488df1:	8b 4d f4             	mov    -0xc(%ebp),%ecx
488df4:	8b 04 8d 00 88 4c 00 	mov    0x4c8800(,%ecx,4),%eax
488dfb:	f6 44 38 28 48       	testb  $0x48,0x28(%eax,%edi,1)
488e00:	74 27                	je     0x488e29
488e02:	8a 55 ff             	mov    -0x1(%ebp),%dl
488e05:	8d 46 01             	lea    0x1(%esi),%eax
488e08:	89 45 ec             	mov    %eax,-0x14(%ebp)
488e0b:	80 fa 0a             	cmp    $0xa,%dl
488e0e:	75 04                	jne    0x488e14
488e10:	88 16                	mov    %dl,(%esi)
488e12:	eb 11                	jmp    0x488e25
488e14:	c6 06 0d             	movb   $0xd,(%esi)
488e17:	8b 04 8d 00 88 4c 00 	mov    0x4c8800(,%ecx,4),%eax
488e1e:	88 54 38 2a          	mov    %dl,0x2a(%eax,%edi,1)
488e22:	8b 45 ec             	mov    -0x14(%ebp),%eax
488e25:	8b f0                	mov    %eax,%esi
488e27:	eb 48                	jmp    0x488e71
488e29:	80 7d ff 0a          	cmpb   $0xa,-0x1(%ebp)
488e2d:	75 09                	jne    0x488e38
488e2f:	3b f3                	cmp    %ebx,%esi
488e31:	75 05                	jne    0x488e38
488e33:	c6 06 0a             	movb   $0xa,(%esi)
488e36:	eb 38                	jmp    0x488e70
488e38:	6a 01                	push   $0x1
488e3a:	6a ff                	push   $0xffffffff
488e3c:	6a ff                	push   $0xffffffff
488e3e:	ff 75 08             	push   0x8(%ebp)
488e41:	e8 ea 08 00 00       	call   0x489730
488e46:	83 c4 10             	add    $0x10,%esp
488e49:	80 7d ff 0a          	cmpb   $0xa,-0x1(%ebp)
488e4d:	74 22                	je     0x488e71
488e4f:	c6 06 0d             	movb   $0xd,(%esi)
488e52:	eb 1c                	jmp    0x488e70
488e54:	8b 4d f4             	mov    -0xc(%ebp),%ecx
488e57:	8b 0c 8d 00 88 4c 00 	mov    0x4c8800(,%ecx,4),%ecx
488e5e:	8a 44 39 28          	mov    0x28(%ecx,%edi,1),%al
488e62:	a8 40                	test   $0x40,%al
488e64:	75 08                	jne    0x488e6e
488e66:	0c 02                	or     $0x2,%al
488e68:	88 44 39 28          	mov    %al,0x28(%ecx,%edi,1)
488e6c:	eb 03                	jmp    0x488e71
488e6e:	88 16                	mov    %dl,(%esi)
488e70:	46                   	inc    %esi
488e71:	2b f3                	sub    %ebx,%esi
488e73:	5f                   	pop    %edi
488e74:	8b c6                	mov    %esi,%eax
488e76:	5e                   	pop    %esi
488e77:	5b                   	pop    %ebx
488e78:	c9                   	leave
488e79:	c3                   	ret
488e7a:	8b ff                	mov    %edi,%edi
488e7c:	55                   	push   %ebp
488e7d:	8b ec                	mov    %esp,%ebp
488e7f:	83 ec 1c             	sub    $0x1c,%esp
488e82:	8b 45 08             	mov    0x8(%ebp),%eax
488e85:	8b c8                	mov    %eax,%ecx
488e87:	53                   	push   %ebx
488e88:	8b 5d 0c             	mov    0xc(%ebp),%ebx
488e8b:	83 e0 3f             	and    $0x3f,%eax
488e8e:	56                   	push   %esi
488e8f:	c1 f9 06             	sar    $0x6,%ecx
488e92:	57                   	push   %edi
488e93:	6b f8 38             	imul   $0x38,%eax,%edi
488e96:	89 4d f8             	mov    %ecx,-0x8(%ebp)
488e99:	8b 04 8d 00 88 4c 00 	mov    0x4c8800(,%ecx,4),%eax
488ea0:	6a 0a                	push   $0xa
488ea2:	5a                   	pop    %edx
488ea3:	89 55 e8             	mov    %edx,-0x18(%ebp)
488ea6:	8b 4c 38 18          	mov    0x18(%eax,%edi,1),%ecx
488eaa:	89 4d e4             	mov    %ecx,-0x1c(%ebp)
488ead:	8b 4d 10             	mov    0x10(%ebp),%ecx
488eb0:	85 c9                	test   %ecx,%ecx
488eb2:	74 0c                	je     0x488ec0
488eb4:	66 39 13             	cmp    %dx,(%ebx)
488eb7:	75 07                	jne    0x488ec0
488eb9:	80 4c 38 28 04       	orb    $0x4,0x28(%eax,%edi,1)
488ebe:	eb 05                	jmp    0x488ec5
488ec0:	80 64 38 28 fb       	andb   $0xfb,0x28(%eax,%edi,1)
488ec5:	8d 14 4b             	lea    (%ebx,%ecx,2),%edx
488ec8:	8b c3                	mov    %ebx,%eax
488eca:	89 55 f4             	mov    %edx,-0xc(%ebp)
488ecd:	8b f3                	mov    %ebx,%esi
488ecf:	89 45 fc             	mov    %eax,-0x4(%ebp)
488ed2:	3b da                	cmp    %edx,%ebx
488ed4:	0f 83 4e 01 00 00    	jae    0x489028
488eda:	c7 45 f0 0d 00 00 00 	movl   $0xd,-0x10(%ebp)
488ee1:	0f b7 08             	movzwl (%eax),%ecx
488ee4:	8b d1                	mov    %ecx,%edx
488ee6:	89 55 ec             	mov    %edx,-0x14(%ebp)
488ee9:	8b 55 f4             	mov    -0xc(%ebp),%edx
488eec:	83 f9 1a             	cmp    $0x1a,%ecx
488eef:	0f 84 13 01 00 00    	je     0x489008
488ef5:	83 c0 02             	add    $0x2,%eax
488ef8:	66 3b 4d f0          	cmp    -0x10(%ebp),%cx
488efc:	74 08                	je     0x488f06
488efe:	89 45 fc             	mov    %eax,-0x4(%ebp)
488f01:	66 89 0e             	mov    %cx,(%esi)
488f04:	eb 36                	jmp    0x488f3c
488f06:	3b c2                	cmp    %edx,%eax
488f08:	73 40                	jae    0x488f4a
488f0a:	0f b7 00             	movzwl (%eax),%eax
488f0d:	33 c9                	xor    %ecx,%ecx
488f0f:	66 3b 45 e8          	cmp    -0x18(%ebp),%ax
488f13:	8b d0                	mov    %eax,%edx
488f15:	6a 0a                	push   $0xa
488f17:	0f 94 c1             	sete   %cl
488f1a:	33 c0                	xor    %eax,%eax
488f1c:	8d 0c 4d 02 00 00 00 	lea    0x2(,%ecx,2),%ecx
488f23:	01 4d fc             	add    %ecx,-0x4(%ebp)
488f26:	59                   	pop    %ecx
488f27:	66 3b d1             	cmp    %cx,%dx
488f2a:	8b 55 f4             	mov    -0xc(%ebp),%edx
488f2d:	0f 94 c0             	sete   %al
488f30:	48                   	dec    %eax
488f31:	83 e0 03             	and    $0x3,%eax
488f34:	03 c1                	add    %ecx,%eax
488f36:	66 89 06             	mov    %ax,(%esi)
488f39:	8b 45 fc             	mov    -0x4(%ebp),%eax
488f3c:	6a 02                	push   $0x2
488f3e:	59                   	pop    %ecx
488f3f:	03 f1                	add    %ecx,%esi
488f41:	3b c2                	cmp    %edx,%eax
488f43:	72 9c                	jb     0x488ee1
488f45:	e9 de 00 00 00       	jmp    0x489028
488f4a:	6a 00                	push   $0x0
488f4c:	8d 45 e8             	lea    -0x18(%ebp),%eax
488f4f:	50                   	push   %eax
488f50:	6a 02                	push   $0x2
488f52:	8d 45 fc             	lea    -0x4(%ebp),%eax
488f55:	50                   	push   %eax
488f56:	ff 75 e4             	push   -0x1c(%ebp)
488f59:	ff 15 94 e1 49 00    	call   *0x49e194
488f5f:	85 c0                	test   %eax,%eax
488f61:	0f 84 9c 00 00 00    	je     0x489003
488f67:	83 7d e8 00          	cmpl   $0x0,-0x18(%ebp)
488f6b:	0f 84 92 00 00 00    	je     0x489003
488f71:	8b 55 f8             	mov    -0x8(%ebp),%edx
488f74:	6a 0a                	push   $0xa
488f76:	8b 04 95 00 88 4c 00 	mov    0x4c8800(,%edx,4),%eax
488f7d:	f6 44 38 28 48       	testb  $0x48,0x28(%eax,%edi,1)
488f82:	74 55                	je     0x488fd9
488f84:	8d 46 02             	lea    0x2(%esi),%eax
488f87:	89 45 e4             	mov    %eax,-0x1c(%ebp)
488f8a:	66 8b 45 fc          	mov    -0x4(%ebp),%ax
488f8e:	59                   	pop    %ecx
488f8f:	66 89 45 fe          	mov    %ax,-0x2(%ebp)
488f93:	66 3b c1             	cmp    %cx,%ax
488f96:	75 05                	jne    0x488f9d
488f98:	66 89 0e             	mov    %cx,(%esi)
488f9b:	eb 37                	jmp    0x488fd4
488f9d:	6a 0d                	push   $0xd
488f9f:	59                   	pop    %ecx
488fa0:	66 89 0e             	mov    %cx,(%esi)
488fa3:	0f b7 c8             	movzwl %ax,%ecx
488fa6:	8b 04 95 00 88 4c 00 	mov    0x4c8800(,%edx,4),%eax
488fad:	66 8b 55 fe          	mov    -0x2(%ebp),%dx
488fb1:	c1 e9 08             	shr    $0x8,%ecx
488fb4:	6a 0a                	push   $0xa
488fb6:	88 54 38 2a          	mov    %dl,0x2a(%eax,%edi,1)
488fba:	8b 55 f8             	mov    -0x8(%ebp),%edx
488fbd:	8b 04 95 00 88 4c 00 	mov    0x4c8800(,%edx,4),%eax
488fc4:	88 4c 38 2b          	mov    %cl,0x2b(%eax,%edi,1)
488fc8:	8b 04 95 00 88 4c 00 	mov    0x4c8800(,%edx,4),%eax
488fcf:	59                   	pop    %ecx
488fd0:	88 4c 38 2c          	mov    %cl,0x2c(%eax,%edi,1)
488fd4:	8b 75 e4             	mov    -0x1c(%ebp),%esi
488fd7:	eb 4f                	jmp    0x489028
488fd9:	58                   	pop    %eax
488fda:	66 39 45 fc          	cmp    %ax,-0x4(%ebp)
488fde:	75 09                	jne    0x488fe9
488fe0:	3b f3                	cmp    %ebx,%esi
488fe2:	75 05                	jne    0x488fe9
488fe4:	66 89 06             	mov    %ax,(%esi)
488fe7:	eb 3c                	jmp    0x489025
488fe9:	6a 01                	push   $0x1
488feb:	6a ff                	push   $0xffffffff
488fed:	6a fe                	push   $0xfffffffe
488fef:	ff 75 08             	push   0x8(%ebp)
488ff2:	e8 39 07 00 00       	call   0x489730
488ff7:	83 c4 10             	add    $0x10,%esp
488ffa:	6a 0a                	push   $0xa
488ffc:	58                   	pop    %eax
488ffd:	66 39 45 fc          	cmp    %ax,-0x4(%ebp)
489001:	74 25                	je     0x489028
489003:	6a 0d                	push   $0xd
489005:	58                   	pop    %eax
489006:	eb dc                	jmp    0x488fe4
489008:	8b 55 f8             	mov    -0x8(%ebp),%edx
48900b:	8b 14 95 00 88 4c 00 	mov    0x4c8800(,%edx,4),%edx
489012:	8a 44 3a 28          	mov    0x28(%edx,%edi,1),%al
489016:	a8 40                	test   $0x40,%al
489018:	75 08                	jne    0x489022
48901a:	0c 02                	or     $0x2,%al
48901c:	88 44 3a 28          	mov    %al,0x28(%edx,%edi,1)
489020:	eb 06                	jmp    0x489028
489022:	66 89 0e             	mov    %cx,(%esi)
489025:	83 c6 02             	add    $0x2,%esi
489028:	2b f3                	sub    %ebx,%esi
48902a:	83 e6 fe             	and    $0xfffffffe,%esi
48902d:	5f                   	pop    %edi
48902e:	8b c6                	mov    %esi,%eax
489030:	5e                   	pop    %esi
489031:	5b                   	pop    %ebx
489032:	c9                   	leave
489033:	c3                   	ret
489034:	8b ff                	mov    %edi,%edi
489036:	55                   	push   %ebp
489037:	8b ec                	mov    %esp,%ebp
489039:	51                   	push   %ecx
48903a:	51                   	push   %ecx
48903b:	53                   	push   %ebx
48903c:	ff 75 10             	push   0x10(%ebp)
48903f:	8b 5d 0c             	mov    0xc(%ebp),%ebx
489042:	53                   	push   %ebx
489043:	ff 75 08             	push   0x8(%ebp)
489046:	e8 e2 fc ff ff       	call   0x488d2d
48904b:	8b c8                	mov    %eax,%ecx
48904d:	83 c4 0c             	add    $0xc,%esp
489050:	85 c9                	test   %ecx,%ecx
489052:	0f 84 30 01 00 00    	je     0x489188
489058:	8b 45 08             	mov    0x8(%ebp),%eax
48905b:	8b 55 08             	mov    0x8(%ebp),%edx
48905e:	83 e0 3f             	and    $0x3f,%eax
489061:	c1 fa 06             	sar    $0x6,%edx
489064:	57                   	push   %edi
489065:	6b f8 38             	imul   $0x38,%eax,%edi
489068:	89 55 fc             	mov    %edx,-0x4(%ebp)
48906b:	8b 04 95 00 88 4c 00 	mov    0x4c8800(,%edx,4),%eax
489072:	89 45 f8             	mov    %eax,-0x8(%ebp)
489075:	80 7c 38 29 00       	cmpb   $0x0,0x29(%eax,%edi,1)
48907a:	75 07                	jne    0x489083
48907c:	8b c1                	mov    %ecx,%eax
48907e:	e9 04 01 00 00       	jmp    0x489187
489083:	8d 04 19             	lea    (%ecx,%ebx,1),%eax
489086:	56                   	push   %esi
489087:	8d 70 ff             	lea    -0x1(%eax),%esi
48908a:	8a 0e                	mov    (%esi),%cl
48908c:	84 c9                	test   %cl,%cl
48908e:	78 07                	js     0x489097
489090:	8b f0                	mov    %eax,%esi
489092:	e9 9b 00 00 00       	jmp    0x489132
489097:	33 d2                	xor    %edx,%edx
489099:	0f b6 c1             	movzbl %cl,%eax
48909c:	42                   	inc    %edx
48909d:	eb 0e                	jmp    0x4890ad
48909f:	83 fa 04             	cmp    $0x4,%edx
4890a2:	77 12                	ja     0x4890b6
4890a4:	3b f3                	cmp    %ebx,%esi
4890a6:	72 0e                	jb     0x4890b6
4890a8:	4e                   	dec    %esi
4890a9:	42                   	inc    %edx
4890aa:	0f b6 06             	movzbl (%esi),%eax
4890ad:	80 b8 d0 42 4c 00 00 	cmpb   $0x0,0x4c42d0(%eax)
4890b4:	74 e9                	je     0x48909f
4890b6:	8a 0e                	mov    (%esi),%cl
4890b8:	0f b6 c1             	movzbl %cl,%eax
4890bb:	0f be 80 d0 42 4c 00 	movsbl 0x4c42d0(%eax),%eax
4890c2:	85 c0                	test   %eax,%eax
4890c4:	75 10                	jne    0x4890d6
4890c6:	e8 6a 0e ff ff       	call   0x479f35
4890cb:	c7 00 2a 00 00 00    	movl   $0x2a,(%eax)
4890d1:	e9 88 00 00 00       	jmp    0x48915e
4890d6:	40                   	inc    %eax
4890d7:	3b c2                	cmp    %edx,%eax
4890d9:	75 04                	jne    0x4890df
4890db:	03 f2                	add    %edx,%esi
4890dd:	eb 53                	jmp    0x489132
4890df:	8b 45 f8             	mov    -0x8(%ebp),%eax
4890e2:	f6 44 38 28 48       	testb  $0x48,0x28(%eax,%edi,1)
4890e7:	74 35                	je     0x48911e
4890e9:	46                   	inc    %esi
4890ea:	88 4c 38 2a          	mov    %cl,0x2a(%eax,%edi,1)