.machine	"any"
.csect	.text[PR],7

.globl	.sha512_block_ppc
.align	6
.sha512_block_ppc:
	stwu	1,-256(1)
	mflr	0
	slwi	5,5,7

	stw	3,168(1)

	stw	14,184(1)
	stw	15,188(1)
	stw	16,192(1)
	stw	17,196(1)
	stw	18,200(1)
	stw	19,204(1)
	stw	20,208(1)
	stw	21,212(1)
	stw	22,216(1)
	stw	23,220(1)
	stw	24,224(1)
	stw	25,228(1)
	stw	26,232(1)
	stw	27,236(1)
	stw	28,240(1)
	stw	29,244(1)
	stw	30,248(1)
	stw	31,252(1)
	stw	0,260(1)
	lwz	16,0(3)
	lwz	17,4(3)
	lwz	18,8(3)
	lwz	19,12(3)
	lwz	20,16(3)
	lwz	21,20(3)
	lwz	22,24(3)
	lwz	23,28(3)
	lwz	24,32(3)
	lwz	25,36(3)
	lwz	26,40(3)
	lwz	27,44(3)
	lwz	28,48(3)
	lwz	29,52(3)
	lwz	30,56(3)
	lwz	31,60(3)
	bl	LPICmeup
LPICedup:
	andi.	0,4,3
	bne	Lunaligned
Laligned:
	add	5,4,5
	stw	5,160(1)
	stw	4,164(1)
	bl	Lsha2_block_private
	b	Ldone







.align	4
Lunaligned:
	subfic	0,4,4096
	andi.	0,0,3968
	beq	Lcross_page
	cmplw	0,5,0
	ble	Laligned
	subfc	5,0,5
	add	0,4,0
	stw	5,156(1)
	stw	0,160(1)
	stw	4,164(1)
	bl	Lsha2_block_private

	lwz	5,156(1)
Lcross_page:
	li	0,32
	mtctr	0
	addi	12,1,24
Lmemcpy:
	lbz	8,0(4)
	lbz	9,1(4)
	lbz	10,2(4)
	lbz	11,3(4)
	addi	4,4,4
	stb	8,0(12)
	stb	9,1(12)
	stb	10,2(12)
	stb	11,3(12)
	addi	12,12,4
	bc	16,0,Lmemcpy
	stw	4,152(1)
	addi	0,1,152
	addi	4,1,24
	stw	5,156(1)
	stw	0,160(1)
	stw	4,164(1)
	bl	Lsha2_block_private
	lwz	4,152(1)
	lwz	5,156(1)
	addic.	5,5,-128
	bne	Lunaligned

Ldone:
	lwz	0,260(1)
	lwz	14,184(1)
	lwz	15,188(1)
	lwz	16,192(1)
	lwz	17,196(1)
	lwz	18,200(1)
	lwz	19,204(1)
	lwz	20,208(1)
	lwz	21,212(1)
	lwz	22,216(1)
	lwz	23,220(1)
	lwz	24,224(1)
	lwz	25,228(1)
	lwz	26,232(1)
	lwz	27,236(1)
	lwz	28,240(1)
	lwz	29,244(1)
	lwz	30,248(1)
	lwz	31,252(1)
	mtlr	0
	addi	1,1,256
	blr	
