639700:	8b 44 24 04          	mov    0x4(%esp),%eax
639704:	3b 41 04             	cmp    0x4(%ecx),%eax
639707:	73 09                	jae    0x639712
639709:	39 01                	cmp    %eax,(%ecx)
63970b:	77 05                	ja     0x639712
63970d:	b0 01                	mov    $0x1,%al
63970f:	c2 04 00             	ret    $0x4
639712:	32 c0                	xor    %al,%al
639714:	c2 04 00             	ret    $0x4
639717:	cc                   	int3
639718:	cc                   	int3
639719:	cc                   	int3
63971a:	cc                   	int3
63971b:	cc                   	int3
63971c:	cc                   	int3
63971d:	cc                   	int3
63971e:	cc                   	int3
63971f:	cc                   	int3
639720:	8b 44 24 04          	mov    0x4(%esp),%eax
639724:	c3                   	ret
639725:	cc                   	int3
639726:	cc                   	int3
639727:	cc                   	int3
639728:	cc                   	int3
639729:	cc                   	int3
63972a:	cc                   	int3
63972b:	cc                   	int3
63972c:	cc                   	int3
63972d:	cc                   	int3
63972e:	cc                   	int3
63972f:	cc                   	int3
639730:	8b 44 24 04          	mov    0x4(%esp),%eax
639734:	8b 4c 24 08          	mov    0x8(%esp),%ecx
639738:	89 08                	mov    %ecx,(%eax)
63973a:	c2 08 00             	ret    $0x8
63973d:	cc                   	int3
63973e:	cc                   	int3
63973f:	cc                   	int3
639740:	8b 44 24 04          	mov    0x4(%esp),%eax
639744:	8b 4c 24 08          	mov    0x8(%esp),%ecx
639748:	89 08                	mov    %ecx,(%eax)
63974a:	c2 08 00             	ret    $0x8
63974d:	cc                   	int3
63974e:	cc                   	int3
63974f:	cc                   	int3
639750:	8b 44 24 04          	mov    0x4(%esp),%eax
639754:	8b 4c 24 08          	mov    0x8(%esp),%ecx
639758:	89 08                	mov    %ecx,(%eax)
63975a:	c2 08 00             	ret    $0x8
63975d:	cc                   	int3
63975e:	cc                   	int3
63975f:	cc                   	int3
639760:	8b c1                	mov    %ecx,%eax
639762:	c3                   	ret
639763:	cc                   	int3
639764:	cc                   	int3
639765:	cc                   	int3
639766:	cc                   	int3
639767:	cc                   	int3
639768:	cc                   	int3
639769:	cc                   	int3
63976a:	cc                   	int3
63976b:	cc                   	int3
63976c:	cc                   	int3
63976d:	cc                   	int3
63976e:	cc                   	int3
63976f:	cc                   	int3
639770:	8b c1                	mov    %ecx,%eax
639772:	c3                   	ret
639773:	cc                   	int3
639774:	cc                   	int3
639775:	cc                   	int3
639776:	cc                   	int3
639777:	cc                   	int3
639778:	cc                   	int3
639779:	cc                   	int3
63977a:	cc                   	int3
63977b:	cc                   	int3
63977c:	cc                   	int3
63977d:	cc                   	int3
63977e:	cc                   	int3
63977f:	cc                   	int3
639780:	8b c1                	mov    %ecx,%eax
639782:	c3                   	ret
639783:	cc                   	int3
639784:	cc                   	int3
639785:	cc                   	int3
639786:	cc                   	int3
639787:	cc                   	int3
639788:	cc                   	int3
639789:	cc                   	int3
63978a:	cc                   	int3
63978b:	cc                   	int3
63978c:	cc                   	int3
63978d:	cc                   	int3
63978e:	cc                   	int3
63978f:	cc                   	int3
639790:	8b c1                	mov    %ecx,%eax
639792:	c3                   	ret
639793:	cc                   	int3
639794:	cc                   	int3
639795:	cc                   	int3
639796:	cc                   	int3
639797:	cc                   	int3
639798:	cc                   	int3
639799:	cc                   	int3
63979a:	cc                   	int3
63979b:	cc                   	int3
63979c:	cc                   	int3
63979d:	cc                   	int3
63979e:	cc                   	int3
63979f:	cc                   	int3
6397a0:	8b c1                	mov    %ecx,%eax
6397a2:	c3                   	ret
6397a3:	cc                   	int3
6397a4:	cc                   	int3
6397a5:	cc                   	int3
6397a6:	cc                   	int3
6397a7:	cc                   	int3
6397a8:	cc                   	int3
6397a9:	cc                   	int3
6397aa:	cc                   	int3
6397ab:	cc                   	int3
6397ac:	cc                   	int3
6397ad:	cc                   	int3
6397ae:	cc                   	int3
6397af:	cc                   	int3
6397b0:	8b c1                	mov    %ecx,%eax
6397b2:	c3                   	ret
6397b3:	cc                   	int3
6397b4:	cc                   	int3
6397b5:	cc                   	int3
6397b6:	cc                   	int3
6397b7:	cc                   	int3
6397b8:	cc                   	int3
6397b9:	cc                   	int3
6397ba:	cc                   	int3
6397bb:	cc                   	int3
6397bc:	cc                   	int3
6397bd:	cc                   	int3
6397be:	cc                   	int3
6397bf:	cc                   	int3
6397c0:	8b c1                	mov    %ecx,%eax
6397c2:	c3                   	ret
6397c3:	cc                   	int3
6397c4:	cc                   	int3
6397c5:	cc                   	int3
6397c6:	cc                   	int3
6397c7:	cc                   	int3
6397c8:	cc                   	int3
6397c9:	cc                   	int3
6397ca:	cc                   	int3
6397cb:	cc                   	int3
6397cc:	cc                   	int3
6397cd:	cc                   	int3
6397ce:	cc                   	int3
6397cf:	cc                   	int3
6397d0:	8b c1                	mov    %ecx,%eax
6397d2:	c3                   	ret
6397d3:	cc                   	int3
6397d4:	cc                   	int3
6397d5:	cc                   	int3
6397d6:	cc                   	int3
6397d7:	cc                   	int3
6397d8:	cc                   	int3
6397d9:	cc                   	int3
6397da:	cc                   	int3
6397db:	cc                   	int3
6397dc:	cc                   	int3
6397dd:	cc                   	int3
6397de:	cc                   	int3
6397df:	cc                   	int3
6397e0:	c2 08 00             	ret    $0x8
6397e3:	cc                   	int3
6397e4:	cc                   	int3
6397e5:	cc                   	int3
6397e6:	cc                   	int3
6397e7:	cc                   	int3
6397e8:	cc                   	int3
6397e9:	cc                   	int3
6397ea:	cc                   	int3
6397eb:	cc                   	int3
6397ec:	cc                   	int3
6397ed:	cc                   	int3
6397ee:	cc                   	int3
6397ef:	cc                   	int3
6397f0:	83 ec 08             	sub    $0x8,%esp
6397f3:	53                   	push   %ebx
6397f4:	8b d9                	mov    %ecx,%ebx
6397f6:	8b 43 04             	mov    0x4(%ebx),%eax
6397f9:	39 00                	cmp    %eax,(%eax)
6397fb:	74 21                	je     0x63981e
6397fd:	56                   	push   %esi
6397fe:	57                   	push   %edi
6397ff:	8b 78 04             	mov    0x4(%eax),%edi
639802:	8b 73 04             	mov    0x4(%ebx),%esi
639805:	8b cb                	mov    %ebx,%ecx
639807:	8b 36                	mov    (%esi),%esi
639809:	56                   	push   %esi
63980a:	8d 46 08             	lea    0x8(%esi),%eax
63980d:	50                   	push   %eax
63980e:	8d 44 24 14          	lea    0x14(%esp),%eax
639812:	50                   	push   %eax
639813:	e8 6e 3b de ff       	call   0x41d386
639818:	3b f7                	cmp    %edi,%esi
63981a:	75 e6                	jne    0x639802
63981c:	5f                   	pop    %edi
63981d:	5e                   	pop    %esi
63981e:	5b                   	pop    %ebx
63981f:	83 c4 08             	add    $0x8,%esp
639822:	c3                   	ret
639823:	cc                   	int3
639824:	cc                   	int3
639825:	cc                   	int3
639826:	cc                   	int3
639827:	cc                   	int3
639828:	cc                   	int3
639829:	cc                   	int3
63982a:	cc                   	int3
63982b:	cc                   	int3
63982c:	cc                   	int3
63982d:	cc                   	int3
63982e:	cc                   	int3
63982f:	cc                   	int3
639830:	56                   	push   %esi
639831:	8b f1                	mov    %ecx,%esi
639833:	8b 4c 24 08          	mov    0x8(%esp),%ecx
639837:	57                   	push   %edi
639838:	8b 7e 08             	mov    0x8(%esi),%edi
63983b:	8b c7                	mov    %edi,%eax
63983d:	8b 56 04             	mov    0x4(%esi),%edx
639840:	2b c2                	sub    %edx,%eax
639842:	c1 f8 06             	sar    $0x6,%eax
639845:	3b c1                	cmp    %ecx,%eax
639847:	73 37                	jae    0x639880
639849:	2b 16                	sub    (%esi),%edx
63984b:	53                   	push   %ebx
63984c:	bb ff ff ff 03       	mov    $0x3ffffff,%ebx
639851:	c1 fa 06             	sar    $0x6,%edx
639854:	8b c3                	mov    %ebx,%eax
639856:	2b c2                	sub    %edx,%eax
639858:	3b c1                	cmp    %ecx,%eax
63985a:	72 29                	jb     0x639885
63985c:	2b 3e                	sub    (%esi),%edi
63985e:	03 d1                	add    %ecx,%edx
639860:	c1 ff 06             	sar    $0x6,%edi
639863:	33 c9                	xor    %ecx,%ecx
639865:	8b c7                	mov    %edi,%eax
639867:	d1 e8                	shr    $1,%eax
639869:	2b d8                	sub    %eax,%ebx
63986b:	03 c7                	add    %edi,%eax
63986d:	3b df                	cmp    %edi,%ebx
63986f:	0f 43 c8             	cmovae %eax,%ecx
639872:	3b ca                	cmp    %edx,%ecx
639874:	0f 43 d1             	cmovae %ecx,%edx
639877:	8b ce                	mov    %esi,%ecx
639879:	52                   	push   %edx
63987a:	e8 03 95 dd ff       	call   0x412d82
63987f:	5b                   	pop    %ebx
639880:	5f                   	pop    %edi
639881:	5e                   	pop    %esi
639882:	c2 04 00             	ret    $0x4
639885:	68 58 20 bd 00       	push   $0xbd2058
63988a:	e8 87 ff de ff       	call   0x429816
63988f:	cc                   	int3
639890:	cc                   	int3
639891:	cc                   	int3
639892:	cc                   	int3
639893:	cc                   	int3
639894:	cc                   	int3
639895:	cc                   	int3
639896:	cc                   	int3
639897:	cc                   	int3
639898:	cc                   	int3
639899:	cc                   	int3
63989a:	cc                   	int3
63989b:	cc                   	int3
63989c:	cc                   	int3
63989d:	cc                   	int3
63989e:	cc                   	int3
63989f:	cc                   	int3
6398a0:	cc                   	int3
6398a1:	cc                   	int3
6398a2:	cc                   	int3
6398a3:	cc                   	int3
6398a4:	cc                   	int3
6398a5:	cc                   	int3
6398a6:	cc                   	int3
6398a7:	cc                   	int3
6398a8:	cc                   	int3
6398a9:	cc                   	int3
6398aa:	cc                   	int3
6398ab:	cc                   	int3
6398ac:	cc                   	int3
6398ad:	cc                   	int3
6398ae:	cc                   	int3
6398af:	cc                   	int3
6398b0:	56                   	push   %esi
6398b1:	8b f1                	mov    %ecx,%esi
6398b3:	57                   	push   %edi
6398b4:	8b 7e 04             	mov    0x4(%esi),%edi
6398b7:	85 ff                	test   %edi,%edi
6398b9:	74 35                	je     0x6398f0
6398bb:	53                   	push   %ebx
6398bc:	83 cb ff             	or     $0xffffffff,%ebx
6398bf:	8b c3                	mov    %ebx,%eax
6398c1:	f0 0f c1 47 04       	lock xadd %eax,0x4(%edi)
6398c6:	75 15                	jne    0x6398dd
6398c8:	8b 07                	mov    (%edi),%eax
6398ca:	8b cf                	mov    %edi,%ecx
6398cc:	ff 10                	call   *(%eax)
6398ce:	f0 0f c1 5f 08       	lock xadd %ebx,0x8(%edi)
6398d3:	4b                   	dec    %ebx
6398d4:	75 07                	jne    0x6398dd
6398d6:	8b 07                	mov    (%edi),%eax
6398d8:	8b cf                	mov    %edi,%ecx
6398da:	ff 50 04             	call   *0x4(%eax)
6398dd:	8b 44 24 14          	mov    0x14(%esp),%eax
6398e1:	5b                   	pop    %ebx
6398e2:	89 46 04             	mov    %eax,0x4(%esi)
6398e5:	8b 44 24 0c          	mov    0xc(%esp),%eax
6398e9:	5f                   	pop    %edi
6398ea:	89 06                	mov    %eax,(%esi)
6398ec:	5e                   	pop    %esi
6398ed:	c2 08 00             	ret    $0x8
6398f0:	8b 44 24 10          	mov    0x10(%esp),%eax
6398f4:	89 46 04             	mov    %eax,0x4(%esi)
6398f7:	8b 44 24 0c          	mov    0xc(%esp),%eax
6398fb:	5f                   	pop    %edi
6398fc:	89 06                	mov    %eax,(%esi)
6398fe:	5e                   	pop    %esi
6398ff:	c2 08 00             	ret    $0x8
639902:	cc                   	int3
639903:	cc                   	int3
639904:	cc                   	int3
639905:	cc                   	int3
639906:	cc                   	int3
639907:	cc                   	int3
639908:	cc                   	int3
639909:	cc                   	int3
63990a:	cc                   	int3
63990b:	cc                   	int3
63990c:	cc                   	int3
63990d:	cc                   	int3
63990e:	cc                   	int3
63990f:	cc                   	int3
639910:	cc                   	int3
639911:	cc                   	int3
639912:	cc                   	int3
639913:	cc                   	int3