# $FreeBSD$
.file	"wp-mmx.s"
.text
.globl	whirlpool_block_mmx
.type	whirlpool_block_mmx,@function
.align	16
whirlpool_block_mmx:
.L_whirlpool_block_mmx_begin:
	pushl	%ebp
	pushl	%ebx
	pushl	%esi
	pushl	%edi
	movl	20(%esp),%esi
	movl	24(%esp),%edi
	movl	28(%esp),%ebp
	movl	%esp,%eax
	subl	$148,%esp
	andl	$-64,%esp
	leal	128(%esp),%ebx
	movl	%esi,(%ebx)
	movl	%edi,4(%ebx)
	movl	%ebp,8(%ebx)
	movl	%eax,16(%ebx)
	call	.L000pic_point
.L000pic_point:
	popl	%ebp
	leal	.L001table-.L000pic_point(%ebp),%ebp
	xorl	%ecx,%ecx
	xorl	%edx,%edx
	movq	(%esi),%mm0
	movq	8(%esi),%mm1
	movq	16(%esi),%mm2
	movq	24(%esi),%mm3
	movq	32(%esi),%mm4
	movq	40(%esi),%mm5
	movq	48(%esi),%mm6
	movq	56(%esi),%mm7
.L002outerloop:
	movq	%mm0,(%esp)
	movq	%mm1,8(%esp)
	movq	%mm2,16(%esp)
	movq	%mm3,24(%esp)
	movq	%mm4,32(%esp)
	movq	%mm5,40(%esp)
	movq	%mm6,48(%esp)
	movq	%mm7,56(%esp)
	pxor	(%edi),%mm0
	pxor	8(%edi),%mm1
	pxor	16(%edi),%mm2
	pxor	24(%edi),%mm3
	pxor	32(%edi),%mm4
	pxor	40(%edi),%mm5
	pxor	48(%edi),%mm6
	pxor	56(%edi),%mm7
	movq	%mm0,64(%esp)
	movq	%mm1,72(%esp)
	movq	%mm2,80(%esp)
	movq	%mm3,88(%esp)
	movq	%mm4,96(%esp)
	movq	%mm5,104(%esp)
	movq	%mm6,112(%esp)
	movq	%mm7,120(%esp)
	xorl	%esi,%esi
	movl	%esi,12(%ebx)
