5269e4:	8b 53 24             	mov    0x24(%ebx),%edx
5269e7:	ff 56 20             	call   *0x20(%esi)
5269ea:	89 43 30             	mov    %eax,0x30(%ebx)
5269ed:	b9 02 00 00 00       	mov    $0x2,%ecx
5269f2:	8b 53 24             	mov    0x24(%ebx),%edx
5269f5:	8b 46 28             	mov    0x28(%esi),%eax
5269f8:	ff 56 20             	call   *0x20(%esi)
5269fb:	89 43 38             	mov    %eax,0x38(%ebx)
5269fe:	b9 02 00 00 00       	mov    $0x2,%ecx
526a03:	8b 53 44             	mov    0x44(%ebx),%edx
526a06:	8b 46 28             	mov    0x28(%esi),%eax
526a09:	ff 56 20             	call   *0x20(%esi)
526a0c:	89 43 3c             	mov    %eax,0x3c(%ebx)
526a0f:	8b 4d 14             	mov    0x14(%ebp),%ecx
526a12:	83 c1 06             	add    $0x6,%ecx
526a15:	b8 01 00 00 00       	mov    $0x1,%eax
526a1a:	d3 e0                	shl    %cl,%eax
526a1c:	89 83 94 16 00 00    	mov    %eax,0x1694(%ebx)
526a22:	b9 04 00 00 00       	mov    $0x4,%ecx
526a27:	8b d0                	mov    %eax,%edx
526a29:	8b 46 28             	mov    0x28(%esi),%eax
526a2c:	ff 56 20             	call   *0x20(%esi)
526a2f:	89 43 08             	mov    %eax,0x8(%ebx)
526a32:	8b 93 94 16 00 00    	mov    0x1694(%ebx),%edx
526a38:	c1 e2 02             	shl    $0x2,%edx
526a3b:	89 53 0c             	mov    %edx,0xc(%ebx)
526a3e:	83 7b 30 00          	cmpl   $0x0,0x30(%ebx)
526a42:	74 12                	je     0x526a56
526a44:	83 7b 38 00          	cmpl   $0x0,0x38(%ebx)
526a48:	74 0c                	je     0x526a56
526a4a:	83 7b 3c 00          	cmpl   $0x0,0x3c(%ebx)
526a4e:	74 06                	je     0x526a56
526a50:	83 7b 08 00          	cmpl   $0x0,0x8(%ebx)
526a54:	75 16                	jne    0x526a6c
526a56:	a1 8c 7b 69 00       	mov    0x697b8c,%eax
526a5b:	89 46 18             	mov    %eax,0x18(%esi)
526a5e:	8b c6                	mov    %esi,%eax
526a60:	e8 83 05 00 00       	call   0x526fe8
526a65:	b8 fc ff ff ff       	mov    $0xfffffffc,%eax
526a6a:	eb 40                	jmp    0x526aac
526a6c:	8b 93 94 16 00 00    	mov    0x1694(%ebx),%edx
526a72:	d1 ea                	shr    $1,%edx
526a74:	03 d2                	add    %edx,%edx
526a76:	03 c2                	add    %edx,%eax
526a78:	89 83 9c 16 00 00    	mov    %eax,0x169c(%ebx)
526a7e:	8b 8b 94 16 00 00    	mov    0x1694(%ebx),%ecx
526a84:	8d 0c 49             	lea    (%ecx,%ecx,2),%ecx
526a87:	03 4b 08             	add    0x8(%ebx),%ecx
526a8a:	89 8b 90 16 00 00    	mov    %ecx,0x1690(%ebx)
526a90:	8b 45 fc             	mov    -0x4(%ebp),%eax
526a93:	89 43 7c             	mov    %eax,0x7c(%ebx)
526a96:	8b c6                	mov    %esi,%eax
526a98:	8b 55 10             	mov    0x10(%ebp),%edx
526a9b:	89 93 80 00 00 00    	mov    %edx,0x80(%ebx)
526aa1:	8a 4d f8             	mov    -0x8(%ebp),%cl
526aa4:	88 4b 1d             	mov    %cl,0x1d(%ebx)
526aa7:	e8 fc 00 00 00       	call   0x526ba8
526aac:	5e                   	pop    %esi
526aad:	5b                   	pop    %ebx
526aae:	8b e5                	mov    %ebp,%esp
526ab0:	5d                   	pop    %ebp
526ab1:	c2 14 00             	ret    $0x14
526ab4:	53                   	push   %ebx
526ab5:	56                   	push   %esi
526ab6:	57                   	push   %edi
526ab7:	55                   	push   %ebp
526ab8:	83 c4 f8             	add    $0xfffffff8,%esp
526abb:	8b e8                	mov    %eax,%ebp
526abd:	33 ff                	xor    %edi,%edi
526abf:	85 ed                	test   %ebp,%ebp
526ac1:	89 4c 24 04          	mov    %ecx,0x4(%esp)
526ac5:	89 14 24             	mov    %edx,(%esp)
526ac8:	8b 74 24 04          	mov    0x4(%esp),%esi
526acc:	74 15                	je     0x526ae3
526ace:	83 7d 1c 00          	cmpl   $0x0,0x1c(%ebp)
526ad2:	74 0f                	je     0x526ae3
526ad4:	83 3c 24 00          	cmpl   $0x0,(%esp)
526ad8:	74 09                	je     0x526ae3
526ada:	8b 45 1c             	mov    0x1c(%ebp),%eax
526add:	83 78 04 2a          	cmpl   $0x2a,0x4(%eax)
526ae1:	74 0a                	je     0x526aed
526ae3:	b8 fe ff ff ff       	mov    $0xfffffffe,%eax
526ae8:	e9 b4 00 00 00       	jmp    0x526ba1
526aed:	8b 5d 1c             	mov    0x1c(%ebp),%ebx
526af0:	8b 45 30             	mov    0x30(%ebp),%eax
526af3:	8b 4c 24 04          	mov    0x4(%esp),%ecx
526af7:	8b 14 24             	mov    (%esp),%edx
526afa:	e8 ad 5b 00 00       	call   0x52c6ac
526aff:	89 45 30             	mov    %eax,0x30(%ebp)
526b02:	83 fe 03             	cmp    $0x3,%esi
526b05:	73 07                	jae    0x526b0e
526b07:	33 c0                	xor    %eax,%eax
526b09:	e9 93 00 00 00       	jmp    0x526ba1
526b0e:	8b 43 24             	mov    0x24(%ebx),%eax
526b11:	2d 06 01 00 00       	sub    $0x106,%eax
526b16:	3b f0                	cmp    %eax,%esi
526b18:	76 0b                	jbe    0x526b25
526b1a:	8b f0                	mov    %eax,%esi
526b1c:	8b 44 24 04          	mov    0x4(%esp),%eax
526b20:	2b c6                	sub    %esi,%eax
526b22:	01 04 24             	add    %eax,(%esp)
526b25:	56                   	push   %esi
526b26:	8b 54 24 04          	mov    0x4(%esp),%edx
526b2a:	52                   	push   %edx
526b2b:	8b 4b 30             	mov    0x30(%ebx),%ecx
526b2e:	51                   	push   %ecx
526b2f:	e8 ac f8 ff ff       	call   0x5263e0
526b34:	89 73 64             	mov    %esi,0x64(%ebx)
526b37:	89 73 54             	mov    %esi,0x54(%ebx)
526b3a:	8b 43 30             	mov    0x30(%ebx),%eax
526b3d:	83 c4 0c             	add    $0xc,%esp
526b40:	0f b6 00             	movzbl (%eax),%eax
526b43:	89 43 40             	mov    %eax,0x40(%ebx)
526b46:	8b 53 30             	mov    0x30(%ebx),%edx
526b49:	8b 4b 50             	mov    0x50(%ebx),%ecx
526b4c:	d3 e0                	shl    %cl,%eax
526b4e:	0f b6 52 01          	movzbl 0x1(%edx),%edx
526b52:	33 c2                	xor    %edx,%eax
526b54:	23 43 4c             	and    0x4c(%ebx),%eax
526b57:	89 43 40             	mov    %eax,0x40(%ebx)
526b5a:	33 c0                	xor    %eax,%eax
526b5c:	eb 36                	jmp    0x526b94
526b5e:	8b 4b 50             	mov    0x50(%ebx),%ecx
526b61:	8b 53 40             	mov    0x40(%ebx),%edx
526b64:	d3 e2                	shl    %cl,%edx
526b66:	8b 4b 30             	mov    0x30(%ebx),%ecx
526b69:	0f b6 4c 01 02       	movzbl 0x2(%ecx,%eax,1),%ecx
526b6e:	33 d1                	xor    %ecx,%edx
526b70:	23 53 4c             	and    0x4c(%ebx),%edx
526b73:	89 53 40             	mov    %edx,0x40(%ebx)
526b76:	8b 4b 3c             	mov    0x3c(%ebx),%ecx
526b79:	0f b7 3c 51          	movzwl (%ecx,%edx,2),%edi
526b7d:	8b 53 2c             	mov    0x2c(%ebx),%edx
526b80:	23 d0                	and    %eax,%edx
526b82:	8b 4b 38             	mov    0x38(%ebx),%ecx
526b85:	66 89 3c 51          	mov    %di,(%ecx,%edx,2)
526b89:	8b 53 3c             	mov    0x3c(%ebx),%edx
526b8c:	8b 4b 40             	mov    0x40(%ebx),%ecx
526b8f:	66 89 04 4a          	mov    %ax,(%edx,%ecx,2)
526b93:	40                   	inc    %eax
526b94:	8b d6                	mov    %esi,%edx
526b96:	83 ea 03             	sub    $0x3,%edx
526b99:	3b c2                	cmp    %edx,%eax
526b9b:	76 c1                	jbe    0x526b5e
526b9d:	85 ff                	test   %edi,%edi
526b9f:	33 c0                	xor    %eax,%eax
526ba1:	59                   	pop    %ecx
526ba2:	5a                   	pop    %edx
526ba3:	5d                   	pop    %ebp
526ba4:	5f                   	pop    %edi
526ba5:	5e                   	pop    %esi
526ba6:	5b                   	pop    %ebx
526ba7:	c3                   	ret
526ba8:	53                   	push   %ebx
526ba9:	85 c0                	test   %eax,%eax
526bab:	74 12                	je     0x526bbf
526bad:	83 78 1c 00          	cmpl   $0x0,0x1c(%eax)
526bb1:	74 0c                	je     0x526bbf
526bb3:	83 78 20 00          	cmpl   $0x0,0x20(%eax)
526bb7:	74 06                	je     0x526bbf
526bb9:	83 78 24 00          	cmpl   $0x0,0x24(%eax)
526bbd:	75 07                	jne    0x526bc6
526bbf:	b8 fe ff ff ff       	mov    $0xfffffffe,%eax
526bc4:	5b                   	pop    %ebx
526bc5:	c3                   	ret
526bc6:	33 d2                	xor    %edx,%edx
526bc8:	33 c9                	xor    %ecx,%ecx
526bca:	89 50 14             	mov    %edx,0x14(%eax)
526bcd:	89 50 08             	mov    %edx,0x8(%eax)
526bd0:	89 48 18             	mov    %ecx,0x18(%eax)
526bd3:	33 d2                	xor    %edx,%edx
526bd5:	c7 40 2c 02 00 00 00 	movl   $0x2,0x2c(%eax)
526bdc:	8b 58 1c             	mov    0x1c(%eax),%ebx
526bdf:	89 53 14             	mov    %edx,0x14(%ebx)
526be2:	8b 4b 08             	mov    0x8(%ebx),%ecx
526be5:	89 4b 10             	mov    %ecx,0x10(%ebx)
526be8:	83 7b 18 00          	cmpl   $0x0,0x18(%ebx)
526bec:	7d 05                	jge    0x526bf3
526bee:	33 d2                	xor    %edx,%edx
526bf0:	89 53 18             	mov    %edx,0x18(%ebx)
526bf3:	83 7b 18 00          	cmpl   $0x0,0x18(%ebx)
526bf7:	74 07                	je     0x526c00
526bf9:	b9 71 00 00 00       	mov    $0x71,%ecx
526bfe:	eb 05                	jmp    0x526c05
526c00:	b9 2a 00 00 00       	mov    $0x2a,%ecx
526c05:	89 4b 04             	mov    %ecx,0x4(%ebx)
526c08:	c7 40 30 01 00 00 00 	movl   $0x1,0x30(%eax)
526c0f:	33 c0                	xor    %eax,%eax
526c11:	89 43 20             	mov    %eax,0x20(%ebx)
526c14:	8b c3                	mov    %ebx,%eax
526c16:	e8 41 3c 00 00       	call   0x52a85c
526c1b:	8b c3                	mov    %ebx,%eax
526c1d:	e8 4a 06 00 00       	call   0x52726c
526c22:	33 c0                	xor    %eax,%eax
526c24:	5b                   	pop    %ebx
526c25:	c3                   	ret
526c26:	90                   	nop
526c27:	90                   	nop
526c28:	53                   	push   %ebx
526c29:	56                   	push   %esi
526c2a:	57                   	push   %edi
526c2b:	55                   	push   %ebp
526c2c:	51                   	push   %ecx
526c2d:	8b f9                	mov    %ecx,%edi
526c2f:	8b da                	mov    %edx,%ebx
526c31:	33 d2                	xor    %edx,%edx
526c33:	85 c0                	test   %eax,%eax
526c35:	74 06                	je     0x526c3d
526c37:	83 78 1c 00          	cmpl   $0x0,0x1c(%eax)
526c3b:	75 0a                	jne    0x526c47
526c3d:	b8 fe ff ff ff       	mov    $0xfffffffe,%eax
526c42:	e9 99 00 00 00       	jmp    0x526ce0
526c47:	8b 70 1c             	mov    0x1c(%eax),%esi
526c4a:	83 fb ff             	cmp    $0xffffffff,%ebx
526c4d:	75 05                	jne    0x526c54
526c4f:	bb 06 00 00 00       	mov    $0x6,%ebx
526c54:	85 db                	test   %ebx,%ebx
526c56:	7c 0e                	jl     0x526c66
526c58:	83 fb 09             	cmp    $0x9,%ebx
526c5b:	7f 09                	jg     0x526c66
526c5d:	85 ff                	test   %edi,%edi
526c5f:	7c 05                	jl     0x526c66
526c61:	83 ff 02             	cmp    $0x2,%edi
526c64:	7e 07                	jle    0x526c6d
526c66:	b8 fe ff ff ff       	mov    $0xfffffffe,%eax
526c6b:	eb 73                	jmp    0x526ce0
526c6d:	8b 4e 7c             	mov    0x7c(%esi),%ecx
526c70:	8d 2c 5b             	lea    (%ebx,%ebx,2),%ebp
526c73:	8d 0c 49             	lea    (%ecx,%ecx,2),%ecx
526c76:	8b 0c 8d a8 7b 69 00 	mov    0x697ba8(,%ecx,4),%ecx
526c7d:	89 0c 24             	mov    %ecx,(%esp)
526c80:	8b 0c ad a8 7b 69 00 	mov    0x697ba8(,%ebp,4),%ecx
526c87:	3b 0c 24             	cmp    (%esp),%ecx
526c8a:	74 12                	je     0x526c9e
526c8c:	83 78 08 00          	cmpl   $0x0,0x8(%eax)
526c90:	74 0c                	je     0x526c9e
526c92:	ba 01 00 00 00       	mov    $0x1,%edx
526c97:	e8 c8 00 00 00       	call   0x526d64
526c9c:	8b d0                	mov    %eax,%edx
526c9e:	3b 5e 7c             	cmp    0x7c(%esi),%ebx
526ca1:	74 35                	je     0x526cd8
526ca3:	89 5e 7c             	mov    %ebx,0x7c(%esi)
526ca6:	0f b7 04 ad a2 7b 69 	movzwl 0x697ba2(,%ebp,4),%eax
526cad:	00
526cae:	89 46 78             	mov    %eax,0x78(%esi)
526cb1:	0f b7 0c ad a0 7b 69 	movzwl 0x697ba0(,%ebp,4),%ecx
526cb8:	00
526cb9:	89 8e 84 00 00 00    	mov    %ecx,0x84(%esi)
526cbf:	0f b7 04 ad a4 7b 69 	movzwl 0x697ba4(,%ebp,4),%eax
526cc6:	00
526cc7:	89 86 88 00 00 00    	mov    %eax,0x88(%esi)
526ccd:	0f b7 0c ad a6 7b 69 	movzwl 0x697ba6(,%ebp,4),%ecx
526cd4:	00
526cd5:	89 4e 74             	mov    %ecx,0x74(%esi)
526cd8:	89 be 80 00 00 00    	mov    %edi,0x80(%esi)
526cde:	8b c2                	mov    %edx,%eax
526ce0:	5a                   	pop    %edx
526ce1:	5d                   	pop    %ebp
526ce2:	5f                   	pop    %edi
526ce3:	5e                   	pop    %esi
526ce4:	5b                   	pop    %ebx
526ce5:	c3                   	ret
526ce6:	90                   	nop
526ce7:	90                   	nop
526ce8:	53                   	push   %ebx
526ce9:	8b 48 14             	mov    0x14(%eax),%ecx
526cec:	ff 40 14             	incl   0x14(%eax)
526cef:	8b 58 08             	mov    0x8(%eax),%ebx
526cf2:	8d 0c 0b             	lea    (%ebx,%ecx,1),%ecx
526cf5:	51                   	push   %ecx
526cf6:	8b ca                	mov    %edx,%ecx
526cf8:	c1 e9 08             	shr    $0x8,%ecx
526cfb:	5b                   	pop    %ebx
526cfc:	88 0b                	mov    %cl,(%ebx)
526cfe:	8b 48 14             	mov    0x14(%eax),%ecx
526d01:	ff 40 14             	incl   0x14(%eax)
526d04:	8b 40 08             	mov    0x8(%eax),%eax
526d07:	80 e2 ff             	and    $0xff,%dl
526d0a:	88 14 08             	mov    %dl,(%eax,%ecx,1)
526d0d:	5b                   	pop    %ebx
526d0e:	c3                   	ret
526d0f:	90                   	nop
526d10:	53                   	push   %ebx
526d11:	8b d8                	mov    %eax,%ebx
526d13:	56                   	push   %esi
526d14:	8b 43 1c             	mov    0x1c(%ebx),%eax
526d17:	8b 53 10             	mov    0x10(%ebx),%edx
526d1a:	8b 70 14             	mov    0x14(%eax),%esi
526d1d:	3b f2                	cmp    %edx,%esi
526d1f:	76 02                	jbe    0x526d23
526d21:	8b f2                	mov    %edx,%esi
526d23:	85 f6                	test   %esi,%esi
526d25:	74 37                	je     0x526d5e
526d27:	56                   	push   %esi
526d28:	8b 40 10             	mov    0x10(%eax),%eax
526d2b:	50                   	push   %eax
526d2c:	8b 53 0c             	mov    0xc(%ebx),%edx
526d2f:	52                   	push   %edx
526d30:	e8 ab f6 ff ff       	call   0x5263e0
526d35:	83 c4 0c             	add    $0xc,%esp
526d38:	8b c6                	mov    %esi,%eax
526d3a:	01 43 0c             	add    %eax,0xc(%ebx)
526d3d:	8b 53 1c             	mov    0x1c(%ebx),%edx
526d40:	01 42 10             	add    %eax,0x10(%edx)
526d43:	01 73 14             	add    %esi,0x14(%ebx)
526d46:	29 73 10             	sub    %esi,0x10(%ebx)
526d49:	8b 43 1c             	mov    0x1c(%ebx),%eax
526d4c:	8b 50 14             	mov    0x14(%eax),%edx
526d4f:	2b d6                	sub    %esi,%edx
526d51:	89 50 14             	mov    %edx,0x14(%eax)
526d54:	85 d2                	test   %edx,%edx
526d56:	75 06                	jne    0x526d5e
526d58:	8b 48 08             	mov    0x8(%eax),%ecx
526d5b:	89 48 10             	mov    %ecx,0x10(%eax)
526d5e:	5e                   	pop    %esi
526d5f:	5b                   	pop    %ebx
526d60:	c3                   	ret
526d61:	90                   	nop
526d62:	90                   	nop
526d63:	90                   	nop
526d64:	53                   	push   %ebx
526d65:	56                   	push   %esi
526d66:	57                   	push   %edi
526d67:	55                   	push   %ebp
526d68:	51                   	push   %ecx
526d69:	8b fa                	mov    %edx,%edi
526d6b:	8b f0                	mov    %eax,%esi
526d6d:	85 f6                	test   %esi,%esi
526d6f:	74 0f                	je     0x526d80
526d71:	83 7e 1c 00          	cmpl   $0x0,0x1c(%esi)
526d75:	74 09                	je     0x526d80
526d77:	83 ff 04             	cmp    $0x4,%edi
526d7a:	7f 04                	jg     0x526d80
526d7c:	85 ff                	test   %edi,%edi
526d7e:	7d 0a                	jge    0x526d8a
526d80:	b8 fe ff ff ff       	mov    $0xfffffffe,%eax
526d85:	e9 57 02 00 00       	jmp    0x526fe1
526d8a:	83 7e 0c 00          	cmpl   $0x0,0xc(%esi)
526d8e:	8b 5e 1c             	mov    0x1c(%esi),%ebx
526d91:	74 19                	je     0x526dac
526d93:	83 3e 00             	cmpl   $0x0,(%esi)
526d96:	75 06                	jne    0x526d9e
526d98:	83 7e 04 00          	cmpl   $0x0,0x4(%esi)
526d9c:	75 0e                	jne    0x526dac
526d9e:	81 7b 04 9a 02 00 00 	cmpl   $0x29a,0x4(%ebx)
526da5:	75 17                	jne    0x526dbe
526da7:	83 ff 04             	cmp    $0x4,%edi
526daa:	74 12                	je     0x526dbe
526dac:	a1 84 7b 69 00       	mov    0x697b84,%eax
526db1:	89 46 18             	mov    %eax,0x18(%esi)