5f687e:	0f 84 ca 00 00 00    	je     0x5f694e
5f6884:	39 b0 a8 00 00 00    	cmp    %esi,0xa8(%eax)
5f688a:	75 29                	jne    0x5f68b5
5f688c:	85 db                	test   %ebx,%ebx
5f688e:	0f 84 fb 00 00 00    	je     0x5f698f
5f6894:	8b 4d 0c             	mov    0xc(%ebp),%ecx
5f6897:	0f b6 04 0e          	movzbl (%esi,%ecx,1),%eax
5f689b:	66 89 07             	mov    %ax,(%edi)
5f689e:	80 3c 0e 00          	cmpb   $0x0,(%esi,%ecx,1)
5f68a2:	0f 84 e7 00 00 00    	je     0x5f698f
5f68a8:	46                   	inc    %esi
5f68a9:	83 c7 02             	add    $0x2,%edi
5f68ac:	3b f3                	cmp    %ebx,%esi
5f68ae:	72 e7                	jb     0x5f6897
5f68b0:	e9 da 00 00 00       	jmp    0x5f698f
5f68b5:	53                   	push   %ebx
5f68b6:	57                   	push   %edi
5f68b7:	83 ce ff             	or     $0xffffffff,%esi
5f68ba:	56                   	push   %esi
5f68bb:	ff 75 0c             	push   0xc(%ebp)
5f68be:	6a 09                	push   $0x9
5f68c0:	51                   	push   %ecx
5f68c1:	e8 d0 05 01 00       	call   0x606e96
5f68c6:	83 c4 18             	add    $0x18,%esp
5f68c9:	85 c0                	test   %eax,%eax
5f68cb:	0f 85 bb 00 00 00    	jne    0x5f698c
5f68d1:	ff 15 e0 21 68 00    	call   *0x6821e0
5f68d7:	83 f8 7a             	cmp    $0x7a,%eax
5f68da:	75 60                	jne    0x5f693c
5f68dc:	8b 4d 0c             	mov    0xc(%ebp),%ecx
5f68df:	8b c1                	mov    %ecx,%eax
5f68e1:	89 45 fc             	mov    %eax,-0x4(%ebp)
5f68e4:	8b d3                	mov    %ebx,%edx
5f68e6:	85 db                	test   %ebx,%ebx
5f68e8:	74 34                	je     0x5f691e
5f68ea:	8a 08                	mov    (%eax),%cl
5f68ec:	4a                   	dec    %edx
5f68ed:	89 55 f8             	mov    %edx,-0x8(%ebp)
5f68f0:	84 c9                	test   %cl,%cl
5f68f2:	74 27                	je     0x5f691b
5f68f4:	8d 45 e8             	lea    -0x18(%ebp),%eax
5f68f7:	50                   	push   %eax
5f68f8:	0f b6 c1             	movzbl %cl,%eax
5f68fb:	50                   	push   %eax
5f68fc:	e8 ce 98 00 00       	call   0x6001cf
5f6901:	59                   	pop    %ecx
5f6902:	85 c0                	test   %eax,%eax
5f6904:	8b 45 fc             	mov    -0x4(%ebp),%eax
5f6907:	59                   	pop    %ecx
5f6908:	74 06                	je     0x5f6910
5f690a:	40                   	inc    %eax
5f690b:	80 38 00             	cmpb   $0x0,(%eax)
5f690e:	74 2c                	je     0x5f693c
5f6910:	8b 55 f8             	mov    -0x8(%ebp),%edx
5f6913:	40                   	inc    %eax
5f6914:	89 45 fc             	mov    %eax,-0x4(%ebp)
5f6917:	85 d2                	test   %edx,%edx
5f6919:	75 cf                	jne    0x5f68ea
5f691b:	8b 4d 0c             	mov    0xc(%ebp),%ecx
5f691e:	53                   	push   %ebx
5f691f:	57                   	push   %edi
5f6920:	2b c1                	sub    %ecx,%eax
5f6922:	50                   	push   %eax
5f6923:	8b 45 e8             	mov    -0x18(%ebp),%eax
5f6926:	51                   	push   %ecx
5f6927:	6a 01                	push   $0x1
5f6929:	ff 70 08             	push   0x8(%eax)
5f692c:	e8 65 05 01 00       	call   0x606e96
5f6931:	83 c4 18             	add    $0x18,%esp
5f6934:	85 c0                	test   %eax,%eax
5f6936:	0f 85 39 ff ff ff    	jne    0x5f6875
5f693c:	e8 b8 66 ff ff       	call   0x5ecff9
5f6941:	c7 00 2a 00 00 00    	movl   $0x2a,(%eax)
5f6947:	33 c0                	xor    %eax,%eax
5f6949:	66 89 07             	mov    %ax,(%edi)
5f694c:	eb 41                	jmp    0x5f698f
5f694e:	39 b0 a8 00 00 00    	cmp    %esi,0xa8(%eax)
5f6954:	75 11                	jne    0x5f6967
5f6956:	8b 75 0c             	mov    0xc(%ebp),%esi
5f6959:	8d 4e 01             	lea    0x1(%esi),%ecx
5f695c:	8a 06                	mov    (%esi),%al
5f695e:	46                   	inc    %esi
5f695f:	84 c0                	test   %al,%al
5f6961:	75 f9                	jne    0x5f695c
5f6963:	2b f1                	sub    %ecx,%esi
5f6965:	eb 28                	jmp    0x5f698f
5f6967:	56                   	push   %esi
5f6968:	56                   	push   %esi
5f6969:	83 ce ff             	or     $0xffffffff,%esi
5f696c:	56                   	push   %esi
5f696d:	ff 75 0c             	push   0xc(%ebp)
5f6970:	6a 09                	push   $0x9
5f6972:	51                   	push   %ecx
5f6973:	e8 1e 05 01 00       	call   0x606e96
5f6978:	83 c4 18             	add    $0x18,%esp
5f697b:	85 c0                	test   %eax,%eax
5f697d:	75 0d                	jne    0x5f698c
5f697f:	e8 75 66 ff ff       	call   0x5ecff9
5f6984:	c7 00 2a 00 00 00    	movl   $0x2a,(%eax)
5f698a:	eb 03                	jmp    0x5f698f
5f698c:	8d 70 ff             	lea    -0x1(%eax),%esi
5f698f:	80 7d f0 00          	cmpb   $0x0,-0x10(%ebp)
5f6993:	74 0a                	je     0x5f699f
5f6995:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
5f6998:	83 a1 50 03 00 00 fd 	andl   $0xfffffffd,0x350(%ecx)
5f699f:	8b c6                	mov    %esi,%eax
5f69a1:	5f                   	pop    %edi
5f69a2:	5e                   	pop    %esi
5f69a3:	5b                   	pop    %ebx
5f69a4:	c9                   	leave
5f69a5:	c3                   	ret
5f69a6:	8b ff                	mov    %edi,%edi
5f69a8:	55                   	push   %ebp
5f69a9:	8b ec                	mov    %esp,%ebp
5f69ab:	83 ec 10             	sub    $0x10,%esp
5f69ae:	53                   	push   %ebx
5f69af:	8b 5d 10             	mov    0x10(%ebp),%ebx
5f69b2:	56                   	push   %esi
5f69b3:	57                   	push   %edi
5f69b4:	8b 7d 0c             	mov    0xc(%ebp),%edi
5f69b7:	33 f6                	xor    %esi,%esi
5f69b9:	85 ff                	test   %edi,%edi
5f69bb:	75 3b                	jne    0x5f69f8
5f69bd:	85 db                	test   %ebx,%ebx
5f69bf:	75 3b                	jne    0x5f69fc
5f69c1:	85 ff                	test   %edi,%edi
5f69c3:	74 05                	je     0x5f69ca
5f69c5:	33 c0                	xor    %eax,%eax
5f69c7:	66 89 07             	mov    %ax,(%edi)
5f69ca:	8b 45 08             	mov    0x8(%ebp),%eax
5f69cd:	85 c0                	test   %eax,%eax
5f69cf:	74 02                	je     0x5f69d3
5f69d1:	89 30                	mov    %esi,(%eax)
5f69d3:	ff 75 1c             	push   0x1c(%ebp)
5f69d6:	8d 4d f0             	lea    -0x10(%ebp),%ecx
5f69d9:	e8 af 71 ff ff       	call   0x5edb8d
5f69de:	8b c3                	mov    %ebx,%eax
5f69e0:	39 5d 18             	cmp    %ebx,0x18(%ebp)
5f69e3:	77 03                	ja     0x5f69e8
5f69e5:	8b 45 18             	mov    0x18(%ebp),%eax
5f69e8:	3d ff ff ff 7f       	cmp    $0x7fffffff,%eax
5f69ed:	76 1e                	jbe    0x5f6a0d
5f69ef:	e8 05 66 ff ff       	call   0x5ecff9
5f69f4:	6a 16                	push   $0x16
5f69f6:	eb 58                	jmp    0x5f6a50
5f69f8:	85 db                	test   %ebx,%ebx
5f69fa:	75 c5                	jne    0x5f69c1
5f69fc:	e8 f8 65 ff ff       	call   0x5ecff9
5f6a01:	6a 16                	push   $0x16
5f6a03:	5e                   	pop    %esi
5f6a04:	89 30                	mov    %esi,(%eax)
5f6a06:	e8 14 65 ff ff       	call   0x5ecf1f
5f6a0b:	eb 72                	jmp    0x5f6a7f
5f6a0d:	8d 4d f4             	lea    -0xc(%ebp),%ecx
5f6a10:	51                   	push   %ecx
5f6a11:	50                   	push   %eax
5f6a12:	ff 75 14             	push   0x14(%ebp)
5f6a15:	57                   	push   %edi
5f6a16:	e8 e8 fd ff ff       	call   0x5f6803
5f6a1b:	83 c4 10             	add    $0x10,%esp
5f6a1e:	83 f8 ff             	cmp    $0xffffffff,%eax
5f6a21:	75 12                	jne    0x5f6a35
5f6a23:	85 ff                	test   %edi,%edi
5f6a25:	74 05                	je     0x5f6a2c
5f6a27:	33 c0                	xor    %eax,%eax
5f6a29:	66 89 07             	mov    %ax,(%edi)
5f6a2c:	e8 c8 65 ff ff       	call   0x5ecff9
5f6a31:	8b 30                	mov    (%eax),%esi
5f6a33:	eb 3a                	jmp    0x5f6a6f
5f6a35:	40                   	inc    %eax
5f6a36:	85 ff                	test   %edi,%edi
5f6a38:	74 2c                	je     0x5f6a66
5f6a3a:	3b c3                	cmp    %ebx,%eax
5f6a3c:	76 21                	jbe    0x5f6a5f
5f6a3e:	83 7d 18 ff          	cmpl   $0xffffffff,0x18(%ebp)
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