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
526a6c:	c6 06 a7             	movb   $0xa7,(%esi)
526a6f:	0b f8                	or     %eax,%edi
526a71:	b8 01 00 00 00       	mov    $0x1,%eax
526a76:	89 7e 04             	mov    %edi,0x4(%esi)
526a79:	5f                   	pop    %edi
526a7a:	5e                   	pop    %esi
526a7b:	5d                   	pop    %ebp
526a7c:	c3                   	ret
526a7d:	68 a0 57 6e 00       	push   $0x6e57a0
526a82:	ff 76 08             	push   0x8(%esi)
526a85:	e8 a6 71 01 00       	call   0x53dc30
526a8a:	83 c4 08             	add    $0x8,%esp
526a8d:	85 c0                	test   %eax,%eax
526a8f:	75 16                	jne    0x526aa7
526a91:	b8 00 00 00 20       	mov    $0x20000000,%eax
526a96:	c6 06 a7             	movb   $0xa7,(%esi)
526a99:	0b f8                	or     %eax,%edi
526a9b:	b8 01 00 00 00       	mov    $0x1,%eax
526aa0:	89 7e 04             	mov    %edi,0x4(%esi)
526aa3:	5f                   	pop    %edi
526aa4:	5e                   	pop    %esi
526aa5:	5d                   	pop    %ebp
526aa6:	c3                   	ret
526aa7:	5f                   	pop    %edi
526aa8:	33 c0                	xor    %eax,%eax
526aaa:	5e                   	pop    %esi
526aab:	5d                   	pop    %ebp
526aac:	c3                   	ret
526aad:	cc                   	int3
526aae:	cc                   	int3
526aaf:	cc                   	int3
526ab0:	55                   	push   %ebp
526ab1:	8b ec                	mov    %esp,%ebp
526ab3:	83 ec 10             	sub    $0x10,%esp
526ab6:	53                   	push   %ebx
526ab7:	8b 5d 08             	mov    0x8(%ebp),%ebx
526aba:	c7 45 f8 00 00 00 00 	movl   $0x0,-0x8(%ebp)
526ac1:	c7 45 f0 00 00 00 00 	movl   $0x0,-0x10(%ebp)
526ac8:	8b 4b 08             	mov    0x8(%ebx),%ecx
526acb:	89 4d fc             	mov    %ecx,-0x4(%ebp)
526ace:	85 c9                	test   %ecx,%ecx
526ad0:	0f 84 cb 02 00 00    	je     0x526da1
526ad6:	57                   	push   %edi
526ad7:	8b 7d 0c             	mov    0xc(%ebp),%edi
526ada:	85 ff                	test   %edi,%edi
526adc:	0f 84 be 02 00 00    	je     0x526da0
526ae2:	8a 07                	mov    (%edi),%al
526ae4:	88 45 0b             	mov    %al,0xb(%ebp)
526ae7:	0f b6 c0             	movzbl %al,%eax
526aea:	56                   	push   %esi
526aeb:	8b f0                	mov    %eax,%esi
526aed:	83 c0 ed             	add    $0xffffffed,%eax
526af0:	83 f6 01             	xor    $0x1,%esi
526af3:	89 75 f4             	mov    %esi,-0xc(%ebp)
526af6:	3d 99 00 00 00       	cmp    $0x99,%eax
526afb:	0f 87 0a 02 00 00    	ja     0x526d0b
526b01:	0f b6 80 cc 6d 52 00 	movzbl 0x526dcc(%eax),%eax
526b08:	ff 24 85 a8 6d 52 00 	jmp    *0x526da8(,%eax,4)
526b0f:	57                   	push   %edi
526b10:	e8 7b 11 00 00       	call   0x527c90
526b15:	83 c4 04             	add    $0x4,%esp
526b18:	3b c7                	cmp    %edi,%eax
526b1a:	74 17                	je     0x526b33
526b1c:	ff 75 14             	push   0x14(%ebp)
526b1f:	ff 75 10             	push   0x10(%ebp)
526b22:	50                   	push   %eax
526b23:	53                   	push   %ebx
526b24:	e8 87 ff ff ff       	call   0x526ab0
526b29:	83 c4 10             	add    $0x10,%esp
526b2c:	5e                   	pop    %esi
526b2d:	5f                   	pop    %edi
526b2e:	5b                   	pop    %ebx
526b2f:	8b e5                	mov    %ebp,%esp
526b31:	5d                   	pop    %ebp
526b32:	c3                   	ret
526b33:	80 7d 0b 2c          	cmpb   $0x2c,0xb(%ebp)
526b37:	75 2c                	jne    0x526b65
526b39:	8b 45 0c             	mov    0xc(%ebp),%eax
526b3c:	8b 7d 14             	mov    0x14(%ebp),%edi
526b3f:	8b 75 10             	mov    0x10(%ebp),%esi
526b42:	57                   	push   %edi
526b43:	56                   	push   %esi
526b44:	ff 70 0c             	push   0xc(%eax)
526b47:	53                   	push   %ebx
526b48:	e8 63 ff ff ff       	call   0x526ab0
526b4d:	8b 45 0c             	mov    0xc(%ebp),%eax
526b50:	57                   	push   %edi
526b51:	56                   	push   %esi
526b52:	ff 70 10             	push   0x10(%eax)
526b55:	53                   	push   %ebx
526b56:	e8 55 ff ff ff       	call   0x526ab0
526b5b:	83 c4 20             	add    $0x20,%esp
526b5e:	5e                   	pop    %esi
526b5f:	5f                   	pop    %edi
526b60:	5b                   	pop    %ebx
526b61:	8b e5                	mov    %ebp,%esp
526b63:	5d                   	pop    %ebp
526b64:	c3                   	ret
526b65:	8b 75 14             	mov    0x14(%ebp),%esi
526b68:	8b c6                	mov    %esi,%eax
526b6a:	ff 4b 38             	decl   0x38(%ebx)
526b6d:	83 f0 10             	xor    $0x10,%eax
526b70:	8b 7b 38             	mov    0x38(%ebx),%edi
526b73:	50                   	push   %eax
526b74:	8b 45 0c             	mov    0xc(%ebp),%eax
526b77:	57                   	push   %edi
526b78:	ff 70 0c             	push   0xc(%eax)
526b7b:	53                   	push   %ebx
526b7c:	e8 ef 02 00 00       	call   0x526e70
526b81:	8b 45 0c             	mov    0xc(%ebp),%eax
526b84:	56                   	push   %esi
526b85:	ff 75 10             	push   0x10(%ebp)
526b88:	ff 70 10             	push   0x10(%eax)
526b8b:	53                   	push   %ebx
526b8c:	e8 1f ff ff ff       	call   0x526ab0
526b91:	57                   	push   %edi
526b92:	ff 75 fc             	push   -0x4(%ebp)
526b95:	e8 36 61 02 00       	call   0x54ccd0
526b9a:	83 c4 28             	add    $0x28,%esp
526b9d:	5e                   	pop    %esi
526b9e:	5f                   	pop    %edi
526b9f:	5b                   	pop    %ebx
526ba0:	8b e5                	mov    %ebp,%esp
526ba2:	5d                   	pop    %ebp
526ba3:	c3                   	ret
526ba4:	ff 75 14             	push   0x14(%ebp)
526ba7:	ff 75 10             	push   0x10(%ebp)
526baa:	ff 77 0c             	push   0xc(%edi)
526bad:	53                   	push   %ebx
526bae:	e8 bd 02 00 00       	call   0x526e70
526bb3:	83 c4 10             	add    $0x10,%esp
526bb6:	5e                   	pop    %esi
526bb7:	5f                   	pop    %edi
526bb8:	5b                   	pop    %ebx
526bb9:	8b e5                	mov    %ebp,%esp
526bbb:	5d                   	pop    %ebp
526bbc:	c3                   	ret
526bbd:	ff 77 10             	push   0x10(%edi)
526bc0:	8a 57 02             	mov    0x2(%edi),%dl
526bc3:	e8 c8 11 00 00       	call   0x527d90
526bc8:	33 c9                	xor    %ecx,%ecx
526bca:	83 c4 04             	add    $0x4,%esp
526bcd:	80 fa a8             	cmp    $0xa8,%dl
526bd0:	0f 94 c1             	sete   %cl
526bd3:	3b c1                	cmp    %ecx,%eax
526bd5:	b8 10 00 00 00       	mov    $0x10,%eax
526bda:	74 1f                	je     0x526bfb
526bdc:	33 c9                	xor    %ecx,%ecx
526bde:	80 fa a8             	cmp    $0xa8,%dl
526be1:	0f 44 c1             	cmove  %ecx,%eax
526be4:	50                   	push   %eax
526be5:	ff 75 10             	push   0x10(%ebp)
526be8:	ff 77 0c             	push   0xc(%edi)
526beb:	53                   	push   %ebx
526bec:	e8 bf fe ff ff       	call   0x526ab0
526bf1:	83 c4 10             	add    $0x10,%esp
526bf4:	5e                   	pop    %esi
526bf5:	5f                   	pop    %edi
526bf6:	5b                   	pop    %ebx
526bf7:	8b e5                	mov    %ebp,%esp
526bf9:	5d                   	pop    %ebp
526bfa:	c3                   	ret
526bfb:	33 c9                	xor    %ecx,%ecx
526bfd:	80 fa a8             	cmp    $0xa8,%dl
526c00:	0f 44 c1             	cmove  %ecx,%eax
526c03:	50                   	push   %eax
526c04:	ff 75 10             	push   0x10(%ebp)
526c07:	ff 77 0c             	push   0xc(%edi)
526c0a:	53                   	push   %ebx
526c0b:	e8 60 02 00 00       	call   0x526e70
526c10:	83 c4 10             	add    $0x10,%esp
526c13:	5e                   	pop    %esi
526c14:	5f                   	pop    %edi
526c15:	5b                   	pop    %ebx
526c16:	8b e5                	mov    %ebp,%esp