4678a5:	8b 04 01             	mov    (%ecx,%eax,1),%eax
4678a8:	83 e0 fe             	and    $0xfffffffe,%eax
4678ab:	89 45 ec             	mov    %eax,-0x14(%ebp)
4678ae:	85 f6                	test   %esi,%esi
4678b0:	74 5a                	je     0x46790c
4678b2:	83 7e 0c 01          	cmpl   $0x1,0xc(%esi)
4678b6:	75 0b                	jne    0x4678c3
4678b8:	8b 46 10             	mov    0x10(%esi),%eax
4678bb:	8b 00                	mov    (%eax),%eax
4678bd:	80 78 25 00          	cmpb   $0x0,0x25(%eax)
4678c1:	75 49                	jne    0x46790c
4678c3:	8b 46 08             	mov    0x8(%esi),%eax
4678c6:	8b ce                	mov    %esi,%ecx
4678c8:	2b 48 18             	sub    0x18(%eax),%ecx
4678cb:	b8 ab aa aa 2a       	mov    $0x2aaaaaab,%eax
4678d0:	f7 e9                	imul   %ecx
4678d2:	c1 fa 02             	sar    $0x2,%edx
4678d5:	8b ca                	mov    %edx,%ecx
4678d7:	c1 e9 1f             	shr    $0x1f,%ecx
4678da:	03 ca                	add    %edx,%ecx
4678dc:	8b 55 e8             	mov    -0x18(%ebp),%edx
4678df:	8b 42 1c             	mov    0x1c(%edx),%eax
4678e2:	8d 04 88             	lea    (%eax,%ecx,4),%eax
4678e5:	8b 4d f0             	mov    -0x10(%ebp),%ecx
4678e8:	8b 04 08             	mov    (%eax,%ecx,1),%eax
4678eb:	3b 47 28             	cmp    0x28(%edi),%eax
4678ee:	74 1c                	je     0x46790c
4678f0:	56                   	push   %esi
4678f1:	51                   	push   %ecx
4678f2:	8b ca                	mov    %edx,%ecx
4678f4:	e8 e7 c6 ff ff       	call   0x463fe0
4678f9:	8b 4d e8             	mov    -0x18(%ebp),%ecx
4678fc:	57                   	push   %edi
4678fd:	ff 75 f0             	push   -0x10(%ebp)
467900:	e8 5b 9b ff ff       	call   0x461460
467905:	8b 75 ec             	mov    -0x14(%ebp),%esi
467908:	89 30                	mov    %esi,(%eax)
46790a:	eb 03                	jmp    0x46790f
46790c:	8b 75 ec             	mov    -0x14(%ebp),%esi
46790f:	8b 45 e8             	mov    -0x18(%ebp),%eax
467912:	8b 55 f0             	mov    -0x10(%ebp),%edx
467915:	8b 40 14             	mov    0x14(%eax),%eax
467918:	8b 0c 02             	mov    (%edx,%eax,1),%ecx
46791b:	f6 c1 03             	test   $0x3,%cl
46791e:	75 05                	jne    0x467925
467920:	83 e1 fc             	and    $0xfffffffc,%ecx
467923:	eb 11                	jmp    0x467936
467925:	8b c1                	mov    %ecx,%eax
467927:	d1 e8                	shr    $1,%eax
467929:	a8 01                	test   $0x1,%al
46792b:	74 04                	je     0x467931
46792d:	33 c9                	xor    %ecx,%ecx
46792f:	eb 05                	jmp    0x467936
467931:	83 e1 fc             	and    $0xfffffffc,%ecx
467934:	8b 09                	mov    (%ecx),%ecx
467936:	51                   	push   %ecx
467937:	8b 4d e8             	mov    -0x18(%ebp),%ecx
46793a:	8d 45 10             	lea    0x10(%ebp),%eax
46793d:	50                   	push   %eax
46793e:	56                   	push   %esi
46793f:	57                   	push   %edi
467940:	52                   	push   %edx
467941:	e8 1a 9b ff ff       	call   0x461460
467946:	8b c8                	mov    %eax,%ecx
467948:	e8 a3 40 ff ff       	call   0x45b9f0
46794d:	8b 55 24             	mov    0x24(%ebp),%edx
467950:	83 fa 10             	cmp    $0x10,%edx
467953:	0f 82 f5 fe ff ff    	jb     0x46784e
467959:	8b 4d 10             	mov    0x10(%ebp),%ecx
46795c:	42                   	inc    %edx
46795d:	8b c1                	mov    %ecx,%eax
46795f:	81 fa 00 10 00 00    	cmp    $0x1000,%edx
467965:	0f 82 d9 fe ff ff    	jb     0x467844
46796b:	8b 49 fc             	mov    -0x4(%ecx),%ecx
46796e:	83 c2 23             	add    $0x23,%edx
467971:	2b c1                	sub    %ecx,%eax
467973:	83 c0 fc             	add    $0xfffffffc,%eax
467976:	83 f8 1f             	cmp    $0x1f,%eax
467979:	0f 86 c5 fe ff ff    	jbe    0x467844
46797f:	e8 6c e8 16 00       	call   0x5d61f0
467984:	cc                   	int3
467985:	cc                   	int3
467986:	cc                   	int3
467987:	cc                   	int3
467988:	cc                   	int3
467989:	cc                   	int3
46798a:	cc                   	int3
46798b:	cc                   	int3
46798c:	cc                   	int3
46798d:	cc                   	int3
46798e:	cc                   	int3
46798f:	cc                   	int3
467990:	55                   	push   %ebp
467991:	8b ec                	mov    %esp,%ebp
467993:	56                   	push   %esi
467994:	57                   	push   %edi
467995:	8b 7d 0c             	mov    0xc(%ebp),%edi
467998:	8b f1                	mov    %ecx,%esi
46799a:	8b 06                	mov    (%esi),%eax
46799c:	39 47 30             	cmp    %eax,0x30(%edi)
46799f:	74 14                	je     0x4679b5
4679a1:	68 e0 6d 60 00       	push   $0x606de0
4679a6:	68 1c 6f 60 00       	push   $0x606f1c
4679ab:	57                   	push   %edi
4679ac:	50                   	push   %eax
4679ad:	e8 de f4 ff ff       	call   0x466e90
4679b2:	83 c4 10             	add    $0x10,%esp
4679b5:	83 7f 20 03          	cmpl   $0x3,0x20(%edi)
4679b9:	75 15                	jne    0x4679d0
4679bb:	68 10 6e 60 00       	push   $0x606e10
4679c0:	68 1c 6f 60 00       	push   $0x606f1c
4679c5:	57                   	push   %edi
4679c6:	ff 36                	push   (%esi)
4679c8:	e8 c3 f4 ff ff       	call   0x466e90
4679cd:	83 c4 10             	add    $0x10,%esp
4679d0:	8b cf                	mov    %edi,%ecx
4679d2:	e8 c9 17 ff ff       	call   0x4591a0
4679d7:	83 3c 85 98 7b 60 00 	cmpl   $0x3,0x607b98(,%eax,4)
4679de:	03
4679df:	74 12                	je     0x4679f3
4679e1:	6a 03                	push   $0x3
4679e3:	68 1c 6f 60 00       	push   $0x606f1c
4679e8:	57                   	push   %edi
4679e9:	ff 36                	push   (%esi)
4679eb:	e8 80 f5 ff ff       	call   0x466f70
4679f0:	83 c4 10             	add    $0x10,%esp
4679f3:	80 7f 27 00          	cmpb   $0x0,0x27(%edi)
4679f7:	74 22                	je     0x467a1b
4679f9:	8b 76 18             	mov    0x18(%esi),%esi
4679fc:	8b cf                	mov    %edi,%ecx
4679fe:	03 75 08             	add    0x8(%ebp),%esi
467a01:	57                   	push   %edi
467a02:	ff 75 10             	push   0x10(%ebp)
467a05:	e8 96 17 ff ff       	call   0x4591a0
467a0a:	50                   	push   %eax
467a0b:	ff 77 28             	push   0x28(%edi)
467a0e:	8b ce                	mov    %esi,%ecx
467a10:	e8 4b 2f 04 00       	call   0x4aa960
467a15:	5f                   	pop    %edi
467a16:	5e                   	pop    %esi
467a17:	5d                   	pop    %ebp
467a18:	c2 0c 00             	ret    $0xc
467a1b:	8d 45 10             	lea    0x10(%ebp),%eax
467a1e:	8b ce                	mov    %esi,%ecx
467a20:	50                   	push   %eax
467a21:	57                   	push   %edi
467a22:	ff 75 08             	push   0x8(%ebp)
467a25:	e8 e6 9a ff ff       	call   0x461510
467a2a:	5f                   	pop    %edi
467a2b:	5e                   	pop    %esi
467a2c:	5d                   	pop    %ebp
467a2d:	c2 0c 00             	ret    $0xc
467a30:	55                   	push   %ebp
467a31:	8b ec                	mov    %esp,%ebp
467a33:	56                   	push   %esi
467a34:	57                   	push   %edi
467a35:	8b 7d 0c             	mov    0xc(%ebp),%edi
467a38:	8b f1                	mov    %ecx,%esi
467a3a:	8b 06                	mov    (%esi),%eax
467a3c:	39 47 30             	cmp    %eax,0x30(%edi)
467a3f:	74 14                	je     0x467a55
467a41:	68 e0 6d 60 00       	push   $0x606de0
467a46:	68 54 6f 60 00       	push   $0x606f54
467a4b:	57                   	push   %edi
467a4c:	50                   	push   %eax
467a4d:	e8 3e f4 ff ff       	call   0x466e90
467a52:	83 c4 10             	add    $0x10,%esp
467a55:	83 7f 20 03          	cmpl   $0x3,0x20(%edi)
467a59:	75 15                	jne    0x467a70
467a5b:	68 10 6e 60 00       	push   $0x606e10
467a60:	68 54 6f 60 00       	push   $0x606f54
467a65:	57                   	push   %edi
467a66:	ff 36                	push   (%esi)
467a68:	e8 23 f4 ff ff       	call   0x466e90
467a6d:	83 c4 10             	add    $0x10,%esp
467a70:	8b cf                	mov    %edi,%ecx
467a72:	e8 29 17 ff ff       	call   0x4591a0
467a77:	83 3c 85 98 7b 60 00 	cmpl   $0x4,0x607b98(,%eax,4)
467a7e:	04
467a7f:	74 12                	je     0x467a93
467a81:	6a 04                	push   $0x4
467a83:	68 54 6f 60 00       	push   $0x606f54
467a88:	57                   	push   %edi
467a89:	ff 36                	push   (%esi)
467a8b:	e8 e0 f4 ff ff       	call   0x466f70
467a90:	83 c4 10             	add    $0x10,%esp
467a93:	80 7f 27 00          	cmpb   $0x0,0x27(%edi)
467a97:	74 25                	je     0x467abe
467a99:	8b 76 18             	mov    0x18(%esi),%esi
467a9c:	8b cf                	mov    %edi,%ecx
467a9e:	03 75 08             	add    0x8(%ebp),%esi
467aa1:	57                   	push   %edi
467aa2:	ff 75 14             	push   0x14(%ebp)
467aa5:	ff 75 10             	push   0x10(%ebp)
467aa8:	e8 f3 16 ff ff       	call   0x4591a0
467aad:	50                   	push   %eax
467aae:	ff 77 28             	push   0x28(%edi)
467ab1:	8b ce                	mov    %esi,%ecx
467ab3:	e8 28 2f 04 00       	call   0x4aa9e0
467ab8:	5f                   	pop    %edi
467ab9:	5e                   	pop    %esi
467aba:	5d                   	pop    %ebp
467abb:	c2 10 00             	ret    $0x10
467abe:	8d 45 10             	lea    0x10(%ebp),%eax
467ac1:	8b ce                	mov    %esi,%ecx
467ac3:	50                   	push   %eax
467ac4:	57                   	push   %edi
467ac5:	ff 75 08             	push   0x8(%ebp)
467ac8:	e8 53 9d ff ff       	call   0x461820
467acd:	5f                   	pop    %edi
467ace:	5e                   	pop    %esi
467acf:	5d                   	pop    %ebp
467ad0:	c2 10 00             	ret    $0x10
467ad3:	cc                   	int3
467ad4:	cc                   	int3
467ad5:	cc                   	int3
467ad6:	cc                   	int3
467ad7:	cc                   	int3
467ad8:	cc                   	int3
467ad9:	cc                   	int3
467ada:	cc                   	int3
467adb:	cc                   	int3
467adc:	cc                   	int3
467add:	cc                   	int3
467ade:	cc                   	int3
467adf:	cc                   	int3
467ae0:	55                   	push   %ebp
467ae1:	8b ec                	mov    %esp,%ebp
467ae3:	83 ec 18             	sub    $0x18,%esp
467ae6:	53                   	push   %ebx
467ae7:	8b d9                	mov    %ecx,%ebx
467ae9:	56                   	push   %esi
467aea:	8b 75 08             	mov    0x8(%ebp),%esi
467aed:	57                   	push   %edi
467aee:	8b 43 14             	mov    0x14(%ebx),%eax
467af1:	8b 7b 20             	mov    0x20(%ebx),%edi
467af4:	89 5d e8             	mov    %ebx,-0x18(%ebp)
467af7:	89 75 fc             	mov    %esi,-0x4(%ebp)
467afa:	f6 04 30 01          	testb  $0x1,(%eax,%esi,1)
467afe:	74 0b                	je     0x467b0b
467b00:	8b 04 30             	mov    (%eax,%esi,1),%eax
467b03:	83 e0 fc             	and    $0xfffffffc,%eax
467b06:	83 c0 04             	add    $0x4,%eax
467b09:	eb 05                	jmp    0x467b10
467b0b:	e8 40 96 ff ff       	call   0x461150
467b10:	8b c8                	mov    %eax,%ecx
467b12:	e8 29 94 ff ff       	call   0x460f40
467b17:	03 f8                	add    %eax,%edi
467b19:	8b 43 18             	mov    0x18(%ebx),%eax
467b1c:	89 7d f8             	mov    %edi,-0x8(%ebp)
467b1f:	83 f8 ff             	cmp    $0xffffffff,%eax
467b22:	74 0d                	je     0x467b31
467b24:	8d 0c 06             	lea    (%esi,%eax,1),%ecx
467b27:	e8 14 4c 04 00       	call   0x4ac740
467b2c:	03 f8                	add    %eax,%edi
467b2e:	89 7d f8             	mov    %edi,-0x8(%ebp)
467b31:	83 7b 30 00          	cmpl   $0x0,0x30(%ebx)
467b35:	c7 45 f0 00 00 00 00 	movl   $0x0,-0x10(%ebp)
467b3c:	0f 8c 79 02 00 00    	jl     0x467dbb
467b42:	33 d2                	xor    %edx,%edx
467b44:	89 55 ec             	mov    %edx,-0x14(%ebp)
467b47:	8b 03                	mov    (%ebx),%eax
467b49:	8b 70 14             	mov    0x14(%eax),%esi
467b4c:	03 f2                	add    %edx,%esi
467b4e:	83 7e 20 03          	cmpl   $0x3,0x20(%esi)
467b52:	0f 85 5b 01 00 00    	jne    0x467cb3
467b58:	8b ce                	mov    %esi,%ecx
467b5a:	e8 41 16 ff ff       	call   0x4591a0
467b5f:	8b 04 85 98 7b 60 00 	mov    0x607b98(,%eax,4),%eax
467b66:	48                   	dec    %eax
467b67:	83 f8 09             	cmp    $0x9,%eax
467b6a:	0f 87 32 02 00 00    	ja     0x467da2
467b70:	ff 24 85 c8 7d 46 00 	jmp    *0x467dc8(,%eax,4)
467b77:	56                   	push   %esi
467b78:	8d 4b 04             	lea    0x4(%ebx),%ecx
467b7b:	e8 40 cc ff ff       	call   0x4647c0
467b80:	8b 4d fc             	mov    -0x4(%ebp),%ecx
467b83:	03 c8                	add    %eax,%ecx
467b85:	e8 a6 5d ff ff       	call   0x45d930
467b8a:	e9 0e 02 00 00       	jmp    0x467d9d
467b8f:	56                   	push   %esi
467b90:	8d 4b 04             	lea    0x4(%ebx),%ecx
467b93:	e8 28 cc ff ff       	call   0x4647c0
467b98:	8b 4d fc             	mov    -0x4(%ebp),%ecx
467b9b:	03 c8                	add    %eax,%ecx
467b9d:	e8 ae 5d ff ff       	call   0x45d950
467ba2:	e9 f6 01 00 00       	jmp    0x467d9d
467ba7:	56                   	push   %esi
467ba8:	8d 4b 04             	lea    0x4(%ebx),%ecx
467bab:	e8 10 cc ff ff       	call   0x4647c0
467bb0:	8b 4d fc             	mov    -0x4(%ebp),%ecx
467bb3:	03 c8                	add    %eax,%ecx
467bb5:	e8 76 5d ff ff       	call   0x45d930
467bba:	e9 de 01 00 00       	jmp    0x467d9d
467bbf:	56                   	push   %esi
467bc0:	8d 4b 04             	lea    0x4(%ebx),%ecx
467bc3:	e8 f8 cb ff ff       	call   0x4647c0
467bc8:	8b 4d fc             	mov    -0x4(%ebp),%ecx
467bcb:	03 c8                	add    %eax,%ecx
467bcd:	e8 7e 5d ff ff       	call   0x45d950
467bd2:	e9 c6 01 00 00       	jmp    0x467d9d
467bd7:	56                   	push   %esi
467bd8:	8d 4b 04             	lea    0x4(%ebx),%ecx
467bdb:	e8 e0 cb ff ff       	call   0x4647c0
467be0:	8b 4d fc             	mov    -0x4(%ebp),%ecx
467be3:	03 c8                	add    %eax,%ecx
467be5:	e8 66 5d ff ff       	call   0x45d950
467bea:	e9 ae 01 00 00       	jmp    0x467d9d
467bef:	56                   	push   %esi
467bf0:	8d 4b 04             	lea    0x4(%ebx),%ecx
467bf3:	e8 c8 cb ff ff       	call   0x4647c0
467bf8:	8b 4d fc             	mov    -0x4(%ebp),%ecx
467bfb:	03 c8                	add    %eax,%ecx
467bfd:	e8 2e 5d ff ff       	call   0x45d930
467c02:	e9 96 01 00 00       	jmp    0x467d9d
467c07:	56                   	push   %esi
467c08:	8d 4b 04             	lea    0x4(%ebx),%ecx
467c0b:	e8 b0 cb ff ff       	call   0x4647c0
467c10:	8b 4d fc             	mov    -0x4(%ebp),%ecx
467c13:	03 c8                	add    %eax,%ecx
467c15:	e8 56 5d ff ff       	call   0x45d970
467c1a:	e9 7e 01 00 00       	jmp    0x467d9d
467c1f:	56                   	push   %esi
467c20:	8d 4b 04             	lea    0x4(%ebx),%ecx
467c23:	e8 98 cb ff ff       	call   0x4647c0
467c28:	8b 4d fc             	mov    -0x4(%ebp),%ecx
467c2b:	03 c8                	add    %eax,%ecx
467c2d:	e8 4e 5d ff ff       	call   0x45d980
467c32:	e9 66 01 00 00       	jmp    0x467d9d
467c37:	8b ce                	mov    %esi,%ecx
467c39:	e8 62 15 ff ff       	call   0x4591a0
467c3e:	83 f8 0b             	cmp    $0xb,%eax
467c41:	75 23                	jne    0x467c66
467c43:	8b ce                	mov    %esi,%ecx
467c45:	e8 46 69 03 00       	call   0x49e590
467c4a:	84 c0                	test   %al,%al
467c4c:	74 18                	je     0x467c66
467c4e:	56                   	push   %esi
467c4f:	8d 4b 04             	lea    0x4(%ebx),%ecx
467c52:	e8 69 cb ff ff       	call   0x4647c0
467c57:	8b 4d fc             	mov    -0x4(%ebp),%ecx
467c5a:	03 c8                	add    %eax,%ecx
467c5c:	e8 1f c1 03 00       	call   0x4a3d80
467c61:	e9 37 01 00 00       	jmp    0x467d9d
467c66:	56                   	push   %esi
467c67:	8d 4b 04             	lea    0x4(%ebx),%ecx
467c6a:	e8 51 cb ff ff       	call   0x4647c0
467c6f:	03 45 fc             	add    -0x4(%ebp),%eax
467c72:	89 45 f4             	mov    %eax,-0xc(%ebp)
467c75:	8b 58 08             	mov    0x8(%eax),%ebx