6067ff:	ff 30                	push   (%eax)
606801:	e8 86 9f 00 00       	call   0x61078c
606806:	8b 45 f4             	mov    -0xc(%ebp),%eax
606809:	33 c9                	xor    %ecx,%ecx
60680b:	8b 5d 0c             	mov    0xc(%ebp),%ebx
60680e:	83 c4 18             	add    $0x18,%esp
606811:	83 7d f0 2d          	cmpl   $0x2d,-0x10(%ebp)
606815:	0f 94 c1             	sete   %cl
606818:	48                   	dec    %eax
606819:	89 45 fc             	mov    %eax,-0x4(%ebp)
60681c:	83 c8 ff             	or     $0xffffffff,%eax
60681f:	8d 34 19             	lea    (%ecx,%ebx,1),%esi
606822:	39 45 10             	cmp    %eax,0x10(%ebp)
606825:	74 05                	je     0x60682c
606827:	8b 45 10             	mov    0x10(%ebp),%eax
60682a:	2b c1                	sub    %ecx,%eax
60682c:	8d 4d f0             	lea    -0x10(%ebp),%ecx
60682f:	51                   	push   %ecx
606830:	57                   	push   %edi
606831:	50                   	push   %eax
606832:	56                   	push   %esi
606833:	e8 94 9e 00 00       	call   0x6106cc
606838:	83 c4 10             	add    $0x10,%esp
60683b:	85 c0                	test   %eax,%eax
60683d:	74 05                	je     0x606844
60683f:	c6 03 00             	movb   $0x0,(%ebx)
606842:	eb 50                	jmp    0x606894
606844:	8b 45 f4             	mov    -0xc(%ebp),%eax
606847:	48                   	dec    %eax
606848:	83 f8 fc             	cmp    $0xfffffffc,%eax
60684b:	7c 2b                	jl     0x606878
60684d:	3b c7                	cmp    %edi,%eax
60684f:	7d 27                	jge    0x606878
606851:	39 45 fc             	cmp    %eax,-0x4(%ebp)
606854:	7d 0a                	jge    0x606860
606856:	8a 06                	mov    (%esi),%al
606858:	46                   	inc    %esi
606859:	84 c0                	test   %al,%al
60685b:	75 f9                	jne    0x606856
60685d:	88 46 fe             	mov    %al,-0x2(%esi)
606860:	ff 75 28             	push   0x28(%ebp)
606863:	8d 45 f0             	lea    -0x10(%ebp),%eax
606866:	6a 01                	push   $0x1
606868:	50                   	push   %eax
606869:	57                   	push   %edi
60686a:	ff 75 10             	push   0x10(%ebp)
60686d:	53                   	push   %ebx
60686e:	e8 94 fe ff ff       	call   0x606707
606873:	83 c4 18             	add    $0x18,%esp
606876:	eb 1c                	jmp    0x606894
606878:	ff 75 28             	push   0x28(%ebp)
60687b:	8d 45 f0             	lea    -0x10(%ebp),%eax
60687e:	6a 01                	push   $0x1
606880:	50                   	push   %eax
606881:	ff 75 24             	push   0x24(%ebp)
606884:	ff 75 20             	push   0x20(%ebp)
606887:	57                   	push   %edi
606888:	ff 75 10             	push   0x10(%ebp)
60688b:	53                   	push   %ebx
60688c:	e8 a3 fc ff ff       	call   0x606534
606891:	83 c4 20             	add    $0x20,%esp
606894:	5f                   	pop    %edi
606895:	5e                   	pop    %esi
606896:	5b                   	pop    %ebx
606897:	c9                   	leave
606898:	c3                   	ret
606899:	8b ff                	mov    %edi,%edi
60689b:	55                   	push   %ebp
60689c:	8b ec                	mov    %esp,%ebp
60689e:	51                   	push   %ecx
60689f:	8a 4d 0c             	mov    0xc(%ebp),%cl
6068a2:	8b 55 14             	mov    0x14(%ebp),%edx
6068a5:	0f b6 c1             	movzbl %cl,%eax
6068a8:	83 c0 04             	add    $0x4,%eax
6068ab:	3b d0                	cmp    %eax,%edx
6068ad:	73 0b                	jae    0x6068ba
6068af:	8b 45 10             	mov    0x10(%ebp),%eax
6068b2:	6a 0c                	push   $0xc
6068b4:	c6 00 00             	movb   $0x0,(%eax)
6068b7:	58                   	pop    %eax
6068b8:	c9                   	leave
6068b9:	c3                   	ret
6068ba:	84 c9                	test   %cl,%cl
6068bc:	8b 4d 10             	mov    0x10(%ebp),%ecx
6068bf:	74 0d                	je     0x6068ce
6068c1:	c6 01 2d             	movb   $0x2d,(%ecx)
6068c4:	41                   	inc    %ecx
6068c5:	c6 01 00             	movb   $0x0,(%ecx)
6068c8:	83 fa ff             	cmp    $0xffffffff,%edx
6068cb:	74 01                	je     0x6068ce
6068cd:	4a                   	dec    %edx
6068ce:	8b 45 08             	mov    0x8(%ebp),%eax
6068d1:	53                   	push   %ebx
6068d2:	56                   	push   %esi
6068d3:	57                   	push   %edi
6068d4:	0f b6 7d 18          	movzbl 0x18(%ebp),%edi
6068d8:	8d 1c 85 fc ff ff ff 	lea    -0x4(,%eax,4),%ebx
6068df:	83 f7 01             	xor    $0x1,%edi
6068e2:	03 ff                	add    %edi,%edi
6068e4:	8d 04 3b             	lea    (%ebx,%edi,1),%eax
6068e7:	8b 34 85 90 4a 6d 00 	mov    0x6d4a90(,%eax,4),%esi
6068ee:	8d 46 01             	lea    0x1(%esi),%eax
6068f1:	89 45 fc             	mov    %eax,-0x4(%ebp)
6068f4:	8a 06                	mov    (%esi),%al
6068f6:	46                   	inc    %esi
6068f7:	84 c0                	test   %al,%al
6068f9:	75 f9                	jne    0x6068f4
6068fb:	2b 75 fc             	sub    -0x4(%ebp),%esi
6068fe:	3b f2                	cmp    %edx,%esi
606900:	1b c0                	sbb    %eax,%eax
606902:	43                   	inc    %ebx
606903:	03 c3                	add    %ebx,%eax
606905:	03 c7                	add    %edi,%eax
606907:	ff 34 85 90 4a 6d 00 	push   0x6d4a90(,%eax,4)
60690e:	52                   	push   %edx
60690f:	51                   	push   %ecx
606910:	e8 f6 1f ff ff       	call   0x5f890b
606915:	83 c4 0c             	add    $0xc,%esp
606918:	5f                   	pop    %edi
606919:	5e                   	pop    %esi
60691a:	5b                   	pop    %ebx
60691b:	85 c0                	test   %eax,%eax
60691d:	75 02                	jne    0x606921
60691f:	c9                   	leave
606920:	c3                   	ret
606921:	33 c0                	xor    %eax,%eax
606923:	50                   	push   %eax
606924:	50                   	push   %eax
606925:	50                   	push   %eax
606926:	50                   	push   %eax
606927:	50                   	push   %eax
606928:	e8 1f 66 fe ff       	call   0x5ecf4c
60692d:	cc                   	int3
60692e:	8b ff                	mov    %edi,%edi
606930:	55                   	push   %ebp
606931:	8b ec                	mov    %esp,%ebp
606933:	8b 55 14             	mov    0x14(%ebp),%edx
606936:	85 d2                	test   %edx,%edx
606938:	74 26                	je     0x606960
60693a:	56                   	push   %esi
60693b:	8b 75 10             	mov    0x10(%ebp),%esi
60693e:	8b ce                	mov    %esi,%ecx
606940:	57                   	push   %edi
606941:	8d 79 01             	lea    0x1(%ecx),%edi
606944:	8a 01                	mov    (%ecx),%al
606946:	41                   	inc    %ecx
606947:	84 c0                	test   %al,%al
606949:	75 f9                	jne    0x606944
60694b:	2b cf                	sub    %edi,%ecx
60694d:	8d 41 01             	lea    0x1(%ecx),%eax
606950:	50                   	push   %eax
606951:	8d 04 16             	lea    (%esi,%edx,1),%eax
606954:	56                   	push   %esi
606955:	50                   	push   %eax
606956:	e8 25 cb fd ff       	call   0x5e3480
60695b:	83 c4 0c             	add    $0xc,%esp
60695e:	5f                   	pop    %edi
60695f:	5e                   	pop    %esi
606960:	5d                   	pop    %ebp
606961:	c3                   	ret
606962:	8b ff                	mov    %edi,%edi
606964:	55                   	push   %ebp
606965:	8b ec                	mov    %esp,%ebp
606967:	51                   	push   %ecx
606968:	51                   	push   %ecx
606969:	56                   	push   %esi
60696a:	57                   	push   %edi
60696b:	8b 7d 0c             	mov    0xc(%ebp),%edi
60696e:	85 ff                	test   %edi,%edi
606970:	75 16                	jne    0x606988
606972:	e8 82 66 fe ff       	call   0x5ecff9
606977:	6a 16                	push   $0x16
606979:	5e                   	pop    %esi
60697a:	89 30                	mov    %esi,(%eax)
60697c:	e8 9e 65 fe ff       	call   0x5ecf1f
606981:	8b c6                	mov    %esi,%eax
606983:	e9 11 01 00 00       	jmp    0x606a99
606988:	83 7d 10 00          	cmpl   $0x0,0x10(%ebp)
60698c:	76 e4                	jbe    0x606972
60698e:	83 7d 14 00          	cmpl   $0x0,0x14(%ebp)
606992:	74 de                	je     0x606972
606994:	83 7d 18 00          	cmpl   $0x0,0x18(%ebp)
606998:	76 d8                	jbe    0x606972
60699a:	8b 75 1c             	mov    0x1c(%ebp),%esi
60699d:	83 fe 41             	cmp    $0x41,%esi
6069a0:	74 13                	je     0x6069b5
6069a2:	83 fe 45             	cmp    $0x45,%esi
6069a5:	74 0e                	je     0x6069b5
6069a7:	83 fe 46             	cmp    $0x46,%esi
6069aa:	74 09                	je     0x6069b5
6069ac:	c6 45 fc 00          	movb   $0x0,-0x4(%ebp)
6069b0:	83 fe 47             	cmp    $0x47,%esi
6069b3:	75 04                	jne    0x6069b9
6069b5:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
6069b9:	8b 45 24             	mov    0x24(%ebp),%eax
6069bc:	83 e0 08             	and    $0x8,%eax
6069bf:	83 c8 00             	or     $0x0,%eax
6069c2:	53                   	push   %ebx
6069c3:	8b 5d 08             	mov    0x8(%ebp),%ebx
6069c6:	75 39                	jne    0x606a01
6069c8:	53                   	push   %ebx
6069c9:	e8 49 f7 ff ff       	call   0x606117
6069ce:	59                   	pop    %ecx
6069cf:	85 c0                	test   %eax,%eax
6069d1:	74 2e                	je     0x606a01
6069d3:	33 c9                	xor    %ecx,%ecx
6069d5:	39 4b 04             	cmp    %ecx,0x4(%ebx)
6069d8:	7f 0c                	jg     0x6069e6
6069da:	7c 04                	jl     0x6069e0
6069dc:	39 0b                	cmp    %ecx,(%ebx)
6069de:	73 06                	jae    0x6069e6
6069e0:	c6 45 f8 01          	movb   $0x1,-0x8(%ebp)
6069e4:	eb 03                	jmp    0x6069e9
6069e6:	88 4d f8             	mov    %cl,-0x8(%ebp)
6069e9:	ff 75 fc             	push   -0x4(%ebp)
6069ec:	ff 75 10             	push   0x10(%ebp)
6069ef:	57                   	push   %edi
6069f0:	ff 75 f8             	push   -0x8(%ebp)
6069f3:	50                   	push   %eax
6069f4:	e8 a0 fe ff ff       	call   0x606899
6069f9:	83 c4 14             	add    $0x14,%esp
6069fc:	e9 97 00 00 00       	jmp    0x606a98
606a01:	8b 45 24             	mov    0x24(%ebp),%eax
606a04:	83 e0 10             	and    $0x10,%eax
606a07:	83 c8 00             	or     $0x0,%eax
606a0a:	74 04                	je     0x606a10
606a0c:	6a 03                	push   $0x3
606a0e:	eb 02                	jmp    0x606a12
606a10:	6a 02                	push   $0x2
606a12:	58                   	pop    %eax
606a13:	83 fe 61             	cmp    $0x61,%esi
606a16:	7f 28                	jg     0x606a40
606a18:	74 0a                	je     0x606a24
606a1a:	83 ee 41             	sub    $0x41,%esi
606a1d:	74 05                	je     0x606a24
606a1f:	83 ee 04             	sub    $0x4,%esi
606a22:	eb 1f                	jmp    0x606a43
606a24:	ff 75 2c             	push   0x2c(%ebp)
606a27:	50                   	push   %eax
606a28:	ff 75 fc             	push   -0x4(%ebp)
606a2b:	ff 75 20             	push   0x20(%ebp)
606a2e:	ff 75 18             	push   0x18(%ebp)
606a31:	ff 75 14             	push   0x14(%ebp)
606a34:	ff 75 10             	push   0x10(%ebp)
606a37:	57                   	push   %edi
606a38:	53                   	push   %ebx
606a39:	e8 3b f7 ff ff       	call   0x606179
606a3e:	eb 55                	jmp    0x606a95
606a40:	83 ee 65             	sub    $0x65,%esi
606a43:	ff 75 2c             	push   0x2c(%ebp)
606a46:	74 36                	je     0x606a7e
606a48:	83 ee 01             	sub    $0x1,%esi
606a4b:	74 19                	je     0x606a66
606a4d:	50                   	push   %eax
606a4e:	ff 75 fc             	push   -0x4(%ebp)
606a51:	ff 75 20             	push   0x20(%ebp)
606a54:	ff 75 18             	push   0x18(%ebp)
606a57:	ff 75 14             	push   0x14(%ebp)
606a5a:	ff 75 10             	push   0x10(%ebp)
606a5d:	57                   	push   %edi
606a5e:	53                   	push   %ebx
606a5f:	e8 74 fd ff ff       	call   0x6067d8
606a64:	eb 2f                	jmp    0x606a95
606a66:	ff 75 20             	push   0x20(%ebp)
606a69:	ff 75 18             	push   0x18(%ebp)
606a6c:	ff 75 14             	push   0x14(%ebp)
606a6f:	ff 75 10             	push   0x10(%ebp)
606a72:	57                   	push   %edi
606a73:	53                   	push   %ebx
606a74:	e8 03 fc ff ff       	call   0x60667c
606a79:	83 c4 1c             	add    $0x1c,%esp
606a7c:	eb 1a                	jmp    0x606a98
606a7e:	50                   	push   %eax
606a7f:	ff 75 fc             	push   -0x4(%ebp)
606a82:	ff 75 20             	push   0x20(%ebp)
606a85:	ff 75 18             	push   0x18(%ebp)
606a88:	ff 75 14             	push   0x14(%ebp)
606a8b:	ff 75 10             	push   0x10(%ebp)
606a8e:	57                   	push   %edi
606a8f:	53                   	push   %ebx
606a90:	e8 fd f9 ff ff       	call   0x606492
606a95:	83 c4 24             	add    $0x24,%esp
606a98:	5b                   	pop    %ebx
606a99:	5f                   	pop    %edi
606a9a:	5e                   	pop    %esi
606a9b:	c9                   	leave
606a9c:	c3                   	ret
606a9d:	8b 0d d4 89 72 00    	mov    0x7289d4,%ecx
606aa3:	33 c0                	xor    %eax,%eax
606aa5:	83 c9 01             	or     $0x1,%ecx
606aa8:	39 0d c8 12 73 00    	cmp    %ecx,0x7312c8
606aae:	0f 94 c0             	sete   %al
606ab1:	c3                   	ret
606ab2:	8b ff                	mov    %edi,%edi
606ab4:	55                   	push   %ebp
606ab5:	8b ec                	mov    %esp,%ebp
606ab7:	53                   	push   %ebx
606ab8:	56                   	push   %esi
606ab9:	8b 75 08             	mov    0x8(%ebp),%esi
606abc:	57                   	push   %edi
606abd:	56                   	push   %esi
606abe:	e8 e5 8c ff ff       	call   0x5ff7a8
606ac3:	50                   	push   %eax
606ac4:	e8 c4 9a 00 00       	call   0x61058d
606ac9:	59                   	pop    %ecx
606aca:	59                   	pop    %ecx
606acb:	85 c0                	test   %eax,%eax
606acd:	0f 84 8b 00 00 00    	je     0x606b5e
606ad3:	6a 01                	push   $0x1
606ad5:	e8 1e 56 ff ff       	call   0x5fc0f8
606ada:	59                   	pop    %ecx
606adb:	6a 02                	push   $0x2
606add:	5b                   	pop    %ebx
606ade:	3b f0                	cmp    %eax,%esi
606ae0:	75 07                	jne    0x606ae9
606ae2:	bf cc 12 73 00       	mov    $0x7312cc,%edi
606ae7:	eb 10                	jmp    0x606af9
606ae9:	53                   	push   %ebx
606aea:	e8 09 56 ff ff       	call   0x5fc0f8
606aef:	59                   	pop    %ecx
606af0:	3b f0                	cmp    %eax,%esi
606af2:	75 6a                	jne    0x606b5e
606af4:	bf d0 12 73 00       	mov    $0x7312d0,%edi
606af9:	ff 05 d0 0c 73 00    	incl   0x730cd0
606aff:	8d 4e 0c             	lea    0xc(%esi),%ecx
606b02:	8b 01                	mov    (%ecx),%eax
606b04:	90                   	nop
606b05:	a9 c0 04 00 00       	test   $0x4c0,%eax
606b0a:	75 52                	jne    0x606b5e
606b0c:	b8 82 02 00 00       	mov    $0x282,%eax
606b11:	f0 09 01             	lock or %eax,(%ecx)
606b14:	8b 07                	mov    (%edi),%eax
606b16:	85 c0                	test   %eax,%eax
606b18:	75 2d                	jne    0x606b47
606b1a:	68 00 10 00 00       	push   $0x1000
606b1f:	e8 d1 f2 ff ff       	call   0x605df5
606b24:	6a 00                	push   $0x0
606b26:	89 07                	mov    %eax,(%edi)
606b28:	e8 fb dc ff ff       	call   0x604828
606b2d:	8b 07                	mov    (%edi),%eax
606b2f:	59                   	pop    %ecx
606b30:	59                   	pop    %ecx
606b31:	85 c0                	test   %eax,%eax
606b33:	75 12                	jne    0x606b47
606b35:	8d 4e 14             	lea    0x14(%esi),%ecx
606b38:	89 5e 08             	mov    %ebx,0x8(%esi)
606b3b:	89 4e 04             	mov    %ecx,0x4(%esi)
606b3e:	89 0e                	mov    %ecx,(%esi)
606b40:	89 5e 18             	mov    %ebx,0x18(%esi)
606b43:	b0 01                	mov    $0x1,%al