.long	0
.byte	0,12,4,1,0x80,18,3,0
.long	0
.align	4
Lsha2_block_private:
	lwz	8,0(4)
	xor	14,19,21
	lwz	6,4(4)
	xor	15,18,20
	lwz	9,4(7)
	xor	11,27,29
	lwz	10,0(7)
	xor	12,26,28
	addc	31,31,6
	stw	6,24(1)

	srwi	0,25,14
	srwi	5,24,14
	and	11,11,25
	adde	30,30,8
	and	12,12,24
	stw	8,28(1)
	srwi	6,25,18
	srwi	8,24,18
	addc	31,31,9
	insrwi	0,24,14,0
	insrwi	5,25,14,0
	xor	11,11,29
	adde	30,30,10
	xor	12,12,28
	insrwi	6,24,18,0
	insrwi	8,25,18,0
	addc	31,31,11
	srwi	9,24,41-32
	srwi	10,25,41-32
	xor	0,0,6
	xor	5,5,8
	insrwi	9,25,41-32,0
	insrwi	10,24,41-32,0
	xor	11,17,19
	adde	30,30,12
	xor	12,16,18
	xor	0,0,9
	xor	5,5,10

	srwi	6,17,28
	and	14,14,11
	addc	31,31,0
	and	15,15,12
	srwi	8,16,28
	srwi	0,16,34-32
	adde	30,30,5
	srwi	5,17,34-32
	insrwi	6,16,28,0
	insrwi	8,17,28,0
	xor	14,14,19
	addc	23,23,31
	xor	15,15,18
	insrwi	0,17,34-32,0
	insrwi	5,16,34-32,0
	adde	22,22,30
	srwi	9,16,39-32
	srwi	10,17,39-32
	xor	0,0,6
	addc	31,31,14
	xor	5,5,8
	insrwi	9,17,39-32,0
	insrwi	10,16,39-32,0
	adde	30,30,15
	lwz	8,8(4)
	lwz	6,12(4)
	xor	0,0,9
	xor	5,5,10
	addc	31,31,0
	adde	30,30,5
	lwz	9,12(7)
	xor	14,25,27
	lwz	10,8(7)
	xor	15,24,26
	addc	29,29,6
	stw	6,32(1)

	srwi	0,23,14
	srwi	5,22,14
	and	14,14,23
	adde	28,28,8
	and	15,15,22
	stw	8,36(1)
	srwi	6,23,18
	srwi	8,22,18
	addc	29,29,9
	insrwi	0,22,14,0
	insrwi	5,23,14,0
	xor	14,14,27
	adde	28,28,10
	xor	15,15,26
	insrwi	6,22,18,0
	insrwi	8,23,18,0
	addc	29,29,14
	srwi	9,22,41-32
	srwi	10,23,41-32
	xor	0,0,6
	xor	5,5,8
	insrwi	9,23,41-32,0
	insrwi	10,22,41-32,0
	xor	14,31,17
	adde	28,28,15
	xor	15,30,16
	xor	0,0,9
	xor	5,5,10

	srwi	6,31,28
	and	11,11,14
	addc	29,29,0
	and	12,12,15
	srwi	8,30,28
	srwi	0,30,34-32
	adde	28,28,5
	srwi	5,31,34-32
	insrwi	6,30,28,0
	insrwi	8,31,28,0
	xor	11,11,17
	addc	21,21,29
	xor	12,12,16
	insrwi	0,31,34-32,0
	insrwi	5,30,34-32,0
	adde	20,20,28
	srwi	9,30,39-32
	srwi	10,31,39-32
	xor	0,0,6
	addc	29,29,11
	xor	5,5,8
	insrwi	9,31,39-32,0
	insrwi	10,30,39-32,0
	adde	28,28,12
	lwz	8,16(4)
	lwz	6,20(4)
	xor	0,0,9
	xor	5,5,10
	addc	29,29,0
	adde	28,28,5
	lwz	9,20(7)
	xor	11,23,25
	lwz	10,16(7)
	xor	12,22,24
	addc	27,27,6
	stw	6,40(1)

	srwi	0,21,14
	srwi	5,20,14
	and	11,11,21
	adde	26,26,8
	and	12,12,20
	stw	8,44(1)
	srwi	6,21,18
	srwi	8,20,18
	addc	27,27,9
	insrwi	0,20,14,0
	insrwi	5,21,14,0
	xor	11,11,25
	adde	26,26,10
	xor	12,12,24
	insrwi	6,20,18,0
	insrwi	8,21,18,0
	addc	27,27,11
	srwi	9,20,41-32
	srwi	10,21,41-32
	xor	0,0,6
	xor	5,5,8
	insrwi	9,21,41-32,0
	insrwi	10,20,41-32,0
	xor	11,29,31
	adde	26,26,12
	xor	12,28,30
	xor	0,0,9
	xor	5,5,10

	srwi	6,29,28
	and	14,14,11
	addc	27,27,0
	and	15,15,12
	srwi	8,28,28
	srwi	0,28,34-32
	adde	26,26,5
	srwi	5,29,34-32
	insrwi	6,28,28,0
	insrwi	8,29,28,0
	xor	14,14,31
	addc	19,19,27
	xor	15,15,30
	insrwi	0,29,34-32,0
	insrwi	5,28,34-32,0
	adde	18,18,26
	srwi	9,28,39-32
	srwi	10,29,39-32
	xor	0,0,6
	addc	27,27,14
	xor	5,5,8
	insrwi	9,29,39-32,0
	insrwi	10,28,39-32,0
	adde	26,26,15
	lwz	8,24(4)
	lwz	6,28(4)
	xor	0,0,9
	xor	5,5,10
	addc	27,27,0
	adde	26,26,5
	lwz	9,28(7)
	xor	14,21,23
	lwz	10,24(7)
	xor	15,20,22
	addc	25,25,6
	stw	6,48(1)

	srwi	0,19,14
	srwi	5,18,14
	and	14,14,19
	adde	24,24,8
	and	15,15,18
	stw	8,52(1)
	srwi	6,19,18
	srwi	8,18,18
	addc	25,25,9
	insrwi	0,18,14,0
	insrwi	5,19,14,0
	xor	14,14,23
	adde	24,24,10
	xor	15,15,22
	insrwi	6,18,18,0
	insrwi	8,19,18,0
	addc	25,25,14
	srwi	9,18,41-32
	srwi	10,19,41-32
	xor	0,0,6
	xor	5,5,8
	insrwi	9,19,41-32,0
	insrwi	10,18,41-32,0
	xor	14,27,29
	adde	24,24,15
	xor	15,26,28
	xor	0,0,9
	xor	5,5,10

	srwi	6,27,28
	and	11,11,14
	addc	25,25,0
	and	12,12,15
	srwi	8,26,28
	srwi	0,26,34-32
	adde	24,24,5
	srwi	5,27,34-32
	insrwi	6,26,28,0
	insrwi	8,27,28,0
	xor	11,11,29
	addc	17,17,25
	xor	12,12,28
	insrwi	0,27,34-32,0
	insrwi	5,26,34-32,0
	adde	16,16,24
	srwi	9,26,39-32
	srwi	10,27,39-32
	xor	0,0,6
	addc	25,25,11
	xor	5,5,8
	insrwi	9,27,39-32,0
	insrwi	10,26,39-32,0
	adde	24,24,12
	lwz	8,32(4)
	lwz	6,36(4)
	xor	0,0,9
	xor	5,5,10
	addc	25,25,0
	adde	24,24,5
	lwz	9,36(7)
	xor	11,19,21
	lwz	10,32(7)
	xor	12,18,20
	addc	23,23,6
	stw	6,56(1)

	srwi	0,17,14
	srwi	5,16,14
	and	11,11,17
	adde	22,22,8
	and	12,12,16
	stw	8,60(1)
	srwi	6,17,18
	srwi	8,16,18
	addc	23,23,9
	insrwi	0,16,14,0
	insrwi	5,17,14,0
	xor	11,11,21
	adde	22,22,10
	xor	12,12,20
	insrwi	6,16,18,0
	insrwi	8,17,18,0
	addc	23,23,11
	srwi	9,16,41-32
	srwi	10,17,41-32
	xor	0,0,6
	xor	5,5,8
	insrwi	9,17,41-32,0
	insrwi	10,16,41-32,0
	xor	11,25,27
	adde	22,22,12
	xor	12,24,26
	xor	0,0,9
	xor	5,5,10

	srwi	6,25,28
	and	14,14,11
	addc	23,23,0
	and	15,15,12
	srwi	8,24,28
	srwi	0,24,34-32
	adde	22,22,5
	srwi	5,25,34-32
	insrwi	6,24,28,0
	insrwi	8,25,28,0
	xor	14,14,27
	addc	31,31,23
	xor	15,15,26
	insrwi	0,25,34-32,0
	insrwi	5,24,34-32,0
	adde	30,30,22
	srwi	9,24,39-32
	srwi	10,25,39-32
	xor	0,0,6
	addc	23,23,14
	xor	5,5,8
	insrwi	9,25,39-32,0
	insrwi	10,24,39-32,0
	adde	22,22,15
	lwz	8,40(4)
	lwz	6,44(4)
	xor	0,0,9
	xor	5,5,10
	addc	23,23,0
	adde	22,22,5
	lwz	9,44(7)
	xor	14,17,19
	lwz	10,40(7)
	xor	15,16,18
	addc	21,21,6
	stw	6,64(1)

	srwi	0,31,14
	srwi	5,30,14
	and	14,14,31
	adde	20,20,8
	and	15,15,30
	stw	8,68(1)
	srwi	6,31,18
	srwi	8,30,18
	addc	21,21,9
	insrwi	0,30,14,0
	insrwi	5,31,14,0
	xor	14,14,19
	adde	20,20,10
	xor	15,15,18
	insrwi	6,30,18,0
	insrwi	8,31,18,0
	addc	21,21,14
	srwi	9,30,41-32
	srwi	10,31,41-32
	xor	0,0,6
	xor	5,5,8
	insrwi	9,31,41-32,0
	insrwi	10,30,41-32,0
	xor	14,23,25
	adde	20,20,15
	xor	15,22,24
	xor	0,0,9
	xor	5,5,10

	srwi	6,23,28
	and	11,11,14
	addc	21,21,0
	and	12,12,15
	srwi	8,22,28
	srwi	0,22,34-32
	adde	20,20,5
	srwi	5,23,34-32
	insrwi	6,22,28,0
	insrwi	8,23,28,0
	xor	11,11,25
	addc	29,29,21
	xor	12,12,24
	insrwi	0,23,34-32,0
	insrwi	5,22,34-32,0
	adde	28,28,20
	srwi	9,22,39-32
	srwi	10,23,39-32
	xor	0,0,6
	addc	21,21,11
	xor	5,5,8
	insrwi	9,23,39-32,0
	insrwi	10,22,39-32,0
	adde	20,20,12
	lwz	8,48(4)
	lwz	6,52(4)
	xor	0,0,9
	xor	5,5,10
	addc	21,21,0
	adde	20,20,5
	lwz	9,52(7)
	xor	11,31,17
	lwz	10,48(7)
	xor	12,30,16
	addc	19,19,6
	stw	6,72(1)

	srwi	0,29,14
	srwi	5,28,14
	and	11,11,29
	adde	18,18,8
	and	12,12,28
	stw	8,76(1)
	srwi	6,29,18
	srwi	8,28,18
	addc	19,19,9
	insrwi	0,28,14,0
	insrwi	5,29,14,0
	xor	11,11,17
	adde	18,18,10
	xor	12,12,16
	insrwi	6,28,18,0
	insrwi	8,29,18,0
	addc	19,19,11
	srwi	9,28,41-32
	srwi	10,29,41-32
	xor	0,0,6
	xor	5,5,8
	insrwi	9,29,41-32,0
	insrwi	10,28,41-32,0
	xor	11,21,23
	adde	18,18,12
	xor	12,20,22
	xor	0,0,9
	xor	5,5,10

	srwi	6,21,28
	and	14,14,11
	addc	19,19,0
	and	15,15,12
	srwi	8,20,28
	srwi	0,20,34-32
	adde	18,18,5
	srwi	5,21,34-32
	insrwi	6,20,28,0
	insrwi	8,21,28,0
	xor	14,14,23
	addc	27,27,19
	xor	15,15,22
	insrwi	0,21,34-32,0
	insrwi	5,20,34-32,0
	adde	26,26,18
	srwi	9,20,39-32
	srwi	10,21,39-32
	xor	0,0,6
	addc	19,19,14
	xor	5,5,8
	insrwi	9,21,39-32,0
	insrwi	10,20,39-32,0
	adde	18,18,15
	lwz	8,56(4)
	lwz	6,60(4)
	xor	0,0,9
	xor	5,5,10
	addc	19,19,0
	adde	18,18,5
	lwz	9,60(7)
	xor	14,29,31
	lwz	10,56(7)
	xor	15,28,30
	addc	17,17,6
	stw	6,80(1)

	srwi	0,27,14
	srwi	5,26,14
	and	14,14,27
	adde	16,16,8
	and	15,15,26
	stw	8,84(1)
	srwi	6,27,18
	srwi	8,26,18
	addc	17,17,9
	insrwi	0,26,14,0
	insrwi	5,27,14,0
	xor	14,14,31
	adde	16,16,10
	xor	15,15,30
	insrwi	6,26,18,0
	insrwi	8,27,18,0
	addc	17,17,14
	srwi	9,26,41-32
	srwi	10,27,41-32
	xor	0,0,6
	xor	5,5,8
	insrwi	9,27,41-32,0
	insrwi	10,26,41-32,0
	xor	14,19,21
	adde	16,16,15
	xor	15,18,20
	xor	0,0,9
	xor	5,5,10

	srwi	6,19,28
	and	11,11,14
	addc	17,17,0
	and	12,12,15
	srwi	8,18,28
	srwi	0,18,34-32
	adde	16,16,5
	srwi	5,19,34-32
	insrwi	6,18,28,0
	insrwi	8,19,28,0
	xor	11,11,21
	addc	25,25,17
	xor	12,12,20
	insrwi	0,19,34-32,0
	insrwi	5,18,34-32,0
	adde	24,24,16
	srwi	9,18,39-32
	srwi	10,19,39-32
	xor	0,0,6
	addc	17,17,11
	xor	5,5,8
	insrwi	9,19,39-32,0
	insrwi	10,18,39-32,0
	adde	16,16,12
	lwz	8,64(4)
	lwz	6,68(4)
	xor	0,0,9
	xor	5,5,10
	addc	17,17,0
	adde	16,16,5
	lwz	9,68(7)
	xor	11,27,29
	lwz	10,64(7)
	xor	12,26,28
	addc	31,31,6
	stw	6,88(1)

	srwi	0,25,14
	srwi	5,24,14
	and	11,11,25
	adde	30,30,8
	and	12,12,24
	stw	8,92(1)
	srwi	6,25,18
	srwi	8,24,18
	addc	31,31,9
	insrwi	0,24,14,0
	insrwi	5,25,14,0
	xor	11,11,29
	adde	30,30,10
	xor	12,12,28
	insrwi	6,24,18,0
	insrwi	8,25,18,0
	addc	31,31,11
	srwi	9,24,41-32
	srwi	10,25,41-32
	xor	0,0,6
	xor	5,5,8
	insrwi	9,25,41-32,0
	insrwi	10,24,41-32,0
	xor	11,17,19
	adde	30,30,12
	xor	12,16,18
	xor	0,0,9
	xor	5,5,10

	srwi	6,17,28
	and	14,14,11
	addc	31,31,0
	and	15,15,12
	srwi	8,16,28
	srwi	0,16,34-32
	adde	30,30,5
	srwi	5,17,34-32
	insrwi	6,16,28,0
	insrwi	8,17,28,0
	xor	14,14,19
	addc	23,23,31
	xor	15,15,18
	insrwi	0,17,34-32,0
	insrwi	5,16,34-32,0
	adde	22,22,30
	srwi	9,16,39-32
	srwi	10,17,39-32
	xor	0,0,6
	addc	31,31,14
	xor	5,5,8
	insrwi	9,17,39-32,0
	insrwi	10,16,39-32,0
	adde	30,30,15
	lwz	8,72(4)
	lwz	6,76(4)
	xor	0,0,9
	xor	5,5,10
	addc	31,31,0
	adde	30,30,5
	lwz	9,76(7)
	xor	14,25,27
	lwz	10,72(7)
	xor	15,24,26
	addc	29,29,6
	stw	6,96(1)

	srwi	0,23,14
	srwi	5,22,14
	and	14,14,23
	adde	28,28,8
	and	15,15,22
	stw	8,100(1)
	srwi	6,23,18
	srwi	8,22,18
	addc	29,29,9
	insrwi	0,22,14,0
	insrwi	5,23,14,0
	xor	14,14,27
	adde	28,28,10
	xor	15,15,26
	insrwi	6,22,18,0
	insrwi	8,23,18,0
	addc	29,29,14
	srwi	9,22,41-32
	srwi	10,23,41-32
	xor	0,0,6
	xor	5,5,8
	insrwi	9,23,41-32,0
	insrwi	10,22,41-32,0
	xor	14,31,17
	adde	28,28,15
	xor	15,30,16
	xor	0,0,9
	xor	5,5,10

	srwi	6,31,28
	and	11,11,14
	addc	29,29,0
	and	12,12,15
	srwi	8,30,28
	srwi	0,30,34-32
	adde	28,28,5
	srwi	5,31,34-32
	insrwi	6,30,28,0
	insrwi	8,31,28,0
	xor	11,11,17
	addc	21,21,29
	xor	12,12,16
	insrwi	0,31,34-32,0
	insrwi	5,30,34-32,0
	adde	20,20,28
	srwi	9,30,39-32
	srwi	10,31,39-32
	xor	0,0,6
	addc	29,29,11
	xor	5,5,8
	insrwi	9,31,39-32,0
	insrwi	10,30,39-32,0
	adde	28,28,12
	lwz	8,80(4)
	lwz	6,84(4)
	xor	0,0,9
	xor	5,5,10
	addc	29,29,0
	adde	28,28,5
	lwz	9,84(7)
	xor	11,23,25
	lwz	10,80(7)
	xor	12,22,24
	addc	27,27,6
	stw	6,104(1)

	srwi	0,21,14
	srwi	5,20,14
	and	11,11,21
	adde	26,26,8
	and	12,12,20
	stw	8,108(1)
	srwi	6,21,18
	srwi	8,20,18
	addc	27,27,9
	insrwi	0,20,14,0
	insrwi	5,21,14,0
	xor	11,11,25
	adde	26,26,10
	xor	12,12,24
	insrwi	6,20,18,0
	insrwi	8,21,18,0
	addc	27,27,11
	srwi	9,20,41-32
	srwi	10,21,41-32
	xor	0,0,6
	xor	5,5,8
	insrwi	9,21,41-32,0
	insrwi	10,20,41-32,0
	xor	11,29,31
	adde	26,26,12
	xor	12,28,30
	xor	0,0,9
	xor	5,5,10

	srwi	6,29,28
	and	14,14,11
	addc	27,27,0
	and	15,15,12
	srwi	8,28,28
	srwi	0,28,34-32
	adde	26,26,5
	srwi	5,29,34-32
	insrwi	6,28,28,0
	insrwi	8,29,28,0
	xor	14,14,31
	addc	19,19,27
	xor	15,15,30
	insrwi	0,29,34-32,0
	insrwi	5,28,34-32,0
	adde	18,18,26
	srwi	9,28,39-32
	srwi	10,29,39-32
	xor	0,0,6
	addc	27,27,14
	xor	5,5,8
	insrwi	9,29,39-32,0
	insrwi	10,28,39-32,0
	adde	26,26,15
	lwz	8,88(4)
	lwz	6,92(4)
	xor	0,0,9
	xor	5,5,10
	addc	27,27,0
	adde	26,26,5
	lwz	9,92(7)
	xor	14,21,23
	lwz	10,88(7)
	xor	15,20,22
	addc	25,25,6
	stw	6,112(1)

	srwi	0,19,14
	srwi	5,18,14
	and	14,14,19
	adde	24,24,8
	and	15,15,18
	stw	8,116(1)
	srwi	6,19,18
	srwi	8,18,18
	addc	25,25,9
	insrwi	0,18,14,0
	insrwi	5,19,14,0
	xor	14,14,23
	adde	24,24,10
	xor	15,15,22
	insrwi	6,18,18,0
	insrwi	8,19,18,0
	addc	25,25,14
	srwi	9,18,41-32
	srwi	10,19,41-32
	xor	0,0,6
	xor	5,5,8
	insrwi	9,19,41-32,0
	insrwi	10,18,41-32,0
	xor	14,27,29
	adde	24,24,15
	xor	15,26,28
	xor	0,0,9
	xor	5,5,10

	srwi	6,27,28
	and	11,11,14
	addc	25,25,0
	and	12,12,15
	srwi	8,26,28
	srwi	0,26,34-32
	adde	24,24,5
	srwi	5,27,34-32
	insrwi	6,26,28,0
	insrwi	8,27,28,0
	xor	11,11,29
	addc	17,17,25
	xor	12,12,28
	insrwi	0,27,34-32,0
	insrwi	5,26,34-32,0
	adde	16,16,24
	srwi	9,26,39-32
	srwi	10,27,39-32
	xor	0,0,6
	addc	25,25,11
	xor	5,5,8
	insrwi	9,27,39-32,0
	insrwi	10,26,39-32,0
	adde	24,24,12
	lwz	8,96(4)
	lwz	6,100(4)
	xor	0,0,9
	xor	5,5,10
	addc	25,25,0
	adde	24,24,5
	lwz	9,100(7)
	xor	11,19,21
	lwz	10,96(7)
	xor	12,18,20
	addc	23,23,6
	stw	6,120(1)

	srwi	0,17,14
	srwi	5,16,14
	and	11,11,17
	adde	22,22,8
	and	12,12,16
	stw	8,124(1)
	srwi	6,17,18
	srwi	8,16,18
	addc	23,23,9
	insrwi	0,16,14,0
	insrwi	5,17,14,0
	xor	11,11,21
	adde	22,22,10
	xor	12,12,20
	insrwi	6,16,18,0
	insrwi	8,17,18,0
	addc	23,23,11
	srwi	9,16,41-32
	srwi	10,17,41-32
	xor	0,0,6
	xor	5,5,8
	insrwi	9,17,41-32,0
	insrwi	10,16,41-32,0
	xor	11,25,27
	adde	22,22,12
	xor	12,24,26
	xor	0,0,9
	xor	5,5,10

	srwi	6,25,28
	and	14,14,11
	addc	23,23,0
	and	15,15,12
	srwi	8,24,28
	srwi	0,24,34-32
	adde	22,22,5
	srwi	5,25,34-32
	insrwi	6,24,28,0
	insrwi	8,25,28,0
	xor	14,14,27
	addc	31,31,23
	xor	15,15,26
	insrwi	0,25,34-32,0
	insrwi	5,24,34-32,0
	adde	30,30,22
	srwi	9,24,39-32
	srwi	10,25,39-32
	xor	0,0,6
	addc	23,23,14
	xor	5,5,8
	insrwi	9,25,39-32,0
	insrwi	10,24,39-32,0
	adde	22,22,15
	lwz	8,104(4)
	lwz	6,108(4)
	xor	0,0,9
	xor	5,5,10
	addc	23,23,0
	adde	22,22,5
	lwz	9,108(7)
	xor	14,17,19
	lwz	10,104(7)
	xor	15,16,18
	addc	21,21,6
	stw	6,128(1)

	srwi	0,31,14
	srwi	5,30,14
	and	14,14,31
	adde	20,20,8
	and	15,15,30
	stw	8,132(1)
	srwi	6,31,18
	srwi	8,30,18
	addc	21,21,9
	insrwi	0,30,14,0
	insrwi	5,31,14,0
	xor	14,14,19
	adde	20,20,10
	xor	15,15,18
	insrwi	6,30,18,0
	insrwi	8,31,18,0
	addc	21,21,14
	srwi	9,30,41-32
	srwi	10,31,41-32
	xor	0,0,6
	xor	5,5,8
	insrwi	9,31,41-32,0
	insrwi	10,30,41-32,0
	xor	14,23,25
	adde	20,20,15
	xor	15,22,24
	xor	0,0,9
	xor	5,5,10

	srwi	6,23,28
	and	11,11,14
	addc	21,21,0
	and	12,12,15
	srwi	8,22,28
	srwi	0,22,34-32
	adde	20,20,5
	srwi	5,23,34-32
	insrwi	6,22,28,0
	insrwi	8,23,28,0
	xor	11,11,25
	addc	29,29,21
	xor	12,12,24
	insrwi	0,23,34-32,0
	insrwi	5,22,34-32,0
	adde	28,28,20
	srwi	9,22,39-32
	srwi	10,23,39-32
	xor	0,0,6
	addc	21,21,11
	xor	5,5,8
	insrwi	9,23,39-32,0
	insrwi	10,22,39-32,0
	adde	20,20,12
	lwz	8,112(4)
	lwz	6,116(4)
	xor	0,0,9
	xor	5,5,10
	addc	21,21,0
	adde	20,20,5
	lwz	9,116(7)
	xor	11,31,17
	lwz	10,112(7)
	xor	12,30,16
	addc	19,19,6
	stw	6,136(1)

	srwi	0,29,14
	srwi	5,28,14
	and	11,11,29
	adde	18,18,8
	and	12,12,28
	stw	8,140(1)
	srwi	6,29,18
	srwi	8,28,18
	addc	19,19,9
	insrwi	0,28,14,0
	insrwi	5,29,14,0
	xor	11,11,17
	adde	18,18,10
	xor	12,12,16
	insrwi	6,28,18,0
	insrwi	8,29,18,0
	addc	19,19,11
	srwi	9,28,41-32
	srwi	10,29,41-32
	xor	0,0,6
	xor	5,5,8
	insrwi	9,29,41-32,0
	insrwi	10,28,41-32,0
	xor	11,21,23
	adde	18,18,12
	xor	12,20,22
	xor	0,0,9
	xor	5,5,10

	srwi	6,21,28
	and	14,14,11
	addc	19,19,0
	and	15,15,12
	srwi	8,20,28
	srwi	0,20,34-32
	adde	18,18,5
	srwi	5,21,34-32
	insrwi	6,20,28,0
	insrwi	8,21,28,0
	xor	14,14,23
	addc	27,27,19
	xor	15,15,22
	insrwi	0,21,34-32,0
	insrwi	5,20,34-32,0
	adde	26,26,18
	srwi	9,20,39-32
	srwi	10,21,39-32
	xor	0,0,6
	addc	19,19,14
	xor	5,5,8
	insrwi	9,21,39-32,0
	insrwi	10,20,39-32,0
	adde	18,18,15
	lwz	8,120(4)
	lwz	6,124(4)
	xor	0,0,9
	xor	5,5,10
	addc	19,19,0
	adde	18,18,5
	lwz	9,124(7)
	xor	14,29,31
	lwz	10,120(7)
	xor	15,28,30
	addc	17,17,6
	stw	6,144(1)

	srwi	0,27,14
	srwi	5,26,14
	and	14,14,27
	adde	16,16,8
	and	15,15,26
	stw	8,148(1)
	srwi	6,27,18
	srwi	8,26,18
	addc	17,17,9
	insrwi	0,26,14,0
	insrwi	5,27,14,0
	xor	14,14,31
	adde	16,16,10
	xor	15,15,30
	insrwi	6,26,18,0
	insrwi	8,27,18,0
	addc	17,17,14
	srwi	9,26,41-32
	srwi	10,27,41-32
	xor	0,0,6
	xor	5,5,8
	insrwi	9,27,41-32,0
	insrwi	10,26,41-32,0
	xor	14,19,21
	adde	16,16,15
	xor	15,18,20
	xor	0,0,9
	xor	5,5,10

	srwi	6,19,28
	and	11,11,14
	addc	17,17,0
	and	12,12,15
	srwi	8,18,28
	srwi	0,18,34-32
	adde	16,16,5
	srwi	5,19,34-32
	insrwi	6,18,28,0
	insrwi	8,19,28,0
	xor	11,11,21
	addc	25,25,17
	xor	12,12,20
	insrwi	0,19,34-32,0
	insrwi	5,18,34-32,0
	adde	24,24,16
	srwi	9,18,39-32
	srwi	10,19,39-32
	xor	0,0,6
	addc	17,17,11
	xor	5,5,8
	insrwi	9,19,39-32,0
	insrwi	10,18,39-32,0
	adde	16,16,12
	lwz	6,32(1)
	lwz	8,36(1)
	xor	0,0,9
	xor	5,5,10
	addc	17,17,0
	adde	16,16,5
	lwz	3,24(1)
	lwz	4,28(1)
	li	11,4
	mtctr	11
