466632:	83 e1 1f             	and    $0x1f,%ecx
466635:	8d 14 82             	lea    (%edx,%eax,4),%edx
466638:	8b 04 1a             	mov    (%edx,%ebx,1),%eax
46663b:	0f ab c8             	bts    %ecx,%eax
46663e:	89 04 1a             	mov    %eax,(%edx,%ebx,1)
466641:	8b 4d fc             	mov    -0x4(%ebp),%ecx
466644:	8b 09                	mov    (%ecx),%ecx
466646:	85 c9                	test   %ecx,%ecx
466648:	75 37                	jne    0x466681
46664a:	56                   	push   %esi
46664b:	8b cf                	mov    %edi,%ecx
46664d:	e8 de dd ff ff       	call   0x464430
466652:	8b 4b 04             	mov    0x4(%ebx),%ecx
466655:	8b d0                	mov    %eax,%edx
466657:	f6 c1 03             	test   $0x3,%cl
46665a:	75 05                	jne    0x466661
46665c:	83 e1 fc             	and    $0xfffffffc,%ecx
46665f:	eb 11                	jmp    0x466672
466661:	8b c1                	mov    %ecx,%eax
466663:	d1 e8                	shr    $1,%eax
466665:	a8 01                	test   $0x1,%al
466667:	74 04                	je     0x46666d
466669:	33 c9                	xor    %ecx,%ecx
46666b:	eb 05                	jmp    0x466672
46666d:	83 e1 fc             	and    $0xfffffffc,%ecx
466670:	8b 09                	mov    (%ecx),%ecx
466672:	8b 02                	mov    (%edx),%eax
466674:	51                   	push   %ecx
466675:	8b ca                	mov    %edx,%ecx
466677:	ff 50 08             	call   *0x8(%eax)
46667a:	8b c8                	mov    %eax,%ecx
46667c:	8b 45 fc             	mov    -0x4(%ebp),%eax
46667f:	89 08                	mov    %ecx,(%eax)
466681:	5f                   	pop    %edi
466682:	5e                   	pop    %esi
466683:	8b c1                	mov    %ecx,%eax
466685:	5b                   	pop    %ebx
466686:	8b e5                	mov    %ebp,%esp
466688:	5d                   	pop    %ebp
466689:	c2 0c 00             	ret    $0xc
46668c:	cc                   	int3
46668d:	cc                   	int3
46668e:	cc                   	int3
46668f:	cc                   	int3
466690:	55                   	push   %ebp
466691:	8b ec                	mov    %esp,%ebp
466693:	6a ff                	push   $0xffffffff
466695:	68 1e 92 5f 00       	push   $0x5f921e
46669a:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
4666a0:	50                   	push   %eax
4666a1:	83 ec 34             	sub    $0x34,%esp
4666a4:	a1 c0 14 69 00       	mov    0x6914c0,%eax
4666a9:	33 c5                	xor    %ebp,%eax
4666ab:	89 45 f0             	mov    %eax,-0x10(%ebp)
4666ae:	53                   	push   %ebx
4666af:	56                   	push   %esi
4666b0:	57                   	push   %edi
4666b1:	50                   	push   %eax
4666b2:	8d 45 f4             	lea    -0xc(%ebp),%eax
4666b5:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
4666bb:	8b f1                	mov    %ecx,%esi
4666bd:	8b 7d 0c             	mov    0xc(%ebp),%edi
4666c0:	8b 45 08             	mov    0x8(%ebp),%eax
4666c3:	c7 45 c0 00 00 00 00 	movl   $0x0,-0x40(%ebp)
4666ca:	89 45 c4             	mov    %eax,-0x3c(%ebp)
4666cd:	83 7f 20 03          	cmpl   $0x3,0x20(%edi)
4666d1:	74 15                	je     0x4666e8
4666d3:	68 58 6e 60 00       	push   $0x606e58
4666d8:	68 40 71 60 00       	push   $0x607140
4666dd:	57                   	push   %edi
4666de:	ff 36                	push   (%esi)
4666e0:	e8 ab 07 00 00       	call   0x466e90
4666e5:	83 c4 10             	add    $0x10,%esp
4666e8:	8b cf                	mov    %edi,%ecx
4666ea:	c7 45 fc ff ff ff ff 	movl   $0xffffffff,-0x4(%ebp)
4666f1:	e8 aa 2a ff ff       	call   0x4591a0
4666f6:	8b 5d 10             	mov    0x10(%ebp),%ebx
4666f9:	8b 04 85 98 7b 60 00 	mov    0x607b98(,%eax,4),%eax
466700:	3b c3                	cmp    %ebx,%eax
466702:	74 29                	je     0x46672d
466704:	8b cf                	mov    %edi,%ecx
466706:	e8 95 2a ff ff       	call   0x4591a0
46670b:	8b 04 85 98 7b 60 00 	mov    0x607b98(,%eax,4),%eax
466712:	83 f8 08             	cmp    $0x8,%eax
466715:	75 05                	jne    0x46671c
466717:	83 fb 01             	cmp    $0x1,%ebx
46671a:	74 11                	je     0x46672d
46671c:	53                   	push   %ebx
46671d:	68 5c 71 60 00       	push   $0x60715c
466722:	57                   	push   %edi
466723:	ff 36                	push   (%esi)
466725:	e8 46 08 00 00       	call   0x466f70
46672a:	83 c4 10             	add    $0x10,%esp
46672d:	8b 5d 18             	mov    0x18(%ebp),%ebx
466730:	85 db                	test   %ebx,%ebx
466732:	74 68                	je     0x46679c
466734:	8b cf                	mov    %edi,%ecx
466736:	e8 e5 7e 03 00       	call   0x49e620
46673b:	3b c3                	cmp    %ebx,%eax
46673d:	74 46                	je     0x466785
46673f:	68 ff 06 00 00       	push   $0x6ff
466744:	68 a0 6a 60 00       	push   $0x606aa0
466749:	6a 03                	push   $0x3
46674b:	8d 4d cc             	lea    -0x34(%ebp),%ecx
46674e:	e8 8d eb 00 00       	call   0x4752e0
466753:	68 a8 71 60 00       	push   $0x6071a8
466758:	bb 01 00 00 00       	mov    $0x1,%ebx
46675d:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
466764:	68 74 71 60 00       	push   $0x607174
466769:	8b c8                	mov    %eax,%ecx
46676b:	89 5d c0             	mov    %ebx,-0x40(%ebp)
46676e:	e8 7d f1 00 00       	call   0x4758f0
466773:	8b c8                	mov    %eax,%ecx
466775:	e8 76 f1 00 00       	call   0x4758f0
46677a:	50                   	push   %eax
46677b:	8d 4d cb             	lea    -0x35(%ebp),%ecx
46677e:	e8 fd ee 00 00       	call   0x475680
466783:	eb 03                	jmp    0x466788
466785:	8b 5d c0             	mov    -0x40(%ebp),%ebx
466788:	c7 45 fc ff ff ff ff 	movl   $0xffffffff,-0x4(%ebp)
46678f:	f6 c3 01             	test   $0x1,%bl
466792:	74 08                	je     0x46679c
466794:	8d 4d cc             	lea    -0x34(%ebp),%ecx
466797:	e8 74 ee 00 00       	call   0x475610
46679c:	80 7f 27 00          	cmpb   $0x0,0x27(%edi)
4667a0:	8b cf                	mov    %edi,%ecx
4667a2:	74 24                	je     0x4667c8
4667a4:	8b 76 18             	mov    0x18(%esi),%esi
4667a7:	03 75 c4             	add    -0x3c(%ebp),%esi
4667aa:	57                   	push   %edi
4667ab:	e8 f0 7d 03 00       	call   0x49e5a0
4667b0:	0f b6 c0             	movzbl %al,%eax
4667b3:	8b cf                	mov    %edi,%ecx
4667b5:	50                   	push   %eax
4667b6:	e8 e5 29 ff ff       	call   0x4591a0
4667bb:	50                   	push   %eax
4667bc:	ff 77 28             	push   0x28(%edi)
4667bf:	8b ce                	mov    %esi,%ecx
4667c1:	e8 fa 3d 04 00       	call   0x4aa5c0
4667c6:	eb 55                	jmp    0x46681d
4667c8:	e8 d3 29 ff ff       	call   0x4591a0
4667cd:	83 f8 0b             	cmp    $0xb,%eax
4667d0:	75 2f                	jne    0x466801
4667d2:	8b cf                	mov    %edi,%ecx
4667d4:	e8 b7 7d 03 00       	call   0x49e590
4667d9:	84 c0                	test   %al,%al
4667db:	74 24                	je     0x466801
4667dd:	8b cf                	mov    %edi,%ecx
4667df:	e8 bc 29 ff ff       	call   0x4591a0
4667e4:	8b cf                	mov    %edi,%ecx
4667e6:	e8 45 2b 00 00       	call   0x469330
4667eb:	8b 4e 08             	mov    0x8(%esi),%ecx
4667ee:	8b 0c 81             	mov    (%ecx,%eax,4),%ecx
4667f1:	81 e1 ff ff ff 7f    	and    $0x7fffffff,%ecx
4667f7:	03 4d c4             	add    -0x3c(%ebp),%ecx
4667fa:	e8 31 d2 03 00       	call   0x4a3a30
4667ff:	eb 1c                	jmp    0x46681d
466801:	8b cf                	mov    %edi,%ecx
466803:	e8 98 29 ff ff       	call   0x4591a0
466808:	8b cf                	mov    %edi,%ecx
46680a:	e8 21 2b 00 00       	call   0x469330
46680f:	8b 4e 08             	mov    0x8(%esi),%ecx
466812:	8b 04 81             	mov    (%ecx,%eax,4),%eax
466815:	25 ff ff ff 7f       	and    $0x7fffffff,%eax
46681a:	03 45 c4             	add    -0x3c(%ebp),%eax
46681d:	8b 4d f4             	mov    -0xc(%ebp),%ecx
466820:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
466827:	59                   	pop    %ecx
466828:	5f                   	pop    %edi
466829:	5e                   	pop    %esi
46682a:	5b                   	pop    %ebx
46682b:	8b 4d f0             	mov    -0x10(%ebp),%ecx
46682e:	33 cd                	xor    %ebp,%ecx
466830:	e8 f1 b1 16 00       	call   0x5d1a26
466835:	8b e5                	mov    %ebp,%esp
466837:	5d                   	pop    %ebp
466838:	c2 14 00             	ret    $0x14
46683b:	cc                   	int3
46683c:	cc                   	int3
46683d:	cc                   	int3
46683e:	cc                   	int3
46683f:	cc                   	int3
466840:	55                   	push   %ebp
466841:	8b ec                	mov    %esp,%ebp
466843:	51                   	push   %ecx
466844:	8b 45 10             	mov    0x10(%ebp),%eax
466847:	53                   	push   %ebx
466848:	8b 5d 08             	mov    0x8(%ebp),%ebx
46684b:	56                   	push   %esi
46684c:	8b 75 0c             	mov    0xc(%ebp),%esi
46684f:	57                   	push   %edi
466850:	8b f9                	mov    %ecx,%edi
466852:	89 45 fc             	mov    %eax,-0x4(%ebp)
466855:	8b 07                	mov    (%edi),%eax
466857:	39 46 30             	cmp    %eax,0x30(%esi)
46685a:	74 14                	je     0x466870
46685c:	68 e0 6d 60 00       	push   $0x606de0
466861:	68 1c 71 60 00       	push   $0x60711c
466866:	56                   	push   %esi
466867:	50                   	push   %eax
466868:	e8 23 06 00 00       	call   0x466e90
46686d:	83 c4 10             	add    $0x10,%esp
466870:	83 7e 20 03          	cmpl   $0x3,0x20(%esi)
466874:	74 15                	je     0x46688b
466876:	68 58 6e 60 00       	push   $0x606e58
46687b:	68 1c 71 60 00       	push   $0x60711c
466880:	56                   	push   %esi
466881:	ff 37                	push   (%edi)
466883:	e8 08 06 00 00       	call   0x466e90
466888:	83 c4 10             	add    $0x10,%esp
46688b:	8b ce                	mov    %esi,%ecx
46688d:	e8 0e 29 ff ff       	call   0x4591a0
466892:	8b 04 85 98 7b 60 00 	mov    0x607b98(,%eax,4),%eax
466899:	83 f8 0a             	cmp    $0xa,%eax
46689c:	74 12                	je     0x4668b0
46689e:	6a 0a                	push   $0xa
4668a0:	68 1c 71 60 00       	push   $0x60711c
4668a5:	56                   	push   %esi
4668a6:	ff 37                	push   (%edi)
4668a8:	e8 c3 06 00 00       	call   0x466f70
4668ad:	83 c4 10             	add    $0x10,%esp
4668b0:	80 7e 27 00          	cmpb   $0x0,0x27(%esi)
4668b4:	74 1a                	je     0x4668d0
4668b6:	8b 55 fc             	mov    -0x4(%ebp),%edx
4668b9:	8b 4f 18             	mov    0x18(%edi),%ecx
4668bc:	52                   	push   %edx
4668bd:	ff 76 28             	push   0x28(%esi)
4668c0:	03 cb                	add    %ebx,%ecx
4668c2:	e8 89 3e 04 00       	call   0x4aa750
4668c7:	5f                   	pop    %edi
4668c8:	5e                   	pop    %esi
4668c9:	5b                   	pop    %ebx
4668ca:	8b e5                	mov    %ebp,%esp
4668cc:	5d                   	pop    %ebp
4668cd:	c2 0c 00             	ret    $0xc
4668d0:	8b ce                	mov    %esi,%ecx
4668d2:	e8 c9 28 ff ff       	call   0x4591a0
4668d7:	83 f8 0b             	cmp    $0xb,%eax
4668da:	75 2f                	jne    0x46690b
4668dc:	8b ce                	mov    %esi,%ecx
4668de:	e8 ad 7c 03 00       	call   0x49e590
4668e3:	84 c0                	test   %al,%al
4668e5:	74 24                	je     0x46690b
4668e7:	8d 4f 04             	lea    0x4(%edi),%ecx
4668ea:	56                   	push   %esi
4668eb:	e8 d0 de ff ff       	call   0x4647c0
4668f0:	8d 0c 03             	lea    (%ebx,%eax,1),%ecx
4668f3:	e8 38 d1 03 00       	call   0x4a3a30
4668f8:	8b 55 fc             	mov    -0x4(%ebp),%edx
4668fb:	5f                   	pop    %edi
4668fc:	5e                   	pop    %esi
4668fd:	8b 40 0c             	mov    0xc(%eax),%eax
466900:	5b                   	pop    %ebx
466901:	8b 44 90 04          	mov    0x4(%eax,%edx,4),%eax
466905:	8b e5                	mov    %ebp,%esp
466907:	5d                   	pop    %ebp
466908:	c2 0c 00             	ret    $0xc
46690b:	8d 4f 04             	lea    0x4(%edi),%ecx
46690e:	56                   	push   %esi
46690f:	e8 ac de ff ff       	call   0x4647c0
466914:	8b 55 fc             	mov    -0x4(%ebp),%edx
466917:	5f                   	pop    %edi
466918:	5e                   	pop    %esi
466919:	8b 44 03 0c          	mov    0xc(%ebx,%eax,1),%eax
46691d:	5b                   	pop    %ebx
46691e:	8b 44 90 04          	mov    0x4(%eax,%edx,4),%eax
466922:	8b e5                	mov    %ebp,%esp
466924:	5d                   	pop    %ebp
466925:	c2 0c 00             	ret    $0xc
466928:	cc                   	int3
466929:	cc                   	int3
46692a:	cc                   	int3
46692b:	cc                   	int3
46692c:	cc                   	int3
46692d:	cc                   	int3
46692e:	cc                   	int3
46692f:	cc                   	int3
466930:	55                   	push   %ebp
466931:	8b ec                	mov    %esp,%ebp
466933:	8b 49 14             	mov    0x14(%ecx),%ecx
466936:	03 4d 08             	add    0x8(%ebp),%ecx
466939:	f6 01 01             	testb  $0x1,(%ecx)
46693c:	74 0c                	je     0x46694a
46693e:	8b 01                	mov    (%ecx),%eax
466940:	83 e0 fc             	and    $0xfffffffc,%eax
466943:	83 c0 04             	add    $0x4,%eax
466946:	5d                   	pop    %ebp
466947:	c2 04 00             	ret    $0x4
46694a:	e8 e1 a2 fe ff       	call   0x450c30
46694f:	5d                   	pop    %ebp
466950:	c2 04 00             	ret    $0x4
466953:	cc                   	int3
466954:	cc                   	int3
466955:	cc                   	int3
466956:	cc                   	int3
466957:	cc                   	int3
466958:	cc                   	int3
466959:	cc                   	int3
46695a:	cc                   	int3
46695b:	cc                   	int3
46695c:	cc                   	int3
46695d:	cc                   	int3
46695e:	cc                   	int3
46695f:	cc                   	int3
466960:	55                   	push   %ebp
466961:	8b ec                	mov    %esp,%ebp
466963:	6a ff                	push   $0xffffffff
466965:	68 5d 92 5f 00       	push   $0x5f925d
46696a:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
466970:	50                   	push   %eax
466971:	83 ec 0c             	sub    $0xc,%esp
466974:	53                   	push   %ebx
466975:	56                   	push   %esi
466976:	57                   	push   %edi
466977:	a1 c0 14 69 00       	mov    0x6914c0,%eax
46697c:	33 c5                	xor    %ebp,%eax
46697e:	50                   	push   %eax
46697f:	8d 45 f4             	lea    -0xc(%ebp),%eax
466982:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
466988:	8b 75 08             	mov    0x8(%ebp),%esi
46698b:	6a 00                	push   $0x0
46698d:	8a 46 01             	mov    0x1(%esi),%al
466990:	8b 7e 10             	mov    0x10(%esi),%edi
466993:	88 45 f0             	mov    %al,-0x10(%ebp)
466996:	8d 45 08             	lea    0x8(%ebp),%eax
466999:	50                   	push   %eax
46699a:	6a 00                	push   $0x0
46699c:	57                   	push   %edi
46699d:	ff 15 98 21 60 00    	call   *0x602198
4669a3:	85 c0                	test   %eax,%eax
4669a5:	74 72                	je     0x466a19
4669a7:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
4669ab:	74 33                	je     0x4669e0
4669ad:	89 7d e8             	mov    %edi,-0x18(%ebp)
4669b0:	c7 45 ec 04 00 00 00 	movl   $0x4,-0x14(%ebp)
4669b7:	ff 75 f0             	push   -0x10(%ebp)
4669ba:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
4669c1:	56                   	push   %esi
4669c2:	e8 59 ca ff ff       	call   0x463420
4669c7:	83 c4 08             	add    $0x8,%esp
4669ca:	c7 45 fc ff ff ff ff 	movl   $0xffffffff,-0x4(%ebp)
4669d1:	6a 00                	push   $0x0
4669d3:	6a 00                	push   $0x0
4669d5:	57                   	push   %edi
4669d6:	ff 15 94 21 60 00    	call   *0x602194
4669dc:	85 c0                	test   %eax,%eax
4669de:	74 39                	je     0x466a19
4669e0:	8b 5e 1c             	mov    0x1c(%esi),%ebx
4669e3:	8b 7e 2c             	mov    0x2c(%esi),%edi
4669e6:	33 f6                	xor    %esi,%esi