.align	16
.L003round:
	movq	4096(%ebp,%esi,8),%mm0
	movl	(%esp),%eax
	movl	4(%esp),%ebx
	movb	%al,%cl
	movb	%ah,%dl
	leal	(%ecx,%ecx,1),%esi
	leal	(%edx,%edx,1),%edi
	shrl	$16,%eax
	pxor	(%ebp,%esi,8),%mm0
	movq	7(%ebp,%edi,8),%mm1
	movb	%al,%cl
	movb	%ah,%dl
	movl	8(%esp),%eax
	leal	(%ecx,%ecx,1),%esi
	leal	(%edx,%edx,1),%edi
	movq	6(%ebp,%esi,8),%mm2
	movq	5(%ebp,%edi,8),%mm3
	movb	%bl,%cl
	movb	%bh,%dl
	leal	(%ecx,%ecx,1),%esi
	leal	(%edx,%edx,1),%edi
	shrl	$16,%ebx
	movq	4(%ebp,%esi,8),%mm4
	movq	3(%ebp,%edi,8),%mm5
	movb	%bl,%cl
	movb	%bh,%dl
	movl	12(%esp),%ebx
	leal	(%ecx,%ecx,1),%esi
	leal	(%edx,%edx,1),%edi
	movq	2(%ebp,%esi,8),%mm6
	movq	1(%ebp,%edi,8),%mm7
	movb	%al,%cl
	movb	%ah,%dl
	leal	(%ecx,%ecx,1),%esi
	leal	(%edx,%edx,1),%edi
	shrl	$16,%eax
	pxor	(%ebp,%esi,8),%mm1
	pxor	7(%ebp,%edi,8),%mm2
	movb	%al,%cl
	movb	%ah,%dl
	movl	16(%esp),%eax
	leal	(%ecx,%ecx,1),%esi
	leal	(%edx,%edx,1),%edi
	pxor	6(%ebp,%esi,8),%mm3
	pxor	5(%ebp,%edi,8),%mm4
	movb	%bl,%cl
	movb	%bh,%dl
	leal	(%ecx,%ecx,1),%esi
	leal	(%edx,%edx,1),%edi
	shrl	$16,%ebx
	pxor	4(%ebp,%esi,8),%mm5
	pxor	3(%ebp,%edi,8),%mm6
	movb	%bl,%cl
	movb	%bh,%dl
	movl	20(%esp),%ebx
	leal	(%ecx,%ecx,1),%esi
	leal	(%edx,%edx,1),%edi
	pxor	2(%ebp,%esi,8),%mm7
	pxor	1(%ebp,%edi,8),%mm0
	movb	%al,%cl
	movb	%ah,%dl
	leal	(%ecx,%ecx,1),%esi
	leal	(%edx,%edx,1),%edi
	shrl	$16,%eax
	pxor	(%ebp,%esi,8),%mm2
	pxor	7(%ebp,%edi,8),%mm3
	movb	%al,%cl
	movb	%ah,%dl
	movl	24(%esp),%eax
	leal	(%ecx,%ecx,1),%esi
	leal	(%edx,%edx,1),%edi
	pxor	6(%ebp,%esi,8),%mm4
	pxor	5(%ebp,%edi,8),%mm5
	movb	%bl,%cl
	movb	%bh,%dl
	leal	(%ecx,%ecx,1),%esi
	leal	(%edx,%edx,1),%edi
	shrl	$16,%ebx
	pxor	4(%ebp,%esi,8),%mm6
	pxor	3(%ebp,%edi,8),%mm7
	movb	%bl,%cl
	movb	%bh,%dl
	movl	28(%esp),%ebx
	leal	(%ecx,%ecx,1),%esi
	leal	(%edx,%edx,1),%edi
	pxor	2(%ebp,%esi,8),%mm0
	pxor	1(%ebp,%edi,8),%mm1
	movb	%al,%cl
	movb	%ah,%dl
	leal	(%ecx,%ecx,1),%esi
	leal	(%edx,%edx,1),%edi
	shrl	$16,%eax
	pxor	(%ebp,%esi,8),%mm3
	pxor	7(%ebp,%edi,8),%mm4
	movb	%al,%cl
	movb	%ah,%dl
	movl	32(%esp),%eax
	leal	(%ecx,%ecx,1),%esi
	leal	(%edx,%edx,1),%edi
	pxor	6(%ebp,%esi,8),%mm5
	pxor	5(%ebp,%edi,8),%mm6
	movb	%bl,%cl
	movb	%bh,%dl
	leal	(%ecx,%ecx,1),%esi
	leal	(%edx,%edx,1),%edi
	shrl	$16,%ebx
	pxor	4(%ebp,%esi,8),%mm7
	pxor	3(%ebp,%edi,8),%mm0
	movb	%bl,%cl
	movb	%bh,%dl
	movl	36(%esp),%ebx
	leal	(%ecx,%ecx,1),%esi
	leal	(%edx,%edx,1),%edi
	pxor	2(%ebp,%esi,8),%mm1
	pxor	1(%ebp,%edi,8),%mm2
	movb	%al,%cl
	movb	%ah,%dl
	leal	(%ecx,%ecx,1),%esi
	leal	(%edx,%edx,1),%edi
	shrl	$16,%eax
	pxor	(%ebp,%esi,8),%mm4
	pxor	7(%ebp,%edi,8),%mm5
	movb	%al,%cl
	movb	%ah,%dl
	movl	40(%esp),%eax
	leal	(%ecx,%ecx,1),%esi
	leal	(%edx,%edx,1),%edi
	pxor	6(%ebp,%esi,8),%mm6
	pxor	5(%ebp,%edi,8),%mm7
	movb	%bl,%cl
	movb	%bh,%dl
	leal	(%ecx,%ecx,1),%esi
	leal	(%edx,%edx,1),%edi
	shrl	$16,%ebx
	pxor	4(%ebp,%esi,8),%mm0
	pxor	3(%ebp,%edi,8),%mm1
	movb	%bl,%cl
	movb	%bh,%dl
	movl	44(%esp),%ebx
	leal	(%ecx,%ecx,1),%esi
	leal	(%edx,%edx,1),%edi
	pxor	2(%ebp,%esi,8),%mm2
	pxor	1(%ebp,%edi,8),%mm3
	movb	%al,%cl
	movb	%ah,%dl
	leal	(%ecx,%ecx,1),%esi
	leal	(%edx,%edx,1),%edi
	shrl	$16,%eax
	pxor	(%ebp,%esi,8),%mm5
	pxor	7(%ebp,%edi,8),%mm6
	movb	%al,%cl
	movb	%ah,%dl
	movl	48(%esp),%eax
	leal	(%ecx,%ecx,1),%esi
	leal	(%edx,%edx,1),%edi
	pxor	6(%ebp,%esi,8),%mm7
	pxor	5(%ebp,%edi,8),%mm0
	movb	%bl,%cl
	movb	%bh,%dl
	leal	(%ecx,%ecx,1),%esi
	leal	(%edx,%edx,1),%edi
	shrl	$16,%ebx
	pxor	4(%ebp,%esi,8),%mm1
	pxor	3(%ebp,%edi,8),%mm2
	movb	%bl,%cl
	movb	%bh,%dl
	movl	52(%esp),%ebx
	leal	(%ecx,%ecx,1),%esi
	leal	(%edx,%edx,1),%edi
	pxor	2(%ebp,%esi,8),%mm3
	pxor	1(%ebp,%edi,8),%mm4
	movb	%al,%cl
	movb	%ah,%dl
	leal	(%ecx,%ecx,1),%esi
	leal	(%edx,%edx,1),%edi
	shrl	$16,%eax
	pxor	(%ebp,%esi,8),%mm6
	pxor	7(%ebp,%edi,8),%mm7
	movb	%al,%cl
	movb	%ah,%dl
	movl	56(%esp),%eax
	leal	(%ecx,%ecx,1),%esi
	leal	(%edx,%edx,1),%edi
	pxor	6(%ebp,%esi,8),%mm0
	pxor	5(%ebp,%edi,8),%mm1
	movb	%bl,%cl
	movb	%bh,%dl
	leal	(%ecx,%ecx,1),%esi
	leal	(%edx,%edx,1),%edi
	shrl	$16,%ebx
	pxor	4(%ebp,%esi,8),%mm2
	pxor	3(%ebp,%edi,8),%mm3
	movb	%bl,%cl
	movb	%bh,%dl
	movl	60(%esp),%ebx
	leal	(%ecx,%ecx,1),%esi
	leal	(%edx,%edx,1),%edi
	pxor	2(%ebp,%esi,8),%mm4
	pxor	1(%ebp,%edi,8),%mm5
	movb	%al,%cl
	movb	%ah,%dl
	leal	(%ecx,%ecx,1),%esi
	leal	(%edx,%edx,1),%edi
	shrl	$16,%eax
	pxor	(%ebp,%esi,8),%mm7
	pxor	7(%ebp,%edi,8),%mm0
	movb	%al,%cl
	movb	%ah,%dl
	movl	64(%esp),%eax
	leal	(%ecx,%ecx,1),%esi
	leal	(%edx,%edx,1),%edi
	pxor	6(%ebp,%esi,8),%mm1
	pxor	5(%ebp,%edi,8),%mm2
	movb	%bl,%cl
	movb	%bh,%dl
	leal	(%ecx,%ecx,1),%esi
	leal	(%edx,%edx,1),%edi
	shrl	$16,%ebx
	pxor	4(%ebp,%esi,8),%mm3
	pxor	3(%ebp,%edi,8),%mm4
	movb	%bl,%cl
	movb	%bh,%dl
	movl	68(%esp),%ebx
	leal	(%ecx,%ecx,1),%esi
	leal	(%edx,%edx,1),%edi
	pxor	2(%ebp,%esi,8),%mm5
	pxor	1(%ebp,%edi,8),%mm6
	movq	%mm0,(%esp)
	movq	%mm1,8(%esp)
	movq	%mm2,16(%esp)
	movq	%mm3,24(%esp)
	movq	%mm4,32(%esp)
	movq	%mm5,40(%esp)
	movq	%mm6,48(%esp)
	movq	%mm7,56(%esp)
	movb	%al,%cl
	movb	%ah,%dl
	leal	(%ecx,%ecx,1),%esi
	leal	(%edx,%edx,1),%edi
	shrl	$16,%eax
	pxor	(%ebp,%esi,8),%mm0
	pxor	7(%ebp,%edi,8),%mm1
	movb	%al,%cl
	movb	%ah,%dl
	movl	72(%esp),%eax
	leal	(%ecx,%ecx,1),%esi
	leal	(%edx,%edx,1),%edi
	pxor	6(%ebp,%esi,8),%mm2
	pxor	5(%ebp,%edi,8),%mm3
	movb	%bl,%cl
	movb	%bh,%dl
	leal	(%ecx,%ecx,1),%esi
	leal	(%edx,%edx,1),%edi
	shrl	$16,%ebx
	pxor	4(%ebp,%esi,8),%mm4
	pxor	3(%ebp,%edi,8),%mm5
	movb	%bl,%cl
	movb	%bh,%dl
	movl	76(%esp),%ebx
	leal	(%ecx,%ecx,1),%esi
	leal	(%edx,%edx,1),%edi
	pxor	2(%ebp,%esi,8),%mm6
	pxor	1(%ebp,%edi,8),%mm7
	movb	%al,%cl
	movb	%ah,%dl
	leal	(%ecx,%ecx,1),%esi
	leal	(%edx,%edx,1),%edi
	shrl	$16,%eax
	pxor	(%ebp,%esi,8),%mm1
	pxor	7(%ebp,%edi,8),%mm2
	movb	%al,%cl
	movb	%ah,%dl
	movl	80(%esp),%eax
	leal	(%ecx,%ecx,1),%esi
	leal	(%edx,%edx,1),%edi
	pxor	6(%ebp,%esi,8),%mm3
	pxor	5(%ebp,%edi,8),%mm4
	movb	%bl,%cl
	movb	%bh,%dl
	leal	(%ecx,%ecx,1),%esi
	leal	(%edx,%edx,1),%edi
	shrl	$16,%ebx
	pxor	4(%ebp,%esi,8),%mm5
	pxor	3(%ebp,%edi,8),%mm6
	movb	%bl,%cl
	movb	%bh,%dl
	movl	84(%esp),%ebx
	leal	(%ecx,%ecx,1),%esi
	leal	(%edx,%edx,1),%edi
	pxor	2(%ebp,%esi,8),%mm7
	pxor	1(%ebp,%edi,8),%mm0
	movb	%al,%cl
	movb	%ah,%dl
	leal	(%ecx,%ecx,1),%esi
	leal	(%edx,%edx,1),%edi
	shrl	$16,%eax
	pxor	(%ebp,%esi,8),%mm2
	pxor	7(%ebp,%edi,8),%mm3
	movb	%al,%cl
	movb	%ah,%dl
	movl	88(%esp),%eax
	leal	(%ecx,%ecx,1),%esi
	leal	(%edx,%edx,1),%edi
	pxor	6(%ebp,%esi,8),%mm4
	pxor	5(%ebp,%edi,8),%mm5
	movb	%bl,%cl
	movb	%bh,%dl
	leal	(%ecx,%ecx,1),%esi
	leal	(%edx,%edx,1),%edi
	shrl	$16,%ebx
	pxor	4(%ebp,%esi,8),%mm6
	pxor	3(%ebp,%edi,8),%mm7
	movb	%bl,%cl
	movb	%bh,%dl
	movl	92(%esp),%ebx
	leal	(%ecx,%ecx,1),%esi
	leal	(%edx,%edx,1),%edi
	pxor	2(%ebp,%esi,8),%mm0
	pxor	1(%ebp,%edi,8),%mm1
	movb	%al,%cl
	movb	%ah,%dl
	leal	(%ecx,%ecx,1),%esi
	leal	(%edx,%edx,1),%edi
	shrl	$16,%eax
	pxor	(%ebp,%esi,8),%mm3
	pxor	7(%ebp,%edi,8),%mm4
	movb	%al,%cl
	movb	%ah,%dl
	movl	96(%esp),%eax
	leal	(%ecx,%ecx,1),%esi
	leal	(%edx,%edx,1),%edi
	pxor	6(%ebp,%esi,8),%mm5
	pxor	5(%ebp,%edi,8),%mm6
	movb	%bl,%cl
	movb	%bh,%dl
	leal	(%ecx,%ecx,1),%esi
	leal	(%edx,%edx,1),%edi
	shrl	$16,%ebx
	pxor	4(%ebp,%esi,8),%mm7
	pxor	3(%ebp,%edi,8),%mm0
	movb	%bl,%cl
	movb	%bh,%dl
	movl	100(%esp),%ebx
	leal	(%ecx,%ecx,1),%esi
	leal	(%edx,%edx,1),%edi
	pxor	2(%ebp,%esi,8),%mm1
	pxor	1(%ebp,%edi,8),%mm2
	movb	%al,%cl
	movb	%ah,%dl
	leal	(%ecx,%ecx,1),%esi
	leal	(%edx,%edx,1),%edi
	shrl	$16,%eax
	pxor	(%ebp,%esi,8),%mm4
	pxor	7(%ebp,%edi,8),%mm5
	movb	%al,%cl
	movb	%ah,%dl
	movl	104(%esp),%eax
	leal	(%ecx,%ecx,1),%esi
	leal	(%edx,%edx,1),%edi
	pxor	6(%ebp,%esi,8),%mm6
	pxor	5(%ebp,%edi,8),%mm7
	movb	%bl,%cl
	movb	%bh,%dl
	leal	(%ecx,%ecx,1),%esi
	leal	(%edx,%edx,1),%edi
	shrl	$16,%ebx
	pxor	4(%ebp,%esi,8),%mm0
	pxor	3(%ebp,%edi,8),%mm1
	movb	%bl,%cl
	movb	%bh,%dl
	movl	108(%esp),%ebx
	leal	(%ecx,%ecx,1),%esi
	leal	(%edx,%edx,1),%edi
	pxor	2(%ebp,%esi,8),%mm2
	pxor	1(%ebp,%edi,8),%mm3
	movb	%al,%cl
	movb	%ah,%dl
	leal	(%ecx,%ecx,1),%esi
	leal	(%edx,%edx,1),%edi
	shrl	$16,%eax
	pxor	(%ebp,%esi,8),%mm5
	pxor	7(%ebp,%edi,8),%mm6
	movb	%al,%cl
	movb	%ah,%dl
	movl	112(%esp),%eax
	leal	(%ecx,%ecx,1),%esi
	leal	(%edx,%edx,1),%edi
	pxor	6(%ebp,%esi,8),%mm7
	pxor	5(%ebp,%edi,8),%mm0
	movb	%bl,%cl
	movb	%bh,%dl
	leal	(%ecx,%ecx,1),%esi
	leal	(%edx,%edx,1),%edi
	shrl	$16,%ebx
	pxor	4(%ebp,%esi,8),%mm1
	pxor	3(%ebp,%edi,8),%mm2
	movb	%bl,%cl
	movb	%bh,%dl
	movl	116(%esp),%ebx
	leal	(%ecx,%ecx,1),%esi
	leal	(%edx,%edx,1),%edi
	pxor	2(%ebp,%esi,8),%mm3
	pxor	1(%ebp,%edi,8),%mm4
	movb	%al,%cl
	movb	%ah,%dl
	leal	(%ecx,%ecx,1),%esi
	leal	(%edx,%edx,1),%edi
	shrl	$16,%eax
	pxor	(%ebp,%esi,8),%mm6
	pxor	7(%ebp,%edi,8),%mm7
	movb	%al,%cl
	movb	%ah,%dl
	movl	120(%esp),%eax
	leal	(%ecx,%ecx,1),%esi
	leal	(%edx,%edx,1),%edi
	pxor	6(%ebp,%esi,8),%mm0
	pxor	5(%ebp,%edi,8),%mm1
	movb	%bl,%cl
	movb	%bh,%dl
	leal	(%ecx,%ecx,1),%esi
	leal	(%edx,%edx,1),%edi
	shrl	$16,%ebx
	pxor	4(%ebp,%esi,8),%mm2
	pxor	3(%ebp,%edi,8),%mm3
	movb	%bl,%cl
	movb	%bh,%dl
	movl	124(%esp),%ebx
	leal	(%ecx,%ecx,1),%esi
	leal	(%edx,%edx,1),%edi
	pxor	2(%ebp,%esi,8),%mm4
	pxor	1(%ebp,%edi,8),%mm5
	movb	%al,%cl
	movb	%ah,%dl
	leal	(%ecx,%ecx,1),%esi
	leal	(%edx,%edx,1),%edi
	shrl	$16,%eax
	pxor	(%ebp,%esi,8),%mm7
	pxor	7(%ebp,%edi,8),%mm0
	movb	%al,%cl
	movb	%ah,%dl
	leal	(%ecx,%ecx,1),%esi
	leal	(%edx,%edx,1),%edi
	pxor	6(%ebp,%esi,8),%mm1
	pxor	5(%ebp,%edi,8),%mm2
	movb	%bl,%cl
	movb	%bh,%dl
	leal	(%ecx,%ecx,1),%esi
	leal	(%edx,%edx,1),%edi
	shrl	$16,%ebx
	pxor	4(%ebp,%esi,8),%mm3
	pxor	3(%ebp,%edi,8),%mm4
	movb	%bl,%cl
	movb	%bh,%dl
	leal	(%ecx,%ecx,1),%esi
	leal	(%edx,%edx,1),%edi
	pxor	2(%ebp,%esi,8),%mm5
	pxor	1(%ebp,%edi,8),%mm6
	leal	128(%esp),%ebx
	movl	12(%ebx),%esi
	addl	$1,%esi
	cmpl	$10,%esi
	je	.L004roundsdone
	movl	%esi,12(%ebx)
	movq	%mm0,64(%esp)
	movq	%mm1,72(%esp)
	movq	%mm2,80(%esp)
	movq	%mm3,88(%esp)
	movq	%mm4,96(%esp)
	movq	%mm5,104(%esp)
	movq	%mm6,112(%esp)
	movq	%mm7,120(%esp)
	jmp	.L003round