.align	4
Lrounds:
	addi	7,7,128
	srwi	0,6,1
	srwi	5,8,1
	srwi	9,6,8
	srwi	10,8,8
	insrwi	0,8,1,0
	insrwi	5,6,1,0
	srwi	11,6,7
	insrwi	9,8,8,0
	insrwi	10,6,8,0
	insrwi	11,8,7,0
	xor	0,0,9
	lwz	9,136(1)
	srwi	12,8,7
	xor	5,5,10
	lwz	10,140(1)
	xor	11,11,0
	srwi	0,9,19
	xor	12,12,5
	srwi	5,10,19
	addc	3,3,11
	srwi	11,10,61-32
	insrwi	0,10,19,0
	insrwi	5,9,19,0
	adde	4,4,12
	srwi	12,9,61-32

	insrwi	11,9,61-32,0
	srwi	9,9,6
	insrwi	12,10,61-32,0
	insrwi	9,10,6,0
	xor	0,0,11
	lwz	11,96(1)
	srwi	10,10,6
	xor	5,5,12
	lwz	12,100(1)
	xor	0,0,9
	addc	3,3,11
	xor	5,5,10
	adde	4,4,12
	addc	3,3,0
	adde	4,4,5
	lwz	9,4(7)
	xor	11,27,29
	lwz	10,0(7)
	xor	12,26,28
	addc	31,31,3
	stw	3,24(1)

	srwi	0,25,14
	srwi	5,24,14
	and	11,11,25
	adde	30,30,4
	and	12,12,24
	stw	4,28(1)
	srwi	3,25,18
	srwi	4,24,18
	addc	31,31,9
	insrwi	0,24,14,0
	insrwi	5,25,14,0
	xor	11,11,29
	adde	30,30,10
	xor	12,12,28
	insrwi	3,24,18,0
	insrwi	4,25,18,0
	addc	31,31,11
	srwi	9,24,41-32
	srwi	10,25,41-32
	xor	0,0,3
	xor	5,5,4
	insrwi	9,25,41-32,0
	insrwi	10,24,41-32,0
	xor	11,17,19
	adde	30,30,12
	xor	12,16,18
	xor	0,0,9
	xor	5,5,10

	srwi	3,17,28
	and	14,14,11
	addc	31,31,0
	and	15,15,12
	srwi	4,16,28
	srwi	0,16,34-32
	adde	30,30,5
	srwi	5,17,34-32
	insrwi	3,16,28,0
	insrwi	4,17,28,0
	xor	14,14,19
	addc	23,23,31
	xor	15,15,18
	insrwi	0,17,34-32,0
	insrwi	5,16,34-32,0
	adde	22,22,30
	srwi	9,16,39-32
	srwi	10,17,39-32
	xor	0,0,3
	addc	31,31,14
	xor	5,5,4
	insrwi	9,17,39-32,0
	insrwi	10,16,39-32,0
	adde	30,30,15
	lwz	3,40(1)
	lwz	4,44(1)
	xor	0,0,9
	xor	5,5,10
	addc	31,31,0
	adde	30,30,5
	srwi	0,3,1
	srwi	5,4,1
	srwi	9,3,8
	srwi	10,4,8
	insrwi	0,4,1,0
	insrwi	5,3,1,0
	srwi	14,3,7
	insrwi	9,4,8,0
	insrwi	10,3,8,0
	insrwi	14,4,7,0
	xor	0,0,9
	lwz	9,144(1)
	srwi	15,4,7
	xor	5,5,10
	lwz	10,148(1)
	xor	14,14,0
	srwi	0,9,19
	xor	15,15,5
	srwi	5,10,19
	addc	6,6,14
	srwi	14,10,61-32
	insrwi	0,10,19,0
	insrwi	5,9,19,0
	adde	8,8,15
	srwi	15,9,61-32

	insrwi	14,9,61-32,0
	srwi	9,9,6
	insrwi	15,10,61-32,0
	insrwi	9,10,6,0
	xor	0,0,14
	lwz	14,104(1)
	srwi	10,10,6
	xor	5,5,15
	lwz	15,108(1)
	xor	0,0,9
	addc	6,6,14
	xor	5,5,10
	adde	8,8,15
	addc	6,6,0
	adde	8,8,5
	lwz	9,12(7)
	xor	14,25,27
	lwz	10,8(7)
	xor	15,24,26
	addc	29,29,6
	stw	6,32(1)

	srwi	0,23,14
	srwi	5,22,14
	and	14,14,23
	adde	28,28,8
	and	15,15,22
	stw	8,36(1)
	srwi	6,23,18
	srwi	8,22,18
	addc	29,29,9
	insrwi	0,22,14,0
	insrwi	5,23,14,0
	xor	14,14,27
	adde	28,28,10
	xor	15,15,26
	insrwi	6,22,18,0
	insrwi	8,23,18,0
	addc	29,29,14
	srwi	9,22,41-32
	srwi	10,23,41-32
	xor	0,0,6
	xor	5,5,8
	insrwi	9,23,41-32,0
	insrwi	10,22,41-32,0
	xor	14,31,17
	adde	28,28,15
	xor	15,30,16
	xor	0,0,9
	xor	5,5,10

	srwi	6,31,28
	and	11,11,14
	addc	29,29,0
	and	12,12,15
	srwi	8,30,28
	srwi	0,30,34-32
	adde	28,28,5
	srwi	5,31,34-32
	insrwi	6,30,28,0
	insrwi	8,31,28,0
	xor	11,11,17
	addc	21,21,29
	xor	12,12,16
	insrwi	0,31,34-32,0
	insrwi	5,30,34-32,0
	adde	20,20,28
	srwi	9,30,39-32
	srwi	10,31,39-32
	xor	0,0,6
	addc	29,29,11
	xor	5,5,8
	insrwi	9,31,39-32,0
	insrwi	10,30,39-32,0
	adde	28,28,12
	lwz	6,48(1)
	lwz	8,52(1)
	xor	0,0,9
	xor	5,5,10
	addc	29,29,0
	adde	28,28,5
	srwi	0,6,1
	srwi	5,8,1
	srwi	9,6,8
	srwi	10,8,8
	insrwi	0,8,1,0
	insrwi	5,6,1,0
	srwi	11,6,7
	insrwi	9,8,8,0
	insrwi	10,6,8,0
	insrwi	11,8,7,0
	xor	0,0,9
	lwz	9,24(1)
	srwi	12,8,7
	xor	5,5,10
	lwz	10,28(1)
	xor	11,11,0
	srwi	0,9,19
	xor	12,12,5
	srwi	5,10,19
	addc	3,3,11
	srwi	11,10,61-32
	insrwi	0,10,19,0
	insrwi	5,9,19,0
	adde	4,4,12
	srwi	12,9,61-32

	insrwi	11,9,61-32,0
	srwi	9,9,6
	insrwi	12,10,61-32,0
	insrwi	9,10,6,0
	xor	0,0,11
	lwz	11,112(1)
	srwi	10,10,6
	xor	5,5,12
	lwz	12,116(1)
	xor	0,0,9
	addc	3,3,11
	xor	5,5,10
	adde	4,4,12
	addc	3,3,0
	adde	4,4,5
	lwz	9,20(7)
	xor	11,23,25
	lwz	10,16(7)
	xor	12,22,24
	addc	27,27,3
	stw	3,40(1)

	srwi	0,21,14
	srwi	5,20,14
	and	11,11,21
	adde	26,26,4
	and	12,12,20
	stw	4,44(1)
	srwi	3,21,18
	srwi	4,20,18
	addc	27,27,9
	insrwi	0,20,14,0
	insrwi	5,21,14,0
	xor	11,11,25
	adde	26,26,10
	xor	12,12,24
	insrwi	3,20,18,0
	insrwi	4,21,18,0
	addc	27,27,11
	srwi	9,20,41-32
	srwi	10,21,41-32
	xor	0,0,3
	xor	5,5,4
	insrwi	9,21,41-32,0
	insrwi	10,20,41-32,0
	xor	11,29,31
	adde	26,26,12
	xor	12,28,30
	xor	0,0,9
	xor	5,5,10

	srwi	3,29,28
	and	14,14,11
	addc	27,27,0
	and	15,15,12
	srwi	4,28,28
	srwi	0,28,34-32
	adde	26,26,5
	srwi	5,29,34-32
	insrwi	3,28,28,0
	insrwi	4,29,28,0
	xor	14,14,31
	addc	19,19,27
	xor	15,15,30
	insrwi	0,29,34-32,0
	insrwi	5,28,34-32,0
	adde	18,18,26
	srwi	9,28,39-32
	srwi	10,29,39-32
	xor	0,0,3
	addc	27,27,14
	xor	5,5,4
	insrwi	9,29,39-32,0
	insrwi	10,28,39-32,0
	adde	26,26,15
	lwz	3,56(1)
	lwz	4,60(1)
	xor	0,0,9
	xor	5,5,10
	addc	27,27,0
	adde	26,26,5
	srwi	0,3,1
	srwi	5,4,1
	srwi	9,3,8
	srwi	10,4,8
	insrwi	0,4,1,0
	insrwi	5,3,1,0
	srwi	14,3,7
	insrwi	9,4,8,0
	insrwi	10,3,8,0
	insrwi	14,4,7,0
	xor	0,0,9
	lwz	9,32(1)
	srwi	15,4,7
	xor	5,5,10
	lwz	10,36(1)
	xor	14,14,0
	srwi	0,9,19
	xor	15,15,5
	srwi	5,10,19
	addc	6,6,14
	srwi	14,10,61-32
	insrwi	0,10,19,0
	insrwi	5,9,19,0
	adde	8,8,15
	srwi	15,9,61-32

	insrwi	14,9,61-32,0
	srwi	9,9,6
	insrwi	15,10,61-32,0
	insrwi	9,10,6,0
	xor	0,0,14
	lwz	14,120(1)
	srwi	10,10,6
	xor	5,5,15
	lwz	15,124(1)
	xor	0,0,9
	addc	6,6,14
	xor	5,5,10
	adde	8,8,15
	addc	6,6,0
	adde	8,8,5
	lwz	9,28(7)
	xor	14,21,23
	lwz	10,24(7)
	xor	15,20,22
	addc	25,25,6
	stw	6,48(1)

	srwi	0,19,14
	srwi	5,18,14
	and	14,14,19
	adde	24,24,8
	and	15,15,18
	stw	8,52(1)
	srwi	6,19,18
	srwi	8,18,18
	addc	25,25,9
	insrwi	0,18,14,0
	insrwi	5,19,14,0
	xor	14,14,23
	adde	24,24,10
	xor	15,15,22
	insrwi	6,18,18,0
	insrwi	8,19,18,0
	addc	25,25,14
	srwi	9,18,41-32
	srwi	10,19,41-32
	xor	0,0,6
	xor	5,5,8
	insrwi	9,19,41-32,0
	insrwi	10,18,41-32,0
	xor	14,27,29
	adde	24,24,15
	xor	15,26,28
	xor	0,0,9
	xor	5,5,10

	srwi	6,27,28
	and	11,11,14
	addc	25,25,0
	and	12,12,15
	srwi	8,26,28
	srwi	0,26,34-32
	adde	24,24,5
	srwi	5,27,34-32
	insrwi	6,26,28,0
	insrwi	8,27,28,0
	xor	11,11,29
	addc	17,17,25
	xor	12,12,28
	insrwi	0,27,34-32,0
	insrwi	5,26,34-32,0
	adde	16,16,24
	srwi	9,26,39-32
	srwi	10,27,39-32
	xor	0,0,6
	addc	25,25,11
	xor	5,5,8
	insrwi	9,27,39-32,0
	insrwi	10,26,39-32,0
	adde	24,24,12
	lwz	6,64(1)
	lwz	8,68(1)
	xor	0,0,9
	xor	5,5,10
	addc	25,25,0
	adde	24,24,5
	srwi	0,6,1
	srwi	5,8,1
	srwi	9,6,8
	srwi	10,8,8
	insrwi	0,8,1,0
	insrwi	5,6,1,0
	srwi	11,6,7
	insrwi	9,8,8,0
	insrwi	10,6,8,0
	insrwi	11,8,7,0
	xor	0,0,9
	lwz	9,40(1)
	srwi	12,8,7
	xor	5,5,10
	lwz	10,44(1)
	xor	11,11,0
	srwi	0,9,19
	xor	12,12,5
	srwi	5,10,19
	addc	3,3,11
	srwi	11,10,61-32
	insrwi	0,10,19,0
	insrwi	5,9,19,0
	adde	4,4,12
	srwi	12,9,61-32

	insrwi	11,9,61-32,0
	srwi	9,9,6
	insrwi	12,10,61-32,0
	insrwi	9,10,6,0
	xor	0,0,11
	lwz	11,128(1)
	srwi	10,10,6
	xor	5,5,12
	lwz	12,132(1)
	xor	0,0,9
	addc	3,3,11
	xor	5,5,10
	adde	4,4,12
	addc	3,3,0
	adde	4,4,5
	lwz	9,36(7)
	xor	11,19,21
	lwz	10,32(7)
	xor	12,18,20
	addc	23,23,3
	stw	3,56(1)

	srwi	0,17,14
	srwi	5,16,14
	and	11,11,17
	adde	22,22,4
	and	12,12,16
	stw	4,60(1)
	srwi	3,17,18
	srwi	4,16,18
	addc	23,23,9
	insrwi	0,16,14,0
	insrwi	5,17,14,0
	xor	11,11,21
	adde	22,22,10
	xor	12,12,20
	insrwi	3,16,18,0
	insrwi	4,17,18,0
	addc	23,23,11
	srwi	9,16,41-32
	srwi	10,17,41-32
	xor	0,0,3
	xor	5,5,4
	insrwi	9,17,41-32,0
	insrwi	10,16,41-32,0
	xor	11,25,27
	adde	22,22,12
	xor	12,24,26
	xor	0,0,9
	xor	5,5,10

	srwi	3,25,28
	and	14,14,11
	addc	23,23,0
	and	15,15,12
	srwi	4,24,28
	srwi	0,24,34-32
	adde	22,22,5
	srwi	5,25,34-32
	insrwi	3,24,28,0
	insrwi	4,25,28,0
	xor	14,14,27
	addc	31,31,23
	xor	15,15,26
	insrwi	0,25,34-32,0
	insrwi	5,24,34-32,0
	adde	30,30,22
	srwi	9,24,39-32
	srwi	10,25,39-32
	xor	0,0,3
	addc	23,23,14
	xor	5,5,4
	insrwi	9,25,39-32,0
	insrwi	10,24,39-32,0
	adde	22,22,15
	lwz	3,72(1)
	lwz	4,76(1)
	xor	0,0,9
	xor	5,5,10
	addc	23,23,0
	adde	22,22,5
	srwi	0,3,1
	srwi	5,4,1
	srwi	9,3,8
	srwi	10,4,8
	insrwi	0,4,1,0
	insrwi	5,3,1,0
	srwi	14,3,7
	insrwi	9,4,8,0
	insrwi	10,3,8,0
	insrwi	14,4,7,0
	xor	0,0,9
	lwz	9,48(1)
	srwi	15,4,7
	xor	5,5,10
	lwz	10,52(1)
	xor	14,14,0
	srwi	0,9,19
	xor	15,15,5
	srwi	5,10,19
	addc	6,6,14
	srwi	14,10,61-32
	insrwi	0,10,19,0
	insrwi	5,9,19,0
	adde	8,8,15
	srwi	15,9,61-32

	insrwi	14,9,61-32,0
	srwi	9,9,6
	insrwi	15,10,61-32,0
	insrwi	9,10,6,0
	xor	0,0,14
	lwz	14,136(1)
	srwi	10,10,6
	xor	5,5,15
	lwz	15,140(1)
	xor	0,0,9
	addc	6,6,14
	xor	5,5,10
	adde	8,8,15
	addc	6,6,0
	adde	8,8,5
	lwz	9,44(7)
	xor	14,17,19
	lwz	10,40(7)
	xor	15,16,18
	addc	21,21,6
	stw	6,64(1)

	srwi	0,31,14
	srwi	5,30,14
	and	14,14,31
	adde	20,20,8
	and	15,15,30
	stw	8,68(1)
	srwi	6,31,18
	srwi	8,30,18
	addc	21,21,9
	insrwi	0,30,14,0
	insrwi	5,31,14,0
	xor	14,14,19
	adde	20,20,10
	xor	15,15,18
	insrwi	6,30,18,0
	insrwi	8,31,18,0
	addc	21,21,14
	srwi	9,30,41-32
	srwi	10,31,41-32
	xor	0,0,6
	xor	5,5,8
	insrwi	9,31,41-32,0
	insrwi	10,30,41-32,0
	xor	14,23,25
	adde	20,20,15
	xor	15,22,24
	xor	0,0,9
	xor	5,5,10

	srwi	6,23,28
	and	11,11,14
	addc	21,21,0
	and	12,12,15
	srwi	8,22,28
	srwi	0,22,34-32
	adde	20,20,5
	srwi	5,23,34-32
	insrwi	6,22,28,0
	insrwi	8,23,28,0
	xor	11,11,25
	addc	29,29,21
	xor	12,12,24
	insrwi	0,23,34-32,0
	insrwi	5,22,34-32,0
	adde	28,28,20
	srwi	9,22,39-32
	srwi	10,23,39-32
	xor	0,0,6
	addc	21,21,11
	xor	5,5,8
	insrwi	9,23,39-32,0
	insrwi	10,22,39-32,0
	adde	20,20,12
	lwz	6,80(1)
	lwz	8,84(1)
	xor	0,0,9
	xor	5,5,10
	addc	21,21,0
	adde	20,20,5
	srwi	0,6,1
	srwi	5,8,1
	srwi	9,6,8
	srwi	10,8,8
	insrwi	0,8,1,0
	insrwi	5,6,1,0
	srwi	11,6,7
	insrwi	9,8,8,0
	insrwi	10,6,8,0
	insrwi	11,8,7,0
	xor	0,0,9
	lwz	9,56(1)
	srwi	12,8,7
	xor	5,5,10
	lwz	10,60(1)
	xor	11,11,0
	srwi	0,9,19
	xor	12,12,5
	srwi	5,10,19
	addc	3,3,11
	srwi	11,10,61-32
	insrwi	0,10,19,0
	insrwi	5,9,19,0
	adde	4,4,12
	srwi	12,9,61-32

	insrwi	11,9,61-32,0
	srwi	9,9,6
	insrwi	12,10,61-32,0
	insrwi	9,10,6,0
	xor	0,0,11
	lwz	11,144(1)
	srwi	10,10,6
	xor	5,5,12
	lwz	12,148(1)
	xor	0,0,9
	addc	3,3,11
	xor	5,5,10
	adde	4,4,12
	addc	3,3,0
	adde	4,4,5
	lwz	9,52(7)
	xor	11,31,17
	lwz	10,48(7)
	xor	12,30,16
	addc	19,19,3
	stw	3,72(1)

	srwi	0,29,14
	srwi	5,28,14
	and	11,11,29
	adde	18,18,4
	and	12,12,28
	stw	4,76(1)
	srwi	3,29,18
	srwi	4,28,18
	addc	19,19,9
	insrwi	0,28,14,0
	insrwi	5,29,14,0
	xor	11,11,17
	adde	18,18,10
	xor	12,12,16
	insrwi	3,28,18,0
	insrwi	4,29,18,0
	addc	19,19,11
	srwi	9,28,41-32
	srwi	10,29,41-32
	xor	0,0,3
	xor	5,5,4
	insrwi	9,29,41-32,0
	insrwi	10,28,41-32,0
	xor	11,21,23
	adde	18,18,12
	xor	12,20,22
	xor	0,0,9
	xor	5,5,10

	srwi	3,21,28
	and	14,14,11
	addc	19,19,0
	and	15,15,12
	srwi	4,20,28
	srwi	0,20,34-32
	adde	18,18,5
	srwi	5,21,34-32
	insrwi	3,20,28,0
	insrwi	4,21,28,0
	xor	14,14,23
	addc	27,27,19
	xor	15,15,22
	insrwi	0,21,34-32,0
	insrwi	5,20,34-32,0
	adde	26,26,18
	srwi	9,20,39-32
	srwi	10,21,39-32
	xor	0,0,3
	addc	19,19,14
	xor	5,5,4
	insrwi	9,21,39-32,0
	insrwi	10,20,39-32,0
	adde	18,18,15
	lwz	3,88(1)
	lwz	4,92(1)
	xor	0,0,9
	xor	5,5,10
	addc	19,19,0
	adde	18,18,5
	srwi	0,3,1
	srwi	5,4,1
	srwi	9,3,8
	srwi	10,4,8
	insrwi	0,4,1,0
	insrwi	5,3,1,0
	srwi	14,3,7
	insrwi	9,4,8,0
	insrwi	10,3,8,0
	insrwi	14,4,7,0
	xor	0,0,9
	lwz	9,64(1)
	srwi	15,4,7
	xor	5,5,10
	lwz	10,68(1)
	xor	14,14,0
	srwi	0,9,19
	xor	15,15,5
	srwi	5,10,19
	addc	6,6,14
	srwi	14,10,61-32
	insrwi	0,10,19,0
	insrwi	5,9,19,0
	adde	8,8,15
	srwi	15,9,61-32

	insrwi	14,9,61-32,0
	srwi	9,9,6
	insrwi	15,10,61-32,0
	insrwi	9,10,6,0
	xor	0,0,14
	lwz	14,24(1)
	srwi	10,10,6
	xor	5,5,15
	lwz	15,28(1)
	xor	0,0,9
	addc	6,6,14
	xor	5,5,10
	adde	8,8,15
	addc	6,6,0
	adde	8,8,5
	lwz	9,60(7)
	xor	14,29,31
	lwz	10,56(7)
	xor	15,28,30
	addc	17,17,6
	stw	6,80(1)

	srwi	0,27,14
	srwi	5,26,14
	and	14,14,27
	adde	16,16,8
	and	15,15,26
	stw	8,84(1)
	srwi	6,27,18
	srwi	8,26,18
	addc	17,17,9
	insrwi	0,26,14,0
	insrwi	5,27,14,0
	xor	14,14,31
	adde	16,16,10
	xor	15,15,30
	insrwi	6,26,18,0
	insrwi	8,27,18,0
	addc	17,17,14
	srwi	9,26,41-32
	srwi	10,27,41-32
	xor	0,0,6
	xor	5,5,8
	insrwi	9,27,41-32,0
	insrwi	10,26,41-32,0
	xor	14,19,21
	adde	16,16,15
	xor	15,18,20
	xor	0,0,9
	xor	5,5,10

	srwi	6,19,28
	and	11,11,14
	addc	17,17,0
	and	12,12,15
	srwi	8,18,28
	srwi	0,18,34-32
	adde	16,16,5
	srwi	5,19,34-32
	insrwi	6,18,28,0
	insrwi	8,19,28,0
	xor	11,11,21
	addc	25,25,17
	xor	12,12,20
	insrwi	0,19,34-32,0
	insrwi	5,18,34-32,0
	adde	24,24,16
	srwi	9,18,39-32
	srwi	10,19,39-32
	xor	0,0,6
	addc	17,17,11
	xor	5,5,8
	insrwi	9,19,39-32,0
	insrwi	10,18,39-32,0
	adde	16,16,12
	lwz	6,96(1)
	lwz	8,100(1)
	xor	0,0,9
	xor	5,5,10
	addc	17,17,0
	adde	16,16,5
	srwi	0,6,1
	srwi	5,8,1
	srwi	9,6,8
	srwi	10,8,8
	insrwi	0,8,1,0
	insrwi	5,6,1,0
	srwi	11,6,7
	insrwi	9,8,8,0
	insrwi	10,6,8,0
	insrwi	11,8,7,0
	xor	0,0,9
	lwz	9,72(1)
	srwi	12,8,7
	xor	5,5,10
	lwz	10,76(1)
	xor	11,11,0
	srwi	0,9,19
	xor	12,12,5
	srwi	5,10,19
	addc	3,3,11
	srwi	11,10,61-32
	insrwi	0,10,19,0
	insrwi	5,9,19,0
	adde	4,4,12
	srwi	12,9,61-32

	insrwi	11,9,61-32,0
	srwi	9,9,6
	insrwi	12,10,61-32,0
	insrwi	9,10,6,0
	xor	0,0,11
	lwz	11,32(1)
	srwi	10,10,6
	xor	5,5,12
	lwz	12,36(1)
	xor	0,0,9
	addc	3,3,11
	xor	5,5,10
	adde	4,4,12
	addc	3,3,0
	adde	4,4,5
	lwz	9,68(7)
	xor	11,27,29
	lwz	10,64(7)
	xor	12,26,28
	addc	31,31,3
	stw	3,88(1)

	srwi	0,25,14
	srwi	5,24,14
	and	11,11,25
	adde	30,30,4
	and	12,12,24
	stw	4,92(1)
	srwi	3,25,18
	srwi	4,24,18
	addc	31,31,9
	insrwi	0,24,14,0
	insrwi	5,25,14,0
	xor	11,11,29
	adde	30,30,10
	xor	12,12,28
	insrwi	3,24,18,0
	insrwi	4,25,18,0
	addc	31,31,11
	srwi	9,24,41-32
	srwi	10,25,41-32
	xor	0,0,3
	xor	5,5,4
	insrwi	9,25,41-32,0
	insrwi	10,24,41-32,0
	xor	11,17,19
	adde	30,30,12
	xor	12,16,18
	xor	0,0,9
	xor	5,5,10

	srwi	3,17,28
	and	14,14,11
	addc	31,31,0
	and	15,15,12
	srwi	4,16,28
	srwi	0,16,34-32
	adde	30,30,5
	srwi	5,17,34-32
	insrwi	3,16,28,0
	insrwi	4,17,28,0
	xor	14,14,19
	addc	23,23,31
	xor	15,15,18
	insrwi	0,17,34-32,0
	insrwi	5,16,34-32,0
	adde	22,22,30
	srwi	9,16,39-32
	srwi	10,17,39-32
	xor	0,0,3
	addc	31,31,14
	xor	5,5,4
	insrwi	9,17,39-32,0
	insrwi	10,16,39-32,0
	adde	30,30,15
	lwz	3,104(1)
	lwz	4,108(1)
	xor	0,0,9
	xor	5,5,10
	addc	31,31,0
	adde	30,30,5
	srwi	0,3,1
	srwi	5,4,1
	srwi	9,3,8
	srwi	10,4,8
	insrwi	0,4,1,0
	insrwi	5,3,1,0
	srwi	14,3,7
	insrwi	9,4,8,0
	insrwi	10,3,8,0
	insrwi	14,4,7,0
	xor	0,0,9
	lwz	9,80(1)
	srwi	15,4,7
	xor	5,5,10
	lwz	10,84(1)
	xor	14,14,0
	srwi	0,9,19
	xor	15,15,5
	srwi	5,10,19
	addc	6,6,14
	srwi	14,10,61-32
	insrwi	0,10,19,0
	insrwi	5,9,19,0
	adde	8,8,15
	srwi	15,9,61-32

	insrwi	14,9,61-32,0
	srwi	9,9,6
	insrwi	15,10,61-32,0
	insrwi	9,10,6,0
	xor	0,0,14
	lwz	14,40(1)
	srwi	10,10,6
	xor	5,5,15
	lwz	15,44(1)
	xor	0,0,9
	addc	6,6,14
	xor	5,5,10
	adde	8,8,15
	addc	6,6,0
	adde	8,8,5
	lwz	9,76(7)
	xor	14,25,27
	lwz	10,72(7)
	xor	15,24,26
	addc	29,29,6
	stw	6,96(1)

	srwi	0,23,14
	srwi	5,22,14
	and	14,14,23
	adde	28,28,8
	and	15,15,22
	stw	8,100(1)
	srwi	6,23,18
	srwi	8,22,18
	addc	29,29,9
	insrwi	0,22,14,0
	insrwi	5,23,14,0
	xor	14,14,27
	adde	28,28,10
	xor	15,15,26
	insrwi	6,22,18,0
	insrwi	8,23,18,0
	addc	29,29,14
	srwi	9,22,41-32
	srwi	10,23,41-32
	xor	0,0,6
	xor	5,5,8
	insrwi	9,23,41-32,0
	insrwi	10,22,41-32,0
	xor	14,31,17
	adde	28,28,15
	xor	15,30,16
	xor	0,0,9
	xor	5,5,10

	srwi	6,31,28
	and	11,11,14
	addc	29,29,0
	and	12,12,15
	srwi	8,30,28
	srwi	0,30,34-32
	adde	28,28,5
	srwi	5,31,34-32
	insrwi	6,30,28,0
	insrwi	8,31,28,0
	xor	11,11,17
	addc	21,21,29
	xor	12,12,16
	insrwi	0,31,34-32,0
	insrwi	5,30,34-32,0
	adde	20,20,28
	srwi	9,30,39-32
	srwi	10,31,39-32
	xor	0,0,6
	addc	29,29,11
	xor	5,5,8
	insrwi	9,31,39-32,0
	insrwi	10,30,39-32,0
	adde	28,28,12
	lwz	6,112(1)
	lwz	8,116(1)
	xor	0,0,9
	xor	5,5,10
	addc	29,29,0
	adde	28,28,5
	srwi	0,6,1
	srwi	5,8,1
	srwi	9,6,8
	srwi	10,8,8
	insrwi	0,8,1,0
	insrwi	5,6,1,0
	srwi	11,6,7
	insrwi	9,8,8,0
	insrwi	10,6,8,0
	insrwi	11,8,7,0
	xor	0,0,9
	lwz	9,88(1)
	srwi	12,8,7
	xor	5,5,10
	lwz	10,92(1)
	xor	11,11,0
	srwi	0,9,19
	xor	12,12,5
	srwi	5,10,19
	addc	3,3,11
	srwi	11,10,61-32
	insrwi	0,10,19,0
	insrwi	5,9,19,0
	adde	4,4,12
	srwi	12,9,61-32

	insrwi	11,9,61-32,0
	srwi	9,9,6
	insrwi	12,10,61-32,0
	insrwi	9,10,6,0
	xor	0,0,11
	lwz	11,48(1)
	srwi	10,10,6
	xor	5,5,12
	lwz	12,52(1)
	xor	0,0,9
	addc	3,3,11
	xor	5,5,10
	adde	4,4,12
	addc	3,3,0
	adde	4,4,5
	lwz	9,84(7)
	xor	11,23,25
	lwz	10,80(7)
	xor	12,22,24
	addc	27,27,3
	stw	3,104(1)

	srwi	0,21,14
	srwi	5,20,14
	and	11,11,21
	adde	26,26,4
	and	12,12,20
	stw	4,108(1)
	srwi	3,21,18
	srwi	4,20,18
	addc	27,27,9
	insrwi	0,20,14,0
	insrwi	5,21,14,0
	xor	11,11,25
	adde	26,26,10
	xor	12,12,24
	insrwi	3,20,18,0
	insrwi	4,21,18,0
	addc	27,27,11
	srwi	9,20,41-32
	srwi	10,21,41-32
	xor	0,0,3
	xor	5,5,4
	insrwi	9,21,41-32,0
	insrwi	10,20,41-32,0
	xor	11,29,31
	adde	26,26,12
	xor	12,28,30
	xor	0,0,9
	xor	5,5,10

	srwi	3,29,28
	and	14,14,11
	addc	27,27,0
	and	15,15,12
	srwi	4,28,28
	srwi	0,28,34-32
	adde	26,26,5
	srwi	5,29,34-32
	insrwi	3,28,28,0
	insrwi	4,29,28,0
	xor	14,14,31
	addc	19,19,27
	xor	15,15,30
	insrwi	0,29,34-32,0
	insrwi	5,28,34-32,0
	adde	18,18,26
	srwi	9,28,39-32
	srwi	10,29,39-32
	xor	0,0,3
	addc	27,27,14
	xor	5,5,4
	insrwi	9,29,39-32,0
	insrwi	10,28,39-32,0
	adde	26,26,15
	lwz	3,120(1)
	lwz	4,124(1)
	xor	0,0,9
	xor	5,5,10
	addc	27,27,0
	adde	26,26,5
	srwi	0,3,1
	srwi	5,4,1
	srwi	9,3,8
	srwi	10,4,8
	insrwi	0,4,1,0
	insrwi	5,3,1,0
	srwi	14,3,7
	insrwi	9,4,8,0
	insrwi	10,3,8,0
	insrwi	14,4,7,0
	xor	0,0,9
	lwz	9,96(1)
	srwi	15,4,7
	xor	5,5,10
	lwz	10,100(1)
	xor	14,14,0
	srwi	0,9,19
	xor	15,15,5
	srwi	5,10,19
	addc	6,6,14
	srwi	14,10,61-32
	insrwi	0,10,19,0
	insrwi	5,9,19,0
	adde	8,8,15
	srwi	15,9,61-32

	insrwi	14,9,61-32,0
	srwi	9,9,6
	insrwi	15,10,61-32,0
	insrwi	9,10,6,0
	xor	0,0,14
	lwz	14,56(1)
	srwi	10,10,6
	xor	5,5,15
	lwz	15,60(1)
	xor	0,0,9
	addc	6,6,14
	xor	5,5,10
	adde	8,8,15
	addc	6,6,0
	adde	8,8,5
	lwz	9,92(7)
	xor	14,21,23
	lwz	10,88(7)
	xor	15,20,22
	addc	25,25,6
	stw	6,112(1)

	srwi	0,19,14
	srwi	5,18,14
	and	14,14,19
	adde	24,24,8
	and	15,15,18
	stw	8,116(1)
	srwi	6,19,18
	srwi	8,18,18
	addc	25,25,9
	insrwi	0,18,14,0
	insrwi	5,19,14,0
	xor	14,14,23
	adde	24,24,10
	xor	15,15,22
	insrwi	6,18,18,0
	insrwi	8,19,18,0
	addc	25,25,14
	srwi	9,18,41-32
	srwi	10,19,41-32
	xor	0,0,6
	xor	5,5,8
	insrwi	9,19,41-32,0
	insrwi	10,18,41-32,0
	xor	14,27,29
	adde	24,24,15
	xor	15,26,28
	xor	0,0,9
	xor	5,5,10

	srwi	6,27,28
	and	11,11,14
	addc	25,25,0
	and	12,12,15
	srwi	8,26,28
	srwi	0,26,34-32
	adde	24,24,5
	srwi	5,27,34-32
	insrwi	6,26,28,0
	insrwi	8,27,28,0
	xor	11,11,29
	addc	17,17,25
	xor	12,12,28
	insrwi	0,27,34-32,0
	insrwi	5,26,34-32,0
	adde	16,16,24
	srwi	9,26,39-32
	srwi	10,27,39-32
	xor	0,0,6
	addc	25,25,11
	xor	5,5,8
	insrwi	9,27,39-32,0
	insrwi	10,26,39-32,0
	adde	24,24,12
	lwz	6,128(1)
	lwz	8,132(1)
	xor	0,0,9
	xor	5,5,10
	addc	25,25,0
	adde	24,24,5
	srwi	0,6,1
	srwi	5,8,1
	srwi	9,6,8
	srwi	10,8,8
	insrwi	0,8,1,0
	insrwi	5,6,1,0
	srwi	11,6,7
	insrwi	9,8,8,0
	insrwi	10,6,8,0
	insrwi	11,8,7,0
	xor	0,0,9
	lwz	9,104(1)
	srwi	12,8,7
	xor	5,5,10
	lwz	10,108(1)
	xor	11,11,0
	srwi	0,9,19
	xor	12,12,5
	srwi	5,10,19
	addc	3,3,11
	srwi	11,10,61-32
	insrwi	0,10,19,0
	insrwi	5,9,19,0
	adde	4,4,12
	srwi	12,9,61-32

	insrwi	11,9,61-32,0
	srwi	9,9,6
	insrwi	12,10,61-32,0
	insrwi	9,10,6,0
	xor	0,0,11
	lwz	11,64(1)
	srwi	10,10,6
	xor	5,5,12
	lwz	12,68(1)
	xor	0,0,9
	addc	3,3,11
	xor	5,5,10
	adde	4,4,12
	addc	3,3,0
	adde	4,4,5
	lwz	9,100(7)
	xor	11,19,21
	lwz	10,96(7)
	xor	12,18,20
	addc	23,23,3
	stw	3,120(1)

	srwi	0,17,14
	srwi	5,16,14
	and	11,11,17
	adde	22,22,4
	and	12,12,16
	stw	4,124(1)
	srwi	3,17,18
	srwi	4,16,18
	addc	23,23,9
	insrwi	0,16,14,0
	insrwi	5,17,14,0
	xor	11,11,21
	adde	22,22,10
	xor	12,12,20
	insrwi	3,16,18,0
	insrwi	4,17,18,0
	addc	23,23,11
	srwi	9,16,41-32
	srwi	10,17,41-32
	xor	0,0,3
	xor	5,5,4
	insrwi	9,17,41-32,0
	insrwi	10,16,41-32,0
	xor	11,25,27
	adde	22,22,12
	xor	12,24,26
	xor	0,0,9
	xor	5,5,10

	srwi	3,25,28
	and	14,14,11
	addc	23,23,0
	and	15,15,12
	srwi	4,24,28
	srwi	0,24,34-32
	adde	22,22,5
	srwi	5,25,34-32
	insrwi	3,24,28,0
	insrwi	4,25,28,0
	xor	14,14,27
	addc	31,31,23
	xor	15,15,26
	insrwi	0,25,34-32,0
	insrwi	5,24,34-32,0
	adde	30,30,22
	srwi	9,24,39-32
	srwi	10,25,39-32
	xor	0,0,3
	addc	23,23,14
	xor	5,5,4
	insrwi	9,25,39-32,0
	insrwi	10,24,39-32,0
	adde	22,22,15
	lwz	3,136(1)
	lwz	4,140(1)
	xor	0,0,9
	xor	5,5,10
	addc	23,23,0
	adde	22,22,5
	srwi	0,3,1
	srwi	5,4,1
	srwi	9,3,8
	srwi	10,4,8
	insrwi	0,4,1,0
	insrwi	5,3,1,0
	srwi	14,3,7
	insrwi	9,4,8,0
	insrwi	10,3,8,0
	insrwi	14,4,7,0
	xor	0,0,9
	lwz	9,112(1)
	srwi	15,4,7
	xor	5,5,10
	lwz	10,116(1)
	xor	14,14,0
	srwi	0,9,19
	xor	15,15,5
	srwi	5,10,19
	addc	6,6,14
	srwi	14,10,61-32
	insrwi	0,10,19,0
	insrwi	5,9,19,0
	adde	8,8,15
	srwi	15,9,61-32

	insrwi	14,9,61-32,0
	srwi	9,9,6
	insrwi	15,10,61-32,0
	insrwi	9,10,6,0
	xor	0,0,14
	lwz	14,72(1)
	srwi	10,10,6
	xor	5,5,15
	lwz	15,76(1)
	xor	0,0,9
	addc	6,6,14
	xor	5,5,10
	adde	8,8,15
	addc	6,6,0
	adde	8,8,5
	lwz	9,108(7)
	xor	14,17,19
	lwz	10,104(7)
	xor	15,16,18
	addc	21,21,6
	stw	6,128(1)

	srwi	0,31,14
	srwi	5,30,14
	and	14,14,31
	adde	20,20,8
	and	15,15,30
	stw	8,132(1)
	srwi	6,31,18
	srwi	8,30,18
	addc	21,21,9
	insrwi	0,30,14,0
	insrwi	5,31,14,0
	xor	14,14,19
	adde	20,20,10
	xor	15,15,18
	insrwi	6,30,18,0
	insrwi	8,31,18,0
	addc	21,21,14
	srwi	9,30,41-32
	srwi	10,31,41-32
	xor	0,0,6
	xor	5,5,8
	insrwi	9,31,41-32,0
	insrwi	10,30,41-32,0
	xor	14,23,25
	adde	20,20,15
	xor	15,22,24
	xor	0,0,9
	xor	5,5,10

	srwi	6,23,28
	and	11,11,14
	addc	21,21,0
	and	12,12,15
	srwi	8,22,28
	srwi	0,22,34-32
	adde	20,20,5
	srwi	5,23,34-32
	insrwi	6,22,28,0
	insrwi	8,23,28,0
	xor	11,11,25
	addc	29,29,21
	xor	12,12,24
	insrwi	0,23,34-32,0
	insrwi	5,22,34-32,0
	adde	28,28,20
	srwi	9,22,39-32
	srwi	10,23,39-32
	xor	0,0,6
	addc	21,21,11
	xor	5,5,8
	insrwi	9,23,39-32,0
	insrwi	10,22,39-32,0
	adde	20,20,12
	lwz	6,144(1)
	lwz	8,148(1)
	xor	0,0,9
	xor	5,5,10
	addc	21,21,0
	adde	20,20,5
	srwi	0,6,1
	srwi	5,8,1
	srwi	9,6,8
	srwi	10,8,8
	insrwi	0,8,1,0
	insrwi	5,6,1,0
	srwi	11,6,7
	insrwi	9,8,8,0
	insrwi	10,6,8,0
	insrwi	11,8,7,0
	xor	0,0,9
	lwz	9,120(1)
	srwi	12,8,7
	xor	5,5,10
	lwz	10,124(1)
	xor	11,11,0
	srwi	0,9,19
	xor	12,12,5
	srwi	5,10,19
	addc	3,3,11
	srwi	11,10,61-32
	insrwi	0,10,19,0
	insrwi	5,9,19,0
	adde	4,4,12
	srwi	12,9,61-32

	insrwi	11,9,61-32,0
	srwi	9,9,6
	insrwi	12,10,61-32,0
	insrwi	9,10,6,0
	xor	0,0,11
	lwz	11,80(1)
	srwi	10,10,6
	xor	5,5,12
	lwz	12,84(1)
	xor	0,0,9
	addc	3,3,11
	xor	5,5,10
	adde	4,4,12
	addc	3,3,0
	adde	4,4,5
	lwz	9,116(7)
	xor	11,31,17
	lwz	10,112(7)
	xor	12,30,16
	addc	19,19,3
	stw	3,136(1)

	srwi	0,29,14
	srwi	5,28,14
	and	11,11,29
	adde	18,18,4
	and	12,12,28
	stw	4,140(1)
	srwi	3,29,18
	srwi	4,28,18
	addc	19,19,9
	insrwi	0,28,14,0
	insrwi	5,29,14,0
	xor	11,11,17
	adde	18,18,10
	xor	12,12,16
	insrwi	3,28,18,0
	insrwi	4,29,18,0
	addc	19,19,11
	srwi	9,28,41-32
	srwi	10,29,41-32
	xor	0,0,3
	xor	5,5,4
	insrwi	9,29,41-32,0
	insrwi	10,28,41-32,0
	xor	11,21,23
	adde	18,18,12
	xor	12,20,22
	xor	0,0,9
	xor	5,5,10

	srwi	3,21,28
	and	14,14,11
	addc	19,19,0
	and	15,15,12
	srwi	4,20,28
	srwi	0,20,34-32
	adde	18,18,5
	srwi	5,21,34-32
	insrwi	3,20,28,0
	insrwi	4,21,28,0
	xor	14,14,23
	addc	27,27,19
	xor	15,15,22
	insrwi	0,21,34-32,0
	insrwi	5,20,34-32,0
	adde	26,26,18
	srwi	9,20,39-32
	srwi	10,21,39-32
	xor	0,0,3
	addc	19,19,14
	xor	5,5,4
	insrwi	9,21,39-32,0
	insrwi	10,20,39-32,0
	adde	18,18,15
	lwz	3,24(1)
	lwz	4,28(1)
	xor	0,0,9
	xor	5,5,10
	addc	19,19,0
	adde	18,18,5
	srwi	0,3,1
	srwi	5,4,1
	srwi	9,3,8
	srwi	10,4,8
	insrwi	0,4,1,0
	insrwi	5,3,1,0
	srwi	14,3,7
	insrwi	9,4,8,0
	insrwi	10,3,8,0
	insrwi	14,4,7,0
	xor	0,0,9
	lwz	9,128(1)
	srwi	15,4,7
	xor	5,5,10
	lwz	10,132(1)
	xor	14,14,0
	srwi	0,9,19
	xor	15,15,5
	srwi	5,10,19
	addc	6,6,14
	srwi	14,10,61-32
	insrwi	0,10,19,0
	insrwi	5,9,19,0
	adde	8,8,15
	srwi	15,9,61-32

	insrwi	14,9,61-32,0
	srwi	9,9,6
	insrwi	15,10,61-32,0
	insrwi	9,10,6,0
	xor	0,0,14
	lwz	14,88(1)
	srwi	10,10,6
	xor	5,5,15
	lwz	15,92(1)
	xor	0,0,9
	addc	6,6,14
	xor	5,5,10
	adde	8,8,15
	addc	6,6,0
	adde	8,8,5
	lwz	9,124(7)
	xor	14,29,31
	lwz	10,120(7)
	xor	15,28,30
	addc	17,17,6
	stw	6,144(1)

	srwi	0,27,14
	srwi	5,26,14
	and	14,14,27
	adde	16,16,8
	and	15,15,26
	stw	8,148(1)
	srwi	6,27,18
	srwi	8,26,18
	addc	17,17,9
	insrwi	0,26,14,0
	insrwi	5,27,14,0
	xor	14,14,31
	adde	16,16,10
	xor	15,15,30
	insrwi	6,26,18,0
	insrwi	8,27,18,0
	addc	17,17,14
	srwi	9,26,41-32
	srwi	10,27,41-32
	xor	0,0,6
	xor	5,5,8
	insrwi	9,27,41-32,0
	insrwi	10,26,41-32,0
	xor	14,19,21
	adde	16,16,15
	xor	15,18,20
	xor	0,0,9
	xor	5,5,10

	srwi	6,19,28
	and	11,11,14
	addc	17,17,0
	and	12,12,15
	srwi	8,18,28
	srwi	0,18,34-32
	adde	16,16,5
	srwi	5,19,34-32
	insrwi	6,18,28,0
	insrwi	8,19,28,0
	xor	11,11,21
	addc	25,25,17
	xor	12,12,20
	insrwi	0,19,34-32,0
	insrwi	5,18,34-32,0
	adde	24,24,16
	srwi	9,18,39-32
	srwi	10,19,39-32
	xor	0,0,6
	addc	17,17,11
	xor	5,5,8
	insrwi	9,19,39-32,0
	insrwi	10,18,39-32,0
	adde	16,16,12
	lwz	6,32(1)
	lwz	8,36(1)
	xor	0,0,9
	xor	5,5,10
	addc	17,17,0
	adde	16,16,5
	bc	16,0,Lrounds

	lwz	3,168(1)
	lwz	4,164(1)
	lwz	5,160(1)
	subi	7,7,512

	lwz	6,0(3)
	lwz	8,4(3)
	lwz	9,8(3)
	lwz	10,12(3)
	lwz	11,16(3)
	lwz	12,20(3)
	lwz	14,24(3)
	addc	17,17,8
	lwz	15,28(3)
	adde	16,16,6
	lwz	6,32(3)
	addc	19,19,10
	lwz	8,36(3)
	adde	18,18,9
	lwz	9,40(3)
	addc	21,21,12
	lwz	10,44(3)
	adde	20,20,11
	lwz	11,48(3)
	addc	23,23,15
	lwz	12,52(3)
	adde	22,22,14
	lwz	14,56(3)
	addc	25,25,8
	lwz	15,60(3)
	adde	24,24,6
	stw	16,0(3)
	stw	17,4(3)
	addc	27,27,10
	stw	18,8(3)
	stw	19,12(3)
	adde	26,26,9
	stw	20,16(3)
	stw	21,20(3)
	addc	29,29,12
	stw	22,24(3)
	stw	23,28(3)
	adde	28,28,11
	stw	24,32(3)
	stw	25,36(3)
	addc	31,31,15
	stw	26,40(3)
	stw	27,44(3)
	adde	30,30,14
	stw	28,48(3)
	stw	29,52(3)
	stw	30,56(3)
	stw	31,60(3)

	addi	4,4,128
	stw	4,164(1)
	cmplw	0,4,5
	bne	Lsha2_block_private
	blr	
