563b23:	8b 4d d4             	mov    -0x2c(%ebp),%ecx
563b26:	8b 75 dc             	mov    -0x24(%ebp),%esi
563b29:	8b 45 a8             	mov    -0x58(%ebp),%eax
563b2c:	83 45 bc 14          	addl   $0x14,-0x44(%ebp)
563b30:	40                   	inc    %eax
563b31:	8b 5d bc             	mov    -0x44(%ebp),%ebx
563b34:	89 45 a8             	mov    %eax,-0x58(%ebp)
563b37:	3b c2                	cmp    %edx,%eax
563b39:	0f 8c 21 ff ff ff    	jl     0x563a60
563b3f:	8b 55 d0             	mov    -0x30(%ebp),%edx
563b42:	8b 5d b8             	mov    -0x48(%ebp),%ebx
563b45:	eb 09                	jmp    0x563b50
563b47:	8b 5d b8             	mov    -0x48(%ebp),%ebx
563b4a:	8b 4d d4             	mov    -0x2c(%ebp),%ecx
563b4d:	8b 75 dc             	mov    -0x24(%ebp),%esi
563b50:	8b 7d b4             	mov    -0x4c(%ebp),%edi
563b53:	ff 45 ac             	incl   -0x54(%ebp)
563b56:	80 7d cc 00          	cmpb   $0x0,-0x34(%ebp)
563b5a:	0f 85 20 f9 ff ff    	jne    0x563480
563b60:	eb 0c                	jmp    0x563b6e
563b62:	80 7a 1d 00          	cmpb   $0x0,0x1d(%edx)
563b66:	74 06                	je     0x563b6e
563b68:	f6 45 14 80          	testb  $0x80,0x14(%ebp)
563b6c:	74 0f                	je     0x563b7d
563b6e:	8b 45 a0             	mov    -0x60(%ebp),%eax
563b71:	3b 8d 70 ff ff ff    	cmp    -0x90(%ebp),%ecx
563b77:	75 1b                	jne    0x563b94
563b79:	3b f0                	cmp    %eax,%esi
563b7b:	75 17                	jne    0x563b94
563b7d:	8a 85 54 ff ff ff    	mov    -0xac(%ebp),%al
563b83:	5e                   	pop    %esi
563b84:	5b                   	pop    %ebx
563b85:	5f                   	pop    %edi
563b86:	8b 4d fc             	mov    -0x4(%ebp),%ecx
563b89:	33 cd                	xor    %ebp,%ecx
563b8b:	e8 4a d9 07 00       	call   0x5e14da
563b90:	8b e5                	mov    %ebp,%esp
563b92:	5d                   	pop    %ebp
563b93:	c3                   	ret
563b94:	80 7d cc 00          	cmpb   $0x0,-0x34(%ebp)
563b98:	75 61                	jne    0x563bfb
563b9a:	4b                   	dec    %ebx
563b9b:	85 db                	test   %ebx,%ebx
563b9d:	7e 36                	jle    0x563bd5
563b9f:	8b 7d dc             	mov    -0x24(%ebp),%edi
563ba2:	33 c9                	xor    %ecx,%ecx
563ba4:	33 d2                	xor    %edx,%edx
563ba6:	8b c3                	mov    %ebx,%eax
563ba8:	0f ab c1             	bts    %eax,%ecx
563bab:	83 f8 20             	cmp    $0x20,%eax
563bae:	0f 43 d1             	cmovae %ecx,%edx
563bb1:	33 ca                	xor    %edx,%ecx
563bb3:	83 f8 40             	cmp    $0x40,%eax
563bb6:	0f 43 d1             	cmovae %ecx,%edx
563bb9:	83 c1 ff             	add    $0xffffffff,%ecx
563bbc:	8b c1                	mov    %ecx,%eax
563bbe:	83 d2 ff             	adc    $0xffffffff,%edx
563bc1:	23 45 d4             	and    -0x2c(%ebp),%eax
563bc4:	8b f2                	mov    %edx,%esi
563bc6:	23 f7                	and    %edi,%esi
563bc8:	3b c1                	cmp    %ecx,%eax
563bca:	75 04                	jne    0x563bd0
563bcc:	3b f2                	cmp    %edx,%esi
563bce:	74 18                	je     0x563be8
563bd0:	4b                   	dec    %ebx
563bd1:	85 db                	test   %ebx,%ebx
563bd3:	7f cd                	jg     0x563ba2
563bd5:	5e                   	pop    %esi
563bd6:	5b                   	pop    %ebx
563bd7:	32 c0                	xor    %al,%al
563bd9:	5f                   	pop    %edi
563bda:	8b 4d fc             	mov    -0x4(%ebp),%ecx
563bdd:	33 cd                	xor    %ebp,%ecx
563bdf:	e8 f6 d8 07 00       	call   0x5e14da
563be4:	8b e5                	mov    %ebp,%esp
563be6:	5d                   	pop    %ebp
563be7:	c3                   	ret
563be8:	5e                   	pop    %esi
563be9:	8a c3                	mov    %bl,%al
563beb:	5b                   	pop    %ebx
563bec:	5f                   	pop    %edi
563bed:	8b 4d fc             	mov    -0x4(%ebp),%ecx
563bf0:	33 cd                	xor    %ebp,%ecx
563bf2:	e8 e3 d8 07 00       	call   0x5e14da
563bf7:	8b e5                	mov    %ebp,%esp
563bf9:	5d                   	pop    %ebp
563bfa:	c3                   	ret
563bfb:	8b 4d fc             	mov    -0x4(%ebp),%ecx
563bfe:	0c ff                	or     $0xff,%al
563c00:	5e                   	pop    %esi
563c01:	5b                   	pop    %ebx
563c02:	33 cd                	xor    %ebp,%ecx
563c04:	5f                   	pop    %edi
563c05:	e8 d0 d8 07 00       	call   0x5e14da
563c0a:	8b e5                	mov    %ebp,%esp
563c0c:	5d                   	pop    %ebp
563c0d:	c3                   	ret
563c0e:	cc                   	int3
563c0f:	cc                   	int3
563c10:	55                   	push   %ebp
563c11:	8b ec                	mov    %esp,%ebp
563c13:	83 ec 74             	sub    $0x74,%esp
563c16:	8b 45 08             	mov    0x8(%ebp),%eax
563c19:	53                   	push   %ebx
563c1a:	56                   	push   %esi
563c1b:	c7 45 c0 00 00 00 00 	movl   $0x0,-0x40(%ebp)
563c22:	8b 08                	mov    (%eax),%ecx
563c24:	0f b6 50 2c          	movzbl 0x2c(%eax),%edx
563c28:	c7 45 b8 00 00 00 00 	movl   $0x0,-0x48(%ebp)
563c2f:	c7 45 bc 00 00 00 00 	movl   $0x0,-0x44(%ebp)
563c36:	8b 31                	mov    (%ecx),%esi
563c38:	c7 45 b4 00 00 00 00 	movl   $0x0,-0x4c(%ebp)
563c3f:	89 4d 9c             	mov    %ecx,-0x64(%ebp)
563c42:	89 75 94             	mov    %esi,-0x6c(%ebp)
563c45:	89 55 f0             	mov    %edx,-0x10(%ebp)
563c48:	83 fa 01             	cmp    $0x1,%edx
563c4b:	7f 07                	jg     0x563c54
563c4d:	bb 01 00 00 00       	mov    $0x1,%ebx
563c52:	eb 10                	jmp    0x563c64
563c54:	83 fa 02             	cmp    $0x2,%edx
563c57:	bb 0a 00 00 00       	mov    $0xa,%ebx
563c5c:	b9 05 00 00 00       	mov    $0x5,%ecx
563c61:	0f 44 d9             	cmove  %ecx,%ebx
563c64:	8b 40 08             	mov    0x8(%eax),%eax
563c67:	89 5d d0             	mov    %ebx,-0x30(%ebp)
563c6a:	85 c0                	test   %eax,%eax
563c6c:	74 0b                	je     0x563c79
563c6e:	66 83 7d 0c 00       	cmpw   $0x0,0xc(%ebp)
563c73:	74 04                	je     0x563c79
563c75:	8b 08                	mov    (%eax),%ecx
563c77:	eb 02                	jmp    0x563c7b
563c79:	33 c9                	xor    %ecx,%ecx
563c7b:	8d 42 08             	lea    0x8(%edx),%eax
563c7e:	89 4d d8             	mov    %ecx,-0x28(%ebp)
563c81:	0f af c3             	imul   %ebx,%eax
563c84:	8d 04 81             	lea    (%ecx,%eax,4),%eax
563c87:	03 c0                	add    %eax,%eax
563c89:	99                   	cltd
563c8a:	52                   	push   %edx
563c8b:	50                   	push   %eax
563c8c:	56                   	push   %esi
563c8d:	e8 4e d7 fb ff       	call   0x5213e0
563c92:	8b d0                	mov    %eax,%edx
563c94:	83 c4 0c             	add    $0xc,%esp
563c97:	89 55 e4             	mov    %edx,-0x1c(%ebp)
563c9a:	85 d2                	test   %edx,%edx
563c9c:	75 09                	jne    0x563ca7
563c9e:	5e                   	pop    %esi
563c9f:	8d 42 07             	lea    0x7(%edx),%eax
563ca2:	5b                   	pop    %ebx
563ca3:	8b e5                	mov    %ebp,%esp
563ca5:	5d                   	pop    %ebp
563ca6:	c3                   	ret
563ca7:	8b c3                	mov    %ebx,%eax
563ca9:	0f 57 c0             	xorps  %xmm0,%xmm0
563cac:	c1 e0 05             	shl    $0x5,%eax
563caf:	8b f2                	mov    %edx,%esi
563cb1:	57                   	push   %edi
563cb2:	8d 3c 10             	lea    (%eax,%edx,1),%edi
563cb5:	89 75 e0             	mov    %esi,-0x20(%ebp)
563cb8:	0f 11 07             	movups %xmm0,(%edi)
563cbb:	8d 0c 38             	lea    (%eax,%edi,1),%ecx
563cbe:	89 7d dc             	mov    %edi,-0x24(%ebp)
563cc1:	8d 04 1b             	lea    (%ebx,%ebx,1),%eax
563cc4:	8b 5d f0             	mov    -0x10(%ebp),%ebx
563cc7:	c1 e3 02             	shl    $0x2,%ebx
563cca:	83 c2 18             	add    $0x18,%edx
563ccd:	0f 11 47 10          	movups %xmm0,0x10(%edi)
563cd1:	89 5d 90             	mov    %ebx,-0x70(%ebp)
563cd4:	89 0a                	mov    %ecx,(%edx)
563cd6:	8d 52 20             	lea    0x20(%edx),%edx
563cd9:	48                   	dec    %eax
563cda:	03 cb                	add    %ebx,%ecx
563cdc:	85 c0                	test   %eax,%eax
563cde:	7f f4                	jg     0x563cd4
563ce0:	8b 5d d8             	mov    -0x28(%ebp),%ebx
563ce3:	85 db                	test   %ebx,%ebx
563ce5:	74 12                	je     0x563cf9
563ce7:	8d 04 1b             	lea    (%ebx,%ebx,1),%eax
563cea:	89 4d b4             	mov    %ecx,-0x4c(%ebp)
563ced:	50                   	push   %eax
563cee:	6a 00                	push   $0x0
563cf0:	51                   	push   %ecx
563cf1:	e8 0a fd 07 00       	call   0x5e3a00
563cf6:	83 c4 0c             	add    $0xc,%esp
563cf9:	8b 45 9c             	mov    -0x64(%ebp),%eax
563cfc:	b9 30 00 00 00       	mov    $0x30,%ecx
563d01:	8b 80 84 00 00 00    	mov    0x84(%eax),%eax
563d07:	3b c1                	cmp    %ecx,%eax
563d09:	0f 42 c8             	cmovb  %eax,%ecx
563d0c:	b8 01 00 00 00       	mov    $0x1,%eax
563d11:	66 89 4f 10          	mov    %cx,0x10(%edi)
563d15:	8b 4d f0             	mov    -0x10(%ebp),%ecx
563d18:	89 45 cc             	mov    %eax,-0x34(%ebp)
563d1b:	85 db                	test   %ebx,%ebx
563d1d:	74 13                	je     0x563d32
563d1f:	83 ca ff             	or     $0xffffffff,%edx
563d22:	0f b6 c3             	movzbl %bl,%eax
563d25:	85 c9                	test   %ecx,%ecx
563d27:	0f 4f c2             	cmovg  %edx,%eax
563d2a:	88 47 16             	mov    %al,0x16(%edi)
563d2d:	b8 01 00 00 00       	mov    $0x1,%eax
563d32:	c7 45 c8 00 00 00 00 	movl   $0x0,-0x38(%ebp)
563d39:	85 c9                	test   %ecx,%ecx
563d3b:	0f 8e 98 05 00 00    	jle    0x5642d9
563d41:	8b 55 08             	mov    0x8(%ebp),%edx
563d44:	eb 03                	jmp    0x563d49
563d46:	8b 45 cc             	mov    -0x34(%ebp),%eax
563d49:	33 c9                	xor    %ecx,%ecx
563d4b:	89 4d f4             	mov    %ecx,-0xc(%ebp)
563d4e:	85 c0                	test   %eax,%eax
563d50:	0f 8e 5d 04 00 00    	jle    0x5641b3
563d56:	83 c7 10             	add    $0x10,%edi
563d59:	89 7d ec             	mov    %edi,-0x14(%ebp)
563d5c:	0f 1f 40 00          	nopl   0x0(%eax)
563d60:	8b 5a 3c             	mov    0x3c(%edx),%ebx
563d63:	89 5d e8             	mov    %ebx,-0x18(%ebp)
563d66:	85 db                	test   %ebx,%ebx
563d68:	0f 84 2d 04 00 00    	je     0x56419b
563d6e:	66 90                	xchg   %ax,%ax
563d70:	8a 47 06             	mov    0x6(%edi),%al
563d73:	0f 57 c0             	xorps  %xmm0,%xmm0
563d76:	8b 57 f0             	mov    -0x10(%edi),%edx
563d79:	8b ca                	mov    %edx,%ecx
563d7b:	8b 77 f4             	mov    -0xc(%edi),%esi
563d7e:	f7 d1                	not    %ecx
563d80:	23 0b                	and    (%ebx),%ecx
563d82:	88 45 ff             	mov    %al,-0x1(%ebp)
563d85:	8b c6                	mov    %esi,%eax
563d87:	f7 d0                	not    %eax
563d89:	66 0f 13 45 a0       	movlpd %xmm0,-0x60(%ebp)
563d8e:	23 43 04             	and    0x4(%ebx),%eax
563d91:	0b c8                	or     %eax,%ecx
563d93:	89 55 d4             	mov    %edx,-0x2c(%ebp)
563d96:	89 75 c4             	mov    %esi,-0x3c(%ebp)
563d99:	0f 85 72 04 00 00    	jne    0x564211
563d9f:	8b ca                	mov    %edx,%ecx
563da1:	8b c6                	mov    %esi,%eax
563da3:	23 4b 08             	and    0x8(%ebx),%ecx
563da6:	23 43 0c             	and    0xc(%ebx),%eax
563da9:	0b c8                	or     %eax,%ecx
563dab:	0f 85 60 04 00 00    	jne    0x564211
563db1:	f7 43 24 00 40 00 00 	testl  $0x4000,0x24(%ebx)
563db8:	74 0a                	je     0x563dc4
563dba:	66 83 3f 03          	cmpw   $0x3,(%edi)
563dbe:	0f 8c 4d 04 00 00    	jl     0x564211
563dc4:	8b 55 e8             	mov    -0x18(%ebp),%edx
563dc7:	0f b7 1f             	movzwl (%edi),%ebx
563dca:	66 8b 42 14          	mov    0x14(%edx),%ax
563dce:	0f b7 52 12          	movzwl 0x12(%edx),%edx
563dd2:	66 03 c3             	add    %bx,%ax
563dd5:	0f b7 c8             	movzwl %ax,%ecx
563dd8:	66 3b d1             	cmp    %cx,%dx
563ddb:	7c 2b                	jl     0x563e08
563ddd:	0f bf f1             	movswl %cx,%esi
563de0:	0f bf ca             	movswl %dx,%ecx
563de3:	8d 46 31             	lea    0x31(%esi),%eax
563de6:	3b c8                	cmp    %eax,%ecx
563de8:	7e 04                	jle    0x563dee
563dea:	8b f2                	mov    %edx,%esi
563dec:	eb 46                	jmp    0x563e34
563dee:	8d 46 1f             	lea    0x1f(%esi),%eax
563df1:	3b c8                	cmp    %eax,%ecx
563df3:	7e 05                	jle    0x563dfa
563df5:	8d 42 01             	lea    0x1(%edx),%eax
563df8:	eb 37                	jmp    0x563e31
563dfa:	2b ce                	sub    %esi,%ecx
563dfc:	0f b6 81 c0 2c 6b 00 	movzbl 0x6b2cc0(%ecx),%eax
563e03:	66 03 c2             	add    %dx,%ax
563e06:	eb 29                	jmp    0x563e31
563e08:	0f bf f2             	movswl %dx,%esi
563e0b:	0f bf d1             	movswl %cx,%edx
563e0e:	8d 46 31             	lea    0x31(%esi),%eax
563e11:	3b d0                	cmp    %eax,%edx
563e13:	7e 04                	jle    0x563e19
563e15:	8b f1                	mov    %ecx,%esi
563e17:	eb 1b                	jmp    0x563e34
563e19:	8d 46 1f             	lea    0x1f(%esi),%eax
563e1c:	3b d0                	cmp    %eax,%edx
563e1e:	7e 05                	jle    0x563e25
563e20:	8d 41 01             	lea    0x1(%ecx),%eax
563e23:	eb 0c                	jmp    0x563e31
563e25:	2b d6                	sub    %esi,%edx
563e27:	0f b6 82 c0 2c 6b 00 	movzbl 0x6b2cc0(%edx),%eax
563e2e:	66 03 c1             	add    %cx,%ax
563e31:	0f b7 f0             	movzwl %ax,%esi
563e34:	0f b7 4f 04          	movzwl 0x4(%edi),%ecx
563e38:	66 8b fe             	mov    %si,%di
563e3b:	89 75 f8             	mov    %esi,-0x8(%ebp)
563e3e:	0f bf d1             	movswl %cx,%edx
563e41:	66 3b f9             	cmp    %cx,%di
563e44:	7c 29                	jl     0x563e6f
563e46:	0f bf cf             	movswl %di,%ecx
563e49:	8d 42 31             	lea    0x31(%edx),%eax
563e4c:	3b c8                	cmp    %eax,%ecx
563e4e:	7f 4e                	jg     0x563e9e
563e50:	8d 42 1f             	lea    0x1f(%edx),%eax
563e53:	3b c8                	cmp    %eax,%ecx
563e55:	7e 03                	jle    0x563e5a
563e57:	46                   	inc    %esi
563e58:	eb 3e                	jmp    0x563e98
563e5a:	2b ca                	sub    %edx,%ecx
563e5c:	0f b6 81 c0 2c 6b 00 	movzbl 0x6b2cc0(%ecx),%eax
563e63:	66 03 f8             	add    %ax,%di
563e66:	66 89 7d f8          	mov    %di,-0x8(%ebp)
563e6a:	8b 75 f8             	mov    -0x8(%ebp),%esi
563e6d:	eb 2f                	jmp    0x563e9e
563e6f:	0f bf f7             	movswl %di,%esi
563e72:	8d 46 31             	lea    0x31(%esi),%eax
563e75:	3b d0                	cmp    %eax,%edx
563e77:	7e 04                	jle    0x563e7d
563e79:	8b f1                	mov    %ecx,%esi
563e7b:	eb 1b                	jmp    0x563e98
563e7d:	8d 46 1f             	lea    0x1f(%esi),%eax
563e80:	3b d0                	cmp    %eax,%edx
563e82:	7e 05                	jle    0x563e89
563e84:	8d 41 01             	lea    0x1(%ecx),%eax
563e87:	eb 0c                	jmp    0x563e95
563e89:	2b d6                	sub    %esi,%edx
563e8b:	0f b6 82 c0 2c 6b 00 	movzbl 0x6b2cc0(%edx),%eax
563e92:	66 03 c1             	add    %cx,%ax
563e95:	0f b7 f0             	movzwl %ax,%esi
563e98:	89 75 f8             	mov    %esi,-0x8(%ebp)
563e9b:	66 8b fe             	mov    %si,%di
563e9e:	8b 45 e8             	mov    -0x18(%ebp),%eax
563ea1:	66 8b 40 16          	mov    0x16(%eax),%ax
563ea5:	66 03 c3             	add    %bx,%ax
563ea8:	8b 5d e8             	mov    -0x18(%ebp),%ebx
563eab:	0f b7 c0             	movzwl %ax,%eax
563eae:	89 45 a8             	mov    %eax,-0x58(%ebp)
563eb1:	8b 45 d4             	mov    -0x2c(%ebp),%eax
563eb4:	0b 43 08             	or     0x8(%ebx),%eax
563eb7:	89 45 d4             	mov    %eax,-0x2c(%ebp)
563eba:	8b 45 c4             	mov    -0x3c(%ebp),%eax
563ebd:	0b 43 0c             	or     0xc(%ebx),%eax
563ec0:	89 45 c4             	mov    %eax,-0x3c(%ebp)
563ec3:	8a 45 ff             	mov    -0x1(%ebp),%al
563ec6:	84 c0                	test   %al,%al
563ec8:	79 31                	jns    0x563efb
563eca:	8b 55 08             	mov    0x8(%ebp),%edx
563ecd:	8d 45 a0             	lea    -0x60(%ebp),%eax
563ed0:	50                   	push   %eax
563ed1:	53                   	push   %ebx
563ed2:	ff 75 c8             	push   -0x38(%ebp)
563ed5:	0f b7 42 28          	movzwl 0x28(%edx),%eax
563ed9:	50                   	push   %eax
563eda:	8b 45 ec             	mov    -0x14(%ebp),%eax
563edd:	83 c0 f0             	add    $0xfffffff0,%eax
563ee0:	50                   	push   %eax
563ee1:	ff 72 08             	push   0x8(%edx)