.align	16
.L004roundsdone:
	movl	(%ebx),%esi
	movl	4(%ebx),%edi
	movl	8(%ebx),%eax
	pxor	(%edi),%mm0
	pxor	8(%edi),%mm1
	pxor	16(%edi),%mm2
	pxor	24(%edi),%mm3
	pxor	32(%edi),%mm4
	pxor	40(%edi),%mm5
	pxor	48(%edi),%mm6
	pxor	56(%edi),%mm7
	pxor	(%esi),%mm0
	pxor	8(%esi),%mm1
	pxor	16(%esi),%mm2
	pxor	24(%esi),%mm3
	pxor	32(%esi),%mm4
	pxor	40(%esi),%mm5
	pxor	48(%esi),%mm6
	pxor	56(%esi),%mm7
	movq	%mm0,(%esi)
	movq	%mm1,8(%esi)
	movq	%mm2,16(%esi)
	movq	%mm3,24(%esi)
	movq	%mm4,32(%esi)
	movq	%mm5,40(%esi)
	movq	%mm6,48(%esi)
	movq	%mm7,56(%esi)
	leal	64(%edi),%edi
	subl	$1,%eax
	jz	.L005alldone
	movl	%edi,4(%ebx)
	movl	%eax,8(%ebx)
	jmp	.L002outerloop