.long	0
.byte	0,12,0x14,0,0,0,0,0

.align	6
LPICmeup:
	mflr	0
	bcl	20,31,$+4
	mflr	7
	addi	7,7,56
	mtlr	0
	blr	
.long	0
.byte	0,12,0x14,0,0,0,0,0
.space	28
.long	0x428a2f98,0xd728ae22
.long	0x71374491,0x23ef65cd
.long	0xb5c0fbcf,0xec4d3b2f
.long	0xe9b5dba5,0x8189dbbc
.long	0x3956c25b,0xf348b538
.long	0x59f111f1,0xb605d019
.long	0x923f82a4,0xaf194f9b
.long	0xab1c5ed5,0xda6d8118
.long	0xd807aa98,0xa3030242
.long	0x12835b01,0x45706fbe
.long	0x243185be,0x4ee4b28c
.long	0x550c7dc3,0xd5ffb4e2
.long	0x72be5d74,0xf27b896f
.long	0x80deb1fe,0x3b1696b1
.long	0x9bdc06a7,0x25c71235
.long	0xc19bf174,0xcf692694
.long	0xe49b69c1,0x9ef14ad2
.long	0xefbe4786,0x384f25e3
.long	0x0fc19dc6,0x8b8cd5b5
.long	0x240ca1cc,0x77ac9c65
.long	0x2de92c6f,0x592b0275
.long	0x4a7484aa,0x6ea6e483
.long	0x5cb0a9dc,0xbd41fbd4
.long	0x76f988da,0x831153b5
.long	0x983e5152,0xee66dfab
.long	0xa831c66d,0x2db43210
.long	0xb00327c8,0x98fb213f
.long	0xbf597fc7,0xbeef0ee4
.long	0xc6e00bf3,0x3da88fc2
.long	0xd5a79147,0x930aa725
.long	0x06ca6351,0xe003826f
.long	0x14292967,0x0a0e6e70
.long	0x27b70a85,0x46d22ffc
.long	0x2e1b2138,0x5c26c926
.long	0x4d2c6dfc,0x5ac42aed
.long	0x53380d13,0x9d95b3df
.long	0x650a7354,0x8baf63de
.long	0x766a0abb,0x3c77b2a8
.long	0x81c2c92e,0x47edaee6
.long	0x92722c85,0x1482353b
.long	0xa2bfe8a1,0x4cf10364
.long	0xa81a664b,0xbc423001
.long	0xc24b8b70,0xd0f89791
.long	0xc76c51a3,0x0654be30
.long	0xd192e819,0xd6ef5218
.long	0xd6990624,0x5565a910
.long	0xf40e3585,0x5771202a
.long	0x106aa070,0x32bbd1b8
.long	0x19a4c116,0xb8d2d0c8
.long	0x1e376c08,0x5141ab53
.long	0x2748774c,0xdf8eeb99
.long	0x34b0bcb5,0xe19b48a8
.long	0x391c0cb3,0xc5c95a63
.long	0x4ed8aa4a,0xe3418acb
.long	0x5b9cca4f,0x7763e373
.long	0x682e6ff3,0xd6b2b8a3
.long	0x748f82ee,0x5defb2fc
.long	0x78a5636f,0x43172f60
.long	0x84c87814,0xa1f0ab72
.long	0x8cc70208,0x1a6439ec
.long	0x90befffa,0x23631e28
.long	0xa4506ceb,0xde82bde9
.long	0xbef9a3f7,0xb2c67915
.long	0xc67178f2,0xe372532b
.long	0xca273ece,0xea26619c
.long	0xd186b8c7,0x21c0c207
.long	0xeada7dd6,0xcde0eb1e
.long	0xf57d4f7f,0xee6ed178
.long	0x06f067aa,0x72176fba
.long	0x0a637dc5,0xa2c898a6
.long	0x113f9804,0xbef90dae
.long	0x1b710b35,0x131c471b
.long	0x28db77f5,0x23047d84
.long	0x32caab7b,0x40c72493
.long	0x3c9ebe0a,0x15c9bebc
.long	0x431d67c4,0x9c100d4c
.long	0x4cc5d4be,0xcb3e42b6
.long	0x597f299c,0xfc657e2a
.long	0x5fcb6fab,0x3ad6faec
.long	0x6c44198c,0x4a475817
