494bb1:	83 eb 01             	sub    $0x1,%ebx
494bb4:	75 eb                	jne    0x494ba1
494bb6:	8b b5 f4 fe ff ff    	mov    -0x10c(%ebp),%esi
494bbc:	8b 9d 04 ff ff ff    	mov    -0xfc(%ebp),%ebx
494bc2:	8b 85 00 ff ff ff    	mov    -0x100(%ebp),%eax
494bc8:	8b 95 08 ff ff ff    	mov    -0xf8(%ebp),%edx
494bce:	3b fb                	cmp    %ebx,%edi
494bd0:	0f 85 ed fe ff ff    	jne    0x494ac3
494bd6:	8b fe                	mov    %esi,%edi
494bd8:	e9 e6 fe ff ff       	jmp    0x494ac3
494bdd:	3b f9                	cmp    %ecx,%edi
494bdf:	73 3c                	jae    0x494c1d
494be1:	8b 9d f8 fe ff ff    	mov    -0x108(%ebp),%ebx
494be7:	eb 07                	jmp    0x494bf0
494be9:	8d a4 24 00 00 00 00 	lea    0x0(%esp),%esp
494bf0:	2b c8                	sub    %eax,%ecx
494bf2:	89 8d 04 ff ff ff    	mov    %ecx,-0xfc(%ebp)
494bf8:	3b cf                	cmp    %edi,%ecx
494bfa:	76 21                	jbe    0x494c1d
494bfc:	57                   	push   %edi
494bfd:	51                   	push   %ecx
494bfe:	8b cb                	mov    %ebx,%ecx
494c00:	ff 15 d4 e2 49 00    	call   *0x49e2d4
494c06:	ff d3                	call   *%ebx
494c08:	8b 8d 04 ff ff ff    	mov    -0xfc(%ebp),%ecx
494c0e:	83 c4 08             	add    $0x8,%esp
494c11:	85 c0                	test   %eax,%eax
494c13:	8b 85 00 ff ff ff    	mov    -0x100(%ebp),%eax
494c19:	74 d5                	je     0x494bf0
494c1b:	eb 44                	jmp    0x494c61
494c1d:	8b 9d f8 fe ff ff    	mov    -0x108(%ebp),%ebx
494c23:	8b b5 fc fe ff ff    	mov    -0x104(%ebp),%esi
494c29:	8d a4 24 00 00 00 00 	lea    0x0(%esp),%esp
494c30:	2b c8                	sub    %eax,%ecx
494c32:	89 8d 04 ff ff ff    	mov    %ecx,-0xfc(%ebp)
494c38:	3b ce                	cmp    %esi,%ecx
494c3a:	76 1f                	jbe    0x494c5b
494c3c:	57                   	push   %edi
494c3d:	51                   	push   %ecx
494c3e:	8b cb                	mov    %ebx,%ecx
494c40:	ff 15 d4 e2 49 00    	call   *0x49e2d4
494c46:	ff d3                	call   *%ebx
494c48:	8b 8d 04 ff ff ff    	mov    -0xfc(%ebp),%ecx
494c4e:	83 c4 08             	add    $0x8,%esp
494c51:	85 c0                	test   %eax,%eax
494c53:	8b 85 00 ff ff ff    	mov    -0x100(%ebp),%eax
494c59:	74 d5                	je     0x494c30
494c5b:	8b b5 f4 fe ff ff    	mov    -0x10c(%ebp),%esi
494c61:	8b 95 08 ff ff ff    	mov    -0xf8(%ebp),%edx
494c67:	8b ca                	mov    %edx,%ecx
494c69:	8b bd 04 ff ff ff    	mov    -0xfc(%ebp),%edi
494c6f:	2b ce                	sub    %esi,%ecx
494c71:	8b c7                	mov    %edi,%eax
494c73:	2b 85 fc fe ff ff    	sub    -0x104(%ebp),%eax
494c79:	3b c1                	cmp    %ecx,%eax
494c7b:	7c 3d                	jl     0x494cba
494c7d:	8b 85 fc fe ff ff    	mov    -0x104(%ebp),%eax
494c83:	3b c7                	cmp    %edi,%eax
494c85:	73 18                	jae    0x494c9f
494c87:	8b 8d e8 fe ff ff    	mov    -0x118(%ebp),%ecx
494c8d:	89 44 8d 84          	mov    %eax,-0x7c(%ebp,%ecx,4)
494c91:	89 bc 8d 0c ff ff ff 	mov    %edi,-0xf4(%ebp,%ecx,4)
494c98:	41                   	inc    %ecx
494c99:	89 8d e8 fe ff ff    	mov    %ecx,-0x118(%ebp)
494c9f:	8b 8d 08 ff ff ff    	mov    -0xf8(%ebp),%ecx
494ca5:	8b bd 00 ff ff ff    	mov    -0x100(%ebp),%edi
494cab:	3b f1                	cmp    %ecx,%esi
494cad:	73 44                	jae    0x494cf3
494caf:	89 b5 fc fe ff ff    	mov    %esi,-0x104(%ebp)
494cb5:	e9 f8 fb ff ff       	jmp    0x4948b2
494cba:	3b f2                	cmp    %edx,%esi
494cbc:	73 18                	jae    0x494cd6
494cbe:	8b 85 e8 fe ff ff    	mov    -0x118(%ebp),%eax
494cc4:	89 74 85 84          	mov    %esi,-0x7c(%ebp,%eax,4)
494cc8:	89 94 85 0c ff ff ff 	mov    %edx,-0xf4(%ebp,%eax,4)
494ccf:	40                   	inc    %eax
494cd0:	89 85 e8 fe ff ff    	mov    %eax,-0x118(%ebp)
494cd6:	8b b5 fc fe ff ff    	mov    -0x104(%ebp),%esi
494cdc:	3b f7                	cmp    %edi,%esi
494cde:	73 0d                	jae    0x494ced
494ce0:	8b cf                	mov    %edi,%ecx
494ce2:	8b bd 00 ff ff ff    	mov    -0x100(%ebp),%edi
494ce8:	e9 bf fb ff ff       	jmp    0x4948ac
494ced:	8b bd 00 ff ff ff    	mov    -0x100(%ebp),%edi
494cf3:	8b 85 e8 fe ff ff    	mov    -0x118(%ebp),%eax
494cf9:	83 e8 01             	sub    $0x1,%eax
494cfc:	89 85 e8 fe ff ff    	mov    %eax,-0x118(%ebp)
494d02:	0f 88 76 fb ff ff    	js     0x49487e
494d08:	8b 74 85 84          	mov    -0x7c(%ebp,%eax,4),%esi
494d0c:	8b 8c 85 0c ff ff ff 	mov    -0xf4(%ebp,%eax,4),%ecx
494d13:	89 b5 fc fe ff ff    	mov    %esi,-0x104(%ebp)
494d19:	e9 8e fb ff ff       	jmp    0x4948ac
494d1e:	cc                   	int3
494d1f:	cc                   	int3
494d20:	55                   	push   %ebp
494d21:	8b ec                	mov    %esp,%ebp
494d23:	56                   	push   %esi
494d24:	33 c0                	xor    %eax,%eax
494d26:	50                   	push   %eax
494d27:	50                   	push   %eax
494d28:	50                   	push   %eax
494d29:	50                   	push   %eax
494d2a:	50                   	push   %eax
494d2b:	50                   	push   %eax
494d2c:	50                   	push   %eax
494d2d:	50                   	push   %eax
494d2e:	8b 55 0c             	mov    0xc(%ebp),%edx
494d31:	8d 49 00             	lea    0x0(%ecx),%ecx
494d34:	8a 02                	mov    (%edx),%al
494d36:	0a c0                	or     %al,%al
494d38:	74 09                	je     0x494d43
494d3a:	83 c2 01             	add    $0x1,%edx
494d3d:	0f ab 04 24          	bts    %eax,(%esp)
494d41:	eb f1                	jmp    0x494d34
494d43:	8b 75 08             	mov    0x8(%ebp),%esi
494d46:	8b ff                	mov    %edi,%edi
494d48:	8a 06                	mov    (%esi),%al
494d4a:	0a c0                	or     %al,%al
494d4c:	74 0c                	je     0x494d5a
494d4e:	83 c6 01             	add    $0x1,%esi
494d51:	0f a3 04 24          	bt     %eax,(%esp)
494d55:	73 f1                	jae    0x494d48
494d57:	8d 46 ff             	lea    -0x1(%esi),%eax
494d5a:	83 c4 20             	add    $0x20,%esp
494d5d:	5e                   	pop    %esi
494d5e:	c9                   	leave
494d5f:	c3                   	ret
494d60:	e8 7b aa ff ff       	call   0x48f7e0
494d65:	33 c9                	xor    %ecx,%ecx
494d67:	84 c0                	test   %al,%al
494d69:	0f 94 c1             	sete   %cl
494d6c:	8b c1                	mov    %ecx,%eax
494d6e:	c3                   	ret
494d6f:	8b ff                	mov    %edi,%edi
494d71:	55                   	push   %ebp
494d72:	8b ec                	mov    %esp,%ebp
494d74:	83 3d c0 87 4c 00 00 	cmpl   $0x0,0x4c87c0
494d7b:	56                   	push   %esi
494d7c:	75 48                	jne    0x494dc6
494d7e:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
494d82:	75 17                	jne    0x494d9b
494d84:	e8 ac 51 fe ff       	call   0x479f35
494d89:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
494d8f:	e8 8d 48 fe ff       	call   0x479621
494d94:	b8 ff ff ff 7f       	mov    $0x7fffffff,%eax
494d99:	eb 3e                	jmp    0x494dd9
494d9b:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
494d9f:	74 e3                	je     0x494d84
494da1:	be ff ff ff 7f       	mov    $0x7fffffff,%esi
494da6:	39 75 10             	cmp    %esi,0x10(%ebp)
494da9:	76 14                	jbe    0x494dbf
494dab:	e8 85 51 fe ff       	call   0x479f35
494db0:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
494db6:	e8 66 48 fe ff       	call   0x479621
494dbb:	8b c6                	mov    %esi,%eax
494dbd:	eb 1a                	jmp    0x494dd9
494dbf:	5e                   	pop    %esi
494dc0:	5d                   	pop    %ebp
494dc1:	e9 13 56 fe ff       	jmp    0x47a3d9
494dc6:	6a 00                	push   $0x0
494dc8:	ff 75 10             	push   0x10(%ebp)
494dcb:	ff 75 0c             	push   0xc(%ebp)
494dce:	ff 75 08             	push   0x8(%ebp)
494dd1:	e8 06 00 00 00       	call   0x494ddc
494dd6:	83 c4 10             	add    $0x10,%esp
494dd9:	5e                   	pop    %esi
494dda:	5d                   	pop    %ebp
494ddb:	c3                   	ret
494ddc:	8b ff                	mov    %edi,%edi
494dde:	55                   	push   %ebp
494ddf:	8b ec                	mov    %esp,%ebp
494de1:	83 ec 10             	sub    $0x10,%esp
494de4:	57                   	push   %edi
494de5:	8b 7d 10             	mov    0x10(%ebp),%edi
494de8:	85 ff                	test   %edi,%edi
494dea:	75 07                	jne    0x494df3
494dec:	33 c0                	xor    %eax,%eax
494dee:	e9 a6 00 00 00       	jmp    0x494e99
494df3:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
494df7:	75 1a                	jne    0x494e13
494df9:	e8 37 51 fe ff       	call   0x479f35
494dfe:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
494e04:	e8 18 48 fe ff       	call   0x479621
494e09:	b8 ff ff ff 7f       	mov    $0x7fffffff,%eax
494e0e:	e9 86 00 00 00       	jmp    0x494e99
494e13:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
494e17:	74 e0                	je     0x494df9
494e19:	56                   	push   %esi
494e1a:	be ff ff ff 7f       	mov    $0x7fffffff,%esi
494e1f:	3b fe                	cmp    %esi,%edi
494e21:	76 12                	jbe    0x494e35
494e23:	e8 0d 51 fe ff       	call   0x479f35
494e28:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
494e2e:	e8 ee 47 fe ff       	call   0x479621
494e33:	eb 61                	jmp    0x494e96
494e35:	ff 75 14             	push   0x14(%ebp)
494e38:	8d 4d f0             	lea    -0x10(%ebp),%ecx
494e3b:	e8 d1 4c fe ff       	call   0x479b11
494e40:	8b 45 f4             	mov    -0xc(%ebp),%eax
494e43:	57                   	push   %edi
494e44:	ff 75 0c             	push   0xc(%ebp)
494e47:	8b 80 a4 00 00 00    	mov    0xa4(%eax),%eax
494e4d:	85 c0                	test   %eax,%eax
494e4f:	75 0f                	jne    0x494e60
494e51:	ff 75 08             	push   0x8(%ebp)
494e54:	e8 80 55 fe ff       	call   0x47a3d9
494e59:	83 c4 0c             	add    $0xc,%esp
494e5c:	8b f0                	mov    %eax,%esi
494e5e:	eb 26                	jmp    0x494e86
494e60:	57                   	push   %edi
494e61:	ff 75 08             	push   0x8(%ebp)
494e64:	68 01 10 00 00       	push   $0x1001
494e69:	50                   	push   %eax
494e6a:	e8 49 09 00 00       	call   0x4957b8
494e6f:	83 c4 18             	add    $0x18,%esp
494e72:	85 c0                	test   %eax,%eax
494e74:	75 0d                	jne    0x494e83
494e76:	e8 ba 50 fe ff       	call   0x479f35
494e7b:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
494e81:	eb 03                	jmp    0x494e86
494e83:	8d 70 fe             	lea    -0x2(%eax),%esi
494e86:	80 7d fc 00          	cmpb   $0x0,-0x4(%ebp)
494e8a:	74 0a                	je     0x494e96
494e8c:	8b 4d f0             	mov    -0x10(%ebp),%ecx
494e8f:	83 a1 50 03 00 00 fd 	andl   $0xfffffffd,0x350(%ecx)
494e96:	8b c6                	mov    %esi,%eax
494e98:	5e                   	pop    %esi
494e99:	5f                   	pop    %edi
494e9a:	c9                   	leave
494e9b:	c3                   	ret
494e9c:	8b ff                	mov    %edi,%edi
494e9e:	55                   	push   %ebp
494e9f:	8b ec                	mov    %esp,%ebp
494ea1:	8b 45 0c             	mov    0xc(%ebp),%eax
494ea4:	83 20 00             	andl   $0x0,(%eax)
494ea7:	83 60 04 00          	andl   $0x0,0x4(%eax)
494eab:	8b 45 08             	mov    0x8(%ebp),%eax
494eae:	5d                   	pop    %ebp
494eaf:	c3                   	ret
494eb0:	8b ff                	mov    %edi,%edi
494eb2:	55                   	push   %ebp
494eb3:	8b ec                	mov    %esp,%ebp
494eb5:	8b 45 08             	mov    0x8(%ebp),%eax
494eb8:	83 20 00             	andl   $0x0,(%eax)
494ebb:	83 60 04 00          	andl   $0x0,0x4(%eax)
494ebf:	8b 45 0c             	mov    0xc(%ebp),%eax
494ec2:	c6 40 1c 01          	movb   $0x1,0x1c(%eax)
494ec6:	c7 40 18 2a 00 00 00 	movl   $0x2a,0x18(%eax)
494ecd:	83 c8 ff             	or     $0xffffffff,%eax
494ed0:	5d                   	pop    %ebp
494ed1:	c3                   	ret
494ed2:	8b ff                	mov    %edi,%edi
494ed4:	55                   	push   %ebp
494ed5:	8b ec                	mov    %esp,%ebp
494ed7:	83 ec 24             	sub    $0x24,%esp
494eda:	a1 14 40 4c 00       	mov    0x4c4014,%eax
494edf:	33 c5                	xor    %ebp,%eax
494ee1:	89 45 fc             	mov    %eax,-0x4(%ebp)
494ee4:	8b 4d 08             	mov    0x8(%ebp),%ecx
494ee7:	8b 45 0c             	mov    0xc(%ebp),%eax
494eea:	53                   	push   %ebx
494eeb:	56                   	push   %esi
494eec:	8b 75 14             	mov    0x14(%ebp),%esi
494eef:	89 4d e8             	mov    %ecx,-0x18(%ebp)
494ef2:	8b 4d 18             	mov    0x18(%ebp),%ecx
494ef5:	89 45 e0             	mov    %eax,-0x20(%ebp)
494ef8:	89 4d e4             	mov    %ecx,-0x1c(%ebp)
494efb:	57                   	push   %edi
494efc:	85 f6                	test   %esi,%esi
494efe:	75 05                	jne    0x494f05
494f00:	be f0 8b 4c 00       	mov    $0x4c8bf0,%esi
494f05:	33 d2                	xor    %edx,%edx
494f07:	33 db                	xor    %ebx,%ebx
494f09:	42                   	inc    %edx
494f0a:	85 c0                	test   %eax,%eax
494f0c:	75 11                	jne    0x494f1f
494f0e:	8b c2                	mov    %edx,%eax
494f10:	bf ca 0c 4b 00       	mov    $0x4b0cca,%edi
494f15:	89 45 10             	mov    %eax,0x10(%ebp)
494f18:	8b c3                	mov    %ebx,%eax
494f1a:	89 45 e8             	mov    %eax,-0x18(%ebp)
494f1d:	eb 12                	jmp    0x494f31
494f1f:	8b f8                	mov    %eax,%edi
494f21:	39 5d 10             	cmp    %ebx,0x10(%ebp)
494f24:	75 08                	jne    0x494f2e
494f26:	6a fe                	push   $0xfffffffe
494f28:	58                   	pop    %eax
494f29:	e9 46 01 00 00       	jmp    0x495074
494f2e:	8b 45 e8             	mov    -0x18(%ebp),%eax
494f31:	66 39 5e 06          	cmp    %bx,0x6(%esi)
494f35:	75 5c                	jne    0x494f93
494f37:	8a 1f                	mov    (%edi),%bl
494f39:	47                   	inc    %edi
494f3a:	84 db                	test   %bl,%bl
494f3c:	78 18                	js     0x494f56
494f3e:	85 c0                	test   %eax,%eax
494f40:	74 08                	je     0x494f4a
494f42:	8b 4d e8             	mov    -0x18(%ebp),%ecx
494f45:	0f b6 c3             	movzbl %bl,%eax
494f48:	89 01                	mov    %eax,(%ecx)
494f4a:	33 c0                	xor    %eax,%eax
494f4c:	84 db                	test   %bl,%bl
494f4e:	0f 95 c0             	setne  %al
494f51:	e9 1e 01 00 00       	jmp    0x495074
494f56:	8a c3                	mov    %bl,%al
494f58:	24 e0                	and    $0xe0,%al
494f5a:	3c c0                	cmp    $0xc0,%al
494f5c:	75 04                	jne    0x494f62
494f5e:	b7 02                	mov    $0x2,%bh
494f60:	eb 1a                	jmp    0x494f7c
494f62:	8a c3                	mov    %bl,%al
494f64:	24 f0                	and    $0xf0,%al
494f66:	3c e0                	cmp    $0xe0,%al
494f68:	75 04                	jne    0x494f6e
494f6a:	b7 03                	mov    $0x3,%bh
494f6c:	eb 0e                	jmp    0x494f7c
494f6e:	8a c3                	mov    %bl,%al
494f70:	24 f8                	and    $0xf8,%al
494f72:	3c f0                	cmp    $0xf0,%al
494f74:	0f 85 f1 00 00 00    	jne    0x49506b
494f7a:	b7 04                	mov    $0x4,%bh
494f7c:	6a 07                	push   $0x7
494f7e:	0f b6 c7             	movzbl %bh,%eax
494f81:	59                   	pop    %ecx
494f82:	2b c8                	sub    %eax,%ecx
494f84:	88 7d ef             	mov    %bh,-0x11(%ebp)
494f87:	d3 e2                	shl    %cl,%edx
494f89:	0f b6 c3             	movzbl %bl,%eax
494f8c:	4a                   	dec    %edx
494f8d:	23 d0                	and    %eax,%edx
494f8f:	8a df                	mov    %bh,%bl
494f91:	eb 28                	jmp    0x494fbb
494f93:	8a 7e 04             	mov    0x4(%esi),%bh
494f96:	8a 5e 06             	mov    0x6(%esi),%bl
494f99:	8a c7                	mov    %bh,%al
494f9b:	8b 16                	mov    (%esi),%edx
494f9d:	2c 02                	sub    $0x2,%al
494f9f:	88 5d ef             	mov    %bl,-0x11(%ebp)
494fa2:	3c 02                	cmp    $0x2,%al
494fa4:	0f 87 c1 00 00 00    	ja     0x49506b
494faa:	80 fb 01             	cmp    $0x1,%bl
494fad:	0f 82 b8 00 00 00    	jb     0x49506b
494fb3:	3a df                	cmp    %bh,%bl
494fb5:	0f 83 b0 00 00 00    	jae    0x49506b
494fbb:	8b 4d 10             	mov    0x10(%ebp),%ecx
494fbe:	0f b6 c3             	movzbl %bl,%eax
494fc1:	89 45 dc             	mov    %eax,-0x24(%ebp)
494fc4:	3b c1                	cmp    %ecx,%eax
494fc6:	73 02                	jae    0x494fca
494fc8:	8b c8                	mov    %eax,%ecx