1#if defined(__x86_64__)
2.text
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19.type	_vpaes_encrypt_core,@function
20.align	16
21_vpaes_encrypt_core:
22	movq	%rdx,%r9
23	movq	$16,%r11
24	movl	240(%rdx),%eax
25	movdqa	%xmm9,%xmm1
26	movdqa	.Lk_ipt(%rip),%xmm2
27	pandn	%xmm0,%xmm1
28	movdqu	(%r9),%xmm5
29	psrld	$4,%xmm1
30	pand	%xmm9,%xmm0
31.byte	102,15,56,0,208
32	movdqa	.Lk_ipt+16(%rip),%xmm0
33.byte	102,15,56,0,193
34	pxor	%xmm5,%xmm2
35	addq	$16,%r9
36	pxor	%xmm2,%xmm0
37	leaq	.Lk_mc_backward(%rip),%r10
38	jmp	.Lenc_entry
39
40.align	16
41.Lenc_loop:
42
43	movdqa	%xmm13,%xmm4
44	movdqa	%xmm12,%xmm0
45.byte	102,15,56,0,226
46.byte	102,15,56,0,195
47	pxor	%xmm5,%xmm4
48	movdqa	%xmm15,%xmm5
49	pxor	%xmm4,%xmm0
50	movdqa	-64(%r11,%r10,1),%xmm1
51.byte	102,15,56,0,234
52	movdqa	(%r11,%r10,1),%xmm4
53	movdqa	%xmm14,%xmm2
54.byte	102,15,56,0,211
55	movdqa	%xmm0,%xmm3
56	pxor	%xmm5,%xmm2
57.byte	102,15,56,0,193
58	addq	$16,%r9
59	pxor	%xmm2,%xmm0
60.byte	102,15,56,0,220
61	addq	$16,%r11
62	pxor	%xmm0,%xmm3
63.byte	102,15,56,0,193
64	andq	$0x30,%r11
65	subq	$1,%rax
66	pxor	%xmm3,%xmm0
67
68.Lenc_entry:
69
70	movdqa	%xmm9,%xmm1
71	movdqa	%xmm11,%xmm5
72	pandn	%xmm0,%xmm1
73	psrld	$4,%xmm1
74	pand	%xmm9,%xmm0
75.byte	102,15,56,0,232
76	movdqa	%xmm10,%xmm3
77	pxor	%xmm1,%xmm0
78.byte	102,15,56,0,217
79	movdqa	%xmm10,%xmm4
80	pxor	%xmm5,%xmm3
81.byte	102,15,56,0,224
82	movdqa	%xmm10,%xmm2
83	pxor	%xmm5,%xmm4
84.byte	102,15,56,0,211
85	movdqa	%xmm10,%xmm3
86	pxor	%xmm0,%xmm2
87.byte	102,15,56,0,220
88	movdqu	(%r9),%xmm5
89	pxor	%xmm1,%xmm3
90	jnz	.Lenc_loop
91
92
93	movdqa	-96(%r10),%xmm4
94	movdqa	-80(%r10),%xmm0
95.byte	102,15,56,0,226
96	pxor	%xmm5,%xmm4
97.byte	102,15,56,0,195
98	movdqa	64(%r11,%r10,1),%xmm1
99	pxor	%xmm4,%xmm0
100.byte	102,15,56,0,193
101	.byte	0xf3,0xc3
102.size	_vpaes_encrypt_core,.-_vpaes_encrypt_core
103
104
105
106
107
108
109.type	_vpaes_decrypt_core,@function
110.align	16
111_vpaes_decrypt_core:
112	movq	%rdx,%r9
113	movl	240(%rdx),%eax
114	movdqa	%xmm9,%xmm1
115	movdqa	.Lk_dipt(%rip),%xmm2
116	pandn	%xmm0,%xmm1
117	movq	%rax,%r11
118	psrld	$4,%xmm1
119	movdqu	(%r9),%xmm5
120	shlq	$4,%r11
121	pand	%xmm9,%xmm0
122.byte	102,15,56,0,208
123	movdqa	.Lk_dipt+16(%rip),%xmm0
124	xorq	$0x30,%r11
125	leaq	.Lk_dsbd(%rip),%r10
126.byte	102,15,56,0,193
127	andq	$0x30,%r11
128	pxor	%xmm5,%xmm2
129	movdqa	.Lk_mc_forward+48(%rip),%xmm5
130	pxor	%xmm2,%xmm0
131	addq	$16,%r9
132	addq	%r10,%r11
133	jmp	.Ldec_entry
134
135.align	16
136.Ldec_loop:
137
138
139
140	movdqa	-32(%r10),%xmm4
141	movdqa	-16(%r10),%xmm1
142.byte	102,15,56,0,226
143.byte	102,15,56,0,203
144	pxor	%xmm4,%xmm0
145	movdqa	0(%r10),%xmm4
146	pxor	%xmm1,%xmm0
147	movdqa	16(%r10),%xmm1
148
149.byte	102,15,56,0,226
150.byte	102,15,56,0,197
151.byte	102,15,56,0,203
152	pxor	%xmm4,%xmm0
153	movdqa	32(%r10),%xmm4
154	pxor	%xmm1,%xmm0
155	movdqa	48(%r10),%xmm1
156
157.byte	102,15,56,0,226
158.byte	102,15,56,0,197
159.byte	102,15,56,0,203
160	pxor	%xmm4,%xmm0
161	movdqa	64(%r10),%xmm4
162	pxor	%xmm1,%xmm0
163	movdqa	80(%r10),%xmm1
164
165.byte	102,15,56,0,226
166.byte	102,15,56,0,197
167.byte	102,15,56,0,203
168	pxor	%xmm4,%xmm0
169	addq	$16,%r9
170.byte	102,15,58,15,237,12
171	pxor	%xmm1,%xmm0
172	subq	$1,%rax
173
174.Ldec_entry:
175
176	movdqa	%xmm9,%xmm1
177	pandn	%xmm0,%xmm1
178	movdqa	%xmm11,%xmm2
179	psrld	$4,%xmm1
180	pand	%xmm9,%xmm0
181.byte	102,15,56,0,208
182	movdqa	%xmm10,%xmm3
183	pxor	%xmm1,%xmm0
184.byte	102,15,56,0,217
185	movdqa	%xmm10,%xmm4
186	pxor	%xmm2,%xmm3
187.byte	102,15,56,0,224
188	pxor	%xmm2,%xmm4
189	movdqa	%xmm10,%xmm2
190.byte	102,15,56,0,211
191	movdqa	%xmm10,%xmm3
192	pxor	%xmm0,%xmm2
193.byte	102,15,56,0,220
194	movdqu	(%r9),%xmm0
195	pxor	%xmm1,%xmm3
196	jnz	.Ldec_loop
197
198
199	movdqa	96(%r10),%xmm4
200.byte	102,15,56,0,226
201	pxor	%xmm0,%xmm4
202	movdqa	112(%r10),%xmm0
203	movdqa	-352(%r11),%xmm2
204.byte	102,15,56,0,195
205	pxor	%xmm4,%xmm0
206.byte	102,15,56,0,194
207	.byte	0xf3,0xc3
208.size	_vpaes_decrypt_core,.-_vpaes_decrypt_core
209
210
211
212
213
214
215.type	_vpaes_schedule_core,@function
216.align	16
217_vpaes_schedule_core:
218
219
220
221
222
223	call	_vpaes_preheat
224	movdqa	.Lk_rcon(%rip),%xmm8
225	movdqu	(%rdi),%xmm0
226
227
228	movdqa	%xmm0,%xmm3
229	leaq	.Lk_ipt(%rip),%r11
230	call	_vpaes_schedule_transform
231	movdqa	%xmm0,%xmm7
232
233	leaq	.Lk_sr(%rip),%r10
234	testq	%rcx,%rcx
235	jnz	.Lschedule_am_decrypting
236
237
238	movdqu	%xmm0,(%rdx)
239	jmp	.Lschedule_go
240
241.Lschedule_am_decrypting:
242
243	movdqa	(%r8,%r10,1),%xmm1
244.byte	102,15,56,0,217
245	movdqu	%xmm3,(%rdx)
246	xorq	$0x30,%r8
247
248.Lschedule_go:
249	cmpl	$192,%esi
250	ja	.Lschedule_256
251	je	.Lschedule_192
252
253
254
255
256
257
258
259
260
261
262.Lschedule_128:
263	movl	$10,%esi
264
265.Loop_schedule_128:
266	call	_vpaes_schedule_round
267	decq	%rsi
268	jz	.Lschedule_mangle_last
269	call	_vpaes_schedule_mangle
270	jmp	.Loop_schedule_128
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287.align	16
288.Lschedule_192:
289	movdqu	8(%rdi),%xmm0
290	call	_vpaes_schedule_transform
291	movdqa	%xmm0,%xmm6
292	pxor	%xmm4,%xmm4
293	movhlps	%xmm4,%xmm6
294	movl	$4,%esi
295
296.Loop_schedule_192:
297	call	_vpaes_schedule_round
298.byte	102,15,58,15,198,8
299	call	_vpaes_schedule_mangle
300	call	_vpaes_schedule_192_smear
301	call	_vpaes_schedule_mangle
302	call	_vpaes_schedule_round
303	decq	%rsi
304	jz	.Lschedule_mangle_last
305	call	_vpaes_schedule_mangle
306	call	_vpaes_schedule_192_smear
307	jmp	.Loop_schedule_192
308
309
310
311
312
313
314
315
316
317
318
319.align	16
320.Lschedule_256:
321	movdqu	16(%rdi),%xmm0
322	call	_vpaes_schedule_transform
323	movl	$7,%esi
324
325.Loop_schedule_256:
326	call	_vpaes_schedule_mangle
327	movdqa	%xmm0,%xmm6
328
329
330	call	_vpaes_schedule_round
331	decq	%rsi
332	jz	.Lschedule_mangle_last
333	call	_vpaes_schedule_mangle
334
335
336	pshufd	$0xFF,%xmm0,%xmm0
337	movdqa	%xmm7,%xmm5
338	movdqa	%xmm6,%xmm7
339	call	_vpaes_schedule_low_round
340	movdqa	%xmm5,%xmm7
341
342	jmp	.Loop_schedule_256
343
344
345
346
347
348
349
350
351
352
353
354
355.align	16
356.Lschedule_mangle_last:
357
358	leaq	.Lk_deskew(%rip),%r11
359	testq	%rcx,%rcx
360	jnz	.Lschedule_mangle_last_dec
361
362
363	movdqa	(%r8,%r10,1),%xmm1
364.byte	102,15,56,0,193
365	leaq	.Lk_opt(%rip),%r11
366	addq	$32,%rdx
367
368.Lschedule_mangle_last_dec:
369	addq	$-16,%rdx
370	pxor	.Lk_s63(%rip),%xmm0
371	call	_vpaes_schedule_transform
372	movdqu	%xmm0,(%rdx)
373
374
375	pxor	%xmm0,%xmm0
376	pxor	%xmm1,%xmm1
377	pxor	%xmm2,%xmm2
378	pxor	%xmm3,%xmm3
379	pxor	%xmm4,%xmm4
380	pxor	%xmm5,%xmm5
381	pxor	%xmm6,%xmm6
382	pxor	%xmm7,%xmm7
383	.byte	0xf3,0xc3
384.size	_vpaes_schedule_core,.-_vpaes_schedule_core
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400.type	_vpaes_schedule_192_smear,@function
401.align	16
402_vpaes_schedule_192_smear:
403	pshufd	$0x80,%xmm6,%xmm1
404	pshufd	$0xFE,%xmm7,%xmm0
405	pxor	%xmm1,%xmm6
406	pxor	%xmm1,%xmm1
407	pxor	%xmm0,%xmm6
408	movdqa	%xmm6,%xmm0
409	movhlps	%xmm1,%xmm6
410	.byte	0xf3,0xc3
411.size	_vpaes_schedule_192_smear,.-_vpaes_schedule_192_smear
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431.type	_vpaes_schedule_round,@function
432.align	16
433_vpaes_schedule_round:
434
435	pxor	%xmm1,%xmm1
436.byte	102,65,15,58,15,200,15
437.byte	102,69,15,58,15,192,15
438	pxor	%xmm1,%xmm7
439
440
441	pshufd	$0xFF,%xmm0,%xmm0
442.byte	102,15,58,15,192,1
443
444
445
446
447_vpaes_schedule_low_round:
448
449	movdqa	%xmm7,%xmm1
450	pslldq	$4,%xmm7
451	pxor	%xmm1,%xmm7
452	movdqa	%xmm7,%xmm1
453	pslldq	$8,%xmm7
454	pxor	%xmm1,%xmm7
455	pxor	.Lk_s63(%rip),%xmm7
456
457
458	movdqa	%xmm9,%xmm1
459	pandn	%xmm0,%xmm1
460	psrld	$4,%xmm1
461	pand	%xmm9,%xmm0
462	movdqa	%xmm11,%xmm2
463.byte	102,15,56,0,208
464	pxor	%xmm1,%xmm0
465	movdqa	%xmm10,%xmm3
466.byte	102,15,56,0,217
467	pxor	%xmm2,%xmm3
468	movdqa	%xmm10,%xmm4
469.byte	102,15,56,0,224
470	pxor	%xmm2,%xmm4
471	movdqa	%xmm10,%xmm2
472.byte	102,15,56,0,211
473	pxor	%xmm0,%xmm2
474	movdqa	%xmm10,%xmm3
475.byte	102,15,56,0,220
476	pxor	%xmm1,%xmm3
477	movdqa	%xmm13,%xmm4
478.byte	102,15,56,0,226
479	movdqa	%xmm12,%xmm0
480.byte	102,15,56,0,195
481	pxor	%xmm4,%xmm0
482
483
484	pxor	%xmm7,%xmm0
485	movdqa	%xmm0,%xmm7
486	.byte	0xf3,0xc3
487.size	_vpaes_schedule_round,.-_vpaes_schedule_round
488
489
490
491
492
493
494
495
496
497
498.type	_vpaes_schedule_transform,@function
499.align	16
500_vpaes_schedule_transform:
501	movdqa	%xmm9,%xmm1
502	pandn	%xmm0,%xmm1
503	psrld	$4,%xmm1
504	pand	%xmm9,%xmm0
505	movdqa	(%r11),%xmm2
506.byte	102,15,56,0,208
507	movdqa	16(%r11),%xmm0
508.byte	102,15,56,0,193
509	pxor	%xmm2,%xmm0
510	.byte	0xf3,0xc3
511.size	_vpaes_schedule_transform,.-_vpaes_schedule_transform
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536.type	_vpaes_schedule_mangle,@function
537.align	16
538_vpaes_schedule_mangle:
539	movdqa	%xmm0,%xmm4
540	movdqa	.Lk_mc_forward(%rip),%xmm5
541	testq	%rcx,%rcx
542	jnz	.Lschedule_mangle_dec
543
544
545	addq	$16,%rdx
546	pxor	.Lk_s63(%rip),%xmm4
547.byte	102,15,56,0,229
548	movdqa	%xmm4,%xmm3
549.byte	102,15,56,0,229
550	pxor	%xmm4,%xmm3
551.byte	102,15,56,0,229
552	pxor	%xmm4,%xmm3
553
554	jmp	.Lschedule_mangle_both
555.align	16
556.Lschedule_mangle_dec:
557
558	leaq	.Lk_dksd(%rip),%r11
559	movdqa	%xmm9,%xmm1
560	pandn	%xmm4,%xmm1
561	psrld	$4,%xmm1
562	pand	%xmm9,%xmm4
563
564	movdqa	0(%r11),%xmm2
565.byte	102,15,56,0,212
566	movdqa	16(%r11),%xmm3
567.byte	102,15,56,0,217
568	pxor	%xmm2,%xmm3
569.byte	102,15,56,0,221
570
571	movdqa	32(%r11),%xmm2
572.byte	102,15,56,0,212
573	pxor	%xmm3,%xmm2
574	movdqa	48(%r11),%xmm3
575.byte	102,15,56,0,217
576	pxor	%xmm2,%xmm3
577.byte	102,15,56,0,221
578
579	movdqa	64(%r11),%xmm2
580.byte	102,15,56,0,212
581	pxor	%xmm3,%xmm2
582	movdqa	80(%r11),%xmm3
583.byte	102,15,56,0,217
584	pxor	%xmm2,%xmm3
585.byte	102,15,56,0,221
586
587	movdqa	96(%r11),%xmm2
588.byte	102,15,56,0,212
589	pxor	%xmm3,%xmm2
590	movdqa	112(%r11),%xmm3
591.byte	102,15,56,0,217
592	pxor	%xmm2,%xmm3
593
594	addq	$-16,%rdx
595
596.Lschedule_mangle_both:
597	movdqa	(%r8,%r10,1),%xmm1
598.byte	102,15,56,0,217
599	addq	$-16,%r8
600	andq	$0x30,%r8
601	movdqu	%xmm3,(%rdx)
602	.byte	0xf3,0xc3
603.size	_vpaes_schedule_mangle,.-_vpaes_schedule_mangle
604
605
606
607
608.globl	vpaes_set_encrypt_key
609.hidden vpaes_set_encrypt_key
610.type	vpaes_set_encrypt_key,@function
611.align	16
612vpaes_set_encrypt_key:
613	movl	%esi,%eax
614	shrl	$5,%eax
615	addl	$5,%eax
616	movl	%eax,240(%rdx)
617
618	movl	$0,%ecx
619	movl	$0x30,%r8d
620	call	_vpaes_schedule_core
621	xorl	%eax,%eax
622	.byte	0xf3,0xc3
623.size	vpaes_set_encrypt_key,.-vpaes_set_encrypt_key
624
625.globl	vpaes_set_decrypt_key
626.hidden vpaes_set_decrypt_key
627.type	vpaes_set_decrypt_key,@function
628.align	16
629vpaes_set_decrypt_key:
630	movl	%esi,%eax
631	shrl	$5,%eax
632	addl	$5,%eax
633	movl	%eax,240(%rdx)
634	shll	$4,%eax
635	leaq	16(%rdx,%rax,1),%rdx
636
637	movl	$1,%ecx
638	movl	%esi,%r8d
639	shrl	$1,%r8d
640	andl	$32,%r8d
641	xorl	$32,%r8d
642	call	_vpaes_schedule_core
643	xorl	%eax,%eax
644	.byte	0xf3,0xc3
645.size	vpaes_set_decrypt_key,.-vpaes_set_decrypt_key
646
647.globl	vpaes_encrypt
648.hidden vpaes_encrypt
649.type	vpaes_encrypt,@function
650.align	16
651vpaes_encrypt:
652	movdqu	(%rdi),%xmm0
653	call	_vpaes_preheat
654	call	_vpaes_encrypt_core
655	movdqu	%xmm0,(%rsi)
656	.byte	0xf3,0xc3
657.size	vpaes_encrypt,.-vpaes_encrypt
658
659.globl	vpaes_decrypt
660.hidden vpaes_decrypt
661.type	vpaes_decrypt,@function
662.align	16
663vpaes_decrypt:
664	movdqu	(%rdi),%xmm0
665	call	_vpaes_preheat
666	call	_vpaes_decrypt_core
667	movdqu	%xmm0,(%rsi)
668	.byte	0xf3,0xc3
669.size	vpaes_decrypt,.-vpaes_decrypt
670.globl	vpaes_cbc_encrypt
671.hidden vpaes_cbc_encrypt
672.type	vpaes_cbc_encrypt,@function
673.align	16
674vpaes_cbc_encrypt:
675	xchgq	%rcx,%rdx
676	subq	$16,%rcx
677	jc	.Lcbc_abort
678	movdqu	(%r8),%xmm6
679	subq	%rdi,%rsi
680	call	_vpaes_preheat
681	cmpl	$0,%r9d
682	je	.Lcbc_dec_loop
683	jmp	.Lcbc_enc_loop
684.align	16
685.Lcbc_enc_loop:
686	movdqu	(%rdi),%xmm0
687	pxor	%xmm6,%xmm0
688	call	_vpaes_encrypt_core
689	movdqa	%xmm0,%xmm6
690	movdqu	%xmm0,(%rsi,%rdi,1)
691	leaq	16(%rdi),%rdi
692	subq	$16,%rcx
693	jnc	.Lcbc_enc_loop
694	jmp	.Lcbc_done
695.align	16
696.Lcbc_dec_loop:
697	movdqu	(%rdi),%xmm0
698	movdqa	%xmm0,%xmm7
699	call	_vpaes_decrypt_core
700	pxor	%xmm6,%xmm0
701	movdqa	%xmm7,%xmm6
702	movdqu	%xmm0,(%rsi,%rdi,1)
703	leaq	16(%rdi),%rdi
704	subq	$16,%rcx
705	jnc	.Lcbc_dec_loop
706.Lcbc_done:
707	movdqu	%xmm6,(%r8)
708.Lcbc_abort:
709	.byte	0xf3,0xc3
710.size	vpaes_cbc_encrypt,.-vpaes_cbc_encrypt
711
712
713
714
715
716
717.type	_vpaes_preheat,@function
718.align	16
719_vpaes_preheat:
720	leaq	.Lk_s0F(%rip),%r10
721	movdqa	-32(%r10),%xmm10
722	movdqa	-16(%r10),%xmm11
723	movdqa	0(%r10),%xmm9
724	movdqa	48(%r10),%xmm13
725	movdqa	64(%r10),%xmm12
726	movdqa	80(%r10),%xmm15
727	movdqa	96(%r10),%xmm14
728	.byte	0xf3,0xc3
729.size	_vpaes_preheat,.-_vpaes_preheat
730
731
732
733
734
735.type	_vpaes_consts,@object
736.align	64
737_vpaes_consts:
738.Lk_inv:
739.quad	0x0E05060F0D080180, 0x040703090A0B0C02
740.quad	0x01040A060F0B0780, 0x030D0E0C02050809
741
742.Lk_s0F:
743.quad	0x0F0F0F0F0F0F0F0F, 0x0F0F0F0F0F0F0F0F
744
745.Lk_ipt:
746.quad	0xC2B2E8985A2A7000, 0xCABAE09052227808
747.quad	0x4C01307D317C4D00, 0xCD80B1FCB0FDCC81
748
749.Lk_sb1:
750.quad	0xB19BE18FCB503E00, 0xA5DF7A6E142AF544
751.quad	0x3618D415FAE22300, 0x3BF7CCC10D2ED9EF
752.Lk_sb2:
753.quad	0xE27A93C60B712400, 0x5EB7E955BC982FCD
754.quad	0x69EB88400AE12900, 0xC2A163C8AB82234A
755.Lk_sbo:
756.quad	0xD0D26D176FBDC700, 0x15AABF7AC502A878
757.quad	0xCFE474A55FBB6A00, 0x8E1E90D1412B35FA
758
759.Lk_mc_forward:
760.quad	0x0407060500030201, 0x0C0F0E0D080B0A09
761.quad	0x080B0A0904070605, 0x000302010C0F0E0D
762.quad	0x0C0F0E0D080B0A09, 0x0407060500030201
763.quad	0x000302010C0F0E0D, 0x080B0A0904070605
764
765.Lk_mc_backward:
766.quad	0x0605040702010003, 0x0E0D0C0F0A09080B
767.quad	0x020100030E0D0C0F, 0x0A09080B06050407
768.quad	0x0E0D0C0F0A09080B, 0x0605040702010003
769.quad	0x0A09080B06050407, 0x020100030E0D0C0F
770
771.Lk_sr:
772.quad	0x0706050403020100, 0x0F0E0D0C0B0A0908
773.quad	0x030E09040F0A0500, 0x0B06010C07020D08
774.quad	0x0F060D040B020900, 0x070E050C030A0108
775.quad	0x0B0E0104070A0D00, 0x0306090C0F020508
776
777.Lk_rcon:
778.quad	0x1F8391B9AF9DEEB6, 0x702A98084D7C7D81
779
780.Lk_s63:
781.quad	0x5B5B5B5B5B5B5B5B, 0x5B5B5B5B5B5B5B5B
782
783.Lk_opt:
784.quad	0xFF9F4929D6B66000, 0xF7974121DEBE6808
785.quad	0x01EDBD5150BCEC00, 0xE10D5DB1B05C0CE0
786
787.Lk_deskew:
788.quad	0x07E4A34047A4E300, 0x1DFEB95A5DBEF91A
789.quad	0x5F36B5DC83EA6900, 0x2841C2ABF49D1E77
790
791
792
793
794
795.Lk_dksd:
796.quad	0xFEB91A5DA3E44700, 0x0740E3A45A1DBEF9
797.quad	0x41C277F4B5368300, 0x5FDC69EAAB289D1E
798.Lk_dksb:
799.quad	0x9A4FCA1F8550D500, 0x03D653861CC94C99
800.quad	0x115BEDA7B6FC4A00, 0xD993256F7E3482C8
801.Lk_dkse:
802.quad	0xD5031CCA1FC9D600, 0x53859A4C994F5086
803.quad	0xA23196054FDC7BE8, 0xCD5EF96A20B31487
804.Lk_dks9:
805.quad	0xB6116FC87ED9A700, 0x4AED933482255BFC
806.quad	0x4576516227143300, 0x8BB89FACE9DAFDCE
807
808
809
810
811
812.Lk_dipt:
813.quad	0x0F505B040B545F00, 0x154A411E114E451A
814.quad	0x86E383E660056500, 0x12771772F491F194
815
816.Lk_dsb9:
817.quad	0x851C03539A86D600, 0xCAD51F504F994CC9
818.quad	0xC03B1789ECD74900, 0x725E2C9EB2FBA565
819.Lk_dsbd:
820.quad	0x7D57CCDFE6B1A200, 0xF56E9B13882A4439
821.quad	0x3CE2FAF724C6CB00, 0x2931180D15DEEFD3
822.Lk_dsbb:
823.quad	0xD022649296B44200, 0x602646F6B0F2D404
824.quad	0xC19498A6CD596700, 0xF3FF0C3E3255AA6B
825.Lk_dsbe:
826.quad	0x46F2929626D4D000, 0x2242600464B4F6B0
827.quad	0x0C55A6CDFFAAC100, 0x9467F36B98593E32
828.Lk_dsbo:
829.quad	0x1387EA537EF94000, 0xC7AA6DB9D4943E2D
830.quad	0x12D7560F93441D00, 0xCA4B8159D8C58E9C
831.byte	86,101,99,116,111,114,32,80,101,114,109,117,116,97,116,105,111,110,32,65,69,83,32,102,111,114,32,120,56,54,95,54,52,47,83,83,83,69,51,44,32,77,105,107,101,32,72,97,109,98,117,114,103,32,40,83,116,97,110,102,111,114,100,32,85,110,105,118,101,114,115,105,116,121,41,0
832.align	64
833.size	_vpaes_consts,.-_vpaes_consts
834#endif
835