52653a:	8a 0f                	mov    (%edi),%cl
52653c:	3a 0e                	cmp    (%esi),%cl
52653e:	0f 85 9d 01 00 00    	jne    0x5266e1
526544:	80 f9 47             	cmp    $0x47,%cl
526547:	0f 84 94 01 00 00    	je     0x5266e1
52654d:	80 f9 a4             	cmp    $0xa4,%cl
526550:	0f 84 b2 00 00 00    	je     0x526608
526556:	80 f9 a6             	cmp    $0xa6,%cl
526559:	0f 84 a9 00 00 00    	je     0x526608
52655f:	8b 47 08             	mov    0x8(%edi),%eax
526562:	85 c0                	test   %eax,%eax
526564:	0f 84 9e 00 00 00    	je     0x526608
52656a:	80 f9 a9             	cmp    $0xa9,%cl
52656d:	74 5b                	je     0x5265ca
52656f:	80 f9 a5             	cmp    $0xa5,%cl
526572:	74 56                	je     0x5265ca
526574:	80 f9 77             	cmp    $0x77,%cl
526577:	0f 84 5d 01 00 00    	je     0x5266da
52657d:	80 f9 6f             	cmp    $0x6f,%cl
526580:	75 1a                	jne    0x52659c
526582:	ff 76 08             	push   0x8(%esi)
526585:	50                   	push   %eax
526586:	e8 f5 93 fb ff       	call   0x4df980
52658b:	83 c4 08             	add    $0x8,%esp
52658e:	85 c0                	test   %eax,%eax
526590:	74 73                	je     0x526605
526592:	5b                   	pop    %ebx
526593:	5f                   	pop    %edi
526594:	b8 02 00 00 00       	mov    $0x2,%eax
526599:	5e                   	pop    %esi
52659a:	5d                   	pop    %ebp
52659b:	c3                   	ret
52659c:	8b 4e 08             	mov    0x8(%esi),%ecx
52659f:	85 c9                	test   %ecx,%ecx
5265a1:	74 65                	je     0x526608
5265a3:	8a 10                	mov    (%eax),%dl
5265a5:	3a 11                	cmp    (%ecx),%dl
5265a7:	75 1a                	jne    0x5265c3
5265a9:	84 d2                	test   %dl,%dl
5265ab:	74 12                	je     0x5265bf
5265ad:	8a 50 01             	mov    0x1(%eax),%dl
5265b0:	3a 51 01             	cmp    0x1(%ecx),%dl
5265b3:	75 0e                	jne    0x5265c3
5265b5:	83 c0 02             	add    $0x2,%eax
5265b8:	83 c1 02             	add    $0x2,%ecx
5265bb:	84 d2                	test   %dl,%dl
5265bd:	75 e4                	jne    0x5265a3
5265bf:	33 c0                	xor    %eax,%eax
5265c1:	eb cb                	jmp    0x52658e
5265c3:	1b c0                	sbb    %eax,%eax
5265c5:	83 c8 01             	or     $0x1,%eax
5265c8:	eb c4                	jmp    0x52658e
5265ca:	ff 76 08             	push   0x8(%esi)
5265cd:	50                   	push   %eax
5265ce:	e8 5d 76 01 00       	call   0x53dc30
5265d3:	83 c4 08             	add    $0x8,%esp
5265d6:	85 c0                	test   %eax,%eax
5265d8:	75 b8                	jne    0x526592
5265da:	8b 47 04             	mov    0x4(%edi),%eax
5265dd:	33 d8                	xor    %eax,%ebx
5265df:	f7 c3 00 00 00 01    	test   $0x1000000,%ebx
5265e5:	75 ab                	jne    0x526592
5265e7:	a9 00 00 00 01       	test   $0x1000000,%eax
5265ec:	74 17                	je     0x526605
5265ee:	6a 01                	push   $0x1
5265f0:	ff 76 2c             	push   0x2c(%esi)
5265f3:	ff 77 2c             	push   0x2c(%edi)
5265f6:	ff 75 08             	push   0x8(%ebp)
5265f9:	e8 32 f4 02 00       	call   0x555a30
5265fe:	83 c4 10             	add    $0x10,%esp
526601:	85 c0                	test   %eax,%eax
526603:	75 8d                	jne    0x526592
526605:	8b 55 0c             	mov    0xc(%ebp),%edx
526608:	8b 47 04             	mov    0x4(%edi),%eax
52660b:	33 46 04             	xor    0x4(%esi),%eax
52660e:	a9 02 02 00 00       	test   $0x202,%eax
526613:	0f 85 79 ff ff ff    	jne    0x526592
526619:	f7 c2 00 40 00 00    	test   $0x4000,%edx
52661f:	0f 85 b5 00 00 00    	jne    0x5266da
526625:	f7 c2 00 08 00 00    	test   $0x800,%edx
52662b:	0f 85 61 ff ff ff    	jne    0x526592
526631:	8b 5d 14             	mov    0x14(%ebp),%ebx
526634:	f6 c2 08             	test   $0x8,%dl
526637:	75 1a                	jne    0x526653
526639:	53                   	push   %ebx
52663a:	ff 76 0c             	push   0xc(%esi)
52663d:	ff 77 0c             	push   0xc(%edi)
526640:	ff 75 08             	push   0x8(%ebp)
526643:	e8 88 fe ff ff       	call   0x5264d0
526648:	83 c4 10             	add    $0x10,%esp
52664b:	85 c0                	test   %eax,%eax
52664d:	0f 85 3f ff ff ff    	jne    0x526592
526653:	53                   	push   %ebx
526654:	ff 76 10             	push   0x10(%esi)
526657:	ff 77 10             	push   0x10(%edi)
52665a:	ff 75 08             	push   0x8(%ebp)
52665d:	e8 6e fe ff ff       	call   0x5264d0
526662:	83 c4 10             	add    $0x10,%esp
526665:	85 c0                	test   %eax,%eax
526667:	0f 85 25 ff ff ff    	jne    0x526592
52666d:	53                   	push   %ebx
52666e:	ff 76 14             	push   0x14(%esi)
526671:	ff 77 14             	push   0x14(%edi)
526674:	e8 b7 11 00 00       	call   0x527830
526679:	83 c4 0c             	add    $0xc,%esp
52667c:	85 c0                	test   %eax,%eax
52667e:	0f 85 0e ff ff ff    	jne    0x526592
526684:	8a 0f                	mov    (%edi),%cl
526686:	80 f9 73             	cmp    $0x73,%cl
526689:	74 4f                	je     0x5266da
52668b:	80 f9 a7             	cmp    $0xa7,%cl
52668e:	74 4a                	je     0x5266da
526690:	f7 45 0c 00 20 00 00 	testl  $0x2000,0xc(%ebp)
526697:	75 41                	jne    0x5266da
526699:	66 8b 47 20          	mov    0x20(%edi),%ax
52669d:	66 3b 46 20          	cmp    0x20(%esi),%ax
5266a1:	0f 85 eb fe ff ff    	jne    0x526592
5266a7:	8a 47 02             	mov    0x2(%edi),%al
5266aa:	3a 46 02             	cmp    0x2(%esi),%al
5266ad:	74 16                	je     0x5266c5
5266af:	80 f9 ac             	cmp    $0xac,%cl
5266b2:	0f 84 da fe ff ff    	je     0x526592
5266b8:	80 f9 a9             	cmp    $0xa9,%cl
5266bb:	75 08                	jne    0x5266c5
5266bd:	85 db                	test   %ebx,%ebx
5266bf:	0f 88 cd fe ff ff    	js     0x526592
5266c5:	80 f9 31             	cmp    $0x31,%cl
5266c8:	74 10                	je     0x5266da
5266ca:	8b 47 1c             	mov    0x1c(%edi),%eax
5266cd:	3b 46 1c             	cmp    0x1c(%esi),%eax
5266d0:	74 08                	je     0x5266da
5266d2:	3b c3                	cmp    %ebx,%eax
5266d4:	0f 85 b8 fe ff ff    	jne    0x526592
5266da:	5b                   	pop    %ebx
5266db:	5f                   	pop    %edi
5266dc:	33 c0                	xor    %eax,%eax
5266de:	5e                   	pop    %esi
5266df:	5d                   	pop    %ebp
5266e0:	c3                   	ret
5266e1:	8b 5d 14             	mov    0x14(%ebp),%ebx
5266e4:	80 f9 6f             	cmp    $0x6f,%cl
5266e7:	75 13                	jne    0x5266fc
5266e9:	53                   	push   %ebx
5266ea:	56                   	push   %esi
5266eb:	ff 77 0c             	push   0xc(%edi)
5266ee:	50                   	push   %eax
5266ef:	e8 dc fd ff ff       	call   0x5264d0
5266f4:	83 c4 10             	add    $0x10,%esp
5266f7:	83 f8 02             	cmp    $0x2,%eax
5266fa:	7c 22                	jl     0x52671e
5266fc:	80 3e 6f             	cmpb   $0x6f,(%esi)
5266ff:	0f 85 8d fe ff ff    	jne    0x526592
526705:	53                   	push   %ebx
526706:	ff 76 0c             	push   0xc(%esi)
526709:	57                   	push   %edi
52670a:	ff 75 08             	push   0x8(%ebp)
52670d:	e8 be fd ff ff       	call   0x5264d0
526712:	83 c4 10             	add    $0x10,%esp
526715:	83 f8 02             	cmp    $0x2,%eax
526718:	0f 8d 74 fe ff ff    	jge    0x526592
52671e:	5b                   	pop    %ebx
52671f:	5f                   	pop    %edi
526720:	b8 01 00 00 00       	mov    $0x1,%eax
526725:	5e                   	pop    %esi
526726:	5d                   	pop    %ebp
526727:	c3                   	ret
526728:	33 c9                	xor    %ecx,%ecx
52672a:	b8 02 00 00 00       	mov    $0x2,%eax
52672f:	3b f7                	cmp    %edi,%esi
526731:	5f                   	pop    %edi
526732:	0f 44 c1             	cmove  %ecx,%eax
526735:	5e                   	pop    %esi
526736:	5d                   	pop    %ebp
526737:	c3                   	ret
526738:	cc                   	int3
526739:	cc                   	int3
52673a:	cc                   	int3
52673b:	cc                   	int3
52673c:	cc                   	int3
52673d:	cc                   	int3
52673e:	cc                   	int3
52673f:	cc                   	int3
526740:	55                   	push   %ebp
526741:	8b ec                	mov    %esp,%ebp
526743:	8b 45 0c             	mov    0xc(%ebp),%eax
526746:	56                   	push   %esi
526747:	57                   	push   %edi
526748:	f7 40 04 00 02 00 00 	testl  $0x200,0x4(%eax)
52674f:	74 37                	je     0x526788
526751:	8b 70 0c             	mov    0xc(%eax),%esi
526754:	8b 40 10             	mov    0x10(%eax),%eax
526757:	f7 40 04 00 01 00 00 	testl  $0x100,0x4(%eax)
52675e:	74 0b                	je     0x52676b
526760:	5f                   	pop    %edi
526761:	5e                   	pop    %esi
526762:	89 45 0c             	mov    %eax,0xc(%ebp)
526765:	5d                   	pop    %ebp
526766:	e9 75 fb ff ff       	jmp    0x5262e0
52676b:	85 f6                	test   %esi,%esi
52676d:	74 21                	je     0x526790
52676f:	f7 46 04 00 01 00 00 	testl  $0x100,0x4(%esi)
526776:	74 18                	je     0x526790
526778:	56                   	push   %esi
526779:	ff 75 08             	push   0x8(%ebp)
52677c:	e8 5f fb ff ff       	call   0x5262e0
526781:	83 c4 08             	add    $0x8,%esp
526784:	5f                   	pop    %edi
526785:	5e                   	pop    %esi
526786:	5d                   	pop    %ebp
526787:	c3                   	ret
526788:	8b 70 10             	mov    0x10(%eax),%esi
52678b:	8b 40 0c             	mov    0xc(%eax),%eax
52678e:	eb c7                	jmp    0x526757
526790:	8b 7d 08             	mov    0x8(%ebp),%edi
526793:	50                   	push   %eax
526794:	57                   	push   %edi
526795:	e8 46 fb ff ff       	call   0x5262e0
52679a:	83 c4 08             	add    $0x8,%esp
52679d:	85 c0                	test   %eax,%eax
52679f:	75 0a                	jne    0x5267ab
5267a1:	56                   	push   %esi
5267a2:	57                   	push   %edi
5267a3:	e8 38 fb ff ff       	call   0x5262e0
5267a8:	83 c4 08             	add    $0x8,%esp
5267ab:	5f                   	pop    %edi
5267ac:	5e                   	pop    %esi
5267ad:	5d                   	pop    %ebp
5267ae:	c3                   	ret
5267af:	cc                   	int3
5267b0:	55                   	push   %ebp
5267b1:	8b ec                	mov    %esp,%ebp
5267b3:	56                   	push   %esi
5267b4:	8b 75 0c             	mov    0xc(%ebp),%esi
5267b7:	57                   	push   %edi
5267b8:	8b 7d 08             	mov    0x8(%ebp),%edi
5267bb:	f7 46 04 00 40 80 00 	testl  $0x804000,0x4(%esi)
5267c2:	75 67                	jne    0x52682b
5267c4:	8b 46 0c             	mov    0xc(%esi),%eax
5267c7:	85 c0                	test   %eax,%eax
5267c9:	74 0f                	je     0x5267da
5267cb:	80 3e af             	cmpb   $0xaf,(%esi)
5267ce:	74 0a                	je     0x5267da
5267d0:	50                   	push   %eax
5267d1:	57                   	push   %edi
5267d2:	e8 d9 ff ff ff       	call   0x5267b0
5267d7:	83 c4 08             	add    $0x8,%esp
5267da:	8b 46 10             	mov    0x10(%esi),%eax
5267dd:	85 c0                	test   %eax,%eax
5267df:	74 09                	je     0x5267ea
5267e1:	50                   	push   %eax
5267e2:	57                   	push   %edi
5267e3:	e8 c8 ff ff ff       	call   0x5267b0
5267e8:	eb 3e                	jmp    0x526828
5267ea:	f7 46 04 00 08 00 00 	testl  $0x800,0x4(%esi)
5267f1:	8b 46 14             	mov    0x14(%esi),%eax
5267f4:	74 12                	je     0x526808
5267f6:	85 c0                	test   %eax,%eax
5267f8:	74 31                	je     0x52682b
5267fa:	6a 01                	push   $0x1
5267fc:	50                   	push   %eax
5267fd:	57                   	push   %edi
5267fe:	e8 ed 25 fd ff       	call   0x4f8df0
526803:	83 c4 0c             	add    $0xc,%esp
526806:	eb 23                	jmp    0x52682b
526808:	85 c0                	test   %eax,%eax
52680a:	74 0a                	je     0x526816
52680c:	50                   	push   %eax
52680d:	57                   	push   %edi
52680e:	e8 ed a7 fd ff       	call   0x501000
526813:	83 c4 08             	add    $0x8,%esp
526816:	f7 46 04 00 00 00 01 	testl  $0x1000000,0x4(%esi)
52681d:	74 0c                	je     0x52682b
52681f:	ff 76 2c             	push   0x2c(%esi)
526822:	57                   	push   %edi
526823:	e8 c8 f2 02 00       	call   0x555af0
526828:	83 c4 08             	add    $0x8,%esp
52682b:	f7 46 04 00 00 01 00 	testl  $0x10000,0x4(%esi)
526832:	74 11                	je     0x526845
526834:	8b 46 08             	mov    0x8(%esi),%eax
526837:	85 c0                	test   %eax,%eax
526839:	74 0a                	je     0x526845
52683b:	50                   	push   %eax
52683c:	57                   	push   %edi
52683d:	e8 2e ab ff ff       	call   0x521370
526842:	83 c4 08             	add    $0x8,%esp
526845:	f7 46 04 00 00 00 08 	testl  $0x8000000,0x4(%esi)
52684c:	75 0a                	jne    0x526858
52684e:	56                   	push   %esi
52684f:	57                   	push   %edi
526850:	e8 1b ab ff ff       	call   0x521370
526855:	83 c4 08             	add    $0x8,%esp
526858:	5f                   	pop    %edi
526859:	5e                   	pop    %esi
52685a:	5d                   	pop    %ebp
52685b:	c3                   	ret
52685c:	cc                   	int3
52685d:	cc                   	int3
52685e:	cc                   	int3
52685f:	cc                   	int3
526860:	55                   	push   %ebp
526861:	8b ec                	mov    %esp,%ebp
526863:	8b 45 0c             	mov    0xc(%ebp),%eax
526866:	85 c0                	test   %eax,%eax
526868:	74 13                	je     0x52687d
52686a:	6a 00                	push   $0x0
52686c:	ff 75 10             	push   0x10(%ebp)
52686f:	50                   	push   %eax
526870:	ff 75 08             	push   0x8(%ebp)
526873:	e8 e8 9f fd ff       	call   0x500860
526878:	83 c4 10             	add    $0x10,%esp
52687b:	5d                   	pop    %ebp
52687c:	c3                   	ret
52687d:	33 c0                	xor    %eax,%eax
52687f:	5d                   	pop    %ebp
526880:	c3                   	ret
526881:	cc                   	int3
526882:	cc                   	int3
526883:	cc                   	int3
526884:	cc                   	int3
526885:	cc                   	int3
526886:	cc                   	int3
526887:	cc                   	int3
526888:	cc                   	int3
526889:	cc                   	int3
52688a:	cc                   	int3
52688b:	cc                   	int3
52688c:	cc                   	int3
52688d:	cc                   	int3
52688e:	cc                   	int3
52688f:	cc                   	int3
526890:	55                   	push   %ebp
526891:	8b ec                	mov    %esp,%ebp
526893:	56                   	push   %esi
526894:	8b 75 0c             	mov    0xc(%ebp),%esi
526897:	57                   	push   %edi
526898:	8a 06                	mov    (%esi),%al
52689a:	3c 88                	cmp    $0x88,%al
52689c:	75 64                	jne    0x526902
52689e:	53                   	push   %ebx
52689f:	8b 5d 08             	mov    0x8(%ebp),%ebx
5268a2:	6a 00                	push   $0x0
5268a4:	6a 34                	push   $0x34
5268a6:	ff 33                	push   (%ebx)
5268a8:	e8 33 ab ff ff       	call   0x5213e0
5268ad:	8b f8                	mov    %eax,%edi
5268af:	83 c4 0c             	add    $0xc,%esp
5268b2:	85 ff                	test   %edi,%edi
5268b4:	74 38                	je     0x5268ee
5268b6:	6a 34                	push   $0x34
5268b8:	6a 00                	push   $0x0