568903:	e8 18 8c fb ff       	call   0x521520
568908:	8b d8                	mov    %eax,%ebx
56890a:	83 c4 0c             	add    $0xc,%esp
56890d:	8b 45 0c             	mov    0xc(%ebp),%eax
568910:	89 58 10             	mov    %ebx,0x10(%eax)
568913:	85 db                	test   %ebx,%ebx
568915:	75 0a                	jne    0x568921
568917:	5e                   	pop    %esi
568918:	8d 43 02             	lea    0x2(%ebx),%eax
56891b:	5b                   	pop    %ebx
56891c:	5f                   	pop    %edi
56891d:	8b e5                	mov    %ebp,%esp
56891f:	5d                   	pop    %ebp
568920:	c3                   	ret
568921:	c7 43 20 01 00 00 00 	movl   $0x1,0x20(%ebx)
568928:	ff 36                	push   (%esi)
56892a:	ff 75 fc             	push   -0x4(%ebp)
56892d:	e8 7e 8d fb ff       	call   0x5216b0
568932:	81 4b 24 02 02 00 00 	orl    $0x202,0x24(%ebx)
568939:	89 03                	mov    %eax,(%ebx)
56893b:	83 c8 ff             	or     $0xffffffff,%eax
56893e:	66 89 43 28          	mov    %ax,0x28(%ebx)
568942:	b8 c8 00 00 00       	mov    $0xc8,%eax
568947:	6a 00                	push   $0x0
568949:	66 89 43 2e          	mov    %ax,0x2e(%ebx)
56894d:	ff 76 08             	push   0x8(%esi)
568950:	ff 75 fc             	push   -0x4(%ebp)
568953:	e8 88 38 fd ff       	call   0x53c1e0
568958:	8b 4d 0c             	mov    0xc(%ebp),%ecx
56895b:	83 c4 14             	add    $0x14,%esp
56895e:	89 45 f8             	mov    %eax,-0x8(%ebp)
568961:	89 41 14             	mov    %eax,0x14(%ecx)
568964:	8b 4d fc             	mov    -0x4(%ebp),%ecx
568967:	80 79 51 00          	cmpb   $0x0,0x51(%ecx)
56896b:	74 0c                	je     0x568979
56896d:	5e                   	pop    %esi
56896e:	5b                   	pop    %ebx
56896f:	b8 07 00 00 00       	mov    $0x7,%eax
568974:	5f                   	pop    %edi
568975:	8b e5                	mov    %ebp,%esp
568977:	5d                   	pop    %ebp
568978:	c3                   	ret
568979:	8a 08                	mov    (%eax),%cl
56897b:	80 f9 85             	cmp    $0x85,%cl
56897e:	74 0c                	je     0x56898c
568980:	80 f9 84             	cmp    $0x84,%cl
568983:	74 07                	je     0x56898c
568985:	33 d2                	xor    %edx,%edx
568987:	89 55 e8             	mov    %edx,-0x18(%ebp)
56898a:	eb 74                	jmp    0x568a00
56898c:	8b 50 20             	mov    0x20(%eax),%edx
56898f:	89 55 fc             	mov    %edx,-0x4(%ebp)
568992:	33 d2                	xor    %edx,%edx
568994:	8b 4d fc             	mov    -0x4(%ebp),%ecx
568997:	c7 45 e8 01 00 00 00 	movl   $0x1,-0x18(%ebp)
56899e:	89 55 f4             	mov    %edx,-0xc(%ebp)
5689a1:	39 11                	cmp    %edx,(%ecx)
5689a3:	7e 56                	jle    0x5689fb
5689a5:	8b 7d f0             	mov    -0x10(%ebp),%edi
5689a8:	8b f1                	mov    %ecx,%esi
5689aa:	83 c6 10             	add    $0x10,%esi
5689ad:	0f 1f 00             	nopl   (%eax)
5689b0:	83 7e fc 00          	cmpl   $0x0,-0x4(%esi)
5689b4:	75 34                	jne    0x5689ea
5689b6:	8b 0e                	mov    (%esi),%ecx
5689b8:	85 c9                	test   %ecx,%ecx
5689ba:	74 2b                	je     0x5689e7
5689bc:	ff 37                	push   (%edi)
5689be:	51                   	push   %ecx
5689bf:	e8 6c 52 fd ff       	call   0x53dc30
5689c4:	8b 55 f4             	mov    -0xc(%ebp),%edx
5689c7:	83 c4 08             	add    $0x8,%esp
5689ca:	8b 4d fc             	mov    -0x4(%ebp),%ecx
5689cd:	85 c0                	test   %eax,%eax
5689cf:	8b 45 f8             	mov    -0x8(%ebp),%eax
5689d2:	75 16                	jne    0x5689ea
5689d4:	83 4e 20 20          	orl    $0x20,0x20(%esi)
5689d8:	89 5e 08             	mov    %ebx,0x8(%esi)
5689db:	ff 43 20             	incl   0x20(%ebx)
5689de:	81 48 04 00 20 00 00 	orl    $0x2000,0x4(%eax)
5689e5:	eb 03                	jmp    0x5689ea
5689e7:	8b 4d fc             	mov    -0x4(%ebp),%ecx
5689ea:	42                   	inc    %edx
5689eb:	83 c6 48             	add    $0x48,%esi
5689ee:	89 55 f4             	mov    %edx,-0xc(%ebp)
5689f1:	3b 11                	cmp    (%ecx),%edx
5689f3:	7c bb                	jl     0x5689b0
5689f5:	8b 7d e4             	mov    -0x1c(%ebp),%edi
5689f8:	8b 75 f0             	mov    -0x10(%ebp),%esi
5689fb:	ba 01 00 00 00       	mov    $0x1,%edx
568a00:	83 7b 20 02          	cmpl   $0x2,0x20(%ebx)
568a04:	76 1c                	jbe    0x568a22
568a06:	ff 36                	push   (%esi)
568a08:	68 1c b1 6b 00       	push   $0x6bb11c
568a0d:	57                   	push   %edi
568a0e:	e8 4d a8 fb ff       	call   0x523260
568a13:	83 c4 0c             	add    $0xc,%esp
568a16:	b8 01 00 00 00       	mov    $0x1,%eax
568a1b:	5e                   	pop    %esi
568a1c:	5b                   	pop    %ebx
568a1d:	5f                   	pop    %edi
568a1e:	8b e5                	mov    %ebp,%esp
568a20:	5d                   	pop    %ebp
568a21:	c3                   	ret
568a22:	c7 46 0c 48 b1 6b 00 	movl   $0x6bb148,0xc(%esi)
568a29:	8b 8f 08 01 00 00    	mov    0x108(%edi),%ecx
568a2f:	89 4d f4             	mov    %ecx,-0xc(%ebp)
568a32:	8b 4d ec             	mov    -0x14(%ebp),%ecx
568a35:	89 8f 08 01 00 00    	mov    %ecx,0x108(%edi)
568a3b:	85 d2                	test   %edx,%edx
568a3d:	74 1e                	je     0x568a5d
568a3f:	8b 70 34             	mov    0x34(%eax),%esi
568a42:	8b 40 40             	mov    0x40(%eax),%eax
568a45:	56                   	push   %esi
568a46:	ff 75 08             	push   0x8(%ebp)
568a49:	89 46 40             	mov    %eax,0x40(%esi)
568a4c:	e8 9f 73 fe ff       	call   0x54fdf0
568a51:	c7 46 40 00 00 00 00 	movl   $0x0,0x40(%esi)
568a58:	8b 75 f0             	mov    -0x10(%ebp),%esi
568a5b:	eb 09                	jmp    0x568a66
568a5d:	50                   	push   %eax
568a5e:	ff 75 08             	push   0x8(%ebp)
568a61:	e8 8a 73 fe ff       	call   0x54fdf0
568a66:	8b 45 ec             	mov    -0x14(%ebp),%eax
568a69:	83 c4 08             	add    $0x8,%esp
568a6c:	89 87 08 01 00 00    	mov    %eax,0x108(%edi)
568a72:	8b 45 f8             	mov    -0x8(%ebp),%eax
568a75:	8b c8                	mov    %eax,%ecx
568a77:	8b 40 34             	mov    0x34(%eax),%eax
568a7a:	85 c0                	test   %eax,%eax
568a7c:	74 0b                	je     0x568a89
568a7e:	66 90                	xchg   %ax,%ax
568a80:	8b c8                	mov    %eax,%ecx
568a82:	8b 41 34             	mov    0x34(%ecx),%eax
568a85:	85 c0                	test   %eax,%eax
568a87:	75 f7                	jne    0x568a80
568a89:	8b 46 04             	mov    0x4(%esi),%eax
568a8c:	8b 49 1c             	mov    0x1c(%ecx),%ecx
568a8f:	85 c0                	test   %eax,%eax
568a91:	74 35                	je     0x568ac8
568a93:	85 c9                	test   %ecx,%ecx
568a95:	74 2f                	je     0x568ac6
568a97:	8b 09                	mov    (%ecx),%ecx
568a99:	8b 10                	mov    (%eax),%edx
568a9b:	3b ca                	cmp    %edx,%ecx
568a9d:	74 27                	je     0x568ac6
568a9f:	52                   	push   %edx
568aa0:	51                   	push   %ecx
568aa1:	ff 36                	push   (%esi)
568aa3:	68 60 b1 6b 00       	push   $0x6bb160
568aa8:	57                   	push   %edi
568aa9:	e8 b2 a7 fb ff       	call   0x523260
568aae:	8b 45 f4             	mov    -0xc(%ebp),%eax
568ab1:	83 c4 14             	add    $0x14,%esp
568ab4:	89 87 08 01 00 00    	mov    %eax,0x108(%edi)
568aba:	b8 01 00 00 00       	mov    $0x1,%eax
568abf:	5e                   	pop    %esi
568ac0:	5b                   	pop    %ebx
568ac1:	5f                   	pop    %edi
568ac2:	8b e5                	mov    %ebp,%esp
568ac4:	5d                   	pop    %ebp
568ac5:	c3                   	ret
568ac6:	8b c8                	mov    %eax,%ecx
568ac8:	8d 43 04             	lea    0x4(%ebx),%eax
568acb:	50                   	push   %eax
568acc:	8d 43 2a             	lea    0x2a(%ebx),%eax
568acf:	50                   	push   %eax
568ad0:	51                   	push   %ecx
568ad1:	57                   	push   %edi
568ad2:	e8 29 6a fb ff       	call   0x51f500
568ad7:	8b 4d e8             	mov    -0x18(%ebp),%ecx
568ada:	83 c4 10             	add    $0x10,%esp
568add:	85 c9                	test   %ecx,%ecx
568adf:	74 26                	je     0x568b07
568ae1:	8b 4d f8             	mov    -0x8(%ebp),%ecx
568ae4:	ba ac b1 6b 00       	mov    $0x6bb1ac,%edx
568ae9:	51                   	push   %ecx
568aea:	ff 75 08             	push   0x8(%ebp)
568aed:	b8 88 b1 6b 00       	mov    $0x6bb188,%eax
568af2:	f7 41 04 00 20 00 00 	testl  $0x2000,0x4(%ecx)
568af9:	0f 44 c2             	cmove  %edx,%eax
568afc:	89 46 0c             	mov    %eax,0xc(%esi)
568aff:	e8 ec 72 fe ff       	call   0x54fdf0
568b04:	83 c4 08             	add    $0x8,%esp
568b07:	8b 45 f4             	mov    -0xc(%ebp),%eax
568b0a:	c7 46 0c 00 00 00 00 	movl   $0x0,0xc(%esi)
568b11:	89 87 08 01 00 00    	mov    %eax,0x108(%edi)
568b17:	5e                   	pop    %esi
568b18:	5b                   	pop    %ebx
568b19:	33 c0                	xor    %eax,%eax
568b1b:	5f                   	pop    %edi
568b1c:	8b e5                	mov    %ebp,%esp
568b1e:	5d                   	pop    %ebp
568b1f:	c3                   	ret
568b20:	55                   	push   %ebp
568b21:	8b ec                	mov    %esp,%ebp
568b23:	83 ec 08             	sub    $0x8,%esp
568b26:	53                   	push   %ebx
568b27:	56                   	push   %esi
568b28:	8b 75 08             	mov    0x8(%ebp),%esi
568b2b:	57                   	push   %edi
568b2c:	8b 8e 98 00 00 00    	mov    0x98(%esi),%ecx
568b32:	8b 86 94 00 00 00    	mov    0x94(%esi),%eax
568b38:	3b c8                	cmp    %eax,%ecx
568b3a:	8b 9e d0 00 00 00    	mov    0xd0(%esi),%ebx
568b40:	0f 47 c8             	cmova  %eax,%ecx
568b43:	33 d2                	xor    %edx,%edx
568b45:	89 4d 08             	mov    %ecx,0x8(%ebp)
568b48:	39 56 60             	cmp    %edx,0x60(%esi)
568b4b:	7e 25                	jle    0x568b72
568b4d:	33 ff                	xor    %edi,%edi
568b4f:	90                   	nop
568b50:	8b 4e 5c             	mov    0x5c(%esi),%ecx
568b53:	03 cf                	add    %edi,%ecx
568b55:	8b 41 08             	mov    0x8(%ecx),%eax
568b58:	0b 41 0c             	or     0xc(%ecx),%eax
568b5b:	75 0c                	jne    0x568b69
568b5d:	8b 46 48             	mov    0x48(%esi),%eax
568b60:	89 41 08             	mov    %eax,0x8(%ecx)
568b63:	8b 46 4c             	mov    0x4c(%esi),%eax
568b66:	89 41 0c             	mov    %eax,0xc(%ecx)
568b69:	42                   	inc    %edx
568b6a:	83 c7 30             	add    $0x30,%edi
568b6d:	3b 56 60             	cmp    0x60(%esi),%edx
568b70:	7c de                	jl     0x568b50
568b72:	8b 4e 48             	mov    0x48(%esi),%ecx
568b75:	0f 57 c0             	xorps  %xmm0,%xmm0
568b78:	8b 56 4c             	mov    0x4c(%esi),%edx
568b7b:	8b c1                	mov    %ecx,%eax
568b7d:	0b c2                	or     %edx,%eax
568b7f:	66 0f 13 45 f8       	movlpd %xmm0,-0x8(%ebp)
568b84:	74 28                	je     0x568bae
568b86:	8b be 94 00 00 00    	mov    0x94(%esi),%edi
568b8c:	83 e9 01             	sub    $0x1,%ecx
568b8f:	6a 00                	push   $0x0
568b91:	57                   	push   %edi
568b92:	83 da 00             	sbb    $0x0,%edx
568b95:	52                   	push   %edx
568b96:	51                   	push   %ecx
568b97:	e8 a4 8f 07 00       	call   0x5e1b40
568b9c:	83 c0 01             	add    $0x1,%eax
568b9f:	6a 00                	push   $0x0
568ba1:	57                   	push   %edi
568ba2:	83 d2 00             	adc    $0x0,%edx
568ba5:	52                   	push   %edx
568ba6:	50                   	push   %eax
568ba7:	e8 54 8f 07 00       	call   0x5e1b00
568bac:	eb 06                	jmp    0x568bb4
568bae:	8b 55 fc             	mov    -0x4(%ebp),%edx
568bb1:	8b 45 f8             	mov    -0x8(%ebp),%eax
568bb4:	80 7e 07 00          	cmpb   $0x0,0x7(%esi)
568bb8:	89 46 48             	mov    %eax,0x48(%esi)
568bbb:	89 56 4c             	mov    %edx,0x4c(%esi)
568bbe:	89 46 50             	mov    %eax,0x50(%esi)
568bc1:	89 56 54             	mov    %edx,0x54(%esi)
568bc4:	75 2b                	jne    0x568bf1
568bc6:	80 7e 05 04          	cmpb   $0x4,0x5(%esi)
568bca:	74 25                	je     0x568bf1
568bcc:	8b 46 3c             	mov    0x3c(%esi),%eax
568bcf:	50                   	push   %eax
568bd0:	8b 08                	mov    (%eax),%ecx
568bd2:	8b 41 30             	mov    0x30(%ecx),%eax
568bd5:	ff d0                	call   *%eax
568bd7:	83 c4 04             	add    $0x4,%esp
568bda:	a9 00 02 00 00       	test   $0x200,%eax
568bdf:	75 10                	jne    0x568bf1
568be1:	0f 57 c0             	xorps  %xmm0,%xmm0
568be4:	66 0f d6 03          	movq   %xmm0,(%ebx)
568be8:	c7 43 08 00 00 00 00 	movl   $0x0,0x8(%ebx)
568bef:	eb 16                	jmp    0x568c07
568bf1:	a1 a4 27 6b 00       	mov    0x6b27a4,%eax
568bf6:	89 03                	mov    %eax,(%ebx)
568bf8:	a1 a8 27 6b 00       	mov    0x6b27a8,%eax
568bfd:	89 43 04             	mov    %eax,0x4(%ebx)
568c00:	c7 43 08 ff ff ff ff 	movl   $0xffffffff,0x8(%ebx)
568c07:	8d 7e 30             	lea    0x30(%esi),%edi
568c0a:	57                   	push   %edi
568c0b:	6a 04                	push   $0x4
568c0d:	e8 1e 30 f8 ff       	call   0x4ebc30
568c12:	8b 07                	mov    (%edi),%eax
568c14:	0f c8                	bswap  %eax
568c16:	89 43 0c             	mov    %eax,0xc(%ebx)
568c19:	8b 46 1c             	mov    0x1c(%esi),%eax
568c1c:	0f c8                	bswap  %eax
568c1e:	89 43 10             	mov    %eax,0x10(%ebx)
568c21:	8b 86 94 00 00 00    	mov    0x94(%esi),%eax
568c27:	0f c8                	bswap  %eax
568c29:	89 43 14             	mov    %eax,0x14(%ebx)
568c2c:	8b 86 98 00 00 00    	mov    0x98(%esi),%eax
568c32:	0f c8                	bswap  %eax
568c34:	89 43 18             	mov    %eax,0x18(%ebx)
568c37:	8b 45 08             	mov    0x8(%ebp),%eax
568c3a:	83 c0 e4             	add    $0xffffffe4,%eax
568c3d:	50                   	push   %eax
568c3e:	8d 43 1c             	lea    0x1c(%ebx),%eax
568c41:	6a 00                	push   $0x0
568c43:	50                   	push   %eax
568c44:	e8 b7 ad 07 00       	call   0x5e3a00
568c49:	83 c4 14             	add    $0x14,%esp
568c4c:	33 ff                	xor    %edi,%edi
568c4e:	33 c9                	xor    %ecx,%ecx
568c50:	3b be 94 00 00 00    	cmp    0x94(%esi),%edi
568c56:	73 2a                	jae    0x568c82
568c58:	ff 76 4c             	push   0x4c(%esi)
568c5b:	8b 46 40             	mov    0x40(%esi),%eax
568c5e:	ff 76 48             	push   0x48(%esi)
568c61:	ff 75 08             	push   0x8(%ebp)
568c64:	8b 08                	mov    (%eax),%ecx
568c66:	53                   	push   %ebx
568c67:	50                   	push   %eax
568c68:	8b 41 0c             	mov    0xc(%ecx),%eax
568c6b:	ff d0                	call   *%eax
568c6d:	8b c8                	mov    %eax,%ecx
568c6f:	83 c4 14             	add    $0x14,%esp
568c72:	8b 45 08             	mov    0x8(%ebp),%eax
568c75:	01 46 48             	add    %eax,0x48(%esi)
568c78:	83 56 4c 00          	adcl   $0x0,0x4c(%esi)
568c7c:	03 f8                	add    %eax,%edi
568c7e:	85 c9                	test   %ecx,%ecx
568c80:	74 ce                	je     0x568c50
568c82:	5f                   	pop    %edi
568c83:	5e                   	pop    %esi
568c84:	8b c1                	mov    %ecx,%eax
568c86:	5b                   	pop    %ebx
568c87:	8b e5                	mov    %ebp,%esp
568c89:	5d                   	pop    %ebp
568c8a:	c3                   	ret
568c8b:	cc                   	int3
568c8c:	cc                   	int3
568c8d:	cc                   	int3
568c8e:	cc                   	int3
568c8f:	cc                   	int3
568c90:	55                   	push   %ebp
568c91:	8b ec                	mov    %esp,%ebp
568c93:	83 ec 24             	sub    $0x24,%esp
568c96:	a1 d4 89 72 00       	mov    0x7289d4,%eax
568c9b:	33 c5                	xor    %ebp,%eax
568c9d:	89 45 fc             	mov    %eax,-0x4(%ebp)
568ca0:	8b 55 0c             	mov    0xc(%ebp),%edx
568ca3:	33 c9                	xor    %ecx,%ecx
568ca5:	89 55 f8             	mov    %edx,-0x8(%ebp)
568ca8:	89 4d dc             	mov    %ecx,-0x24(%ebp)
568cab:	53                   	push   %ebx
568cac:	8b 5d 08             	mov    0x8(%ebp),%ebx
568caf:	56                   	push   %esi
568cb0:	85 d2                	test   %edx,%edx
568cb2:	0f 84 98 01 00 00    	je     0x568e50
568cb8:	80 7b 05 04          	cmpb   $0x4,0x5(%ebx)
568cbc:	0f 84 8e 01 00 00    	je     0x568e50
568cc2:	8b 73 40             	mov    0x40(%ebx),%esi