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
5268ba:	57                   	push   %edi
5268bb:	e8 40 d1 0b 00       	call   0x5e3a00
5268c0:	83 c8 ff             	or     $0xffffffff,%eax
5268c3:	c6 07 af             	movb   $0xaf,(%edi)
5268c6:	57                   	push   %edi
5268c7:	66 89 47 22          	mov    %ax,0x22(%edi)
5268cb:	e8 f0 ad fd ff       	call   0x5016c0
5268d0:	8b 03                	mov    (%ebx),%eax
5268d2:	83 c4 10             	add    $0x10,%esp
5268d5:	8b 40 78             	mov    0x78(%eax),%eax
5268d8:	39 47 18             	cmp    %eax,0x18(%edi)
5268db:	7e 0f                	jle    0x5268ec
5268dd:	50                   	push   %eax
5268de:	68 30 90 6b 00       	push   $0x6b9030
5268e3:	53                   	push   %ebx
5268e4:	e8 77 c9 ff ff       	call   0x523260
5268e9:	83 c4 0c             	add    $0xc,%esp
5268ec:	85 ff                	test   %edi,%edi
5268ee:	5b                   	pop    %ebx
5268ef:	8b c7                	mov    %edi,%eax
5268f1:	74 62                	je     0x526955
5268f3:	66 8b 4d 10          	mov    0x10(%ebp),%cx
5268f7:	89 77 0c             	mov    %esi,0xc(%edi)
5268fa:	66 89 4f 20          	mov    %cx,0x20(%edi)
5268fe:	5f                   	pop    %edi
5268ff:	5e                   	pop    %esi
526900:	5d                   	pop    %ebp
526901:	c3                   	ret
526902:	3c ae                	cmp    $0xae,%al
526904:	75 0d                	jne    0x526913
526906:	8b 45 10             	mov    0x10(%ebp),%eax
526909:	8d 0c 80             	lea    (%eax,%eax,4),%ecx
52690c:	8b 46 14             	mov    0x14(%esi),%eax
52690f:	8b 74 88 04          	mov    0x4(%eax,%ecx,4),%esi
526913:	8b 7d 08             	mov    0x8(%ebp),%edi
526916:	85 f6                	test   %esi,%esi
526918:	74 13                	je     0x52692d
52691a:	6a 00                	push   $0x0
52691c:	6a 00                	push   $0x0
52691e:	56                   	push   %esi
52691f:	ff 37                	push   (%edi)
526921:	e8 3a 9f fd ff       	call   0x500860
526926:	83 c4 10             	add    $0x10,%esp
526929:	8b c8                	mov    %eax,%ecx
52692b:	eb 02                	jmp    0x52692f
52692d:	33 c9                	xor    %ecx,%ecx
52692f:	8b 87 10 01 00 00    	mov    0x110(%edi),%eax
526935:	85 c0                	test   %eax,%eax
526937:	74 1a                	je     0x526953
526939:	0f 1f 80 00 00 00 00 	nopl   0x0(%eax)
526940:	39 30                	cmp    %esi,(%eax)
526942:	74 0d                	je     0x526951
526944:	8b 40 0c             	mov    0xc(%eax),%eax
526947:	85 c0                	test   %eax,%eax
526949:	75 f5                	jne    0x526940
52694b:	5f                   	pop    %edi
52694c:	8b c1                	mov    %ecx,%eax
52694e:	5e                   	pop    %esi
52694f:	5d                   	pop    %ebp
526950:	c3                   	ret
526951:	89 08                	mov    %ecx,(%eax)
526953:	8b c1                	mov    %ecx,%eax
526955:	5f                   	pop    %edi
526956:	5e                   	pop    %esi
526957:	5d                   	pop    %ebp
526958:	c3                   	ret
526959:	cc                   	int3
52695a:	cc                   	int3
52695b:	cc                   	int3
52695c:	cc                   	int3
52695d:	cc                   	int3
52695e:	cc                   	int3
52695f:	cc                   	int3
526960:	55                   	push   %ebp
526961:	8b ec                	mov    %esp,%ebp
526963:	53                   	push   %ebx
526964:	56                   	push   %esi
526965:	57                   	push   %edi
526966:	8b 7d 08             	mov    0x8(%ebp),%edi
526969:	6a 01                	push   $0x1
52696b:	ff 75 10             	push   0x10(%ebp)
52696e:	8b 1f                	mov    (%edi),%ebx
526970:	68 a9 00 00 00       	push   $0xa9
526975:	53                   	push   %ebx
526976:	e8 f5 cc ff ff       	call   0x523670
52697b:	8b f0                	mov    %eax,%esi
52697d:	83 c4 10             	add    $0x10,%esp
526980:	85 f6                	test   %esi,%esi
526982:	75 18                	jne    0x52699c
526984:	8b 45 0c             	mov    0xc(%ebp),%eax
526987:	85 c0                	test   %eax,%eax
526989:	74 0a                	je     0x526995
52698b:	50                   	push   %eax
52698c:	53                   	push   %ebx
52698d:	e8 6e a6 fd ff       	call   0x501000
526992:	83 c4 08             	add    $0x8,%esp
526995:	5f                   	pop    %edi
526996:	5e                   	pop    %esi
526997:	33 c0                	xor    %eax,%eax
526999:	5b                   	pop    %ebx
52699a:	5d                   	pop    %ebp
52699b:	c3                   	ret
52699c:	8b 5d 0c             	mov    0xc(%ebp),%ebx
52699f:	85 db                	test   %ebx,%ebx
5269a1:	74 1d                	je     0x5269c0
5269a3:	8b 0f                	mov    (%edi),%ecx
5269a5:	8b 03                	mov    (%ebx),%eax
5269a7:	3b 81 84 00 00 00    	cmp    0x84(%ecx),%eax
5269ad:	7e 11                	jle    0x5269c0
5269af:	ff 75 10             	push   0x10(%ebp)
5269b2:	68 60 90 6b 00       	push   $0x6b9060
5269b7:	57                   	push   %edi
5269b8:	e8 a3 c8 ff ff       	call   0x523260
5269bd:	83 c4 0c             	add    $0xc,%esp
5269c0:	83 4e 04 04          	orl    $0x4,0x4(%esi)
5269c4:	89 5e 14             	mov    %ebx,0x14(%esi)
5269c7:	83 7f 24 00          	cmpl   $0x0,0x24(%edi)
5269cb:	75 22                	jne    0x5269ef
5269cd:	56                   	push   %esi
5269ce:	e8 ed ac fd ff       	call   0x5016c0
5269d3:	8b 07                	mov    (%edi),%eax
5269d5:	83 c4 04             	add    $0x4,%esp
5269d8:	8b 40 78             	mov    0x78(%eax),%eax
5269db:	39 46 18             	cmp    %eax,0x18(%esi)
5269de:	7e 0f                	jle    0x5269ef
5269e0:	50                   	push   %eax
5269e1:	68 30 90 6b 00       	push   $0x6b9030
5269e6:	57                   	push   %edi
5269e7:	e8 74 c8 ff ff       	call   0x523260
5269ec:	83 c4 0c             	add    $0xc,%esp
5269ef:	83 7d 14 01          	cmpl   $0x1,0x14(%ebp)
5269f3:	75 04                	jne    0x5269f9
5269f5:	83 4e 04 02          	orl    $0x2,0x4(%esi)
5269f9:	5f                   	pop    %edi
5269fa:	8b c6                	mov    %esi,%eax
5269fc:	5e                   	pop    %esi
5269fd:	5b                   	pop    %ebx
5269fe:	5d                   	pop    %ebp
5269ff:	c3                   	ret
526a00:	55                   	push   %ebp
526a01:	8b ec                	mov    %esp,%ebp
526a03:	8b 45 0c             	mov    0xc(%ebp),%eax
526a06:	f7 40 04 00 00 00 40 	testl  $0x40000000,0x4(%eax)
526a0d:	74 2f                	je     0x526a3e
526a0f:	8b 4d 10             	mov    0x10(%ebp),%ecx
526a12:	8b 55 08             	mov    0x8(%ebp),%edx
526a15:	f7 41 04 00 00 08 00 	testl  $0x80000,0x4(%ecx)
526a1c:	75 0f                	jne    0x526a2d
526a1e:	8b 02                	mov    (%edx),%eax
526a20:	8b 40 20             	mov    0x20(%eax),%eax
526a23:	25 80 00 00 00       	and    $0x80,%eax
526a28:	83 c8 00             	or     $0x0,%eax
526a2b:	75 11                	jne    0x526a3e
526a2d:	ff 71 20             	push   0x20(%ecx)
526a30:	68 84 90 6b 00       	push   $0x6b9084
526a35:	52                   	push   %edx
526a36:	e8 25 c8 ff ff       	call   0x523260
526a3b:	83 c4 0c             	add    $0xc,%esp
526a3e:	5d                   	pop    %ebp
526a3f:	c3                   	ret
526a40:	55                   	push   %ebp
526a41:	8b ec                	mov    %esp,%ebp
526a43:	56                   	push   %esi
526a44:	8b 75 08             	mov    0x8(%ebp),%esi
526a47:	57                   	push   %edi
526a48:	8b 7e 04             	mov    0x4(%esi),%edi
526a4b:	f7 c7 00 00 00 04    	test   $0x4000000,%edi
526a51:	75 54                	jne    0x526aa7
526a53:	68 a8 57 6e 00       	push   $0x6e57a8
526a58:	ff 76 08             	push   0x8(%esi)
526a5b:	e8 d0 71 01 00       	call   0x53dc30
526a60:	83 c4 08             	add    $0x8,%esp
526a63:	85 c0                	test   %eax,%eax
526a65:	75 16                	jne    0x526a7d
526a67:	b8 00 00 00 10       	mov    $0x10000000,%eax