52799a:	b8 02 00 00 00       	mov    $0x2,%eax
52799f:	eb 16                	jmp    0x5279b7
5279a1:	33 c0                	xor    %eax,%eax
5279a3:	eb 12                	jmp    0x5279b7
5279a5:	83 3c 24 04          	cmpl   $0x4,(%esp)
5279a9:	75 07                	jne    0x5279b2
5279ab:	b8 03 00 00 00       	mov    $0x3,%eax
5279b0:	eb 05                	jmp    0x5279b7
5279b2:	b8 01 00 00 00       	mov    $0x1,%eax
5279b7:	5a                   	pop    %edx
5279b8:	5f                   	pop    %edi
5279b9:	5e                   	pop    %esi
5279ba:	5b                   	pop    %ebx
5279bb:	c3                   	ret
5279bc:	53                   	push   %ebx
5279bd:	56                   	push   %esi
5279be:	57                   	push   %edi
5279bf:	83 c4 f8             	add    $0xfffffff8,%esp
5279c2:	33 f6                	xor    %esi,%esi
5279c4:	8b d8                	mov    %eax,%ebx
5279c6:	89 14 24             	mov    %edx,(%esp)
5279c9:	81 7b 6c 06 01 00 00 	cmpl   $0x106,0x6c(%ebx)
5279d0:	73 26                	jae    0x5279f8
5279d2:	8b c3                	mov    %ebx,%eax
5279d4:	e8 ab fa ff ff       	call   0x527484
5279d9:	8b 43 6c             	mov    0x6c(%ebx),%eax
5279dc:	3d 06 01 00 00       	cmp    $0x106,%eax
5279e1:	73 0d                	jae    0x5279f0
5279e3:	83 3c 24 00          	cmpl   $0x0,(%esp)
5279e7:	75 07                	jne    0x5279f0
5279e9:	33 c0                	xor    %eax,%eax
5279eb:	e9 8c 03 00 00       	jmp    0x527d7c
5279f0:	85 c0                	test   %eax,%eax
5279f2:	0f 84 c8 02 00 00    	je     0x527cc0
5279f8:	83 7b 6c 03          	cmpl   $0x3,0x6c(%ebx)
5279fc:	72 3d                	jb     0x527a3b
5279fe:	8b 4b 50             	mov    0x50(%ebx),%ecx
527a01:	8b 43 40             	mov    0x40(%ebx),%eax
527a04:	d3 e0                	shl    %cl,%eax
527a06:	8b 53 30             	mov    0x30(%ebx),%edx
527a09:	8b 4b 64             	mov    0x64(%ebx),%ecx
527a0c:	0f b6 54 0a 02       	movzbl 0x2(%edx,%ecx,1),%edx
527a11:	33 c2                	xor    %edx,%eax
527a13:	23 43 4c             	and    0x4c(%ebx),%eax
527a16:	89 43 40             	mov    %eax,0x40(%ebx)
527a19:	8b 4b 3c             	mov    0x3c(%ebx),%ecx
527a1c:	0f b7 34 41          	movzwl (%ecx,%eax,2),%esi
527a20:	8b 43 64             	mov    0x64(%ebx),%eax
527a23:	23 43 2c             	and    0x2c(%ebx),%eax
527a26:	8b 53 38             	mov    0x38(%ebx),%edx
527a29:	66 89 34 42          	mov    %si,(%edx,%eax,2)
527a2d:	8b 4b 3c             	mov    0x3c(%ebx),%ecx
527a30:	8b 43 40             	mov    0x40(%ebx),%eax
527a33:	66 8b 53 64          	mov    0x64(%ebx),%dx
527a37:	66 89 14 41          	mov    %dx,(%ecx,%eax,2)
527a3b:	8b 4b 58             	mov    0x58(%ebx),%ecx
527a3e:	89 4b 70             	mov    %ecx,0x70(%ebx)
527a41:	8b 43 68             	mov    0x68(%ebx),%eax
527a44:	89 43 5c             	mov    %eax,0x5c(%ebx)
527a47:	c7 43 58 02 00 00 00 	movl   $0x2,0x58(%ebx)
527a4e:	85 f6                	test   %esi,%esi
527a50:	74 58                	je     0x527aaa
527a52:	8b 53 70             	mov    0x70(%ebx),%edx
527a55:	3b 53 78             	cmp    0x78(%ebx),%edx
527a58:	73 50                	jae    0x527aaa
527a5a:	8b 4b 64             	mov    0x64(%ebx),%ecx
527a5d:	8b 43 24             	mov    0x24(%ebx),%eax
527a60:	2d 06 01 00 00       	sub    $0x106,%eax
527a65:	2b ce                	sub    %esi,%ecx
527a67:	3b c8                	cmp    %eax,%ecx
527a69:	77 3f                	ja     0x527aaa
527a6b:	83 bb 80 00 00 00 02 	cmpl   $0x2,0x80(%ebx)
527a72:	74 0c                	je     0x527a80
527a74:	8b d6                	mov    %esi,%edx
527a76:	8b c3                	mov    %ebx,%eax
527a78:	e8 8f f8 ff ff       	call   0x52730c
527a7d:	89 43 58             	mov    %eax,0x58(%ebx)
527a80:	83 7b 58 05          	cmpl   $0x5,0x58(%ebx)
527a84:	77 24                	ja     0x527aaa
527a86:	83 bb 80 00 00 00 01 	cmpl   $0x1,0x80(%ebx)
527a8d:	74 14                	je     0x527aa3
527a8f:	83 7b 58 03          	cmpl   $0x3,0x58(%ebx)
527a93:	75 15                	jne    0x527aaa
527a95:	8b 53 64             	mov    0x64(%ebx),%edx
527a98:	2b 53 68             	sub    0x68(%ebx),%edx
527a9b:	81 fa 00 10 00 00    	cmp    $0x1000,%edx
527aa1:	76 07                	jbe    0x527aaa
527aa3:	c7 43 58 02 00 00 00 	movl   $0x2,0x58(%ebx)
527aaa:	8b 43 70             	mov    0x70(%ebx),%eax
527aad:	83 f8 03             	cmp    $0x3,%eax
527ab0:	0f 82 54 01 00 00    	jb     0x527c0a
527ab6:	3b 43 58             	cmp    0x58(%ebx),%eax
527ab9:	0f 82 4b 01 00 00    	jb     0x527c0a
527abf:	8b 53 64             	mov    0x64(%ebx),%edx
527ac2:	03 53 6c             	add    0x6c(%ebx),%edx
527ac5:	83 ea 03             	sub    $0x3,%edx
527ac8:	89 54 24 04          	mov    %edx,0x4(%esp)
527acc:	66 8b 43 64          	mov    0x64(%ebx),%ax
527ad0:	8b 8b 9c 16 00 00    	mov    0x169c(%ebx),%ecx
527ad6:	48                   	dec    %eax
527ad7:	8b bb 98 16 00 00    	mov    0x1698(%ebx),%edi
527add:	66 2b 43 5c          	sub    0x5c(%ebx),%ax
527ae1:	8a 53 70             	mov    0x70(%ebx),%dl
527ae4:	66 89 04 79          	mov    %ax,(%ecx,%edi,2)
527ae8:	80 ea 03             	sub    $0x3,%dl
527aeb:	8b 8b 98 16 00 00    	mov    0x1698(%ebx),%ecx
527af1:	48                   	dec    %eax
527af2:	ff 83 98 16 00 00    	incl   0x1698(%ebx)
527af8:	8b bb 90 16 00 00    	mov    0x1690(%ebx),%edi
527afe:	88 14 0f             	mov    %dl,(%edi,%ecx,1)
527b01:	81 e2 ff 00 00 00    	and    $0xff,%edx
527b07:	33 c9                	xor    %ecx,%ecx
527b09:	8a 8a a7 9b 69 00    	mov    0x699ba7(%edx),%cl
527b0f:	66 ff 84 8b 90 04 00 	incw   0x490(%ebx,%ecx,4)
527b16:	00
527b17:	66 3d 00 01          	cmp    $0x100,%ax
527b1b:	73 0b                	jae    0x527b28
527b1d:	0f b7 d0             	movzwl %ax,%edx
527b20:	8a 8a a7 99 69 00    	mov    0x6999a7(%edx),%cl
527b26:	eb 0c                	jmp    0x527b34
527b28:	0f b7 c0             	movzwl %ax,%eax
527b2b:	c1 f8 07             	sar    $0x7,%eax
527b2e:	8a 88 a7 9a 69 00    	mov    0x699aa7(%eax),%cl
527b34:	33 c0                	xor    %eax,%eax
527b36:	8a c1                	mov    %cl,%al
527b38:	66 ff 84 83 80 09 00 	incw   0x980(%ebx,%eax,4)
527b3f:	00
527b40:	8b 93 94 16 00 00    	mov    0x1694(%ebx),%edx
527b46:	4a                   	dec    %edx
527b47:	3b 93 98 16 00 00    	cmp    0x1698(%ebx),%edx
527b4d:	0f 94 c0             	sete   %al
527b50:	83 e0 01             	and    $0x1,%eax
527b53:	8b 53 70             	mov    0x70(%ebx),%edx
527b56:	4a                   	dec    %edx
527b57:	29 53 6c             	sub    %edx,0x6c(%ebx)
527b5a:	83 6b 70 02          	subl   $0x2,0x70(%ebx)
527b5e:	ff 43 64             	incl   0x64(%ebx)
527b61:	8b 4b 64             	mov    0x64(%ebx),%ecx
527b64:	3b 4c 24 04          	cmp    0x4(%esp),%ecx
527b68:	77 40                	ja     0x527baa
527b6a:	8b 4b 50             	mov    0x50(%ebx),%ecx
527b6d:	8b 53 40             	mov    0x40(%ebx),%edx
527b70:	d3 e2                	shl    %cl,%edx
527b72:	8b 4b 30             	mov    0x30(%ebx),%ecx
527b75:	8b 73 64             	mov    0x64(%ebx),%esi
527b78:	0f b6 4c 31 02       	movzbl 0x2(%ecx,%esi,1),%ecx
527b7d:	33 d1                	xor    %ecx,%edx
527b7f:	23 53 4c             	and    0x4c(%ebx),%edx
527b82:	89 53 40             	mov    %edx,0x40(%ebx)
527b85:	8b 53 3c             	mov    0x3c(%ebx),%edx
527b88:	8b 4b 40             	mov    0x40(%ebx),%ecx
527b8b:	0f b7 34 4a          	movzwl (%edx,%ecx,2),%esi
527b8f:	8b 53 64             	mov    0x64(%ebx),%edx
527b92:	23 53 2c             	and    0x2c(%ebx),%edx
527b95:	8b 4b 38             	mov    0x38(%ebx),%ecx
527b98:	66 89 34 51          	mov    %si,(%ecx,%edx,2)
527b9c:	8b 53 3c             	mov    0x3c(%ebx),%edx
527b9f:	8b 4b 40             	mov    0x40(%ebx),%ecx
527ba2:	66 8b 7b 64          	mov    0x64(%ebx),%di
527ba6:	66 89 3c 4a          	mov    %di,(%edx,%ecx,2)
527baa:	ff 4b 70             	decl   0x70(%ebx)
527bad:	75 af                	jne    0x527b5e
527baf:	33 d2                	xor    %edx,%edx
527bb1:	89 53 60             	mov    %edx,0x60(%ebx)
527bb4:	c7 43 58 02 00 00 00 	movl   $0x2,0x58(%ebx)
527bbb:	ff 43 64             	incl   0x64(%ebx)
527bbe:	85 c0                	test   %eax,%eax
527bc0:	0f 84 03 fe ff ff    	je     0x5279c9
527bc6:	6a 00                	push   $0x0
527bc8:	8b 4b 64             	mov    0x64(%ebx),%ecx
527bcb:	2b 4b 54             	sub    0x54(%ebx),%ecx
527bce:	83 7b 54 00          	cmpl   $0x0,0x54(%ebx)
527bd2:	7c 08                	jl     0x527bdc
527bd4:	8b 53 30             	mov    0x30(%ebx),%edx
527bd7:	03 53 54             	add    0x54(%ebx),%edx
527bda:	eb 02                	jmp    0x527bde
527bdc:	33 d2                	xor    %edx,%edx
527bde:	8b c3                	mov    %ebx,%eax
527be0:	e8 37 41 00 00       	call   0x52bd1c
527be5:	8b 4b 64             	mov    0x64(%ebx),%ecx
527be8:	89 4b 54             	mov    %ecx,0x54(%ebx)
527beb:	8b 03                	mov    (%ebx),%eax
527bed:	e8 1e f1 ff ff       	call   0x526d10
527bf2:	8b 13                	mov    (%ebx),%edx
527bf4:	83 7a 10 00          	cmpl   $0x0,0x10(%edx)
527bf8:	0f 85 cb fd ff ff    	jne    0x5279c9
527bfe:	33 c0                	xor    %eax,%eax
527c00:	e9 77 01 00 00       	jmp    0x527d7c
527c05:	e9 bf fd ff ff       	jmp    0x5279c9
527c0a:	83 7b 60 00          	cmpl   $0x0,0x60(%ebx)
527c0e:	0f 84 9a 00 00 00    	je     0x527cae
527c14:	8b 53 30             	mov    0x30(%ebx),%edx
527c17:	8b 4b 64             	mov    0x64(%ebx),%ecx
527c1a:	8a 44 0a ff          	mov    -0x1(%edx,%ecx,1),%al
527c1e:	8b 93 9c 16 00 00    	mov    0x169c(%ebx),%edx
527c24:	8b 8b 98 16 00 00    	mov    0x1698(%ebx),%ecx
527c2a:	66 c7 04 4a 00 00    	movw   $0x0,(%edx,%ecx,2)
527c30:	8b 93 98 16 00 00    	mov    0x1698(%ebx),%edx
527c36:	ff 83 98 16 00 00    	incl   0x1698(%ebx)
527c3c:	8b 8b 90 16 00 00    	mov    0x1690(%ebx),%ecx
527c42:	88 04 11             	mov    %al,(%ecx,%edx,1)
527c45:	25 ff 00 00 00       	and    $0xff,%eax
527c4a:	66 ff 84 83 8c 00 00 	incw   0x8c(%ebx,%eax,4)
527c51:	00
527c52:	8b 83 94 16 00 00    	mov    0x1694(%ebx),%eax
527c58:	48                   	dec    %eax
527c59:	3b 83 98 16 00 00    	cmp    0x1698(%ebx),%eax
527c5f:	0f 94 c0             	sete   %al
527c62:	83 e0 01             	and    $0x1,%eax
527c65:	85 c0                	test   %eax,%eax
527c67:	74 2c                	je     0x527c95
527c69:	6a 00                	push   $0x0
527c6b:	8b 4b 64             	mov    0x64(%ebx),%ecx
527c6e:	2b 4b 54             	sub    0x54(%ebx),%ecx
527c71:	83 7b 54 00          	cmpl   $0x0,0x54(%ebx)
527c75:	7c 08                	jl     0x527c7f
527c77:	8b 53 30             	mov    0x30(%ebx),%edx
527c7a:	03 53 54             	add    0x54(%ebx),%edx
527c7d:	eb 02                	jmp    0x527c81
527c7f:	33 d2                	xor    %edx,%edx
527c81:	8b c3                	mov    %ebx,%eax
527c83:	e8 94 40 00 00       	call   0x52bd1c
527c88:	8b 4b 64             	mov    0x64(%ebx),%ecx
527c8b:	89 4b 54             	mov    %ecx,0x54(%ebx)
527c8e:	8b 03                	mov    (%ebx),%eax
527c90:	e8 7b f0 ff ff       	call   0x526d10
527c95:	ff 43 64             	incl   0x64(%ebx)
527c98:	ff 4b 6c             	decl   0x6c(%ebx)
527c9b:	8b 13                	mov    (%ebx),%edx
527c9d:	83 7a 10 00          	cmpl   $0x0,0x10(%edx)
527ca1:	0f 85 22 fd ff ff    	jne    0x5279c9
527ca7:	33 c0                	xor    %eax,%eax
527ca9:	e9 ce 00 00 00       	jmp    0x527d7c
527cae:	c7 43 60 01 00 00 00 	movl   $0x1,0x60(%ebx)
527cb5:	ff 43 64             	incl   0x64(%ebx)
527cb8:	ff 4b 6c             	decl   0x6c(%ebx)
527cbb:	e9 09 fd ff ff       	jmp    0x5279c9
527cc0:	83 7b 60 00          	cmpl   $0x0,0x60(%ebx)
527cc4:	74 56                	je     0x527d1c
527cc6:	8b 53 30             	mov    0x30(%ebx),%edx
527cc9:	8b 4b 64             	mov    0x64(%ebx),%ecx
527ccc:	8a 44 0a ff          	mov    -0x1(%edx,%ecx,1),%al
527cd0:	8b 93 9c 16 00 00    	mov    0x169c(%ebx),%edx
527cd6:	8b 8b 98 16 00 00    	mov    0x1698(%ebx),%ecx
527cdc:	66 c7 04 4a 00 00    	movw   $0x0,(%edx,%ecx,2)
527ce2:	8b 93 98 16 00 00    	mov    0x1698(%ebx),%edx
527ce8:	ff 83 98 16 00 00    	incl   0x1698(%ebx)
527cee:	8b 8b 90 16 00 00    	mov    0x1690(%ebx),%ecx
527cf4:	88 04 11             	mov    %al,(%ecx,%edx,1)
527cf7:	25 ff 00 00 00       	and    $0xff,%eax
527cfc:	66 ff 84 83 8c 00 00 	incw   0x8c(%ebx,%eax,4)
527d03:	00
527d04:	8b 83 94 16 00 00    	mov    0x1694(%ebx),%eax
527d0a:	48                   	dec    %eax
527d0b:	3b 83 98 16 00 00    	cmp    0x1698(%ebx),%eax
527d11:	0f 94 c2             	sete   %dl
527d14:	83 e2 01             	and    $0x1,%edx
527d17:	33 c9                	xor    %ecx,%ecx
527d19:	89 4b 60             	mov    %ecx,0x60(%ebx)
527d1c:	83 3c 24 04          	cmpl   $0x4,(%esp)
527d20:	0f 94 c0             	sete   %al
527d23:	83 e0 01             	and    $0x1,%eax
527d26:	50                   	push   %eax
527d27:	8b 4b 64             	mov    0x64(%ebx),%ecx
527d2a:	2b 4b 54             	sub    0x54(%ebx),%ecx
527d2d:	83 7b 54 00          	cmpl   $0x0,0x54(%ebx)
527d31:	7c 08                	jl     0x527d3b
527d33:	8b 53 30             	mov    0x30(%ebx),%edx
527d36:	03 53 54             	add    0x54(%ebx),%edx
527d39:	eb 02                	jmp    0x527d3d
527d3b:	33 d2                	xor    %edx,%edx
527d3d:	8b c3                	mov    %ebx,%eax
527d3f:	e8 d8 3f 00 00       	call   0x52bd1c
527d44:	8b 4b 64             	mov    0x64(%ebx),%ecx
527d47:	89 4b 54             	mov    %ecx,0x54(%ebx)
527d4a:	8b 03                	mov    (%ebx),%eax
527d4c:	e8 bf ef ff ff       	call   0x526d10
527d51:	8b 13                	mov    (%ebx),%edx
527d53:	83 7a 10 00          	cmpl   $0x0,0x10(%edx)
527d57:	75 11                	jne    0x527d6a
527d59:	83 3c 24 04          	cmpl   $0x4,(%esp)
527d5d:	75 07                	jne    0x527d66
527d5f:	b8 02 00 00 00       	mov    $0x2,%eax
527d64:	eb 16                	jmp    0x527d7c
527d66:	33 c0                	xor    %eax,%eax
527d68:	eb 12                	jmp    0x527d7c
527d6a:	83 3c 24 04          	cmpl   $0x4,(%esp)
527d6e:	75 07                	jne    0x527d77
527d70:	b8 03 00 00 00       	mov    $0x3,%eax
527d75:	eb 05                	jmp    0x527d7c
527d77:	b8 01 00 00 00       	mov    $0x1,%eax
527d7c:	59                   	pop    %ecx
527d7d:	5a                   	pop    %edx
527d7e:	5f                   	pop    %edi
527d7f:	5e                   	pop    %esi
527d80:	5b                   	pop    %ebx
527d81:	c3                   	ret
527d82:	8b c0                	mov    %eax,%eax
527d84:	85 c0                	test   %eax,%eax
527d86:	74 06                	je     0x527d8e
527d88:	83 78 1c 00          	cmpl   $0x0,0x1c(%eax)
527d8c:	75 06                	jne    0x527d94
527d8e:	b8 fe ff ff ff       	mov    $0xfffffffe,%eax
527d93:	c3                   	ret
527d94:	33 d2                	xor    %edx,%edx
527d96:	33 c9                	xor    %ecx,%ecx
527d98:	89 50 14             	mov    %edx,0x14(%eax)
527d9b:	89 50 08             	mov    %edx,0x8(%eax)
527d9e:	89 48 18             	mov    %ecx,0x18(%eax)
527da1:	8b 48 1c             	mov    0x1c(%eax),%ecx
527da4:	83 79 0c 00          	cmpl   $0x0,0xc(%ecx)
527da8:	74 07                	je     0x527db1
527daa:	b9 07 00 00 00       	mov    $0x7,%ecx
527daf:	eb 02                	jmp    0x527db3
527db1:	33 c9                	xor    %ecx,%ecx
527db3:	8b 50 1c             	mov    0x1c(%eax),%edx
527db6:	89 0a                	mov    %ecx,(%edx)
527db8:	8b 52 14             	mov    0x14(%edx),%edx
527dbb:	33 c9                	xor    %ecx,%ecx
527dbd:	92                   	xchg   %eax,%edx
527dbe:	e8 91 06 00 00       	call   0x528454
527dc3:	33 c0                	xor    %eax,%eax
527dc5:	c3                   	ret
527dc6:	90                   	nop
527dc7:	90                   	nop
527dc8:	53                   	push   %ebx
527dc9:	8b d8                	mov    %eax,%ebx
527dcb:	85 db                	test   %ebx,%ebx
527dcd:	74 0c                	je     0x527ddb
527dcf:	83 7b 1c 00          	cmpl   $0x0,0x1c(%ebx)
527dd3:	74 06                	je     0x527ddb
527dd5:	83 7b 24 00          	cmpl   $0x0,0x24(%ebx)
527dd9:	75 07                	jne    0x527de2
527ddb:	b8 fe ff ff ff       	mov    $0xfffffffe,%eax
527de0:	5b                   	pop    %ebx
527de1:	c3                   	ret
527de2:	8b 53 1c             	mov    0x1c(%ebx),%edx
527de5:	8b 42 14             	mov    0x14(%edx),%eax
527de8:	85 c0                	test   %eax,%eax
527dea:	74 07                	je     0x527df3
527dec:	8b d3                	mov    %ebx,%edx
527dee:	e8 35 14 00 00       	call   0x529228
527df3:	8b 53 1c             	mov    0x1c(%ebx),%edx
527df6:	8b 43 28             	mov    0x28(%ebx),%eax
527df9:	ff 53 24             	call   *0x24(%ebx)
527dfc:	33 c9                	xor    %ecx,%ecx
527dfe:	33 c0                	xor    %eax,%eax
527e00:	89 4b 1c             	mov    %ecx,0x1c(%ebx)
527e03:	5b                   	pop    %ebx
527e04:	c3                   	ret