641676:	83 c1 28             	add    $0x28,%ecx
641679:	3b c8                	cmp    %eax,%ecx
64167b:	74 0a                	je     0x641687
64167d:	6a ff                	push   $0xffffffff
64167f:	6a 00                	push   $0x0
641681:	50                   	push   %eax
641682:	e8 69 72 df ff       	call   0x4388f0
641687:	8b 45 d4             	mov    -0x2c(%ebp),%eax
64168a:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
64168e:	83 f8 08             	cmp    $0x8,%eax
641691:	72 0d                	jb     0x6416a0
641693:	40                   	inc    %eax
641694:	8d 4d c0             	lea    -0x40(%ebp),%ecx
641697:	50                   	push   %eax
641698:	ff 75 c0             	push   -0x40(%ebp)
64169b:	e8 40 77 df ff       	call   0x438de0
6416a0:	6a 00                	push   $0x0
6416a2:	68 fc 56 6e 00       	push   $0x6e56fc
6416a7:	8d 4d a8             	lea    -0x58(%ebp),%ecx
6416aa:	e8 41 71 df ff       	call   0x4387f0
6416af:	8d 45 a8             	lea    -0x58(%ebp),%eax
6416b2:	50                   	push   %eax
6416b3:	ff b7 c4 04 00 00    	push   0x4c4(%edi)
6416b9:	ff b7 c0 04 00 00    	push   0x4c0(%edi)
6416bf:	e8 3c 99 ff ff       	call   0x63b000
6416c4:	83 c4 0c             	add    $0xc,%esp
6416c7:	8d 4d c0             	lea    -0x40(%ebp),%ecx
6416ca:	68 8c 1f 6e 00       	push   $0x6e1f8c
6416cf:	e8 4c 6f df ff       	call   0x438620
6416d4:	8d 45 c0             	lea    -0x40(%ebp),%eax
6416d7:	c6 45 fc 08          	movb   $0x8,-0x4(%ebp)
6416db:	50                   	push   %eax
6416dc:	8d 45 a0             	lea    -0x60(%ebp),%eax
6416df:	8b cb                	mov    %ebx,%ecx
6416e1:	50                   	push   %eax
6416e2:	e8 e9 61 ff ff       	call   0x6378d0
6416e7:	8b 4d a0             	mov    -0x60(%ebp),%ecx
6416ea:	8d 45 a8             	lea    -0x58(%ebp),%eax
6416ed:	83 c1 28             	add    $0x28,%ecx
6416f0:	3b c8                	cmp    %eax,%ecx
6416f2:	74 0a                	je     0x6416fe
6416f4:	6a ff                	push   $0xffffffff
6416f6:	6a 00                	push   $0x0
6416f8:	50                   	push   %eax
6416f9:	e8 f2 71 df ff       	call   0x4388f0
6416fe:	8d 4d c0             	lea    -0x40(%ebp),%ecx
641701:	e8 ba 6e df ff       	call   0x4385c0
641706:	8d 4d a8             	lea    -0x58(%ebp),%ecx
641709:	e8 b2 6e df ff       	call   0x4385c0
64170e:	b0 01                	mov    $0x1,%al
641710:	8b 4d f4             	mov    -0xc(%ebp),%ecx
641713:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
64171a:	59                   	pop    %ecx
64171b:	5f                   	pop    %edi
64171c:	5e                   	pop    %esi
64171d:	5b                   	pop    %ebx
64171e:	8b 4d f0             	mov    -0x10(%ebp),%ecx
641721:	33 cd                	xor    %ebp,%ecx
641723:	e8 b2 fd f9 ff       	call   0x5e14da
641728:	8b e5                	mov    %ebp,%esp
64172a:	5d                   	pop    %ebp
64172b:	c2 04 00             	ret    $0x4
64172e:	cc                   	int3
64172f:	cc                   	int3
641730:	55                   	push   %ebp
641731:	8b ec                	mov    %esp,%ebp
641733:	6a ff                	push   $0xffffffff
641735:	68 52 48 66 00       	push   $0x664852
64173a:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
641740:	50                   	push   %eax
641741:	51                   	push   %ecx
641742:	56                   	push   %esi
641743:	57                   	push   %edi
641744:	a1 d4 89 72 00       	mov    0x7289d4,%eax
641749:	33 c5                	xor    %ebp,%eax
64174b:	50                   	push   %eax
64174c:	8d 45 f4             	lea    -0xc(%ebp),%eax
64174f:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
641755:	8b f9                	mov    %ecx,%edi
641757:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
64175b:	75 0c                	jne    0x641769
64175d:	e8 7e 4c ff ff       	call   0x6363e0
641762:	68 28 1b 6e 00       	push   $0x6e1b28
641767:	eb 69                	jmp    0x6417d2
641769:	68 f8 00 00 00       	push   $0xf8
64176e:	e8 cf f8 f9 ff       	call   0x5e1042
641773:	83 c4 04             	add    $0x4,%esp
641776:	89 45 f0             	mov    %eax,-0x10(%ebp)
641779:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
641780:	85 c0                	test   %eax,%eax
641782:	74 0e                	je     0x641792
641784:	ff 75 0c             	push   0xc(%ebp)
641787:	8b c8                	mov    %eax,%ecx
641789:	e8 a2 7a 00 00       	call   0x649230
64178e:	8b f0                	mov    %eax,%esi
641790:	eb 02                	jmp    0x641794
641792:	33 f6                	xor    %esi,%esi
641794:	ff 75 10             	push   0x10(%ebp)
641797:	8b ce                	mov    %esi,%ecx
641799:	c7 45 fc ff ff ff ff 	movl   $0xffffffff,-0x4(%ebp)
6417a0:	ff 75 08             	push   0x8(%ebp)
6417a3:	57                   	push   %edi
6417a4:	e8 07 8c 00 00       	call   0x64a3b0
6417a9:	84 c0                	test   %al,%al
6417ab:	74 2e                	je     0x6417db
6417ad:	80 7d 14 00          	cmpb   $0x0,0x14(%ebp)
6417b1:	8b cf                	mov    %edi,%ecx
6417b3:	6a 00                	push   $0x0
6417b5:	56                   	push   %esi
6417b6:	74 07                	je     0x6417bf
6417b8:	e8 43 a6 ff ff       	call   0x63be00
6417bd:	eb 05                	jmp    0x6417c4
6417bf:	e8 bc a5 ff ff       	call   0x63bd80
6417c4:	84 c0                	test   %al,%al
6417c6:	75 15                	jne    0x6417dd
6417c8:	e8 13 4c ff ff       	call   0x6363e0
6417cd:	68 90 1a 6e 00       	push   $0x6e1a90
6417d2:	8b 08                	mov    (%eax),%ecx
6417d4:	50                   	push   %eax
6417d5:	ff 51 04             	call   *0x4(%ecx)
6417d8:	83 c4 08             	add    $0x8,%esp
6417db:	32 c0                	xor    %al,%al
6417dd:	8b 4d f4             	mov    -0xc(%ebp),%ecx
6417e0:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
6417e7:	59                   	pop    %ecx
6417e8:	5f                   	pop    %edi
6417e9:	5e                   	pop    %esi
6417ea:	8b e5                	mov    %ebp,%esp
6417ec:	5d                   	pop    %ebp
6417ed:	c2 10 00             	ret    $0x10
6417f0:	55                   	push   %ebp
6417f1:	8b ec                	mov    %esp,%ebp
6417f3:	6a ff                	push   $0xffffffff
6417f5:	68 7f 48 66 00       	push   $0x66487f
6417fa:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
641800:	50                   	push   %eax
641801:	51                   	push   %ecx
641802:	53                   	push   %ebx
641803:	56                   	push   %esi
641804:	a1 d4 89 72 00       	mov    0x7289d4,%eax
641809:	33 c5                	xor    %ebp,%eax
64180b:	50                   	push   %eax
64180c:	8d 45 f4             	lea    -0xc(%ebp),%eax
64180f:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
641815:	8b d9                	mov    %ecx,%ebx
641817:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
64181b:	75 28                	jne    0x641845
64181d:	e8 be 4b ff ff       	call   0x6363e0
641822:	68 10 1a 6e 00       	push   $0x6e1a10
641827:	50                   	push   %eax
641828:	8b 08                	mov    (%eax),%ecx
64182a:	ff 51 04             	call   *0x4(%ecx)
64182d:	83 c4 08             	add    $0x8,%esp
641830:	32 c0                	xor    %al,%al
641832:	8b 4d f4             	mov    -0xc(%ebp),%ecx
641835:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
64183c:	59                   	pop    %ecx
64183d:	5e                   	pop    %esi
64183e:	5b                   	pop    %ebx
64183f:	8b e5                	mov    %ebp,%esp
641841:	5d                   	pop    %ebp
641842:	c2 1c 00             	ret    $0x1c
641845:	6a 60                	push   $0x60
641847:	e8 f6 f7 f9 ff       	call   0x5e1042
64184c:	83 c4 04             	add    $0x4,%esp
64184f:	89 45 f0             	mov    %eax,-0x10(%ebp)
641852:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
641859:	85 c0                	test   %eax,%eax
64185b:	74 0e                	je     0x64186b
64185d:	ff 75 0c             	push   0xc(%ebp)
641860:	8b c8                	mov    %eax,%ecx
641862:	e8 d9 8b 00 00       	call   0x64a440
641867:	8b f0                	mov    %eax,%esi
641869:	eb 02                	jmp    0x64186d
64186b:	33 f6                	xor    %esi,%esi
64186d:	ff 75 20             	push   0x20(%ebp)
641870:	8b ce                	mov    %esi,%ecx
641872:	c7 45 fc ff ff ff ff 	movl   $0xffffffff,-0x4(%ebp)
641879:	ff 75 10             	push   0x10(%ebp)
64187c:	ff 75 14             	push   0x14(%ebp)
64187f:	ff 75 1c             	push   0x1c(%ebp)
641882:	ff 75 18             	push   0x18(%ebp)
641885:	ff 75 08             	push   0x8(%ebp)
641888:	53                   	push   %ebx
641889:	e8 c2 8e 00 00       	call   0x64a750
64188e:	84 c0                	test   %al,%al
641890:	75 21                	jne    0x6418b3
641892:	85 f6                	test   %esi,%esi
641894:	74 08                	je     0x64189e
641896:	8b 06                	mov    (%esi),%eax
641898:	8b ce                	mov    %esi,%ecx
64189a:	6a 01                	push   $0x1
64189c:	ff 10                	call   *(%eax)
64189e:	32 c0                	xor    %al,%al
6418a0:	8b 4d f4             	mov    -0xc(%ebp),%ecx
6418a3:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
6418aa:	59                   	pop    %ecx
6418ab:	5e                   	pop    %esi
6418ac:	5b                   	pop    %ebx
6418ad:	8b e5                	mov    %ebp,%esp
6418af:	5d                   	pop    %ebp
6418b0:	c2 1c 00             	ret    $0x1c
6418b3:	6a 01                	push   $0x1
6418b5:	56                   	push   %esi
6418b6:	8b cb                	mov    %ebx,%ecx
6418b8:	e8 c3 a4 ff ff       	call   0x63bd80
6418bd:	84 c0                	test   %al,%al
6418bf:	75 34                	jne    0x6418f5
6418c1:	85 f6                	test   %esi,%esi
6418c3:	74 08                	je     0x6418cd
6418c5:	8b 06                	mov    (%esi),%eax
6418c7:	8b ce                	mov    %esi,%ecx
6418c9:	6a 01                	push   $0x1
6418cb:	ff 10                	call   *(%eax)
6418cd:	e8 0e 4b ff ff       	call   0x6363e0
6418d2:	68 90 1a 6e 00       	push   $0x6e1a90
6418d7:	50                   	push   %eax
6418d8:	8b 08                	mov    (%eax),%ecx
6418da:	ff 51 04             	call   *0x4(%ecx)
6418dd:	83 c4 08             	add    $0x8,%esp
6418e0:	32 c0                	xor    %al,%al
6418e2:	8b 4d f4             	mov    -0xc(%ebp),%ecx
6418e5:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
6418ec:	59                   	pop    %ecx
6418ed:	5e                   	pop    %esi
6418ee:	5b                   	pop    %ebx
6418ef:	8b e5                	mov    %ebp,%esp
6418f1:	5d                   	pop    %ebp
6418f2:	c2 1c 00             	ret    $0x1c
6418f5:	b0 01                	mov    $0x1,%al
6418f7:	8b 4d f4             	mov    -0xc(%ebp),%ecx
6418fa:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
641901:	59                   	pop    %ecx
641902:	5e                   	pop    %esi
641903:	5b                   	pop    %ebx
641904:	8b e5                	mov    %ebp,%esp
641906:	5d                   	pop    %ebp
641907:	c2 1c 00             	ret    $0x1c
64190a:	cc                   	int3
64190b:	cc                   	int3
64190c:	cc                   	int3
64190d:	cc                   	int3
64190e:	cc                   	int3
64190f:	cc                   	int3
641910:	55                   	push   %ebp
641911:	8b ec                	mov    %esp,%ebp
641913:	8b 45 0c             	mov    0xc(%ebp),%eax
641916:	8b 4d 08             	mov    0x8(%ebp),%ecx
641919:	3d 5d 74 d1 05       	cmp    $0x5d1745d,%eax
64191e:	77 31                	ja     0x641951
641920:	6b c0 2c             	imul   $0x2c,%eax,%eax
641923:	3d 00 10 00 00       	cmp    $0x1000,%eax
641928:	72 1a                	jb     0x641944
64192a:	f6 c1 1f             	test   $0x1f,%cl
64192d:	75 27                	jne    0x641956
64192f:	8b 41 fc             	mov    -0x4(%ecx),%eax
641932:	3b c1                	cmp    %ecx,%eax
641934:	73 25                	jae    0x64195b
641936:	2b c8                	sub    %eax,%ecx
641938:	83 f9 04             	cmp    $0x4,%ecx
64193b:	72 23                	jb     0x641960
64193d:	83 f9 23             	cmp    $0x23,%ecx
641940:	77 23                	ja     0x641965
641942:	8b c8                	mov    %eax,%ecx
641944:	51                   	push   %ecx
641945:	e8 86 eb ea ff       	call   0x4f04d0
64194a:	83 c4 04             	add    $0x4,%esp
64194d:	5d                   	pop    %ebp
64194e:	c2 08 00             	ret    $0x8
641951:	e8 d9 b5 fa ff       	call   0x5ecf2f
641956:	e8 d4 b5 fa ff       	call   0x5ecf2f
64195b:	e8 cf b5 fa ff       	call   0x5ecf2f
641960:	e8 ca b5 fa ff       	call   0x5ecf2f
641965:	e8 c5 b5 fa ff       	call   0x5ecf2f
64196a:	cc                   	int3
64196b:	cc                   	int3
64196c:	cc                   	int3
64196d:	cc                   	int3
64196e:	cc                   	int3
64196f:	cc                   	int3
641970:	55                   	push   %ebp
641971:	8b ec                	mov    %esp,%ebp
641973:	6a ff                	push   $0xffffffff
641975:	68 a6 48 66 00       	push   $0x6648a6
64197a:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
641980:	50                   	push   %eax
641981:	51                   	push   %ecx
641982:	57                   	push   %edi
641983:	a1 d4 89 72 00       	mov    0x7289d4,%eax
641988:	33 c5                	xor    %ebp,%eax
64198a:	50                   	push   %eax
64198b:	8d 45 f4             	lea    -0xc(%ebp),%eax
64198e:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
641994:	8b f9                	mov    %ecx,%edi
641996:	8b 17                	mov    (%edi),%edx
641998:	8b 45 0c             	mov    0xc(%ebp),%eax
64199b:	3b 02                	cmp    (%edx),%eax
64199d:	75 44                	jne    0x6419e3
64199f:	39 55 10             	cmp    %edx,0x10(%ebp)
6419a2:	75 3f                	jne    0x6419e3
6419a4:	ff 72 04             	push   0x4(%edx)
6419a7:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
6419ae:	e8 4d 45 ff ff       	call   0x635f00
6419b3:	8b 07                	mov    (%edi),%eax
6419b5:	89 40 04             	mov    %eax,0x4(%eax)
6419b8:	8b 07                	mov    (%edi),%eax
6419ba:	89 00                	mov    %eax,(%eax)
6419bc:	8b 07                	mov    (%edi),%eax
6419be:	89 40 08             	mov    %eax,0x8(%eax)
6419c1:	c7 47 04 00 00 00 00 	movl   $0x0,0x4(%edi)
6419c8:	8b 07                	mov    (%edi),%eax
6419ca:	8b 08                	mov    (%eax),%ecx
6419cc:	8b 45 08             	mov    0x8(%ebp),%eax
6419cf:	89 08                	mov    %ecx,(%eax)
6419d1:	8b 4d f4             	mov    -0xc(%ebp),%ecx
6419d4:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
6419db:	59                   	pop    %ecx
6419dc:	5f                   	pop    %edi
6419dd:	8b e5                	mov    %ebp,%esp
6419df:	5d                   	pop    %ebp
6419e0:	c2 0c 00             	ret    $0xc
6419e3:	3b 45 10             	cmp    0x10(%ebp),%eax
6419e6:	74 58                	je     0x641a40
6419e8:	80 78 0d 00          	cmpb   $0x0,0xd(%eax)
6419ec:	8b c8                	mov    %eax,%ecx
6419ee:	75 3c                	jne    0x641a2c
6419f0:	8b 50 08             	mov    0x8(%eax),%edx
6419f3:	80 7a 0d 00          	cmpb   $0x0,0xd(%edx)
6419f7:	75 14                	jne    0x641a0d
6419f9:	8b 02                	mov    (%edx),%eax
6419fb:	80 78 0d 00          	cmpb   $0x0,0xd(%eax)
6419ff:	75 28                	jne    0x641a29
641a01:	8b d0                	mov    %eax,%edx
641a03:	8b 02                	mov    (%edx),%eax
641a05:	80 78 0d 00          	cmpb   $0x0,0xd(%eax)
641a09:	74 f6                	je     0x641a01
641a0b:	eb 1c                	jmp    0x641a29
641a0d:	8b 50 04             	mov    0x4(%eax),%edx
641a10:	80 7a 0d 00          	cmpb   $0x0,0xd(%edx)
641a14:	75 13                	jne    0x641a29
641a16:	3b 42 08             	cmp    0x8(%edx),%eax
641a19:	75 0e                	jne    0x641a29
641a1b:	8b c2                	mov    %edx,%eax
641a1d:	89 45 0c             	mov    %eax,0xc(%ebp)
641a20:	8b 52 04             	mov    0x4(%edx),%edx
641a23:	80 7a 0d 00          	cmpb   $0x0,0xd(%edx)
641a27:	74 ed                	je     0x641a16
641a29:	89 55 0c             	mov    %edx,0xc(%ebp)
641a2c:	51                   	push   %ecx
641a2d:	8d 45 f0             	lea    -0x10(%ebp),%eax