1/*
2 * CDDL HEADER START
3 *
4 * The contents of this file are subject to the terms of the
5 * Common Development and Distribution License (the "License").
6 * You may not use this file except in compliance with the License.
7 *
8 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9 * or http://www.opensolaris.org/os/licensing.
10 * See the License for the specific language governing permissions
11 * and limitations under the License.
12 *
13 * When distributing Covered Code, include this CDDL HEADER in each
14 * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15 * If applicable, add the following below this CDDL HEADER, with the
16 * fields enclosed by brackets "[]" replaced with your own identifying
17 * information: Portions Copyright [yyyy] [name of copyright owner]
18 *
19 * CDDL HEADER END
20 */
21/*
22 * Copyright 2008 Sun Microsystems, Inc.  All rights reserved.
23 * Use is subject to license terms.
24 */
25
26#ifndef _AESTAB2_H
27#define	_AESTAB2_H
28
29#pragma ident	"%Z%%M%	%I%	%E% SMI"
30
31#ifdef	__cplusplus
32extern "C" {
33#endif
34
35/*
36 * To create this file for OpenSolaris:
37 * 1. Compile and run tablegen.c, from aes-src-04-03-08.zip,
38 *	after defining ASM_AMD64_C
39 * 2. mv aestab2.c aestab2.h
40 * 3. Add __cplusplus and _AESTAB2_H header guards
41 * 3. Add #include <aes_impl.h>
42 * 4. Change "uint_32t" to "uint32_t"
43 * 5. Change all variables to "static const"
44 * 6. Cstyle and hdrchk this file
45 */
46
47#include <aes_impl.h>
48
49static const uint32_t t_rc[RC_LENGTH] =
50{
51	0x00000001, 0x00000002, 0x00000004, 0x00000008,
52	0x00000010, 0x00000020, 0x00000040, 0x00000080,
53	0x0000001b, 0x00000036
54};
55
56static const uint32_t t_ls[4][256] =
57{
58	{
59	0x00000063, 0x0000007c, 0x00000077, 0x0000007b,
60	0x000000f2, 0x0000006b, 0x0000006f, 0x000000c5,
61	0x00000030, 0x00000001, 0x00000067, 0x0000002b,
62	0x000000fe, 0x000000d7, 0x000000ab, 0x00000076,
63	0x000000ca, 0x00000082, 0x000000c9, 0x0000007d,
64	0x000000fa, 0x00000059, 0x00000047, 0x000000f0,
65	0x000000ad, 0x000000d4, 0x000000a2, 0x000000af,
66	0x0000009c, 0x000000a4, 0x00000072, 0x000000c0,
67	0x000000b7, 0x000000fd, 0x00000093, 0x00000026,
68	0x00000036, 0x0000003f, 0x000000f7, 0x000000cc,
69	0x00000034, 0x000000a5, 0x000000e5, 0x000000f1,
70	0x00000071, 0x000000d8, 0x00000031, 0x00000015,
71	0x00000004, 0x000000c7, 0x00000023, 0x000000c3,
72	0x00000018, 0x00000096, 0x00000005, 0x0000009a,
73	0x00000007, 0x00000012, 0x00000080, 0x000000e2,
74	0x000000eb, 0x00000027, 0x000000b2, 0x00000075,
75	0x00000009, 0x00000083, 0x0000002c, 0x0000001a,
76	0x0000001b, 0x0000006e, 0x0000005a, 0x000000a0,
77	0x00000052, 0x0000003b, 0x000000d6, 0x000000b3,
78	0x00000029, 0x000000e3, 0x0000002f, 0x00000084,
79	0x00000053, 0x000000d1, 0x00000000, 0x000000ed,
80	0x00000020, 0x000000fc, 0x000000b1, 0x0000005b,
81	0x0000006a, 0x000000cb, 0x000000be, 0x00000039,
82	0x0000004a, 0x0000004c, 0x00000058, 0x000000cf,
83	0x000000d0, 0x000000ef, 0x000000aa, 0x000000fb,
84	0x00000043, 0x0000004d, 0x00000033, 0x00000085,
85	0x00000045, 0x000000f9, 0x00000002, 0x0000007f,
86	0x00000050, 0x0000003c, 0x0000009f, 0x000000a8,
87	0x00000051, 0x000000a3, 0x00000040, 0x0000008f,
88	0x00000092, 0x0000009d, 0x00000038, 0x000000f5,
89	0x000000bc, 0x000000b6, 0x000000da, 0x00000021,
90	0x00000010, 0x000000ff, 0x000000f3, 0x000000d2,
91	0x000000cd, 0x0000000c, 0x00000013, 0x000000ec,
92	0x0000005f, 0x00000097, 0x00000044, 0x00000017,
93	0x000000c4, 0x000000a7, 0x0000007e, 0x0000003d,
94	0x00000064, 0x0000005d, 0x00000019, 0x00000073,
95	0x00000060, 0x00000081, 0x0000004f, 0x000000dc,
96	0x00000022, 0x0000002a, 0x00000090, 0x00000088,
97	0x00000046, 0x000000ee, 0x000000b8, 0x00000014,
98	0x000000de, 0x0000005e, 0x0000000b, 0x000000db,
99	0x000000e0, 0x00000032, 0x0000003a, 0x0000000a,
100	0x00000049, 0x00000006, 0x00000024, 0x0000005c,
101	0x000000c2, 0x000000d3, 0x000000ac, 0x00000062,
102	0x00000091, 0x00000095, 0x000000e4, 0x00000079,
103	0x000000e7, 0x000000c8, 0x00000037, 0x0000006d,
104	0x0000008d, 0x000000d5, 0x0000004e, 0x000000a9,
105	0x0000006c, 0x00000056, 0x000000f4, 0x000000ea,
106	0x00000065, 0x0000007a, 0x000000ae, 0x00000008,
107	0x000000ba, 0x00000078, 0x00000025, 0x0000002e,
108	0x0000001c, 0x000000a6, 0x000000b4, 0x000000c6,
109	0x000000e8, 0x000000dd, 0x00000074, 0x0000001f,
110	0x0000004b, 0x000000bd, 0x0000008b, 0x0000008a,
111	0x00000070, 0x0000003e, 0x000000b5, 0x00000066,
112	0x00000048, 0x00000003, 0x000000f6, 0x0000000e,
113	0x00000061, 0x00000035, 0x00000057, 0x000000b9,
114	0x00000086, 0x000000c1, 0x0000001d, 0x0000009e,
115	0x000000e1, 0x000000f8, 0x00000098, 0x00000011,
116	0x00000069, 0x000000d9, 0x0000008e, 0x00000094,
117	0x0000009b, 0x0000001e, 0x00000087, 0x000000e9,
118	0x000000ce, 0x00000055, 0x00000028, 0x000000df,
119	0x0000008c, 0x000000a1, 0x00000089, 0x0000000d,
120	0x000000bf, 0x000000e6, 0x00000042, 0x00000068,
121	0x00000041, 0x00000099, 0x0000002d, 0x0000000f,
122	0x000000b0, 0x00000054, 0x000000bb, 0x00000016
123	},
124	{
125	0x00006300, 0x00007c00, 0x00007700, 0x00007b00,
126	0x0000f200, 0x00006b00, 0x00006f00, 0x0000c500,
127	0x00003000, 0x00000100, 0x00006700, 0x00002b00,
128	0x0000fe00, 0x0000d700, 0x0000ab00, 0x00007600,
129	0x0000ca00, 0x00008200, 0x0000c900, 0x00007d00,
130	0x0000fa00, 0x00005900, 0x00004700, 0x0000f000,
131	0x0000ad00, 0x0000d400, 0x0000a200, 0x0000af00,
132	0x00009c00, 0x0000a400, 0x00007200, 0x0000c000,
133	0x0000b700, 0x0000fd00, 0x00009300, 0x00002600,
134	0x00003600, 0x00003f00, 0x0000f700, 0x0000cc00,
135	0x00003400, 0x0000a500, 0x0000e500, 0x0000f100,
136	0x00007100, 0x0000d800, 0x00003100, 0x00001500,
137	0x00000400, 0x0000c700, 0x00002300, 0x0000c300,
138	0x00001800, 0x00009600, 0x00000500, 0x00009a00,
139	0x00000700, 0x00001200, 0x00008000, 0x0000e200,
140	0x0000eb00, 0x00002700, 0x0000b200, 0x00007500,
141	0x00000900, 0x00008300, 0x00002c00, 0x00001a00,
142	0x00001b00, 0x00006e00, 0x00005a00, 0x0000a000,
143	0x00005200, 0x00003b00, 0x0000d600, 0x0000b300,
144	0x00002900, 0x0000e300, 0x00002f00, 0x00008400,
145	0x00005300, 0x0000d100, 0x00000000, 0x0000ed00,
146	0x00002000, 0x0000fc00, 0x0000b100, 0x00005b00,
147	0x00006a00, 0x0000cb00, 0x0000be00, 0x00003900,
148	0x00004a00, 0x00004c00, 0x00005800, 0x0000cf00,
149	0x0000d000, 0x0000ef00, 0x0000aa00, 0x0000fb00,
150	0x00004300, 0x00004d00, 0x00003300, 0x00008500,
151	0x00004500, 0x0000f900, 0x00000200, 0x00007f00,
152	0x00005000, 0x00003c00, 0x00009f00, 0x0000a800,
153	0x00005100, 0x0000a300, 0x00004000, 0x00008f00,
154	0x00009200, 0x00009d00, 0x00003800, 0x0000f500,
155	0x0000bc00, 0x0000b600, 0x0000da00, 0x00002100,
156	0x00001000, 0x0000ff00, 0x0000f300, 0x0000d200,
157	0x0000cd00, 0x00000c00, 0x00001300, 0x0000ec00,
158	0x00005f00, 0x00009700, 0x00004400, 0x00001700,
159	0x0000c400, 0x0000a700, 0x00007e00, 0x00003d00,
160	0x00006400, 0x00005d00, 0x00001900, 0x00007300,
161	0x00006000, 0x00008100, 0x00004f00, 0x0000dc00,
162	0x00002200, 0x00002a00, 0x00009000, 0x00008800,
163	0x00004600, 0x0000ee00, 0x0000b800, 0x00001400,
164	0x0000de00, 0x00005e00, 0x00000b00, 0x0000db00,
165	0x0000e000, 0x00003200, 0x00003a00, 0x00000a00,
166	0x00004900, 0x00000600, 0x00002400, 0x00005c00,
167	0x0000c200, 0x0000d300, 0x0000ac00, 0x00006200,
168	0x00009100, 0x00009500, 0x0000e400, 0x00007900,
169	0x0000e700, 0x0000c800, 0x00003700, 0x00006d00,
170	0x00008d00, 0x0000d500, 0x00004e00, 0x0000a900,
171	0x00006c00, 0x00005600, 0x0000f400, 0x0000ea00,
172	0x00006500, 0x00007a00, 0x0000ae00, 0x00000800,
173	0x0000ba00, 0x00007800, 0x00002500, 0x00002e00,
174	0x00001c00, 0x0000a600, 0x0000b400, 0x0000c600,
175	0x0000e800, 0x0000dd00, 0x00007400, 0x00001f00,
176	0x00004b00, 0x0000bd00, 0x00008b00, 0x00008a00,
177	0x00007000, 0x00003e00, 0x0000b500, 0x00006600,
178	0x00004800, 0x00000300, 0x0000f600, 0x00000e00,
179	0x00006100, 0x00003500, 0x00005700, 0x0000b900,
180	0x00008600, 0x0000c100, 0x00001d00, 0x00009e00,
181	0x0000e100, 0x0000f800, 0x00009800, 0x00001100,
182	0x00006900, 0x0000d900, 0x00008e00, 0x00009400,
183	0x00009b00, 0x00001e00, 0x00008700, 0x0000e900,
184	0x0000ce00, 0x00005500, 0x00002800, 0x0000df00,
185	0x00008c00, 0x0000a100, 0x00008900, 0x00000d00,
186	0x0000bf00, 0x0000e600, 0x00004200, 0x00006800,
187	0x00004100, 0x00009900, 0x00002d00, 0x00000f00,
188	0x0000b000, 0x00005400, 0x0000bb00, 0x00001600
189	},
190	{
191	0x00630000, 0x007c0000, 0x00770000, 0x007b0000,
192	0x00f20000, 0x006b0000, 0x006f0000, 0x00c50000,
193	0x00300000, 0x00010000, 0x00670000, 0x002b0000,
194	0x00fe0000, 0x00d70000, 0x00ab0000, 0x00760000,
195	0x00ca0000, 0x00820000, 0x00c90000, 0x007d0000,
196	0x00fa0000, 0x00590000, 0x00470000, 0x00f00000,
197	0x00ad0000, 0x00d40000, 0x00a20000, 0x00af0000,
198	0x009c0000, 0x00a40000, 0x00720000, 0x00c00000,
199	0x00b70000, 0x00fd0000, 0x00930000, 0x00260000,
200	0x00360000, 0x003f0000, 0x00f70000, 0x00cc0000,
201	0x00340000, 0x00a50000, 0x00e50000, 0x00f10000,
202	0x00710000, 0x00d80000, 0x00310000, 0x00150000,
203	0x00040000, 0x00c70000, 0x00230000, 0x00c30000,
204	0x00180000, 0x00960000, 0x00050000, 0x009a0000,
205	0x00070000, 0x00120000, 0x00800000, 0x00e20000,
206	0x00eb0000, 0x00270000, 0x00b20000, 0x00750000,
207	0x00090000, 0x00830000, 0x002c0000, 0x001a0000,
208	0x001b0000, 0x006e0000, 0x005a0000, 0x00a00000,
209	0x00520000, 0x003b0000, 0x00d60000, 0x00b30000,
210	0x00290000, 0x00e30000, 0x002f0000, 0x00840000,
211	0x00530000, 0x00d10000, 0x00000000, 0x00ed0000,
212	0x00200000, 0x00fc0000, 0x00b10000, 0x005b0000,
213	0x006a0000, 0x00cb0000, 0x00be0000, 0x00390000,
214	0x004a0000, 0x004c0000, 0x00580000, 0x00cf0000,
215	0x00d00000, 0x00ef0000, 0x00aa0000, 0x00fb0000,
216	0x00430000, 0x004d0000, 0x00330000, 0x00850000,
217	0x00450000, 0x00f90000, 0x00020000, 0x007f0000,
218	0x00500000, 0x003c0000, 0x009f0000, 0x00a80000,
219	0x00510000, 0x00a30000, 0x00400000, 0x008f0000,
220	0x00920000, 0x009d0000, 0x00380000, 0x00f50000,
221	0x00bc0000, 0x00b60000, 0x00da0000, 0x00210000,
222	0x00100000, 0x00ff0000, 0x00f30000, 0x00d20000,
223	0x00cd0000, 0x000c0000, 0x00130000, 0x00ec0000,
224	0x005f0000, 0x00970000, 0x00440000, 0x00170000,
225	0x00c40000, 0x00a70000, 0x007e0000, 0x003d0000,
226	0x00640000, 0x005d0000, 0x00190000, 0x00730000,
227	0x00600000, 0x00810000, 0x004f0000, 0x00dc0000,
228	0x00220000, 0x002a0000, 0x00900000, 0x00880000,
229	0x00460000, 0x00ee0000, 0x00b80000, 0x00140000,
230	0x00de0000, 0x005e0000, 0x000b0000, 0x00db0000,
231	0x00e00000, 0x00320000, 0x003a0000, 0x000a0000,
232	0x00490000, 0x00060000, 0x00240000, 0x005c0000,
233	0x00c20000, 0x00d30000, 0x00ac0000, 0x00620000,
234	0x00910000, 0x00950000, 0x00e40000, 0x00790000,
235	0x00e70000, 0x00c80000, 0x00370000, 0x006d0000,
236	0x008d0000, 0x00d50000, 0x004e0000, 0x00a90000,
237	0x006c0000, 0x00560000, 0x00f40000, 0x00ea0000,
238	0x00650000, 0x007a0000, 0x00ae0000, 0x00080000,
239	0x00ba0000, 0x00780000, 0x00250000, 0x002e0000,
240	0x001c0000, 0x00a60000, 0x00b40000, 0x00c60000,
241	0x00e80000, 0x00dd0000, 0x00740000, 0x001f0000,
242	0x004b0000, 0x00bd0000, 0x008b0000, 0x008a0000,
243	0x00700000, 0x003e0000, 0x00b50000, 0x00660000,
244	0x00480000, 0x00030000, 0x00f60000, 0x000e0000,
245	0x00610000, 0x00350000, 0x00570000, 0x00b90000,
246	0x00860000, 0x00c10000, 0x001d0000, 0x009e0000,
247	0x00e10000, 0x00f80000, 0x00980000, 0x00110000,
248	0x00690000, 0x00d90000, 0x008e0000, 0x00940000,
249	0x009b0000, 0x001e0000, 0x00870000, 0x00e90000,
250	0x00ce0000, 0x00550000, 0x00280000, 0x00df0000,
251	0x008c0000, 0x00a10000, 0x00890000, 0x000d0000,
252	0x00bf0000, 0x00e60000, 0x00420000, 0x00680000,
253	0x00410000, 0x00990000, 0x002d0000, 0x000f0000,
254	0x00b00000, 0x00540000, 0x00bb0000, 0x00160000
255	},
256	{
257	0x63000000, 0x7c000000, 0x77000000, 0x7b000000,
258	0xf2000000, 0x6b000000, 0x6f000000, 0xc5000000,
259	0x30000000, 0x01000000, 0x67000000, 0x2b000000,
260	0xfe000000, 0xd7000000, 0xab000000, 0x76000000,
261	0xca000000, 0x82000000, 0xc9000000, 0x7d000000,
262	0xfa000000, 0x59000000, 0x47000000, 0xf0000000,
263	0xad000000, 0xd4000000, 0xa2000000, 0xaf000000,
264	0x9c000000, 0xa4000000, 0x72000000, 0xc0000000,
265	0xb7000000, 0xfd000000, 0x93000000, 0x26000000,
266	0x36000000, 0x3f000000, 0xf7000000, 0xcc000000,
267	0x34000000, 0xa5000000, 0xe5000000, 0xf1000000,
268	0x71000000, 0xd8000000, 0x31000000, 0x15000000,
269	0x04000000, 0xc7000000, 0x23000000, 0xc3000000,
270	0x18000000, 0x96000000, 0x05000000, 0x9a000000,
271	0x07000000, 0x12000000, 0x80000000, 0xe2000000,
272	0xeb000000, 0x27000000, 0xb2000000, 0x75000000,
273	0x09000000, 0x83000000, 0x2c000000, 0x1a000000,
274	0x1b000000, 0x6e000000, 0x5a000000, 0xa0000000,
275	0x52000000, 0x3b000000, 0xd6000000, 0xb3000000,
276	0x29000000, 0xe3000000, 0x2f000000, 0x84000000,
277	0x53000000, 0xd1000000, 0x00000000, 0xed000000,
278	0x20000000, 0xfc000000, 0xb1000000, 0x5b000000,
279	0x6a000000, 0xcb000000, 0xbe000000, 0x39000000,
280	0x4a000000, 0x4c000000, 0x58000000, 0xcf000000,
281	0xd0000000, 0xef000000, 0xaa000000, 0xfb000000,
282	0x43000000, 0x4d000000, 0x33000000, 0x85000000,
283	0x45000000, 0xf9000000, 0x02000000, 0x7f000000,
284	0x50000000, 0x3c000000, 0x9f000000, 0xa8000000,
285	0x51000000, 0xa3000000, 0x40000000, 0x8f000000,
286	0x92000000, 0x9d000000, 0x38000000, 0xf5000000,
287	0xbc000000, 0xb6000000, 0xda000000, 0x21000000,
288	0x10000000, 0xff000000, 0xf3000000, 0xd2000000,
289	0xcd000000, 0x0c000000, 0x13000000, 0xec000000,
290	0x5f000000, 0x97000000, 0x44000000, 0x17000000,
291	0xc4000000, 0xa7000000, 0x7e000000, 0x3d000000,
292	0x64000000, 0x5d000000, 0x19000000, 0x73000000,
293	0x60000000, 0x81000000, 0x4f000000, 0xdc000000,
294	0x22000000, 0x2a000000, 0x90000000, 0x88000000,
295	0x46000000, 0xee000000, 0xb8000000, 0x14000000,
296	0xde000000, 0x5e000000, 0x0b000000, 0xdb000000,
297	0xe0000000, 0x32000000, 0x3a000000, 0x0a000000,
298	0x49000000, 0x06000000, 0x24000000, 0x5c000000,
299	0xc2000000, 0xd3000000, 0xac000000, 0x62000000,
300	0x91000000, 0x95000000, 0xe4000000, 0x79000000,
301	0xe7000000, 0xc8000000, 0x37000000, 0x6d000000,
302	0x8d000000, 0xd5000000, 0x4e000000, 0xa9000000,
303	0x6c000000, 0x56000000, 0xf4000000, 0xea000000,
304	0x65000000, 0x7a000000, 0xae000000, 0x08000000,
305	0xba000000, 0x78000000, 0x25000000, 0x2e000000,
306	0x1c000000, 0xa6000000, 0xb4000000, 0xc6000000,
307	0xe8000000, 0xdd000000, 0x74000000, 0x1f000000,
308	0x4b000000, 0xbd000000, 0x8b000000, 0x8a000000,
309	0x70000000, 0x3e000000, 0xb5000000, 0x66000000,
310	0x48000000, 0x03000000, 0xf6000000, 0x0e000000,
311	0x61000000, 0x35000000, 0x57000000, 0xb9000000,
312	0x86000000, 0xc1000000, 0x1d000000, 0x9e000000,
313	0xe1000000, 0xf8000000, 0x98000000, 0x11000000,
314	0x69000000, 0xd9000000, 0x8e000000, 0x94000000,
315	0x9b000000, 0x1e000000, 0x87000000, 0xe9000000,
316	0xce000000, 0x55000000, 0x28000000, 0xdf000000,
317	0x8c000000, 0xa1000000, 0x89000000, 0x0d000000,
318	0xbf000000, 0xe6000000, 0x42000000, 0x68000000,
319	0x41000000, 0x99000000, 0x2d000000, 0x0f000000,
320	0xb0000000, 0x54000000, 0xbb000000, 0x16000000
321	}
322};
323
324static const uint32_t t_im[4][256] =
325{
326	{
327	0x00000000, 0x0b0d090e, 0x161a121c, 0x1d171b12,
328	0x2c342438, 0x27392d36, 0x3a2e3624, 0x31233f2a,
329	0x58684870, 0x5365417e, 0x4e725a6c, 0x457f5362,
330	0x745c6c48, 0x7f516546, 0x62467e54, 0x694b775a,
331	0xb0d090e0, 0xbbdd99ee, 0xa6ca82fc, 0xadc78bf2,
332	0x9ce4b4d8, 0x97e9bdd6, 0x8afea6c4, 0x81f3afca,
333	0xe8b8d890, 0xe3b5d19e, 0xfea2ca8c, 0xf5afc382,
334	0xc48cfca8, 0xcf81f5a6, 0xd296eeb4, 0xd99be7ba,
335	0x7bbb3bdb, 0x70b632d5, 0x6da129c7, 0x66ac20c9,
336	0x578f1fe3, 0x5c8216ed, 0x41950dff, 0x4a9804f1,
337	0x23d373ab, 0x28de7aa5, 0x35c961b7, 0x3ec468b9,
338	0x0fe75793, 0x04ea5e9d, 0x19fd458f, 0x12f04c81,
339	0xcb6bab3b, 0xc066a235, 0xdd71b927, 0xd67cb029,
340	0xe75f8f03, 0xec52860d, 0xf1459d1f, 0xfa489411,
341	0x9303e34b, 0x980eea45, 0x8519f157, 0x8e14f859,
342	0xbf37c773, 0xb43ace7d, 0xa92dd56f, 0xa220dc61,
343	0xf66d76ad, 0xfd607fa3, 0xe07764b1, 0xeb7a6dbf,
344	0xda595295, 0xd1545b9b, 0xcc434089, 0xc74e4987,
345	0xae053edd, 0xa50837d3, 0xb81f2cc1, 0xb31225cf,
346	0x82311ae5, 0x893c13eb, 0x942b08f9, 0x9f2601f7,
347	0x46bde64d, 0x4db0ef43, 0x50a7f451, 0x5baafd5f,
348	0x6a89c275, 0x6184cb7b, 0x7c93d069, 0x779ed967,
349	0x1ed5ae3d, 0x15d8a733, 0x08cfbc21, 0x03c2b52f,
350	0x32e18a05, 0x39ec830b, 0x24fb9819, 0x2ff69117,
351	0x8dd64d76, 0x86db4478, 0x9bcc5f6a, 0x90c15664,
352	0xa1e2694e, 0xaaef6040, 0xb7f87b52, 0xbcf5725c,
353	0xd5be0506, 0xdeb30c08, 0xc3a4171a, 0xc8a91e14,
354	0xf98a213e, 0xf2872830, 0xef903322, 0xe49d3a2c,
355	0x3d06dd96, 0x360bd498, 0x2b1ccf8a, 0x2011c684,
356	0x1132f9ae, 0x1a3ff0a0, 0x0728ebb2, 0x0c25e2bc,
357	0x656e95e6, 0x6e639ce8, 0x737487fa, 0x78798ef4,
358	0x495ab1de, 0x4257b8d0, 0x5f40a3c2, 0x544daacc,
359	0xf7daec41, 0xfcd7e54f, 0xe1c0fe5d, 0xeacdf753,
360	0xdbeec879, 0xd0e3c177, 0xcdf4da65, 0xc6f9d36b,
361	0xafb2a431, 0xa4bfad3f, 0xb9a8b62d, 0xb2a5bf23,
362	0x83868009, 0x888b8907, 0x959c9215, 0x9e919b1b,
363	0x470a7ca1, 0x4c0775af, 0x51106ebd, 0x5a1d67b3,
364	0x6b3e5899, 0x60335197, 0x7d244a85, 0x7629438b,
365	0x1f6234d1, 0x146f3ddf, 0x097826cd, 0x02752fc3,
366	0x335610e9, 0x385b19e7, 0x254c02f5, 0x2e410bfb,
367	0x8c61d79a, 0x876cde94, 0x9a7bc586, 0x9176cc88,
368	0xa055f3a2, 0xab58faac, 0xb64fe1be, 0xbd42e8b0,
369	0xd4099fea, 0xdf0496e4, 0xc2138df6, 0xc91e84f8,
370	0xf83dbbd2, 0xf330b2dc, 0xee27a9ce, 0xe52aa0c0,
371	0x3cb1477a, 0x37bc4e74, 0x2aab5566, 0x21a65c68,
372	0x10856342, 0x1b886a4c, 0x069f715e, 0x0d927850,
373	0x64d90f0a, 0x6fd40604, 0x72c31d16, 0x79ce1418,
374	0x48ed2b32, 0x43e0223c, 0x5ef7392e, 0x55fa3020,
375	0x01b79aec, 0x0aba93e2, 0x17ad88f0, 0x1ca081fe,
376	0x2d83bed4, 0x268eb7da, 0x3b99acc8, 0x3094a5c6,
377	0x59dfd29c, 0x52d2db92, 0x4fc5c080, 0x44c8c98e,
378	0x75ebf6a4, 0x7ee6ffaa, 0x63f1e4b8, 0x68fcedb6,
379	0xb1670a0c, 0xba6a0302, 0xa77d1810, 0xac70111e,
380	0x9d532e34, 0x965e273a, 0x8b493c28, 0x80443526,
381	0xe90f427c, 0xe2024b72, 0xff155060, 0xf418596e,
382	0xc53b6644, 0xce366f4a, 0xd3217458, 0xd82c7d56,
383	0x7a0ca137, 0x7101a839, 0x6c16b32b, 0x671bba25,
384	0x5638850f, 0x5d358c01, 0x40229713, 0x4b2f9e1d,
385	0x2264e947, 0x2969e049, 0x347efb5b, 0x3f73f255,
386	0x0e50cd7f, 0x055dc471, 0x184adf63, 0x1347d66d,
387	0xcadc31d7, 0xc1d138d9, 0xdcc623cb, 0xd7cb2ac5,
388	0xe6e815ef, 0xede51ce1, 0xf0f207f3, 0xfbff0efd,
389	0x92b479a7, 0x99b970a9, 0x84ae6bbb, 0x8fa362b5,
390	0xbe805d9f, 0xb58d5491, 0xa89a4f83, 0xa397468d
391	},
392	{
393	0x00000000, 0x0d090e0b, 0x1a121c16, 0x171b121d,
394	0x3424382c, 0x392d3627, 0x2e36243a, 0x233f2a31,
395	0x68487058, 0x65417e53, 0x725a6c4e, 0x7f536245,
396	0x5c6c4874, 0x5165467f, 0x467e5462, 0x4b775a69,
397	0xd090e0b0, 0xdd99eebb, 0xca82fca6, 0xc78bf2ad,
398	0xe4b4d89c, 0xe9bdd697, 0xfea6c48a, 0xf3afca81,
399	0xb8d890e8, 0xb5d19ee3, 0xa2ca8cfe, 0xafc382f5,
400	0x8cfca8c4, 0x81f5a6cf, 0x96eeb4d2, 0x9be7bad9,
401	0xbb3bdb7b, 0xb632d570, 0xa129c76d, 0xac20c966,
402	0x8f1fe357, 0x8216ed5c, 0x950dff41, 0x9804f14a,
403	0xd373ab23, 0xde7aa528, 0xc961b735, 0xc468b93e,
404	0xe757930f, 0xea5e9d04, 0xfd458f19, 0xf04c8112,
405	0x6bab3bcb, 0x66a235c0, 0x71b927dd, 0x7cb029d6,
406	0x5f8f03e7, 0x52860dec, 0x459d1ff1, 0x489411fa,
407	0x03e34b93, 0x0eea4598, 0x19f15785, 0x14f8598e,
408	0x37c773bf, 0x3ace7db4, 0x2dd56fa9, 0x20dc61a2,
409	0x6d76adf6, 0x607fa3fd, 0x7764b1e0, 0x7a6dbfeb,
410	0x595295da, 0x545b9bd1, 0x434089cc, 0x4e4987c7,
411	0x053eddae, 0x0837d3a5, 0x1f2cc1b8, 0x1225cfb3,
412	0x311ae582, 0x3c13eb89, 0x2b08f994, 0x2601f79f,
413	0xbde64d46, 0xb0ef434d, 0xa7f45150, 0xaafd5f5b,
414	0x89c2756a, 0x84cb7b61, 0x93d0697c, 0x9ed96777,
415	0xd5ae3d1e, 0xd8a73315, 0xcfbc2108, 0xc2b52f03,
416	0xe18a0532, 0xec830b39, 0xfb981924, 0xf691172f,
417	0xd64d768d, 0xdb447886, 0xcc5f6a9b, 0xc1566490,
418	0xe2694ea1, 0xef6040aa, 0xf87b52b7, 0xf5725cbc,
419	0xbe0506d5, 0xb30c08de, 0xa4171ac3, 0xa91e14c8,
420	0x8a213ef9, 0x872830f2, 0x903322ef, 0x9d3a2ce4,
421	0x06dd963d, 0x0bd49836, 0x1ccf8a2b, 0x11c68420,
422	0x32f9ae11, 0x3ff0a01a, 0x28ebb207, 0x25e2bc0c,
423	0x6e95e665, 0x639ce86e, 0x7487fa73, 0x798ef478,
424	0x5ab1de49, 0x57b8d042, 0x40a3c25f, 0x4daacc54,
425	0xdaec41f7, 0xd7e54ffc, 0xc0fe5de1, 0xcdf753ea,
426	0xeec879db, 0xe3c177d0, 0xf4da65cd, 0xf9d36bc6,
427	0xb2a431af, 0xbfad3fa4, 0xa8b62db9, 0xa5bf23b2,
428	0x86800983, 0x8b890788, 0x9c921595, 0x919b1b9e,
429	0x0a7ca147, 0x0775af4c, 0x106ebd51, 0x1d67b35a,
430	0x3e58996b, 0x33519760, 0x244a857d, 0x29438b76,
431	0x6234d11f, 0x6f3ddf14, 0x7826cd09, 0x752fc302,
432	0x5610e933, 0x5b19e738, 0x4c02f525, 0x410bfb2e,
433	0x61d79a8c, 0x6cde9487, 0x7bc5869a, 0x76cc8891,
434	0x55f3a2a0, 0x58faacab, 0x4fe1beb6, 0x42e8b0bd,
435	0x099fead4, 0x0496e4df, 0x138df6c2, 0x1e84f8c9,
436	0x3dbbd2f8, 0x30b2dcf3, 0x27a9ceee, 0x2aa0c0e5,
437	0xb1477a3c, 0xbc4e7437, 0xab55662a, 0xa65c6821,
438	0x85634210, 0x886a4c1b, 0x9f715e06, 0x9278500d,
439	0xd90f0a64, 0xd406046f, 0xc31d1672, 0xce141879,
440	0xed2b3248, 0xe0223c43, 0xf7392e5e, 0xfa302055,
441	0xb79aec01, 0xba93e20a, 0xad88f017, 0xa081fe1c,
442	0x83bed42d, 0x8eb7da26, 0x99acc83b, 0x94a5c630,
443	0xdfd29c59, 0xd2db9252, 0xc5c0804f, 0xc8c98e44,
444	0xebf6a475, 0xe6ffaa7e, 0xf1e4b863, 0xfcedb668,
445	0x670a0cb1, 0x6a0302ba, 0x7d1810a7, 0x70111eac,
446	0x532e349d, 0x5e273a96, 0x493c288b, 0x44352680,
447	0x0f427ce9, 0x024b72e2, 0x155060ff, 0x18596ef4,
448	0x3b6644c5, 0x366f4ace, 0x217458d3, 0x2c7d56d8,
449	0x0ca1377a, 0x01a83971, 0x16b32b6c, 0x1bba2567,
450	0x38850f56, 0x358c015d, 0x22971340, 0x2f9e1d4b,
451	0x64e94722, 0x69e04929, 0x7efb5b34, 0x73f2553f,
452	0x50cd7f0e, 0x5dc47105, 0x4adf6318, 0x47d66d13,
453	0xdc31d7ca, 0xd138d9c1, 0xc623cbdc, 0xcb2ac5d7,
454	0xe815efe6, 0xe51ce1ed, 0xf207f3f0, 0xff0efdfb,
455	0xb479a792, 0xb970a999, 0xae6bbb84, 0xa362b58f,
456	0x805d9fbe, 0x8d5491b5, 0x9a4f83a8, 0x97468da3
457	},
458	{
459	0x00000000, 0x090e0b0d, 0x121c161a, 0x1b121d17,
460	0x24382c34, 0x2d362739, 0x36243a2e, 0x3f2a3123,
461	0x48705868, 0x417e5365, 0x5a6c4e72, 0x5362457f,
462	0x6c48745c, 0x65467f51, 0x7e546246, 0x775a694b,
463	0x90e0b0d0, 0x99eebbdd, 0x82fca6ca, 0x8bf2adc7,
464	0xb4d89ce4, 0xbdd697e9, 0xa6c48afe, 0xafca81f3,
465	0xd890e8b8, 0xd19ee3b5, 0xca8cfea2, 0xc382f5af,
466	0xfca8c48c, 0xf5a6cf81, 0xeeb4d296, 0xe7bad99b,
467	0x3bdb7bbb, 0x32d570b6, 0x29c76da1, 0x20c966ac,
468	0x1fe3578f, 0x16ed5c82, 0x0dff4195, 0x04f14a98,
469	0x73ab23d3, 0x7aa528de, 0x61b735c9, 0x68b93ec4,
470	0x57930fe7, 0x5e9d04ea, 0x458f19fd, 0x4c8112f0,
471	0xab3bcb6b, 0xa235c066, 0xb927dd71, 0xb029d67c,
472	0x8f03e75f, 0x860dec52, 0x9d1ff145, 0x9411fa48,
473	0xe34b9303, 0xea45980e, 0xf1578519, 0xf8598e14,
474	0xc773bf37, 0xce7db43a, 0xd56fa92d, 0xdc61a220,
475	0x76adf66d, 0x7fa3fd60, 0x64b1e077, 0x6dbfeb7a,
476	0x5295da59, 0x5b9bd154, 0x4089cc43, 0x4987c74e,
477	0x3eddae05, 0x37d3a508, 0x2cc1b81f, 0x25cfb312,
478	0x1ae58231, 0x13eb893c, 0x08f9942b, 0x01f79f26,
479	0xe64d46bd, 0xef434db0, 0xf45150a7, 0xfd5f5baa,
480	0xc2756a89, 0xcb7b6184, 0xd0697c93, 0xd967779e,
481	0xae3d1ed5, 0xa73315d8, 0xbc2108cf, 0xb52f03c2,
482	0x8a0532e1, 0x830b39ec, 0x981924fb, 0x91172ff6,
483	0x4d768dd6, 0x447886db, 0x5f6a9bcc, 0x566490c1,
484	0x694ea1e2, 0x6040aaef, 0x7b52b7f8, 0x725cbcf5,
485	0x0506d5be, 0x0c08deb3, 0x171ac3a4, 0x1e14c8a9,
486	0x213ef98a, 0x2830f287, 0x3322ef90, 0x3a2ce49d,
487	0xdd963d06, 0xd498360b, 0xcf8a2b1c, 0xc6842011,
488	0xf9ae1132, 0xf0a01a3f, 0xebb20728, 0xe2bc0c25,
489	0x95e6656e, 0x9ce86e63, 0x87fa7374, 0x8ef47879,
490	0xb1de495a, 0xb8d04257, 0xa3c25f40, 0xaacc544d,
491	0xec41f7da, 0xe54ffcd7, 0xfe5de1c0, 0xf753eacd,
492	0xc879dbee, 0xc177d0e3, 0xda65cdf4, 0xd36bc6f9,
493	0xa431afb2, 0xad3fa4bf, 0xb62db9a8, 0xbf23b2a5,
494	0x80098386, 0x8907888b, 0x9215959c, 0x9b1b9e91,
495	0x7ca1470a, 0x75af4c07, 0x6ebd5110, 0x67b35a1d,
496	0x58996b3e, 0x51976033, 0x4a857d24, 0x438b7629,
497	0x34d11f62, 0x3ddf146f, 0x26cd0978, 0x2fc30275,
498	0x10e93356, 0x19e7385b, 0x02f5254c, 0x0bfb2e41,
499	0xd79a8c61, 0xde94876c, 0xc5869a7b, 0xcc889176,
500	0xf3a2a055, 0xfaacab58, 0xe1beb64f, 0xe8b0bd42,
501	0x9fead409, 0x96e4df04, 0x8df6c213, 0x84f8c91e,
502	0xbbd2f83d, 0xb2dcf330, 0xa9ceee27, 0xa0c0e52a,
503	0x477a3cb1, 0x4e7437bc, 0x55662aab, 0x5c6821a6,
504	0x63421085, 0x6a4c1b88, 0x715e069f, 0x78500d92,
505	0x0f0a64d9, 0x06046fd4, 0x1d1672c3, 0x141879ce,
506	0x2b3248ed, 0x223c43e0, 0x392e5ef7, 0x302055fa,
507	0x9aec01b7, 0x93e20aba, 0x88f017ad, 0x81fe1ca0,
508	0xbed42d83, 0xb7da268e, 0xacc83b99, 0xa5c63094,
509	0xd29c59df, 0xdb9252d2, 0xc0804fc5, 0xc98e44c8,
510	0xf6a475eb, 0xffaa7ee6, 0xe4b863f1, 0xedb668fc,
511	0x0a0cb167, 0x0302ba6a, 0x1810a77d, 0x111eac70,
512	0x2e349d53, 0x273a965e, 0x3c288b49, 0x35268044,
513	0x427ce90f, 0x4b72e202, 0x5060ff15, 0x596ef418,
514	0x6644c53b, 0x6f4ace36, 0x7458d321, 0x7d56d82c,
515	0xa1377a0c, 0xa8397101, 0xb32b6c16, 0xba25671b,
516	0x850f5638, 0x8c015d35, 0x97134022, 0x9e1d4b2f,
517	0xe9472264, 0xe0492969, 0xfb5b347e, 0xf2553f73,
518	0xcd7f0e50, 0xc471055d, 0xdf63184a, 0xd66d1347,
519	0x31d7cadc, 0x38d9c1d1, 0x23cbdcc6, 0x2ac5d7cb,
520	0x15efe6e8, 0x1ce1ede5, 0x07f3f0f2, 0x0efdfbff,
521	0x79a792b4, 0x70a999b9, 0x6bbb84ae, 0x62b58fa3,
522	0x5d9fbe80, 0x5491b58d, 0x4f83a89a, 0x468da397
523	},
524	{
525	0x00000000, 0x0e0b0d09, 0x1c161a12, 0x121d171b,
526	0x382c3424, 0x3627392d, 0x243a2e36, 0x2a31233f,
527	0x70586848, 0x7e536541, 0x6c4e725a, 0x62457f53,
528	0x48745c6c, 0x467f5165, 0x5462467e, 0x5a694b77,
529	0xe0b0d090, 0xeebbdd99, 0xfca6ca82, 0xf2adc78b,
530	0xd89ce4b4, 0xd697e9bd, 0xc48afea6, 0xca81f3af,
531	0x90e8b8d8, 0x9ee3b5d1, 0x8cfea2ca, 0x82f5afc3,
532	0xa8c48cfc, 0xa6cf81f5, 0xb4d296ee, 0xbad99be7,
533	0xdb7bbb3b, 0xd570b632, 0xc76da129, 0xc966ac20,
534	0xe3578f1f, 0xed5c8216, 0xff41950d, 0xf14a9804,
535	0xab23d373, 0xa528de7a, 0xb735c961, 0xb93ec468,
536	0x930fe757, 0x9d04ea5e, 0x8f19fd45, 0x8112f04c,
537	0x3bcb6bab, 0x35c066a2, 0x27dd71b9, 0x29d67cb0,
538	0x03e75f8f, 0x0dec5286, 0x1ff1459d, 0x11fa4894,
539	0x4b9303e3, 0x45980eea, 0x578519f1, 0x598e14f8,
540	0x73bf37c7, 0x7db43ace, 0x6fa92dd5, 0x61a220dc,
541	0xadf66d76, 0xa3fd607f, 0xb1e07764, 0xbfeb7a6d,
542	0x95da5952, 0x9bd1545b, 0x89cc4340, 0x87c74e49,
543	0xddae053e, 0xd3a50837, 0xc1b81f2c, 0xcfb31225,
544	0xe582311a, 0xeb893c13, 0xf9942b08, 0xf79f2601,
545	0x4d46bde6, 0x434db0ef, 0x5150a7f4, 0x5f5baafd,
546	0x756a89c2, 0x7b6184cb, 0x697c93d0, 0x67779ed9,
547	0x3d1ed5ae, 0x3315d8a7, 0x2108cfbc, 0x2f03c2b5,
548	0x0532e18a, 0x0b39ec83, 0x1924fb98, 0x172ff691,
549	0x768dd64d, 0x7886db44, 0x6a9bcc5f, 0x6490c156,
550	0x4ea1e269, 0x40aaef60, 0x52b7f87b, 0x5cbcf572,
551	0x06d5be05, 0x08deb30c, 0x1ac3a417, 0x14c8a91e,
552	0x3ef98a21, 0x30f28728, 0x22ef9033, 0x2ce49d3a,
553	0x963d06dd, 0x98360bd4, 0x8a2b1ccf, 0x842011c6,
554	0xae1132f9, 0xa01a3ff0, 0xb20728eb, 0xbc0c25e2,
555	0xe6656e95, 0xe86e639c, 0xfa737487, 0xf478798e,
556	0xde495ab1, 0xd04257b8, 0xc25f40a3, 0xcc544daa,
557	0x41f7daec, 0x4ffcd7e5, 0x5de1c0fe, 0x53eacdf7,
558	0x79dbeec8, 0x77d0e3c1, 0x65cdf4da, 0x6bc6f9d3,
559	0x31afb2a4, 0x3fa4bfad, 0x2db9a8b6, 0x23b2a5bf,
560	0x09838680, 0x07888b89, 0x15959c92, 0x1b9e919b,
561	0xa1470a7c, 0xaf4c0775, 0xbd51106e, 0xb35a1d67,
562	0x996b3e58, 0x97603351, 0x857d244a, 0x8b762943,
563	0xd11f6234, 0xdf146f3d, 0xcd097826, 0xc302752f,
564	0xe9335610, 0xe7385b19, 0xf5254c02, 0xfb2e410b,
565	0x9a8c61d7, 0x94876cde, 0x869a7bc5, 0x889176cc,
566	0xa2a055f3, 0xacab58fa, 0xbeb64fe1, 0xb0bd42e8,
567	0xead4099f, 0xe4df0496, 0xf6c2138d, 0xf8c91e84,
568	0xd2f83dbb, 0xdcf330b2, 0xceee27a9, 0xc0e52aa0,
569	0x7a3cb147, 0x7437bc4e, 0x662aab55, 0x6821a65c,
570	0x42108563, 0x4c1b886a, 0x5e069f71, 0x500d9278,
571	0x0a64d90f, 0x046fd406, 0x1672c31d, 0x1879ce14,
572	0x3248ed2b, 0x3c43e022, 0x2e5ef739, 0x2055fa30,
573	0xec01b79a, 0xe20aba93, 0xf017ad88, 0xfe1ca081,
574	0xd42d83be, 0xda268eb7, 0xc83b99ac, 0xc63094a5,
575	0x9c59dfd2, 0x9252d2db, 0x804fc5c0, 0x8e44c8c9,
576	0xa475ebf6, 0xaa7ee6ff, 0xb863f1e4, 0xb668fced,
577	0x0cb1670a, 0x02ba6a03, 0x10a77d18, 0x1eac7011,
578	0x349d532e, 0x3a965e27, 0x288b493c, 0x26804435,
579	0x7ce90f42, 0x72e2024b, 0x60ff1550, 0x6ef41859,
580	0x44c53b66, 0x4ace366f, 0x58d32174, 0x56d82c7d,
581	0x377a0ca1, 0x397101a8, 0x2b6c16b3, 0x25671bba,
582	0x0f563885, 0x015d358c, 0x13402297, 0x1d4b2f9e,
583	0x472264e9, 0x492969e0, 0x5b347efb, 0x553f73f2,
584	0x7f0e50cd, 0x71055dc4, 0x63184adf, 0x6d1347d6,
585	0xd7cadc31, 0xd9c1d138, 0xcbdcc623, 0xc5d7cb2a,
586	0xefe6e815, 0xe1ede51c, 0xf3f0f207, 0xfdfbff0e,
587	0xa792b479, 0xa999b970, 0xbb84ae6b, 0xb58fa362,
588	0x9fbe805d, 0x91b58d54, 0x83a89a4f, 0x8da39746
589	}
590};
591
592#ifdef	__cplusplus
593}
594#endif
595
596#endif	/* _AESTAB2_H */
597