.L005alldone:
	emms
	movl	16(%ebx),%esp
	popl	%edi
	popl	%esi
	popl	%ebx
	popl	%ebp
	ret
.align	64
.L001table:
.byte	24,24,96,24,192,120,48,216
.byte	24,24,96,24,192,120,48,216
.byte	35,35,140,35,5,175,70,38
.byte	35,35,140,35,5,175,70,38
.byte	198,198,63,198,126,249,145,184
.byte	198,198,63,198,126,249,145,184
.byte	232,232,135,232,19,111,205,251
.byte	232,232,135,232,19,111,205,251
.byte	135,135,38,135,76,161,19,203
.byte	135,135,38,135,76,161,19,203
.byte	184,184,218,184,169,98,109,17
.byte	184,184,218,184,169,98,109,17
.byte	1,1,4,1,8,5,2,9
.byte	1,1,4,1,8,5,2,9
.byte	79,79,33,79,66,110,158,13
.byte	79,79,33,79,66,110,158,13
.byte	54,54,216,54,173,238,108,155
.byte	54,54,216,54,173,238,108,155
.byte	166,166,162,166,89,4,81,255
.byte	166,166,162,166,89,4,81,255
.byte	210,210,111,210,222,189,185,12
.byte	210,210,111,210,222,189,185,12
.byte	245,245,243,245,251,6,247,14
.byte	245,245,243,245,251,6,247,14
.byte	121,121,249,121,239,128,242,150
.byte	121,121,249,121,239,128,242,150
.byte	111,111,161,111,95,206,222,48
.byte	111,111,161,111,95,206,222,48
.byte	145,145,126,145,252,239,63,109
.byte	145,145,126,145,252,239,63,109
.byte	82,82,85,82,170,7,164,248
.byte	82,82,85,82,170,7,164,248
.byte	96,96,157,96,39,253,192,71
.byte	96,96,157,96,39,253,192,71
.byte	188,188,202,188,137,118,101,53
.byte	188,188,202,188,137,118,101,53
.byte	155,155,86,155,172,205,43,55
.byte	155,155,86,155,172,205,43,55
.byte	142,142,2,142,4,140,1,138
.byte	142,142,2,142,4,140,1,138
.byte	163,163,182,163,113,21,91,210
.byte	163,163,182,163,113,21,91,210
.byte	12,12,48,12,96,60,24,108
.byte	12,12,48,12,96,60,24,108
.byte	123,123,241,123,255,138,246,132
.byte	123,123,241,123,255,138,246,132
.byte	53,53,212,53,181,225,106,128
.byte	53,53,212,53,181,225,106,128
.byte	29,29,116,29,232,105,58,245
.byte	29,29,116,29,232,105,58,245
.byte	224,224,167,224,83,71,221,179
.byte	224,224,167,224,83,71,221,179
.byte	215,215,123,215,246,172,179,33
.byte	215,215,123,215,246,172,179,33
.byte	194,194,47,194,94,237,153,156
.byte	194,194,47,194,94,237,153,156
.byte	46,46,184,46,109,150,92,67
.byte	46,46,184,46,109,150,92,67
.byte	75,75,49,75,98,122,150,41
.byte	75,75,49,75,98,122,150,41
.byte	254,254,223,254,163,33,225,93
.byte	254,254,223,254,163,33,225,93
.byte	87,87,65,87,130,22,174,213
.byte	87,87,65,87,130,22,174,213
.byte	21,21,84,21,168,65,42,189
.byte	21,21,84,21,168,65,42,189
.byte	119,119,193,119,159,182,238,232
.byte	119,119,193,119,159,182,238,232
.byte	55,55,220,55,165,235,110,146
.byte	55,55,220,55,165,235,110,146
.byte	229,229,179,229,123,86,215,158
.byte	229,229,179,229,123,86,215,158
.byte	159,159,70,159,140,217,35,19
.byte	159,159,70,159,140,217,35,19
.byte	240,240,231,240,211,23,253,35
.byte	240,240,231,240,211,23,253,35
.byte	74,74,53,74,106,127,148,32
.byte	74,74,53,74,106,127,148,32
.byte	218,218,79,218,158,149,169,68
.byte	218,218,79,218,158,149,169,68
.byte	88,88,125,88,250,37,176,162
.byte	88,88,125,88,250,37,176,162
.byte	201,201,3,201,6,202,143,207
.byte	201,201,3,201,6,202,143,207
.byte	41,41,164,41,85,141,82,124
.byte	41,41,164,41,85,141,82,124
.byte	10,10,40,10,80,34,20,90
.byte	10,10,40,10,80,34,20,90
.byte	177,177,254,177,225,79,127,80
.byte	177,177,254,177,225,79,127,80
.byte	160,160,186,160,105,26,93,201
.byte	160,160,186,160,105,26,93,201
.byte	107,107,177,107,127,218,214,20
.byte	107,107,177,107,127,218,214,20
.byte	133,133,46,133,92,171,23,217
.byte	133,133,46,133,92,171,23,217
.byte	189,189,206,189,129,115,103,60
.byte	189,189,206,189,129,115,103,60
.byte	93,93,105,93,210,52,186,143
.byte	93,93,105,93,210,52,186,143
.byte	16,16,64,16,128,80,32,144
.byte	16,16,64,16,128,80,32,144
.byte	244,244,247,244,243,3,245,7
.byte	244,244,247,244,243,3,245,7
.byte	203,203,11,203,22,192,139,221
.byte	203,203,11,203,22,192,139,221
.byte	62,62,248,62,237,198,124,211
.byte	62,62,248,62,237,198,124,211
.byte	5,5,20,5,40,17,10,45
.byte	5,5,20,5,40,17,10,45
.byte	103,103,129,103,31,230,206,120
.byte	103,103,129,103,31,230,206,120
.byte	228,228,183,228,115,83,213,151
.byte	228,228,183,228,115,83,213,151
.byte	39,39,156,39,37,187,78,2
.byte	39,39,156,39,37,187,78,2
.byte	65,65,25,65,50,88,130,115
.byte	65,65,25,65,50,88,130,115
.byte	139,139,22,139,44,157,11,167
.byte	139,139,22,139,44,157,11,167
.byte	167,167,166,167,81,1,83,246
.byte	167,167,166,167,81,1,83,246
.byte	125,125,233,125,207,148,250,178
.byte	125,125,233,125,207,148,250,178
.byte	149,149,110,149,220,251,55,73
.byte	149,149,110,149,220,251,55,73
.byte	216,216,71,216,142,159,173,86
.byte	216,216,71,216,142,159,173,86
.byte	251,251,203,251,139,48,235,112
.byte	251,251,203,251,139,48,235,112
.byte	238,238,159,238,35,113,193,205
.byte	238,238,159,238,35,113,193,205
.byte	124,124,237,124,199,145,248,187
.byte	124,124,237,124,199,145,248,187
.byte	102,102,133,102,23,227,204,113
.byte	102,102,133,102,23,227,204,113
.byte	221,221,83,221,166,142,167,123
.byte	221,221,83,221,166,142,167,123
.byte	23,23,92,23,184,75,46,175
.byte	23,23,92,23,184,75,46,175
.byte	71,71,1,71,2,70,142,69
.byte	71,71,1,71,2,70,142,69
.byte	158,158,66,158,132,220,33,26
.byte	158,158,66,158,132,220,33,26
.byte	202,202,15,202,30,197,137,212
.byte	202,202,15,202,30,197,137,212
.byte	45,45,180,45,117,153,90,88
.byte	45,45,180,45,117,153,90,88
.byte	191,191,198,191,145,121,99,46
.byte	191,191,198,191,145,121,99,46
.byte	7,7,28,7,56,27,14,63
.byte	7,7,28,7,56,27,14,63
.byte	173,173,142,173,1,35,71,172
.byte	173,173,142,173,1,35,71,172
.byte	90,90,117,90,234,47,180,176
.byte	90,90,117,90,234,47,180,176
.byte	131,131,54,131,108,181,27,239
.byte	131,131,54,131,108,181,27,239
.byte	51,51,204,51,133,255,102,182
.byte	51,51,204,51,133,255,102,182
.byte	99,99,145,99,63,242,198,92
.byte	99,99,145,99,63,242,198,92
.byte	2,2,8,2,16,10,4,18
.byte	2,2,8,2,16,10,4,18
.byte	170,170,146,170,57,56,73,147
.byte	170,170,146,170,57,56,73,147
.byte	113,113,217,113,175,168,226,222
.byte	113,113,217,113,175,168,226,222
.byte	200,200,7,200,14,207,141,198
.byte	200,200,7,200,14,207,141,198
.byte	25,25,100,25,200,125,50,209
.byte	25,25,100,25,200,125,50,209
.byte	73,73,57,73,114,112,146,59
.byte	73,73,57,73,114,112,146,59
.byte	217,217,67,217,134,154,175,95
.byte	217,217,67,217,134,154,175,95
.byte	242,242,239,242,195,29,249,49
.byte	242,242,239,242,195,29,249,49
.byte	227,227,171,227,75,72,219,168
.byte	227,227,171,227,75,72,219,168
.byte	91,91,113,91,226,42,182,185
.byte	91,91,113,91,226,42,182,185
.byte	136,136,26,136,52,146,13,188
.byte	136,136,26,136,52,146,13,188
.byte	154,154,82,154,164,200,41,62
.byte	154,154,82,154,164,200,41,62
.byte	38,38,152,38,45,190,76,11
.byte	38,38,152,38,45,190,76,11
.byte	50,50,200,50,141,250,100,191
.byte	50,50,200,50,141,250,100,191
.byte	176,176,250,176,233,74,125,89
.byte	176,176,250,176,233,74,125,89
.byte	233,233,131,233,27,106,207,242
.byte	233,233,131,233,27,106,207,242
.byte	15,15,60,15,120,51,30,119
.byte	15,15,60,15,120,51,30,119
.byte	213,213,115,213,230,166,183,51
.byte	213,213,115,213,230,166,183,51
.byte	128,128,58,128,116,186,29,244
.byte	128,128,58,128,116,186,29,244
.byte	190,190,194,190,153,124,97,39
.byte	190,190,194,190,153,124,97,39
.byte	205,205,19,205,38,222,135,235
.byte	205,205,19,205,38,222,135,235
.byte	52,52,208,52,189,228,104,137
.byte	52,52,208,52,189,228,104,137
.byte	72,72,61,72,122,117,144,50
.byte	72,72,61,72,122,117,144,50
.byte	255,255,219,255,171,36,227,84
.byte	255,255,219,255,171,36,227,84
.byte	122,122,245,122,247,143,244,141
.byte	122,122,245,122,247,143,244,141
.byte	144,144,122,144,244,234,61,100
.byte	144,144,122,144,244,234,61,100
.byte	95,95,97,95,194,62,190,157
.byte	95,95,97,95,194,62,190,157
.byte	32,32,128,32,29,160,64,61
.byte	32,32,128,32,29,160,64,61
.byte	104,104,189,104,103,213,208,15
.byte	104,104,189,104,103,213,208,15
.byte	26,26,104,26,208,114,52,202
.byte	26,26,104,26,208,114,52,202
.byte	174,174,130,174,25,44,65,183
.byte	174,174,130,174,25,44,65,183
.byte	180,180,234,180,201,94,117,125
.byte	180,180,234,180,201,94,117,125
.byte	84,84,77,84,154,25,168,206
.byte	84,84,77,84,154,25,168,206
.byte	147,147,118,147,236,229,59,127
.byte	147,147,118,147,236,229,59,127
.byte	34,34,136,34,13,170,68,47
.byte	34,34,136,34,13,170,68,47
.byte	100,100,141,100,7,233,200,99
.byte	100,100,141,100,7,233,200,99
.byte	241,241,227,241,219,18,255,42
.byte	241,241,227,241,219,18,255,42
.byte	115,115,209,115,191,162,230,204
.byte	115,115,209,115,191,162,230,204
.byte	18,18,72,18,144,90,36,130
.byte	18,18,72,18,144,90,36,130
.byte	64,64,29,64,58,93,128,122
.byte	64,64,29,64,58,93,128,122
.byte	8,8,32,8,64,40,16,72
.byte	8,8,32,8,64,40,16,72
.byte	195,195,43,195,86,232,155,149
.byte	195,195,43,195,86,232,155,149
.byte	236,236,151,236,51,123,197,223
.byte	236,236,151,236,51,123,197,223
.byte	219,219,75,219,150,144,171,77
.byte	219,219,75,219,150,144,171,77
.byte	161,161,190,161,97,31,95,192
.byte	161,161,190,161,97,31,95,192
.byte	141,141,14,141,28,131,7,145
.byte	141,141,14,141,28,131,7,145
.byte	61,61,244,61,245,201,122,200
.byte	61,61,244,61,245,201,122,200
.byte	151,151,102,151,204,241,51,91
.byte	151,151,102,151,204,241,51,91
.byte	0,0,0,0,0,0,0,0
.byte	0,0,0,0,0,0,0,0
.byte	207,207,27,207,54,212,131,249
.byte	207,207,27,207,54,212,131,249
.byte	43,43,172,43,69,135,86,110
.byte	43,43,172,43,69,135,86,110
.byte	118,118,197,118,151,179,236,225
.byte	118,118,197,118,151,179,236,225
.byte	130,130,50,130,100,176,25,230
.byte	130,130,50,130,100,176,25,230
.byte	214,214,127,214,254,169,177,40
.byte	214,214,127,214,254,169,177,40
.byte	27,27,108,27,216,119,54,195
.byte	27,27,108,27,216,119,54,195
.byte	181,181,238,181,193,91,119,116
.byte	181,181,238,181,193,91,119,116
.byte	175,175,134,175,17,41,67,190
.byte	175,175,134,175,17,41,67,190
.byte	106,106,181,106,119,223,212,29
.byte	106,106,181,106,119,223,212,29
.byte	80,80,93,80,186,13,160,234
.byte	80,80,93,80,186,13,160,234
.byte	69,69,9,69,18,76,138,87
.byte	69,69,9,69,18,76,138,87
.byte	243,243,235,243,203,24,251,56
.byte	243,243,235,243,203,24,251,56
.byte	48,48,192,48,157,240,96,173
.byte	48,48,192,48,157,240,96,173
.byte	239,239,155,239,43,116,195,196
.byte	239,239,155,239,43,116,195,196
.byte	63,63,252,63,229,195,126,218
.byte	63,63,252,63,229,195,126,218
.byte	85,85,73,85,146,28,170,199
.byte	85,85,73,85,146,28,170,199
.byte	162,162,178,162,121,16,89,219
.byte	162,162,178,162,121,16,89,219
.byte	234,234,143,234,3,101,201,233
.byte	234,234,143,234,3,101,201,233
.byte	101,101,137,101,15,236,202,106
.byte	101,101,137,101,15,236,202,106
.byte	186,186,210,186,185,104,105,3
.byte	186,186,210,186,185,104,105,3
.byte	47,47,188,47,101,147,94,74
.byte	47,47,188,47,101,147,94,74
.byte	192,192,39,192,78,231,157,142
.byte	192,192,39,192,78,231,157,142
.byte	222,222,95,222,190,129,161,96
.byte	222,222,95,222,190,129,161,96
.byte	28,28,112,28,224,108,56,252
.byte	28,28,112,28,224,108,56,252
.byte	253,253,211,253,187,46,231,70
.byte	253,253,211,253,187,46,231,70
.byte	77,77,41,77,82,100,154,31
.byte	77,77,41,77,82,100,154,31
.byte	146,146,114,146,228,224,57,118
.byte	146,146,114,146,228,224,57,118
.byte	117,117,201,117,143,188,234,250
.byte	117,117,201,117,143,188,234,250
.byte	6,6,24,6,48,30,12,54
.byte	6,6,24,6,48,30,12,54
.byte	138,138,18,138,36,152,9,174
.byte	138,138,18,138,36,152,9,174
.byte	178,178,242,178,249,64,121,75
.byte	178,178,242,178,249,64,121,75
.byte	230,230,191,230,99,89,209,133
.byte	230,230,191,230,99,89,209,133
.byte	14,14,56,14,112,54,28,126
.byte	14,14,56,14,112,54,28,126
.byte	31,31,124,31,248,99,62,231
.byte	31,31,124,31,248,99,62,231
.byte	98,98,149,98,55,247,196,85
.byte	98,98,149,98,55,247,196,85
.byte	212,212,119,212,238,163,181,58
.byte	212,212,119,212,238,163,181,58
.byte	168,168,154,168,41,50,77,129
.byte	168,168,154,168,41,50,77,129
.byte	150,150,98,150,196,244,49,82
.byte	150,150,98,150,196,244,49,82
.byte	249,249,195,249,155,58,239,98
.byte	249,249,195,249,155,58,239,98
.byte	197,197,51,197,102,246,151,163
.byte	197,197,51,197,102,246,151,163
.byte	37,37,148,37,53,177,74,16
.byte	37,37,148,37,53,177,74,16
.byte	89,89,121,89,242,32,178,171
.byte	89,89,121,89,242,32,178,171
.byte	132,132,42,132,84,174,21,208
.byte	132,132,42,132,84,174,21,208
.byte	114,114,213,114,183,167,228,197
.byte	114,114,213,114,183,167,228,197
.byte	57,57,228,57,213,221,114,236
.byte	57,57,228,57,213,221,114,236
.byte	76,76,45,76,90,97,152,22
.byte	76,76,45,76,90,97,152,22
.byte	94,94,101,94,202,59,188,148
.byte	94,94,101,94,202,59,188,148
.byte	120,120,253,120,231,133,240,159
.byte	120,120,253,120,231,133,240,159
.byte	56,56,224,56,221,216,112,229
.byte	56,56,224,56,221,216,112,229
.byte	140,140,10,140,20,134,5,152
.byte	140,140,10,140,20,134,5,152
.byte	209,209,99,209,198,178,191,23
.byte	209,209,99,209,198,178,191,23
.byte	165,165,174,165,65,11,87,228
.byte	165,165,174,165,65,11,87,228
.byte	226,226,175,226,67,77,217,161
.byte	226,226,175,226,67,77,217,161
.byte	97,97,153,97,47,248,194,78
.byte	97,97,153,97,47,248,194,78
.byte	179,179,246,179,241,69,123,66
.byte	179,179,246,179,241,69,123,66
.byte	33,33,132,33,21,165,66,52
.byte	33,33,132,33,21,165,66,52
.byte	156,156,74,156,148,214,37,8
.byte	156,156,74,156,148,214,37,8
.byte	30,30,120,30,240,102,60,238
.byte	30,30,120,30,240,102,60,238
.byte	67,67,17,67,34,82,134,97
.byte	67,67,17,67,34,82,134,97
.byte	199,199,59,199,118,252,147,177
.byte	199,199,59,199,118,252,147,177
.byte	252,252,215,252,179,43,229,79
.byte	252,252,215,252,179,43,229,79
.byte	4,4,16,4,32,20,8,36
.byte	4,4,16,4,32,20,8,36
.byte	81,81,89,81,178,8,162,227
.byte	81,81,89,81,178,8,162,227
.byte	153,153,94,153,188,199,47,37
.byte	153,153,94,153,188,199,47,37
.byte	109,109,169,109,79,196,218,34
.byte	109,109,169,109,79,196,218,34
.byte	13,13,52,13,104,57,26,101
.byte	13,13,52,13,104,57,26,101
.byte	250,250,207,250,131,53,233,121
.byte	250,250,207,250,131,53,233,121
.byte	223,223,91,223,182,132,163,105
.byte	223,223,91,223,182,132,163,105
.byte	126,126,229,126,215,155,252,169
.byte	126,126,229,126,215,155,252,169
.byte	36,36,144,36,61,180,72,25
.byte	36,36,144,36,61,180,72,25
.byte	59,59,236,59,197,215,118,254
.byte	59,59,236,59,197,215,118,254
.byte	171,171,150,171,49,61,75,154
.byte	171,171,150,171,49,61,75,154
.byte	206,206,31,206,62,209,129,240
.byte	206,206,31,206,62,209,129,240
.byte	17,17,68,17,136,85,34,153
.byte	17,17,68,17,136,85,34,153
.byte	143,143,6,143,12,137,3,131
.byte	143,143,6,143,12,137,3,131
.byte	78,78,37,78,74,107,156,4
.byte	78,78,37,78,74,107,156,4
.byte	183,183,230,183,209,81,115,102
.byte	183,183,230,183,209,81,115,102
.byte	235,235,139,235,11,96,203,224
.byte	235,235,139,235,11,96,203,224
.byte	60,60,240,60,253,204,120,193
.byte	60,60,240,60,253,204,120,193
.byte	129,129,62,129,124,191,31,253
.byte	129,129,62,129,124,191,31,253
.byte	148,148,106,148,212,254,53,64
.byte	148,148,106,148,212,254,53,64
.byte	247,247,251,247,235,12,243,28
.byte	247,247,251,247,235,12,243,28
.byte	185,185,222,185,161,103,111,24
.byte	185,185,222,185,161,103,111,24
.byte	19,19,76,19,152,95,38,139
.byte	19,19,76,19,152,95,38,139
.byte	44,44,176,44,125,156,88,81
.byte	44,44,176,44,125,156,88,81
.byte	211,211,107,211,214,184,187,5
.byte	211,211,107,211,214,184,187,5
.byte	231,231,187,231,107,92,211,140
.byte	231,231,187,231,107,92,211,140
.byte	110,110,165,110,87,203,220,57
.byte	110,110,165,110,87,203,220,57
.byte	196,196,55,196,110,243,149,170
.byte	196,196,55,196,110,243,149,170
.byte	3,3,12,3,24,15,6,27
.byte	3,3,12,3,24,15,6,27
.byte	86,86,69,86,138,19,172,220
.byte	86,86,69,86,138,19,172,220
.byte	68,68,13,68,26,73,136,94
.byte	68,68,13,68,26,73,136,94
.byte	127,127,225,127,223,158,254,160
.byte	127,127,225,127,223,158,254,160
.byte	169,169,158,169,33,55,79,136
.byte	169,169,158,169,33,55,79,136
.byte	42,42,168,42,77,130,84,103
.byte	42,42,168,42,77,130,84,103
.byte	187,187,214,187,177,109,107,10
.byte	187,187,214,187,177,109,107,10
.byte	193,193,35,193,70,226,159,135
.byte	193,193,35,193,70,226,159,135
.byte	83,83,81,83,162,2,166,241
.byte	83,83,81,83,162,2,166,241
.byte	220,220,87,220,174,139,165,114
.byte	220,220,87,220,174,139,165,114
.byte	11,11,44,11,88,39,22,83
.byte	11,11,44,11,88,39,22,83
.byte	157,157,78,157,156,211,39,1
.byte	157,157,78,157,156,211,39,1
.byte	108,108,173,108,71,193,216,43
.byte	108,108,173,108,71,193,216,43
.byte	49,49,196,49,149,245,98,164
.byte	49,49,196,49,149,245,98,164
.byte	116,116,205,116,135,185,232,243
.byte	116,116,205,116,135,185,232,243
.byte	246,246,255,246,227,9,241,21
.byte	246,246,255,246,227,9,241,21
.byte	70,70,5,70,10,67,140,76
.byte	70,70,5,70,10,67,140,76
.byte	172,172,138,172,9,38,69,165
.byte	172,172,138,172,9,38,69,165
.byte	137,137,30,137,60,151,15,181
.byte	137,137,30,137,60,151,15,181
.byte	20,20,80,20,160,68,40,180
.byte	20,20,80,20,160,68,40,180
.byte	225,225,163,225,91,66,223,186
.byte	225,225,163,225,91,66,223,186
.byte	22,22,88,22,176,78,44,166
.byte	22,22,88,22,176,78,44,166
.byte	58,58,232,58,205,210,116,247
.byte	58,58,232,58,205,210,116,247
.byte	105,105,185,105,111,208,210,6
.byte	105,105,185,105,111,208,210,6
.byte	9,9,36,9,72,45,18,65
.byte	9,9,36,9,72,45,18,65
.byte	112,112,221,112,167,173,224,215
.byte	112,112,221,112,167,173,224,215
.byte	182,182,226,182,217,84,113,111
.byte	182,182,226,182,217,84,113,111
.byte	208,208,103,208,206,183,189,30
.byte	208,208,103,208,206,183,189,30
.byte	237,237,147,237,59,126,199,214
.byte	237,237,147,237,59,126,199,214
.byte	204,204,23,204,46,219,133,226
.byte	204,204,23,204,46,219,133,226
.byte	66,66,21,66,42,87,132,104
.byte	66,66,21,66,42,87,132,104
.byte	152,152,90,152,180,194,45,44
.byte	152,152,90,152,180,194,45,44
.byte	164,164,170,164,73,14,85,237
.byte	164,164,170,164,73,14,85,237
.byte	40,40,160,40,93,136,80,117
.byte	40,40,160,40,93,136,80,117
.byte	92,92,109,92,218,49,184,134
.byte	92,92,109,92,218,49,184,134
.byte	248,248,199,248,147,63,237,107
.byte	248,248,199,248,147,63,237,107
.byte	134,134,34,134,68,164,17,194
.byte	134,134,34,134,68,164,17,194
.byte	24,35,198,232,135,184,1,79
.byte	54,166,210,245,121,111,145,82
.byte	96,188,155,142,163,12,123,53
.byte	29,224,215,194,46,75,254,87
.byte	21,119,55,229,159,240,74,218
.byte	88,201,41,10,177,160,107,133
.byte	189,93,16,244,203,62,5,103
.byte	228,39,65,139,167,125,149,216
.byte	251,238,124,102,221,23,71,158
.byte	202,45,191,7,173,90,131,51
.size	whirlpool_block_mmx,.-.L_whirlpool_block_mmx_begin