5f6a42:	74 16                	je     0x5f6a5a
5f6a44:	33 c0                	xor    %eax,%eax
5f6a46:	66 89 07             	mov    %ax,(%edi)
5f6a49:	e8 ab 65 ff ff       	call   0x5ecff9
5f6a4e:	6a 22                	push   $0x22
5f6a50:	5e                   	pop    %esi
5f6a51:	89 30                	mov    %esi,(%eax)
5f6a53:	e8 c7 64 ff ff       	call   0x5ecf1f
5f6a58:	eb 15                	jmp    0x5f6a6f
5f6a5a:	6a 50                	push   $0x50
5f6a5c:	8b c3                	mov    %ebx,%eax
5f6a5e:	5e                   	pop    %esi
5f6a5f:	33 c9                	xor    %ecx,%ecx
5f6a61:	66 89 4c 47 fe       	mov    %cx,-0x2(%edi,%eax,2)
5f6a66:	8b 4d 08             	mov    0x8(%ebp),%ecx
5f6a69:	85 c9                	test   %ecx,%ecx
5f6a6b:	74 02                	je     0x5f6a6f
5f6a6d:	89 01                	mov    %eax,(%ecx)
5f6a6f:	80 7d fc 00          	cmpb   $0x0,-0x4(%ebp)
5f6a73:	74 0a                	je     0x5f6a7f
5f6a75:	8b 4d f0             	mov    -0x10(%ebp),%ecx
5f6a78:	83 a1 50 03 00 00 fd 	andl   $0xfffffffd,0x350(%ecx)
5f6a7f:	5f                   	pop    %edi
5f6a80:	8b c6                	mov    %esi,%eax
5f6a82:	5e                   	pop    %esi
5f6a83:	5b                   	pop    %ebx
5f6a84:	c9                   	leave
5f6a85:	c3                   	ret
5f6a86:	8b ff                	mov    %edi,%edi
5f6a88:	55                   	push   %ebp
5f6a89:	8b ec                	mov    %esp,%ebp
5f6a8b:	6a 00                	push   $0x0
5f6a8d:	ff 75 18             	push   0x18(%ebp)
5f6a90:	ff 75 14             	push   0x14(%ebp)
5f6a93:	ff 75 10             	push   0x10(%ebp)
5f6a96:	ff 75 0c             	push   0xc(%ebp)
5f6a99:	ff 75 08             	push   0x8(%ebp)
5f6a9c:	e8 05 ff ff ff       	call   0x5f69a6
5f6aa1:	83 c4 18             	add    $0x18,%esp
5f6aa4:	5d                   	pop    %ebp
5f6aa5:	c3                   	ret
5f6aa6:	8b ff                	mov    %edi,%edi
5f6aa8:	55                   	push   %ebp
5f6aa9:	8b ec                	mov    %esp,%ebp
5f6aab:	56                   	push   %esi
5f6aac:	8b 75 08             	mov    0x8(%ebp),%esi
5f6aaf:	57                   	push   %edi
5f6ab0:	85 f6                	test   %esi,%esi
5f6ab2:	75 1a                	jne    0x5f6ace
5f6ab4:	8b 75 0c             	mov    0xc(%ebp),%esi
5f6ab7:	8b ce                	mov    %esi,%ecx
5f6ab9:	e8 f6 00 00 00       	call   0x5f6bb4
5f6abe:	33 ff                	xor    %edi,%edi
5f6ac0:	89 7e 08             	mov    %edi,0x8(%esi)
5f6ac3:	89 7e 0c             	mov    %edi,0xc(%esi)
5f6ac6:	89 7e 10             	mov    %edi,0x10(%esi)
5f6ac9:	e9 84 00 00 00       	jmp    0x5f6b52
5f6ace:	33 ff                	xor    %edi,%edi
5f6ad0:	80 3e 00             	cmpb   $0x0,(%esi)
5f6ad3:	75 1f                	jne    0x5f6af4
5f6ad5:	8b 75 0c             	mov    0xc(%ebp),%esi
5f6ad8:	39 7e 0c             	cmp    %edi,0xc(%esi)
5f6adb:	75 0d                	jne    0x5f6aea
5f6add:	6a 01                	push   $0x1
5f6adf:	8b ce                	mov    %esi,%ecx
5f6ae1:	e8 e8 00 00 00       	call   0x5f6bce
5f6ae6:	85 c0                	test   %eax,%eax
5f6ae8:	75 6a                	jne    0x5f6b54
5f6aea:	8b 46 08             	mov    0x8(%esi),%eax
5f6aed:	33 c9                	xor    %ecx,%ecx
5f6aef:	66 89 08             	mov    %cx,(%eax)
5f6af2:	eb d2                	jmp    0x5f6ac6
5f6af4:	57                   	push   %edi
5f6af5:	57                   	push   %edi
5f6af6:	6a ff                	push   $0xffffffff
5f6af8:	56                   	push   %esi
5f6af9:	6a 09                	push   $0x9
5f6afb:	ff 75 14             	push   0x14(%ebp)
5f6afe:	e8 93 03 01 00       	call   0x606e96
5f6b03:	83 c4 18             	add    $0x18,%esp
5f6b06:	85 c0                	test   %eax,%eax
5f6b08:	75 16                	jne    0x5f6b20
5f6b0a:	ff 15 e0 21 68 00    	call   *0x6821e0
5f6b10:	50                   	push   %eax
5f6b11:	e8 ad 64 ff ff       	call   0x5ecfc3
5f6b16:	59                   	pop    %ecx
5f6b17:	e8 dd 64 ff ff       	call   0x5ecff9
5f6b1c:	8b 00                	mov    (%eax),%eax
5f6b1e:	eb 34                	jmp    0x5f6b54
5f6b20:	8b 7d 0c             	mov    0xc(%ebp),%edi
5f6b23:	3b 47 0c             	cmp    0xc(%edi),%eax
5f6b26:	76 0c                	jbe    0x5f6b34
5f6b28:	50                   	push   %eax
5f6b29:	8b cf                	mov    %edi,%ecx
5f6b2b:	e8 9e 00 00 00       	call   0x5f6bce
5f6b30:	85 c0                	test   %eax,%eax
5f6b32:	75 20                	jne    0x5f6b54
5f6b34:	ff 77 0c             	push   0xc(%edi)
5f6b37:	ff 77 08             	push   0x8(%edi)
5f6b3a:	6a ff                	push   $0xffffffff
5f6b3c:	56                   	push   %esi
5f6b3d:	6a 09                	push   $0x9
5f6b3f:	ff 75 14             	push   0x14(%ebp)
5f6b42:	e8 4f 03 01 00       	call   0x606e96
5f6b47:	83 c4 18             	add    $0x18,%esp
5f6b4a:	85 c0                	test   %eax,%eax
5f6b4c:	74 bc                	je     0x5f6b0a
5f6b4e:	48                   	dec    %eax
5f6b4f:	89 47 10             	mov    %eax,0x10(%edi)
5f6b52:	33 c0                	xor    %eax,%eax
5f6b54:	5f                   	pop    %edi
5f6b55:	5e                   	pop    %esi
5f6b56:	5d                   	pop    %ebp
5f6b57:	c3                   	ret
5f6b58:	8b ff                	mov    %edi,%edi
5f6b5a:	55                   	push   %ebp
5f6b5b:	8b ec                	mov    %esp,%ebp
5f6b5d:	51                   	push   %ecx
5f6b5e:	ff 75 10             	push   0x10(%ebp)
5f6b61:	8d 45 ff             	lea    -0x1(%ebp),%eax
5f6b64:	50                   	push   %eax
5f6b65:	ff 75 0c             	push   0xc(%ebp)
5f6b68:	ff 75 08             	push   0x8(%ebp)
5f6b6b:	e8 36 ff ff ff       	call   0x5f6aa6
5f6b70:	83 c4 10             	add    $0x10,%esp
5f6b73:	c9                   	leave
5f6b74:	c3                   	ret
5f6b75:	8b ff                	mov    %edi,%edi
5f6b77:	55                   	push   %ebp
5f6b78:	8b ec                	mov    %esp,%ebp
5f6b7a:	83 ec 10             	sub    $0x10,%esp
5f6b7d:	6a 00                	push   $0x0
5f6b7f:	8d 4d f0             	lea    -0x10(%ebp),%ecx
5f6b82:	e8 06 70 ff ff       	call   0x5edb8d
5f6b87:	8b 45 f4             	mov    -0xc(%ebp),%eax
5f6b8a:	ba e9 fd 00 00       	mov    $0xfde9,%edx
5f6b8f:	39 50 08             	cmp    %edx,0x8(%eax)
5f6b92:	74 0c                	je     0x5f6ba0
5f6b94:	e8 87 08 01 00       	call   0x607420
5f6b99:	33 d2                	xor    %edx,%edx
5f6b9b:	85 c0                	test   %eax,%eax
5f6b9d:	75 01                	jne    0x5f6ba0
5f6b9f:	42                   	inc    %edx
5f6ba0:	80 7d fc 00          	cmpb   $0x0,-0x4(%ebp)
5f6ba4:	74 0a                	je     0x5f6bb0
5f6ba6:	8b 4d f0             	mov    -0x10(%ebp),%ecx
5f6ba9:	83 a1 50 03 00 00 fd 	andl   $0xfffffffd,0x350(%ecx)
5f6bb0:	8b c2                	mov    %edx,%eax
5f6bb2:	c9                   	leave
5f6bb3:	c3                   	ret
5f6bb4:	8b ff                	mov    %edi,%edi
5f6bb6:	56                   	push   %esi
5f6bb7:	8b f1                	mov    %ecx,%esi
5f6bb9:	80 7e 14 00          	cmpb   $0x0,0x14(%esi)
5f6bbd:	74 0d                	je     0x5f6bcc
5f6bbf:	ff 76 08             	push   0x8(%esi)
5f6bc2:	e8 61 dc 00 00       	call   0x604828
5f6bc7:	59                   	pop    %ecx
5f6bc8:	c6 46 14 00          	movb   $0x0,0x14(%esi)
5f6bcc:	5e                   	pop    %esi
5f6bcd:	c3                   	ret
5f6bce:	8b ff                	mov    %edi,%edi
5f6bd0:	55                   	push   %ebp
5f6bd1:	8b ec                	mov    %esp,%ebp
5f6bd3:	56                   	push   %esi
5f6bd4:	57                   	push   %edi
5f6bd5:	8b f1                	mov    %ecx,%esi
5f6bd7:	e8 d8 ff ff ff       	call   0x5f6bb4
5f6bdc:	8b 7d 08             	mov    0x8(%ebp),%edi
5f6bdf:	56                   	push   %esi
5f6be0:	8d 04 3f             	lea    (%edi,%edi,1),%eax
5f6be3:	50                   	push   %eax
5f6be4:	8d 46 08             	lea    0x8(%esi),%eax
5f6be7:	50                   	push   %eax
5f6be8:	e8 20 00 00 00       	call   0x5f6c0d
5f6bed:	83 c4 0c             	add    $0xc,%esp
5f6bf0:	85 c0                	test   %eax,%eax
5f6bf2:	74 0a                	je     0x5f6bfe
5f6bf4:	83 66 0c 00          	andl   $0x0,0xc(%esi)
5f6bf8:	c6 46 14 00          	movb   $0x0,0x14(%esi)
5f6bfc:	eb 09                	jmp    0x5f6c07
5f6bfe:	c6 46 14 01          	movb   $0x1,0x14(%esi)
5f6c02:	33 c0                	xor    %eax,%eax
5f6c04:	89 7e 0c             	mov    %edi,0xc(%esi)
5f6c07:	5f                   	pop    %edi
5f6c08:	5e                   	pop    %esi
5f6c09:	5d                   	pop    %ebp
5f6c0a:	c2 04 00             	ret    $0x4
5f6c0d:	8b ff                	mov    %edi,%edi
5f6c0f:	55                   	push   %ebp
5f6c10:	8b ec                	mov    %esp,%ebp
5f6c12:	ff 75 0c             	push   0xc(%ebp)
5f6c15:	e8 db f1 00 00       	call   0x605df5
5f6c1a:	59                   	pop    %ecx
5f6c1b:	8b 4d 08             	mov    0x8(%ebp),%ecx
5f6c1e:	89 01                	mov    %eax,(%ecx)
5f6c20:	f7 d8                	neg    %eax
5f6c22:	1b c0                	sbb    %eax,%eax
5f6c24:	83 e0 f4             	and    $0xfffffff4,%eax
5f6c27:	83 c0 0c             	add    $0xc,%eax
5f6c2a:	5d                   	pop    %ebp
5f6c2b:	c3                   	ret
5f6c2c:	8b ff                	mov    %edi,%edi
5f6c2e:	55                   	push   %ebp
5f6c2f:	8b ec                	mov    %esp,%ebp
5f6c31:	83 ec 18             	sub    $0x18,%esp
5f6c34:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
5f6c38:	75 0a                	jne    0x5f6c44
5f6c3a:	6a 00                	push   $0x0
5f6c3c:	e8 38 03 00 00       	call   0x5f6f79
5f6c41:	59                   	pop    %ecx
5f6c42:	c9                   	leave
5f6c43:	c3                   	ret
5f6c44:	33 c0                	xor    %eax,%eax
5f6c46:	56                   	push   %esi
5f6c47:	89 45 e8             	mov    %eax,-0x18(%ebp)
5f6c4a:	89 45 ec             	mov    %eax,-0x14(%ebp)
5f6c4d:	89 45 f0             	mov    %eax,-0x10(%ebp)
5f6c50:	89 45 f4             	mov    %eax,-0xc(%ebp)
5f6c53:	89 45 f8             	mov    %eax,-0x8(%ebp)
5f6c56:	88 45 fc             	mov    %al,-0x4(%ebp)
5f6c59:	e8 17 ff ff ff       	call   0x5f6b75
5f6c5e:	50                   	push   %eax
5f6c5f:	8d 45 e8             	lea    -0x18(%ebp),%eax
5f6c62:	50                   	push   %eax
5f6c63:	ff 75 08             	push   0x8(%ebp)
5f6c66:	e8 ed fe ff ff       	call   0x5f6b58
5f6c6b:	83 c4 0c             	add    $0xc,%esp
5f6c6e:	85 c0                	test   %eax,%eax
5f6c70:	74 05                	je     0x5f6c77
5f6c72:	83 ce ff             	or     $0xffffffff,%esi
5f6c75:	eb 0b                	jmp    0x5f6c82
5f6c77:	ff 75 f0             	push   -0x10(%ebp)
5f6c7a:	e8 fa 02 00 00       	call   0x5f6f79
5f6c7f:	59                   	pop    %ecx
5f6c80:	8b f0                	mov    %eax,%esi
5f6c82:	80 7d fc 00          	cmpb   $0x0,-0x4(%ebp)
5f6c86:	74 09                	je     0x5f6c91
5f6c88:	ff 75 f0             	push   -0x10(%ebp)
5f6c8b:	e8 98 db 00 00       	call   0x604828
5f6c90:	59                   	pop    %ecx
5f6c91:	8b c6                	mov    %esi,%eax
5f6c93:	5e                   	pop    %esi
5f6c94:	c9                   	leave
5f6c95:	c3                   	ret
5f6c96:	8b ff                	mov    %edi,%edi
5f6c98:	55                   	push   %ebp
5f6c99:	8b ec                	mov    %esp,%ebp
5f6c9b:	83 ec 10             	sub    $0x10,%esp
5f6c9e:	ff 75 0c             	push   0xc(%ebp)
5f6ca1:	8d 4d f0             	lea    -0x10(%ebp),%ecx
5f6ca4:	e8 e4 6e ff ff       	call   0x5edb8d
5f6ca9:	8d 45 f4             	lea    -0xc(%ebp),%eax
5f6cac:	50                   	push   %eax
5f6cad:	68 07 01 00 00       	push   $0x107
5f6cb2:	ff 75 08             	push   0x8(%ebp)
5f6cb5:	e8 fa 6f ff ff       	call   0x5edcb4
5f6cba:	83 c4 0c             	add    $0xc,%esp
5f6cbd:	80 7d fc 00          	cmpb   $0x0,-0x4(%ebp)
5f6cc1:	74 0a                	je     0x5f6ccd
5f6cc3:	8b 4d f0             	mov    -0x10(%ebp),%ecx
5f6cc6:	83 a1 50 03 00 00 fd 	andl   $0xfffffffd,0x350(%ecx)
5f6ccd:	c9                   	leave
5f6cce:	c3                   	ret
5f6ccf:	8b ff                	mov    %edi,%edi
5f6cd1:	55                   	push   %ebp
5f6cd2:	8b ec                	mov    %esp,%ebp
5f6cd4:	83 ec 10             	sub    $0x10,%esp
5f6cd7:	ff 75 0c             	push   0xc(%ebp)
5f6cda:	8d 4d f0             	lea    -0x10(%ebp),%ecx
5f6cdd:	e8 ab 6e ff ff       	call   0x5edb8d
5f6ce2:	8d 45 f4             	lea    -0xc(%ebp),%eax
5f6ce5:	50                   	push   %eax
5f6ce6:	68 03 01 00 00       	push   $0x103
5f6ceb:	ff 75 08             	push   0x8(%ebp)
5f6cee:	e8 c1 6f ff ff       	call   0x5edcb4
5f6cf3:	83 c4 0c             	add    $0xc,%esp
5f6cf6:	80 7d fc 00          	cmpb   $0x0,-0x4(%ebp)
5f6cfa:	74 0a                	je     0x5f6d06
5f6cfc:	8b 4d f0             	mov    -0x10(%ebp),%ecx
5f6cff:	83 a1 50 03 00 00 fd 	andl   $0xfffffffd,0x350(%ecx)
5f6d06:	c9                   	leave
5f6d07:	c3                   	ret
5f6d08:	8b ff                	mov    %edi,%edi
5f6d0a:	55                   	push   %ebp
5f6d0b:	8b ec                	mov    %esp,%ebp
5f6d0d:	83 ec 10             	sub    $0x10,%esp
5f6d10:	ff 75 0c             	push   0xc(%ebp)
5f6d13:	8d 4d f0             	lea    -0x10(%ebp),%ecx
5f6d16:	e8 72 6e ff ff       	call   0x5edb8d
5f6d1b:	8d 45 f4             	lea    -0xc(%ebp),%eax
5f6d1e:	50                   	push   %eax
5f6d1f:	6a 04                	push   $0x4
5f6d21:	ff 75 08             	push   0x8(%ebp)
5f6d24:	e8 8b 6f ff ff       	call   0x5edcb4
5f6d29:	83 c4 0c             	add    $0xc,%esp
5f6d2c:	80 7d fc 00          	cmpb   $0x0,-0x4(%ebp)
5f6d30:	74 0a                	je     0x5f6d3c
5f6d32:	8b 4d f0             	mov    -0x10(%ebp),%ecx
5f6d35:	83 a1 50 03 00 00 fd 	andl   $0xfffffffd,0x350(%ecx)
5f6d3c:	c9                   	leave
5f6d3d:	c3                   	ret
5f6d3e:	8b ff                	mov    %edi,%edi
5f6d40:	55                   	push   %ebp
5f6d41:	8b ec                	mov    %esp,%ebp
5f6d43:	83 ec 10             	sub    $0x10,%esp
5f6d46:	ff 75 0c             	push   0xc(%ebp)
5f6d49:	8d 4d f0             	lea    -0x10(%ebp),%ecx
5f6d4c:	e8 3c 6e ff ff       	call   0x5edb8d
5f6d51:	8d 45 f4             	lea    -0xc(%ebp),%eax
5f6d54:	50                   	push   %eax
5f6d55:	6a 02                	push   $0x2
5f6d57:	ff 75 08             	push   0x8(%ebp)
5f6d5a:	e8 55 6f ff ff       	call   0x5edcb4
5f6d5f:	83 c4 0c             	add    $0xc,%esp
5f6d62:	80 7d fc 00          	cmpb   $0x0,-0x4(%ebp)
5f6d66:	74 0a                	je     0x5f6d72
5f6d68:	8b 4d f0             	mov    -0x10(%ebp),%ecx
5f6d6b:	83 a1 50 03 00 00 fd 	andl   $0xfffffffd,0x350(%ecx)
5f6d72:	c9                   	leave
5f6d73:	c3                   	ret
5f6d74:	8b ff                	mov    %edi,%edi
5f6d76:	55                   	push   %ebp
5f6d77:	8b ec                	mov    %esp,%ebp
5f6d79:	83 ec 10             	sub    $0x10,%esp
5f6d7c:	ff 75 0c             	push   0xc(%ebp)
5f6d7f:	8d 4d f0             	lea    -0x10(%ebp),%ecx
5f6d82:	e8 06 6e ff ff       	call   0x5edb8d
5f6d87:	8d 45 f4             	lea    -0xc(%ebp),%eax
5f6d8a:	50                   	push   %eax
5f6d8b:	6a 08                	push   $0x8
5f6d8d:	ff 75 08             	push   0x8(%ebp)
5f6d90:	e8 1f 6f ff ff       	call   0x5edcb4
5f6d95:	83 c4 0c             	add    $0xc,%esp
5f6d98:	80 7d fc 00          	cmpb   $0x0,-0x4(%ebp)
5f6d9c:	74 0a                	je     0x5f6da8
5f6d9e:	8b 4d f0             	mov    -0x10(%ebp),%ecx
5f6da1:	83 a1 50 03 00 00 fd 	andl   $0xfffffffd,0x350(%ecx)
5f6da8:	c9                   	leave
5f6da9:	c3                   	ret
5f6daa:	8b ff                	mov    %edi,%edi
5f6dac:	55                   	push   %ebp
5f6dad:	8b ec                	mov    %esp,%ebp
5f6daf:	83 ec 10             	sub    $0x10,%esp
5f6db2:	ff 75 0c             	push   0xc(%ebp)
5f6db5:	8d 4d f0             	lea    -0x10(%ebp),%ecx
5f6db8:	e8 d0 6d ff ff       	call   0x5edb8d
5f6dbd:	8d 45 f4             	lea    -0xc(%ebp),%eax
5f6dc0:	50                   	push   %eax
5f6dc1:	6a 01                	push   $0x1