5d6aa6:	3b ce                	cmp    %esi,%ecx
5d6aa8:	74 08                	je     0x5d6ab2
5d6aaa:	33 c0                	xor    %eax,%eax
5d6aac:	66 89 04 4f          	mov    %ax,(%edi,%ecx,2)
5d6ab0:	eb 5b                	jmp    0x5d6b0d
5d6ab2:	85 c0                	test   %eax,%eax
5d6ab4:	78 57                	js     0x5d6b0d
5d6ab6:	3b c6                	cmp    %esi,%eax
5d6ab8:	77 32                	ja     0x5d6aec
5d6aba:	eb 51                	jmp    0x5d6b0d
5d6abc:	8b 8d 8c fb ff ff    	mov    -0x474(%ebp),%ecx
5d6ac2:	0b cb                	or     %ebx,%ecx
5d6ac4:	74 22                	je     0x5d6ae8
5d6ac6:	85 f6                	test   %esi,%esi
5d6ac8:	74 43                	je     0x5d6b0d
5d6aca:	85 c0                	test   %eax,%eax
5d6acc:	79 07                	jns    0x5d6ad5
5d6ace:	33 c0                	xor    %eax,%eax
5d6ad0:	66 89 07             	mov    %ax,(%edi)
5d6ad3:	eb 38                	jmp    0x5d6b0d
5d6ad5:	8b 85 98 fb ff ff    	mov    -0x468(%ebp),%eax
5d6adb:	3b c6                	cmp    %esi,%eax
5d6add:	75 28                	jne    0x5d6b07
5d6adf:	33 c0                	xor    %eax,%eax
5d6ae1:	66 89 44 77 fe       	mov    %ax,-0x2(%edi,%esi,2)
5d6ae6:	eb 25                	jmp    0x5d6b0d
5d6ae8:	85 f6                	test   %esi,%esi
5d6aea:	75 05                	jne    0x5d6af1
5d6aec:	83 ce ff             	or     $0xffffffff,%esi
5d6aef:	eb 22                	jmp    0x5d6b13
5d6af1:	8b 85 98 fb ff ff    	mov    -0x468(%ebp),%eax
5d6af7:	3b c6                	cmp    %esi,%eax
5d6af9:	75 0c                	jne    0x5d6b07
5d6afb:	33 c0                	xor    %eax,%eax
5d6afd:	6a fe                	push   $0xfffffffe
5d6aff:	66 89 44 77 fe       	mov    %ax,-0x2(%edi,%esi,2)
5d6b04:	5e                   	pop    %esi
5d6b05:	eb 0c                	jmp    0x5d6b13
5d6b07:	33 c9                	xor    %ecx,%ecx
5d6b09:	66 89 0c 47          	mov    %cx,(%edi,%eax,2)
5d6b0d:	8b b5 a0 fb ff ff    	mov    -0x460(%ebp),%esi
5d6b13:	8d 8d e0 fb ff ff    	lea    -0x420(%ebp),%ecx
5d6b19:	e8 c6 1a 00 00       	call   0x5d85e4
5d6b1e:	8b c6                	mov    %esi,%eax
5d6b20:	5f                   	pop    %edi
5d6b21:	8b 4d fc             	mov    -0x4(%ebp),%ecx
5d6b24:	5e                   	pop    %esi
5d6b25:	33 cd                	xor    %ebp,%ecx
5d6b27:	5b                   	pop    %ebx
5d6b28:	e8 f9 ae ff ff       	call   0x5d1a26
5d6b2d:	c9                   	leave
5d6b2e:	c3                   	ret
5d6b2f:	83 b9 04 04 00 00 00 	cmpl   $0x0,0x404(%ecx)
5d6b36:	75 06                	jne    0x5d6b3e
5d6b38:	b8 00 02 00 00       	mov    $0x200,%eax
5d6b3d:	c3                   	ret
5d6b3e:	8b 81 00 04 00 00    	mov    0x400(%ecx),%eax
5d6b44:	d1 e8                	shr    $1,%eax
5d6b46:	c3                   	ret
5d6b47:	83 b9 04 04 00 00 00 	cmpl   $0x0,0x404(%ecx)
5d6b4e:	75 06                	jne    0x5d6b56
5d6b50:	b8 00 01 00 00       	mov    $0x100,%eax
5d6b55:	c3                   	ret
5d6b56:	8b 81 00 04 00 00    	mov    0x400(%ecx),%eax
5d6b5c:	c1 e8 02             	shr    $0x2,%eax
5d6b5f:	c3                   	ret
5d6b60:	8b ff                	mov    %edi,%edi
5d6b62:	55                   	push   %ebp
5d6b63:	8b ec                	mov    %esp,%ebp
5d6b65:	51                   	push   %ecx
5d6b66:	56                   	push   %esi
5d6b67:	8b 75 08             	mov    0x8(%ebp),%esi
5d6b6a:	57                   	push   %edi
5d6b6b:	8b f9                	mov    %ecx,%edi
5d6b6d:	81 fe ff ff ff 7f    	cmp    $0x7fffffff,%esi
5d6b73:	76 12                	jbe    0x5d6b87
5d6b75:	8b 45 0c             	mov    0xc(%ebp),%eax
5d6b78:	c6 40 1c 01          	movb   $0x1,0x1c(%eax)
5d6b7c:	c7 40 18 0c 00 00 00 	movl   $0xc,0x18(%eax)
5d6b83:	32 c0                	xor    %al,%al
5d6b85:	eb 54                	jmp    0x5d6bdb
5d6b87:	53                   	push   %ebx
5d6b88:	8d 9f 04 04 00 00    	lea    0x404(%edi),%ebx
5d6b8e:	03 f6                	add    %esi,%esi
5d6b90:	83 3b 00             	cmpl   $0x0,(%ebx)
5d6b93:	75 08                	jne    0x5d6b9d
5d6b95:	81 fe 00 04 00 00    	cmp    $0x400,%esi
5d6b9b:	76 3b                	jbe    0x5d6bd8
5d6b9d:	3b b7 00 04 00 00    	cmp    0x400(%edi),%esi
5d6ba3:	76 33                	jbe    0x5d6bd8
5d6ba5:	56                   	push   %esi
5d6ba6:	e8 b1 46 01 00       	call   0x5eb25c
5d6bab:	89 45 fc             	mov    %eax,-0x4(%ebp)
5d6bae:	59                   	pop    %ecx
5d6baf:	85 c0                	test   %eax,%eax
5d6bb1:	75 0b                	jne    0x5d6bbe
5d6bb3:	50                   	push   %eax
5d6bb4:	e8 69 46 01 00       	call   0x5eb222
5d6bb9:	59                   	pop    %ecx
5d6bba:	32 c0                	xor    %al,%al
5d6bbc:	eb 1c                	jmp    0x5d6bda
5d6bbe:	8d 45 fc             	lea    -0x4(%ebp),%eax
5d6bc1:	8b cb                	mov    %ebx,%ecx
5d6bc3:	50                   	push   %eax
5d6bc4:	e8 35 1a 00 00       	call   0x5d85fe
5d6bc9:	ff 75 fc             	push   -0x4(%ebp)
5d6bcc:	89 b7 00 04 00 00    	mov    %esi,0x400(%edi)
5d6bd2:	e8 4b 46 01 00       	call   0x5eb222
5d6bd7:	59                   	pop    %ecx
5d6bd8:	b0 01                	mov    $0x1,%al
5d6bda:	5b                   	pop    %ebx
5d6bdb:	5f                   	pop    %edi
5d6bdc:	5e                   	pop    %esi
5d6bdd:	c9                   	leave
5d6bde:	c2 08 00             	ret    $0x8
5d6be1:	8b ff                	mov    %edi,%edi
5d6be3:	55                   	push   %ebp
5d6be4:	8b ec                	mov    %esp,%ebp
5d6be6:	51                   	push   %ecx
5d6be7:	56                   	push   %esi
5d6be8:	8b 75 08             	mov    0x8(%ebp),%esi
5d6beb:	57                   	push   %edi
5d6bec:	8b f9                	mov    %ecx,%edi
5d6bee:	81 fe ff ff ff 3f    	cmp    $0x3fffffff,%esi
5d6bf4:	76 12                	jbe    0x5d6c08
5d6bf6:	8b 45 0c             	mov    0xc(%ebp),%eax
5d6bf9:	c6 40 1c 01          	movb   $0x1,0x1c(%eax)
5d6bfd:	c7 40 18 0c 00 00 00 	movl   $0xc,0x18(%eax)
5d6c04:	32 c0                	xor    %al,%al
5d6c06:	eb 55                	jmp    0x5d6c5d
5d6c08:	53                   	push   %ebx
5d6c09:	8d 9f 04 04 00 00    	lea    0x404(%edi),%ebx
5d6c0f:	c1 e6 02             	shl    $0x2,%esi
5d6c12:	83 3b 00             	cmpl   $0x0,(%ebx)
5d6c15:	75 08                	jne    0x5d6c1f
5d6c17:	81 fe 00 04 00 00    	cmp    $0x400,%esi
5d6c1d:	76 3b                	jbe    0x5d6c5a
5d6c1f:	3b b7 00 04 00 00    	cmp    0x400(%edi),%esi
5d6c25:	76 33                	jbe    0x5d6c5a
5d6c27:	56                   	push   %esi
5d6c28:	e8 2f 46 01 00       	call   0x5eb25c
5d6c2d:	89 45 fc             	mov    %eax,-0x4(%ebp)
5d6c30:	59                   	pop    %ecx
5d6c31:	85 c0                	test   %eax,%eax
5d6c33:	75 0b                	jne    0x5d6c40
5d6c35:	50                   	push   %eax
5d6c36:	e8 e7 45 01 00       	call   0x5eb222
5d6c3b:	59                   	pop    %ecx
5d6c3c:	32 c0                	xor    %al,%al
5d6c3e:	eb 1c                	jmp    0x5d6c5c
5d6c40:	8d 45 fc             	lea    -0x4(%ebp),%eax
5d6c43:	8b cb                	mov    %ebx,%ecx
5d6c45:	50                   	push   %eax
5d6c46:	e8 b3 19 00 00       	call   0x5d85fe
5d6c4b:	ff 75 fc             	push   -0x4(%ebp)
5d6c4e:	89 b7 00 04 00 00    	mov    %esi,0x400(%edi)
5d6c54:	e8 c9 45 01 00       	call   0x5eb222
5d6c59:	59                   	pop    %ecx
5d6c5a:	b0 01                	mov    $0x1,%al
5d6c5c:	5b                   	pop    %ebx
5d6c5d:	5f                   	pop    %edi
5d6c5e:	5e                   	pop    %esi
5d6c5f:	c9                   	leave
5d6c60:	c2 08 00             	ret    $0x8
5d6c63:	8b ff                	mov    %edi,%edi
5d6c65:	55                   	push   %ebp
5d6c66:	8b ec                	mov    %esp,%ebp
5d6c68:	f6 45 08 04          	testb  $0x4,0x8(%ebp)
5d6c6c:	75 25                	jne    0x5d6c93
5d6c6e:	f6 45 08 01          	testb  $0x1,0x8(%ebp)
5d6c72:	74 0f                	je     0x5d6c83
5d6c74:	f6 45 08 02          	testb  $0x2,0x8(%ebp)
5d6c78:	74 0d                	je     0x5d6c87
5d6c7a:	81 7d 0c 00 00 00 80 	cmpl   $0x80000000,0xc(%ebp)
5d6c81:	77 10                	ja     0x5d6c93
5d6c83:	32 c0                	xor    %al,%al
5d6c85:	5d                   	pop    %ebp
5d6c86:	c3                   	ret
5d6c87:	81 7d 0c ff ff ff 7f 	cmpl   $0x7fffffff,0xc(%ebp)
5d6c8e:	0f 97 c0             	seta   %al
5d6c91:	5d                   	pop    %ebp
5d6c92:	c3                   	ret
5d6c93:	b0 01                	mov    $0x1,%al
5d6c95:	5d                   	pop    %ebp
5d6c96:	c3                   	ret
5d6c97:	8b ff                	mov    %edi,%edi
5d6c99:	55                   	push   %ebp
5d6c9a:	8b ec                	mov    %esp,%ebp
5d6c9c:	8b 45 14             	mov    0x14(%ebp),%eax
5d6c9f:	48                   	dec    %eax
5d6ca0:	83 e8 01             	sub    $0x1,%eax
5d6ca3:	74 1f                	je     0x5d6cc4
5d6ca5:	83 e8 01             	sub    $0x1,%eax
5d6ca8:	74 16                	je     0x5d6cc0
5d6caa:	83 e8 09             	sub    $0x9,%eax
5d6cad:	74 11                	je     0x5d6cc0
5d6caf:	83 7d 14 0d          	cmpl   $0xd,0x14(%ebp)
5d6cb3:	74 0f                	je     0x5d6cc4
5d6cb5:	8a 45 10             	mov    0x10(%ebp),%al
5d6cb8:	3c 63                	cmp    $0x63,%al
5d6cba:	74 08                	je     0x5d6cc4
5d6cbc:	3c 73                	cmp    $0x73,%al
5d6cbe:	74 04                	je     0x5d6cc4
5d6cc0:	b0 01                	mov    $0x1,%al
5d6cc2:	5d                   	pop    %ebp
5d6cc3:	c3                   	ret
5d6cc4:	32 c0                	xor    %al,%al
5d6cc6:	5d                   	pop    %ebp
5d6cc7:	c3                   	ret
5d6cc8:	8b ff                	mov    %edi,%edi
5d6cca:	55                   	push   %ebp
5d6ccb:	8b ec                	mov    %esp,%ebp
5d6ccd:	8b 45 14             	mov    0x14(%ebp),%eax
5d6cd0:	48                   	dec    %eax
5d6cd1:	83 e8 01             	sub    $0x1,%eax
5d6cd4:	74 3c                	je     0x5d6d12
5d6cd6:	83 e8 01             	sub    $0x1,%eax
5d6cd9:	74 33                	je     0x5d6d0e
5d6cdb:	83 e8 09             	sub    $0x9,%eax
5d6cde:	74 2e                	je     0x5d6d0e
5d6ce0:	83 7d 14 0d          	cmpl   $0xd,0x14(%ebp)
5d6ce4:	74 28                	je     0x5d6d0e
5d6ce6:	8b 45 08             	mov    0x8(%ebp),%eax
5d6ce9:	83 e0 04             	and    $0x4,%eax
5d6cec:	83 c8 00             	or     $0x0,%eax
5d6cef:	6a 01                	push   $0x1
5d6cf1:	58                   	pop    %eax
5d6cf2:	74 04                	je     0x5d6cf8
5d6cf4:	8a c8                	mov    %al,%cl
5d6cf6:	eb 02                	jmp    0x5d6cfa
5d6cf8:	32 c9                	xor    %cl,%cl
5d6cfa:	66 83 7d 10 63       	cmpw   $0x63,0x10(%ebp)
5d6cff:	74 07                	je     0x5d6d08
5d6d01:	66 83 7d 10 73       	cmpw   $0x73,0x10(%ebp)
5d6d06:	75 02                	jne    0x5d6d0a
5d6d08:	32 c0                	xor    %al,%al
5d6d0a:	32 c1                	xor    %cl,%al
5d6d0c:	5d                   	pop    %ebp
5d6d0d:	c3                   	ret
5d6d0e:	b0 01                	mov    $0x1,%al
5d6d10:	5d                   	pop    %ebp
5d6d11:	c3                   	ret
5d6d12:	32 c0                	xor    %al,%al
5d6d14:	5d                   	pop    %ebp
5d6d15:	c3                   	ret
5d6d16:	8b ff                	mov    %edi,%edi
5d6d18:	55                   	push   %ebp
5d6d19:	8b ec                	mov    %esp,%ebp
5d6d1b:	8b 45 08             	mov    0x8(%ebp),%eax
5d6d1e:	8b 4d 10             	mov    0x10(%ebp),%ecx
5d6d21:	8b 55 0c             	mov    0xc(%ebp),%edx
5d6d24:	89 10                	mov    %edx,(%eax)
5d6d26:	89 48 04             	mov    %ecx,0x4(%eax)
5d6d29:	85 c9                	test   %ecx,%ecx
5d6d2b:	74 02                	je     0x5d6d2f
5d6d2d:	89 11                	mov    %edx,(%ecx)
5d6d2f:	5d                   	pop    %ebp
5d6d30:	c3                   	ret
5d6d31:	8b ff                	mov    %edi,%edi
5d6d33:	55                   	push   %ebp
5d6d34:	8b ec                	mov    %esp,%ebp
5d6d36:	83 ec 14             	sub    $0x14,%esp
5d6d39:	8d 4d 0c             	lea    0xc(%ebp),%ecx
5d6d3c:	53                   	push   %ebx
5d6d3d:	56                   	push   %esi
5d6d3e:	e8 98 3a 00 00       	call   0x5da7db
5d6d43:	84 c0                	test   %al,%al
5d6d45:	74 2f                	je     0x5d6d76
5d6d47:	8b 75 14             	mov    0x14(%ebp),%esi
5d6d4a:	85 f6                	test   %esi,%esi
5d6d4c:	74 3d                	je     0x5d6d8b
5d6d4e:	83 fe 02             	cmp    $0x2,%esi
5d6d51:	7c 05                	jl     0x5d6d58
5d6d53:	83 fe 24             	cmp    $0x24,%esi
5d6d56:	7e 33                	jle    0x5d6d8b
5d6d58:	8b 45 08             	mov    0x8(%ebp),%eax
5d6d5b:	50                   	push   %eax
5d6d5c:	c6 40 1c 01          	movb   $0x1,0x1c(%eax)
5d6d60:	c7 40 18 16 00 00 00 	movl   $0x16,0x18(%eax)
5d6d67:	33 c0                	xor    %eax,%eax
5d6d69:	50                   	push   %eax
5d6d6a:	50                   	push   %eax
5d6d6b:	50                   	push   %eax
5d6d6c:	50                   	push   %eax
5d6d6d:	50                   	push   %eax
5d6d6e:	e8 f0 f3 ff ff       	call   0x5d6163
5d6d73:	83 c4 18             	add    $0x18,%esp
5d6d76:	8b 4d 10             	mov    0x10(%ebp),%ecx
5d6d79:	85 c9                	test   %ecx,%ecx
5d6d7b:	0f 84 52 01 00 00    	je     0x5d6ed3
5d6d81:	8b 45 0c             	mov    0xc(%ebp),%eax
5d6d84:	89 01                	mov    %eax,(%ecx)
5d6d86:	e9 48 01 00 00       	jmp    0x5d6ed3
5d6d8b:	8b 45 0c             	mov    0xc(%ebp),%eax
5d6d8e:	33 c9                	xor    %ecx,%ecx
5d6d90:	57                   	push   %edi
5d6d91:	89 45 ec             	mov    %eax,-0x14(%ebp)
5d6d94:	89 4d f4             	mov    %ecx,-0xc(%ebp)
5d6d97:	8a 18                	mov    (%eax),%bl
5d6d99:	8d 78 01             	lea    0x1(%eax),%edi
5d6d9c:	0f b6 45 18          	movzbl 0x18(%ebp),%eax
5d6da0:	88 5d fc             	mov    %bl,-0x4(%ebp)
5d6da3:	89 7d 0c             	mov    %edi,0xc(%ebp)
5d6da6:	89 45 f8             	mov    %eax,-0x8(%ebp)
5d6da9:	80 fb 2d             	cmp    $0x2d,%bl
5d6dac:	75 08                	jne    0x5d6db6
5d6dae:	83 c8 02             	or     $0x2,%eax
5d6db1:	89 45 f8             	mov    %eax,-0x8(%ebp)
5d6db4:	eb 05                	jmp    0x5d6dbb
5d6db6:	80 fb 2b             	cmp    $0x2b,%bl
5d6db9:	75 09                	jne    0x5d6dc4
5d6dbb:	8a 1f                	mov    (%edi),%bl
5d6dbd:	47                   	inc    %edi
5d6dbe:	88 5d fc             	mov    %bl,-0x4(%ebp)
5d6dc1:	89 7d 0c             	mov    %edi,0xc(%ebp)
5d6dc4:	85 f6                	test   %esi,%esi
5d6dc6:	74 05                	je     0x5d6dcd
5d6dc8:	83 fe 10             	cmp    $0x10,%esi
5d6dcb:	75 75                	jne    0x5d6e42
5d6dcd:	8a c3                	mov    %bl,%al
5d6dcf:	2c 30                	sub    $0x30,%al
5d6dd1:	3c 09                	cmp    $0x9,%al
5d6dd3:	77 08                	ja     0x5d6ddd
5d6dd5:	0f be c3             	movsbl %bl,%eax
5d6dd8:	83 c0 d0             	add    $0xffffffd0,%eax
5d6ddb:	eb 1e                	jmp    0x5d6dfb
5d6ddd:	8a c3                	mov    %bl,%al
5d6ddf:	2c 61                	sub    $0x61,%al
5d6de1:	3c 19                	cmp    $0x19,%al
5d6de3:	77 08                	ja     0x5d6ded
5d6de5:	0f be c3             	movsbl %bl,%eax
5d6de8:	83 c0 a9             	add    $0xffffffa9,%eax
5d6deb:	eb 0e                	jmp    0x5d6dfb
5d6ded:	8a c3                	mov    %bl,%al
5d6def:	2c 41                	sub    $0x41,%al
5d6df1:	3c 19                	cmp    $0x19,%al
5d6df3:	77 46                	ja     0x5d6e3b
5d6df5:	0f be c3             	movsbl %bl,%eax
5d6df8:	83 c0 c9             	add    $0xffffffc9,%eax
5d6dfb:	85 c0                	test   %eax,%eax
5d6dfd:	75 3c                	jne    0x5d6e3b
5d6dff:	8a 07                	mov    (%edi),%al
5d6e01:	47                   	inc    %edi
5d6e02:	88 45 f0             	mov    %al,-0x10(%ebp)
5d6e05:	89 7d 0c             	mov    %edi,0xc(%ebp)
5d6e08:	3c 78                	cmp    $0x78,%al
5d6e0a:	74 1d                	je     0x5d6e29
5d6e0c:	3c 58                	cmp    $0x58,%al
5d6e0e:	74 19                	je     0x5d6e29
5d6e10:	85 f6                	test   %esi,%esi