567957:	0b c8                	or     %eax,%ecx
567959:	8b c2                	mov    %edx,%eax
56795b:	25 00 00 00 20       	and    $0x20000000,%eax
567960:	d1 e9                	shr    $1,%ecx
567962:	0b c8                	or     %eax,%ecx
567964:	8b c2                	mov    %edx,%eax
567966:	25 00 00 00 40       	and    $0x40000000,%eax
56796b:	d1 e9                	shr    $1,%ecx
56796d:	0b c8                	or     %eax,%ecx
56796f:	81 e2 01 00 00 80    	and    $0x80000001,%edx
567975:	8b 06                	mov    (%esi),%eax
567977:	d1 e9                	shr    $1,%ecx
567979:	0b ca                	or     %edx,%ecx
56797b:	d1 e9                	shr    $1,%ecx
56797d:	89 4c e8 04          	mov    %ecx,0x4(%eax,%ebp,8)
567981:	8b 03                	mov    (%ebx),%eax
567983:	8b 0c a8             	mov    (%eax,%ebp,4),%ecx
567986:	8b d1                	mov    %ecx,%edx
567988:	81 e2 00 80 00 00    	and    $0x8000,%edx
56798e:	8b c1                	mov    %ecx,%eax
567990:	03 d2                	add    %edx,%edx
567992:	25 00 40 00 00       	and    $0x4000,%eax
567997:	0b d0                	or     %eax,%edx
567999:	8b c1                	mov    %ecx,%eax
56799b:	03 d2                	add    %edx,%edx
56799d:	25 00 20 00 00       	and    $0x2000,%eax
5679a2:	0b d0                	or     %eax,%edx
5679a4:	8b c1                	mov    %ecx,%eax
5679a6:	03 d2                	add    %edx,%edx
5679a8:	25 00 10 00 00       	and    $0x1000,%eax
5679ad:	0b d0                	or     %eax,%edx
5679af:	8b c1                	mov    %ecx,%eax
5679b1:	03 d2                	add    %edx,%edx
5679b3:	25 00 08 00 00       	and    $0x800,%eax
5679b8:	0b d0                	or     %eax,%edx
5679ba:	8b c1                	mov    %ecx,%eax
5679bc:	03 d2                	add    %edx,%edx
5679be:	25 00 04 00 00       	and    $0x400,%eax
5679c3:	0b d0                	or     %eax,%edx
5679c5:	8b c1                	mov    %ecx,%eax
5679c7:	03 d2                	add    %edx,%edx
5679c9:	25 00 02 00 00       	and    $0x200,%eax
5679ce:	0b d0                	or     %eax,%edx
5679d0:	8b c1                	mov    %ecx,%eax
5679d2:	03 d2                	add    %edx,%edx
5679d4:	25 00 01 00 00       	and    $0x100,%eax
5679d9:	0b d0                	or     %eax,%edx
5679db:	8b c1                	mov    %ecx,%eax
5679dd:	03 d2                	add    %edx,%edx
5679df:	25 80 00 00 00       	and    $0x80,%eax
5679e4:	0b d0                	or     %eax,%edx
5679e6:	8b c1                	mov    %ecx,%eax
5679e8:	03 d2                	add    %edx,%edx
5679ea:	83 e0 40             	and    $0x40,%eax
5679ed:	0b d0                	or     %eax,%edx
5679ef:	8b c1                	mov    %ecx,%eax
5679f1:	03 d2                	add    %edx,%edx
5679f3:	83 e0 20             	and    $0x20,%eax
5679f6:	0b d0                	or     %eax,%edx
5679f8:	8b c1                	mov    %ecx,%eax
5679fa:	03 d2                	add    %edx,%edx
5679fc:	83 e0 10             	and    $0x10,%eax
5679ff:	0b d0                	or     %eax,%edx
567a01:	8b c1                	mov    %ecx,%eax
567a03:	03 d2                	add    %edx,%edx
567a05:	83 e0 08             	and    $0x8,%eax
567a08:	0b d0                	or     %eax,%edx
567a0a:	8b c1                	mov    %ecx,%eax
567a0c:	03 d2                	add    %edx,%edx
567a0e:	83 e0 04             	and    $0x4,%eax
567a11:	0b d0                	or     %eax,%edx
567a13:	8b c1                	mov    %ecx,%eax
567a15:	03 d2                	add    %edx,%edx
567a17:	83 e0 02             	and    $0x2,%eax
567a1a:	0b d0                	or     %eax,%edx
567a1c:	83 e1 01             	and    $0x1,%ecx
567a1f:	8b 06                	mov    (%esi),%eax
567a21:	03 d2                	add    %edx,%edx
567a23:	0b d1                	or     %ecx,%edx
567a25:	89 14 e8             	mov    %edx,(%eax,%ebp,8)
567a28:	83 ed 01             	sub    $0x1,%ebp
567a2b:	0f 89 97 fe ff ff    	jns    0x5678c8
567a31:	8b 43 04             	mov    0x4(%ebx),%eax
567a34:	8b 6c 24 24          	mov    0x24(%esp),%ebp
567a38:	03 c0                	add    %eax,%eax
567a3a:	56                   	push   %esi
567a3b:	89 46 04             	mov    %eax,0x4(%esi)
567a3e:	e8 0d 2a f7 ff       	call   0x4da450
567a43:	ff 74 24 24          	push   0x24(%esp)
567a47:	56                   	push   %esi
567a48:	ff 74 24 24          	push   0x24(%esp)
567a4c:	e8 6f ee ff ff       	call   0x5668c0
567a51:	83 c4 10             	add    $0x10,%esp
567a54:	b9 01 00 00 00       	mov    $0x1,%ecx
567a59:	85 c0                	test   %eax,%eax
567a5b:	0f 45 f9             	cmovne %ecx,%edi
567a5e:	5b                   	pop    %ebx
567a5f:	55                   	push   %ebp
567a60:	e8 6b 00 f8 ff       	call   0x4e7ad0
567a65:	83 c4 04             	add    $0x4,%esp
567a68:	8b c7                	mov    %edi,%eax
567a6a:	5f                   	pop    %edi
567a6b:	5e                   	pop    %esi
567a6c:	5d                   	pop    %ebp
567a6d:	59                   	pop    %ecx
567a6e:	c3                   	ret
567a6f:	cc                   	int3
567a70:	55                   	push   %ebp
567a71:	57                   	push   %edi
567a72:	8b 7c 24 14          	mov    0x14(%esp),%edi
567a76:	33 ed                	xor    %ebp,%ebp
567a78:	39 2f                	cmp    %ebp,(%edi)
567a7a:	75 13                	jne    0x567a8f
567a7c:	55                   	push   %ebp
567a7d:	ff 74 24 10          	push   0x10(%esp)
567a81:	e8 5a 26 f7 ff       	call   0x4da0e0
567a86:	83 c4 08             	add    $0x8,%esp
567a89:	8d 45 01             	lea    0x1(%ebp),%eax
567a8c:	5f                   	pop    %edi
567a8d:	5d                   	pop    %ebp
567a8e:	c3                   	ret
567a8f:	53                   	push   %ebx
567a90:	56                   	push   %esi
567a91:	8b 74 24 20          	mov    0x20(%esp),%esi
567a95:	56                   	push   %esi
567a96:	e8 75 03 f8 ff       	call   0x4e7e10
567a9b:	56                   	push   %esi
567a9c:	e8 2f 01 f8 ff       	call   0x4e7bd0
567aa1:	8b d8                	mov    %eax,%ebx
567aa3:	83 c4 08             	add    $0x8,%esp
567aa6:	85 db                	test   %ebx,%ebx
567aa8:	74 26                	je     0x567ad0
567aaa:	8b 07                	mov    (%edi),%eax
567aac:	48                   	dec    %eax
567aad:	50                   	push   %eax
567aae:	53                   	push   %ebx
567aaf:	e8 7c 25 f7 ff       	call   0x4da030
567ab4:	83 c4 08             	add    $0x8,%esp
567ab7:	85 c0                	test   %eax,%eax
567ab9:	74 15                	je     0x567ad0
567abb:	56                   	push   %esi
567abc:	57                   	push   %edi
567abd:	53                   	push   %ebx
567abe:	ff 74 24 24          	push   0x24(%esp)
567ac2:	ff 74 24 24          	push   0x24(%esp)
567ac6:	e8 95 f0 ff ff       	call   0x566b60
567acb:	83 c4 14             	add    $0x14,%esp
567ace:	8b e8                	mov    %eax,%ebp
567ad0:	56                   	push   %esi
567ad1:	e8 fa ff f7 ff       	call   0x4e7ad0
567ad6:	83 c4 04             	add    $0x4,%esp
567ad9:	8b c5                	mov    %ebp,%eax
567adb:	5e                   	pop    %esi
567adc:	5b                   	pop    %ebx
567add:	5f                   	pop    %edi
567ade:	5d                   	pop    %ebp
567adf:	c3                   	ret
567ae0:	55                   	push   %ebp
567ae1:	8b 6c 24 08          	mov    0x8(%esp),%ebp
567ae5:	56                   	push   %esi
567ae6:	55                   	push   %ebp
567ae7:	33 f6                	xor    %esi,%esi
567ae9:	e8 72 22 f7 ff       	call   0x4d9d60
567aee:	83 c4 04             	add    $0x4,%esp
567af1:	85 c0                	test   %eax,%eax
567af3:	74 05                	je     0x567afa
567af5:	5e                   	pop    %esi
567af6:	33 c0                	xor    %eax,%eax
567af8:	5d                   	pop    %ebp
567af9:	c3                   	ret
567afa:	53                   	push   %ebx
567afb:	8b 5d 04             	mov    0x4(%ebp),%ebx
567afe:	83 eb 01             	sub    $0x1,%ebx
567b01:	78 4e                	js     0x567b51
567b03:	57                   	push   %edi
567b04:	8b fb                	mov    %ebx,%edi
567b06:	c1 e7 05             	shl    $0x5,%edi
567b09:	0f 1f 80 00 00 00 00 	nopl   0x0(%eax)
567b10:	8b 45 00             	mov    0x0(%ebp),%eax
567b13:	83 3c 98 00          	cmpl   $0x0,(%eax,%ebx,4)
567b17:	74 2f                	je     0x567b48
567b19:	b9 00 00 00 80       	mov    $0x80000000,%ecx
567b1e:	ba 1f 00 00 00       	mov    $0x1f,%edx
567b23:	8b 45 00             	mov    0x0(%ebp),%eax
567b26:	85 0c 98             	test   %ecx,(%eax,%ebx,4)
567b29:	74 16                	je     0x567b41
567b2b:	3b 74 24 1c          	cmp    0x1c(%esp),%esi
567b2f:	7d 0f                	jge    0x567b40
567b31:	8b 6c 24 18          	mov    0x18(%esp),%ebp
567b35:	8d 04 17             	lea    (%edi,%edx,1),%eax
567b38:	89 44 b5 00          	mov    %eax,0x0(%ebp,%esi,4)
567b3c:	8b 6c 24 14          	mov    0x14(%esp),%ebp
567b40:	46                   	inc    %esi
567b41:	d1 e9                	shr    $1,%ecx
567b43:	83 ea 01             	sub    $0x1,%edx
567b46:	79 db                	jns    0x567b23
567b48:	83 ef 20             	sub    $0x20,%edi
567b4b:	83 eb 01             	sub    $0x1,%ebx
567b4e:	79 c0                	jns    0x567b10
567b50:	5f                   	pop    %edi
567b51:	5b                   	pop    %ebx
567b52:	3b 74 24 14          	cmp    0x14(%esp),%esi
567b56:	7d 0c                	jge    0x567b64
567b58:	8b 44 24 10          	mov    0x10(%esp),%eax
567b5c:	c7 04 b0 ff ff ff ff 	movl   $0xffffffff,(%eax,%esi,4)
567b63:	46                   	inc    %esi
567b64:	8b c6                	mov    %esi,%eax
567b66:	5e                   	pop    %esi
567b67:	5d                   	pop    %ebp
567b68:	c3                   	ret
567b69:	cc                   	int3
567b6a:	cc                   	int3
567b6b:	cc                   	int3
567b6c:	cc                   	int3
567b6d:	cc                   	int3
567b6e:	cc                   	int3
567b6f:	cc                   	int3
567b70:	83 3d d4 6a 69 00 00 	cmpl   $0x0,0x696ad4
567b77:	53                   	push   %ebx
567b78:	56                   	push   %esi
567b79:	57                   	push   %edi
567b7a:	75 16                	jne    0x567b92
567b7c:	68 f0 75 4e 00       	push   $0x4e75f0
567b81:	e8 6a d4 f7 ff       	call   0x4e4ff0
567b86:	83 c4 04             	add    $0x4,%esp
567b89:	a3 d4 6a 69 00       	mov    %eax,0x696ad4
567b8e:	85 c0                	test   %eax,%eax
567b90:	74 7a                	je     0x567c0c
567b92:	8b 5c 24 10          	mov    0x10(%esp),%ebx
567b96:	53                   	push   %ebx
567b97:	e8 44 01 00 00       	call   0x567ce0
567b9c:	8b f0                	mov    %eax,%esi
567b9e:	83 c4 04             	add    $0x4,%esp
567ba1:	85 f6                	test   %esi,%esi
567ba3:	74 0a                	je     0x567baf
567ba5:	f6 46 10 01          	testb  $0x1,0x10(%esi)
567ba9:	0f 85 ba 00 00 00    	jne    0x567c69
567baf:	68 9f 00 00 00       	push   $0x9f
567bb4:	68 1c 81 65 00       	push   $0x65811c
567bb9:	6a 14                	push   $0x14
567bbb:	e8 80 8e f7 ff       	call   0x4e0a40
567bc0:	8b f8                	mov    %eax,%edi
567bc2:	83 c4 0c             	add    $0xc,%esp
567bc5:	85 ff                	test   %edi,%edi
567bc7:	75 1d                	jne    0x567be6
567bc9:	68 a0 00 00 00       	push   $0xa0
567bce:	68 1c 81 65 00       	push   $0x65811c
567bd3:	6a 41                	push   $0x41
567bd5:	68 8a 00 00 00       	push   $0x8a
567bda:	6a 0d                	push   $0xd
567bdc:	e8 9f 13 f7 ff       	call   0x4d8f80
567be1:	83 c4 14             	add    $0x14,%esp
567be4:	eb 26                	jmp    0x567c0c
567be6:	57                   	push   %edi
567be7:	ff 35 d4 6a 69 00    	push   0x696ad4
567bed:	e8 5e d5 f7 ff       	call   0x4e5150
567bf2:	83 c4 08             	add    $0x8,%esp
567bf5:	85 c0                	test   %eax,%eax
567bf7:	75 34                	jne    0x567c2d
567bf9:	68 a4 00 00 00       	push   $0xa4
567bfe:	68 1c 81 65 00       	push   $0x65811c
567c03:	57                   	push   %edi
567c04:	e8 77 8b f7 ff       	call   0x4e0780
567c09:	83 c4 0c             	add    $0xc,%esp
567c0c:	68 be 00 00 00       	push   $0xbe
567c11:	68 1c 81 65 00       	push   $0x65811c
567c16:	6a 41                	push   $0x41
567c18:	68 81 00 00 00       	push   $0x81
567c1d:	6a 0d                	push   $0xd
567c1f:	e8 5c 13 f7 ff       	call   0x4d8f80
567c24:	83 c4 14             	add    $0x14,%esp
567c27:	33 c0                	xor    %eax,%eax
567c29:	5f                   	pop    %edi
567c2a:	5e                   	pop    %esi
567c2b:	5b                   	pop    %ebx
567c2c:	c3                   	ret
567c2d:	85 f6                	test   %esi,%esi
567c2f:	74 1e                	je     0x567c4f
567c31:	8b 06                	mov    (%esi),%eax
567c33:	89 07                	mov    %eax,(%edi)
567c35:	8b 46 04             	mov    0x4(%esi),%eax
567c38:	89 47 04             	mov    %eax,0x4(%edi)
567c3b:	8b 46 08             	mov    0x8(%esi),%eax
567c3e:	89 47 08             	mov    %eax,0x8(%edi)
567c41:	8b 46 0c             	mov    0xc(%esi),%eax
567c44:	89 47 0c             	mov    %eax,0xc(%edi)
567c47:	8b 46 10             	mov    0x10(%esi),%eax
567c4a:	83 c8 01             	or     $0x1,%eax
567c4d:	eb 15                	jmp    0x567c64
567c4f:	89 1f                	mov    %ebx,(%edi)
567c51:	b8 01 00 00 00       	mov    $0x1,%eax
567c56:	c7 47 04 ff ff ff ff 	movl   $0xffffffff,0x4(%edi)
567c5d:	c7 47 08 ff ff ff ff 	movl   $0xffffffff,0x8(%edi)
567c64:	89 47 10             	mov    %eax,0x10(%edi)
567c67:	8b f7                	mov    %edi,%esi
567c69:	8b 44 24 14          	mov    0x14(%esp),%eax
567c6d:	85 c0                	test   %eax,%eax
567c6f:	78 03                	js     0x567c74
567c71:	89 46 04             	mov    %eax,0x4(%esi)
567c74:	8b 44 24 18          	mov    0x18(%esp),%eax
567c78:	85 c0                	test   %eax,%eax
567c7a:	78 03                	js     0x567c7f
567c7c:	89 46 08             	mov    %eax,0x8(%esi)
567c7f:	8b 44 24 1c          	mov    0x1c(%esp),%eax
567c83:	85 c0                	test   %eax,%eax
567c85:	74 03                	je     0x567c8a
567c87:	89 46 0c             	mov    %eax,0xc(%esi)
567c8a:	8b 44 24 20          	mov    0x20(%esp),%eax
567c8e:	85 c0                	test   %eax,%eax
567c90:	74 06                	je     0x567c98
567c92:	83 c8 01             	or     $0x1,%eax
567c95:	89 46 10             	mov    %eax,0x10(%esi)
567c98:	5f                   	pop    %edi
567c99:	5e                   	pop    %esi
567c9a:	b8 01 00 00 00       	mov    $0x1,%eax
567c9f:	5b                   	pop    %ebx
567ca0:	c3                   	ret
567ca1:	cc                   	int3
567ca2:	cc                   	int3
567ca3:	cc                   	int3
567ca4:	cc                   	int3
567ca5:	cc                   	int3
567ca6:	cc                   	int3
567ca7:	cc                   	int3
567ca8:	cc                   	int3
567ca9:	cc                   	int3
567caa:	cc                   	int3
567cab:	cc                   	int3
567cac:	cc                   	int3
567cad:	cc                   	int3
567cae:	cc                   	int3
567caf:	cc                   	int3
567cb0:	a1 d4 6a 69 00       	mov    0x696ad4,%eax
567cb5:	85 c0                	test   %eax,%eax
567cb7:	74 18                	je     0x567cd1
567cb9:	68 f0 7d 56 00       	push   $0x567df0
567cbe:	50                   	push   %eax
567cbf:	c7 05 d4 6a 69 00 00 	movl   $0x0,0x696ad4
567cc6:	00 00 00
567cc9:	e8 22 d4 f7 ff       	call   0x4e50f0
567cce:	83 c4 08             	add    $0x8,%esp
567cd1:	c3                   	ret
567cd2:	cc                   	int3
567cd3:	cc                   	int3
567cd4:	cc                   	int3
567cd5:	cc                   	int3
567cd6:	cc                   	int3
567cd7:	cc                   	int3
567cd8:	cc                   	int3
567cd9:	cc                   	int3