rinjdael: add amd64 assembly implementation
[libgcrypt.git] / cipher / rijndael-amd64.S
1 /* rinjdael-amd64.S  -  AMD64 assembly implementation of AES cipher
2  *
3  * Copyright © 2013 Jussi Kivilinna <jussi.kivilinna@iki.fi>
4  *
5  * This file is part of Libgcrypt.
6  *
7  * Libgcrypt is free software; you can redistribute it and/or modify
8  * it under the terms of the GNU Lesser General Public License as
9  * published by the Free Software Foundation; either version 2.1 of
10  * the License, or (at your option) any later version.
11  *
12  * Libgcrypt is distributed in the hope that it will be useful,
13  * but WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15  * GNU Lesser General Public License for more details.
16  *
17  * You should have received a copy of the GNU Lesser General Public
18  * License along with this program; if not, see <http://www.gnu.org/licenses/>.
19  */
20
21 #ifdef __x86_64
22 #include <config.h>
23 #if defined(USE_AES)
24
25 #ifdef __PIC__
26 #  define RIP %rip
27 #else
28 #  define RIP
29 #endif
30
31 .text
32
33 /* table macros */
34 #define E0      (.LtableE0-.LtableE0)
35 #define E1      (.LtableE1-.LtableE0)
36 #define E2      (.LtableE2-.LtableE0)
37 #define E3      (.LtableE3-.LtableE0)
38 #define Es0     (.LtableEs0-.LtableE0)
39 #define Es1     (.LtableEs1-.LtableE0)
40 #define Es2     (.LtableEs2-.LtableE0)
41 #define Es3     (.LtableEs3-.LtableE0)
42 #define Esize   8
43
44 #define D0      (.LtableD0-.LtableD0)
45 #define D1      (.LtableD1-.LtableD0)
46 #define D2      (.LtableD2-.LtableD0)
47 #define D3      (.LtableD3-.LtableD0)
48 #define Ds0     (.LtableDs0-.LtableD0)
49 #define Ds1     (.LtableDs1-.LtableD0)
50 #define Ds2     (.LtableDs2-.LtableD0)
51 #define Ds3     (.LtableDs3-.LtableD0)
52 #define Dsize   8
53
54 /* register macros */
55 #define CTX     %rdi
56 #define RTAB    %r12
57
58 #define RA      %rax
59 #define RB      %rbx
60 #define RC      %rcx
61 #define RD      %rdx
62
63 #define RAd     %eax
64 #define RBd     %ebx
65 #define RCd     %ecx
66 #define RDd     %edx
67
68 #define RAbl    %al
69 #define RBbl    %bl
70 #define RCbl    %cl
71 #define RDbl    %dl
72
73 #define RAbh    %ah
74 #define RBbh    %bh
75 #define RCbh    %ch
76 #define RDbh    %dh
77
78 #define RNA     %r8
79 #define RNB     %r9
80 #define RNC     %r10
81 #define RND     %r11
82
83 #define RNAd    %r8d
84 #define RNBd    %r9d
85 #define RNCd    %r10d
86 #define RNDd    %r11d
87
88 #define RT0     %rbp
89 #define RT1     %rsi
90
91 #define RT0d    %ebp
92 #define RT1d    %esi
93
94 /* helper macros */
95 #define do16bit(op, source, tablemul, table1, dest1, table2, dest2, t0, t1) \
96         movzbl source ## bh,                    t1 ## d; \
97         movzbl source ## bl,                    t0 ## d; \
98         op ## l table1(RTAB,t0,tablemul),       dest1 ## d; \
99         op ## l table2(RTAB,t1,tablemul),       dest2 ## d;
100
101 #define do16bit_shr(shf, op, source, tablemul, table1, dest1, table2, dest2, t0, t1) \
102         movzbl source ## bl,                    t0 ## d; \
103         movzbl source ## bh,                    t1 ## d; \
104         shrq $(shf),                            source; \
105         op ## l table1(RTAB,t0,tablemul),       dest1 ## d; \
106         op ## l table2(RTAB,t1,tablemul),       dest2 ## d;
107
108 /***********************************************************************
109  * AMD64 assembly implementation of the AES cipher
110  ***********************************************************************/
111 #define addroundkey(round, ra, rb, rc, rd) \
112         xorl (((round) * 16) + 0 * 4)(CTX), ra ## d; \
113         xorl (((round) * 16) + 1 * 4)(CTX), rb ## d; \
114         xorl (((round) * 16) + 2 * 4)(CTX), rc ## d; \
115         xorl (((round) * 16) + 3 * 4)(CTX), rd ## d;
116
117 #define do_encround(next_r) \
118         do16bit_shr(16, mov, RA, Esize, E0, RNA, E1, RND, RT0, RT1); \
119         do16bit(        mov, RA, Esize, E2, RNC, E3, RNB, RT0, RT1); \
120         movl (((next_r) * 16) + 0 * 4)(CTX), RAd; \
121         xorl RNAd, RAd; \
122         \
123         do16bit_shr(16, xor, RD, Esize, E0, RND, E1, RNC, RT0, RT1); \
124         do16bit(        xor, RD, Esize, E2, RNB, E3, RA,  RT0, RT1); \
125         movl (((next_r) * 16) + 3 * 4)(CTX), RDd; \
126         xorl RNDd, RDd; \
127         \
128         do16bit_shr(16, xor, RC, Esize, E0, RNC, E1, RNB, RT0, RT1); \
129         do16bit(        xor, RC, Esize, E2, RA,  E3, RD,  RT0, RT1); \
130         movl (((next_r) * 16) + 2 * 4)(CTX), RCd; \
131         xorl RNCd, RCd; \
132         \
133         do16bit_shr(16, xor, RB, Esize, E0, RNB, E1, RA,  RT0, RT1); \
134         do16bit(        xor, RB, Esize, E2, RD,  E3, RC,  RT0, RT1); \
135         movl (((next_r) * 16) + 1 * 4)(CTX), RBd; \
136         xorl RNBd, RBd;
137
138 #define do_lastencround(next_r) \
139         do16bit_shr(16, mov, RA, Esize, Es0, RNA, Es1, RND, RT0, RT1); \
140         do16bit(        mov, RA, Esize, Es2, RNC, Es3, RNB, RT0, RT1); \
141         \
142         do16bit_shr(16,  or, RB, Esize, Es0, RNB, Es1, RNA, RT0, RT1); \
143         do16bit(         or, RB, Esize, Es2, RND, Es3, RNC, RT0, RT1); \
144         \
145         do16bit_shr(16,  or, RC, Esize, Es0, RNC, Es1, RNB, RT0, RT1); \
146         do16bit(         or, RC, Esize, Es2, RNA, Es3, RND, RT0, RT1); \
147         \
148         do16bit_shr(16,  or, RD, Esize, Es0, RND, Es1, RNC, RT0, RT1); \
149         do16bit(         or, RD, Esize, Es2, RNB, Es3, RNA, RT0, RT1);
150
151 #define firstencround(round) \
152         addroundkey(round, RA, RB, RC, RD); \
153         do_encround((round) + 1);
154
155 #define encround(round) \
156         do_encround((round) + 1);
157
158 #define lastencround(round) \
159         do_lastencround(); \
160         addroundkey((round) + 1, RNA, RNB, RNC, RND);
161
162 .align 8
163 .global _gcry_aes_amd64_encrypt_block
164 .type   _gcry_aes_amd64_encrypt_block,@function;
165
166 _gcry_aes_amd64_encrypt_block:
167         /* input:
168          *      %rdi: keysched, CTX
169          *      %rsi: dst
170          *      %rdx: src
171          *      %ecx: number of rounds.. 10, 12 or 14
172          */
173         subq $(5 * 8), %rsp;
174         movq %rsi, (0 * 8)(%rsp);
175         movl %ecx, (1 * 8)(%rsp);
176         movq %rbp, (2 * 8)(%rsp);
177         movq %rbx, (3 * 8)(%rsp);
178         movq %r12, (4 * 8)(%rsp);
179
180         leaq .LtableE0(RIP), RTAB;
181
182         /* read input block */
183         movl 0 * 4(%rdx), RAd;
184         movl 1 * 4(%rdx), RBd;
185         movl 2 * 4(%rdx), RCd;
186         movl 3 * 4(%rdx), RDd;
187
188         firstencround(0);
189         encround(1);
190         encround(2);
191         encround(3);
192         encround(4);
193         encround(5);
194         encround(6);
195         encround(7);
196         encround(8);
197         cmpl $12, (1 * 8)(%rsp);
198         jnb .Lenc_not_128;
199         lastencround(9);
200
201 .align 4
202 .Lenc_done:
203         /* write output block */
204         movq (0 * 8)(%rsp), %rsi;
205         movl RNAd, 0 * 4(%rsi);
206         movl RNBd, 1 * 4(%rsi);
207         movl RNCd, 2 * 4(%rsi);
208         movl RNDd, 3 * 4(%rsi);
209
210         movq (4 * 8)(%rsp), %r12;
211         movq (3 * 8)(%rsp), %rbx;
212         movq (2 * 8)(%rsp), %rbp;
213         addq $(5 * 8), %rsp;
214
215         ret;
216
217 .align 4
218 .Lenc_not_128:
219         je .Lenc_192
220
221         encround(9);
222         encround(10);
223         encround(11);
224         encround(12);
225         lastencround(13);
226
227         jmp .Lenc_done;
228
229 .align 4
230 .Lenc_192:
231         encround(9);
232         encround(10);
233         lastencround(11);
234
235         jmp .Lenc_done;
236 .size _gcry_aes_amd64_encrypt_block,.-_gcry_aes_amd64_encrypt_block;
237
238 #define do_decround(next_r) \
239         do16bit_shr(16, mov, RA, Dsize, D0, RNA, D1, RNB, RT0, RT1); \
240         do16bit(        mov, RA, Dsize, D2, RNC, D3, RND, RT0, RT1); \
241         movl (((next_r) * 16) + 0 * 4)(CTX), RAd; \
242         xorl RNAd, RAd; \
243         \
244         do16bit_shr(16, xor, RB, Dsize, D0, RNB, D1, RNC, RT0, RT1); \
245         do16bit(        xor, RB, Dsize, D2, RND, D3, RA,  RT0, RT1); \
246         movl (((next_r) * 16) + 1 * 4)(CTX), RBd; \
247         xorl RNBd, RBd; \
248         \
249         do16bit_shr(16, xor, RC, Dsize, D0, RNC, D1, RND, RT0, RT1); \
250         do16bit(        xor, RC, Dsize, D2, RA,  D3, RB,  RT0, RT1); \
251         movl (((next_r) * 16) + 2 * 4)(CTX), RCd; \
252         xorl RNCd, RCd; \
253         \
254         do16bit_shr(16, xor, RD, Dsize, D0, RND, D1, RA,  RT0, RT1); \
255         do16bit(        xor, RD, Dsize, D2, RB,  D3, RC,  RT0, RT1); \
256         movl (((next_r) * 16) + 3 * 4)(CTX), RDd; \
257         xorl RNDd, RDd; \
258
259 #define do_lastdecround() \
260         do16bit_shr(16, mov, RA, Dsize, Ds0, RNA, Ds1, RNB, RT0, RT1); \
261         do16bit(        mov, RA, Dsize, Ds2, RNC, Ds3, RND, RT0, RT1); \
262         \
263         do16bit_shr(16,  or, RB, Dsize, Ds0, RNB, Ds1, RNC, RT0, RT1); \
264         do16bit(         or, RB, Dsize, Ds2, RND, Ds3, RNA, RT0, RT1); \
265         \
266         do16bit_shr(16,  or, RC, Dsize, Ds0, RNC, Ds1, RND, RT0, RT1); \
267         do16bit(         or, RC, Dsize, Ds2, RNA, Ds3, RNB, RT0, RT1); \
268         \
269         do16bit_shr(16,  or, RD, Dsize, Ds0, RND, Ds1, RNA, RT0, RT1); \
270         do16bit(         or, RD, Dsize, Ds2, RNB, Ds3, RNC, RT0, RT1);
271
272 #define firstdecround(round) \
273         addroundkey((round + 1), RA, RB, RC, RD); \
274         do_decround(round);
275
276 #define decround(round) \
277         do_decround(round);
278
279 #define lastdecround(round) \
280         do_lastdecround(); \
281         addroundkey(round, RNA, RNB, RNC, RND);
282
283 .align 8
284 .global _gcry_aes_amd64_decrypt_block
285 .type   _gcry_aes_amd64_decrypt_block,@function;
286
287 _gcry_aes_amd64_decrypt_block:
288         /* input:
289          *      %rdi: keysched, CTX
290          *      %rsi: dst
291          *      %rdx: src
292          *      %ecx: number of rounds.. 10, 12 or 14
293          */
294         subq $(5 * 8), %rsp;
295         movq %rsi, (0 * 8)(%rsp);
296         movl %ecx, (1 * 8)(%rsp);
297         movq %rbp, (2 * 8)(%rsp);
298         movq %rbx, (3 * 8)(%rsp);
299         movq %r12, (4 * 8)(%rsp);
300
301         leaq .LtableD0(RIP), RTAB;
302
303         /* read input block */
304         movl 0 * 4(%rdx), RAd;
305         movl 1 * 4(%rdx), RBd;
306         movl 2 * 4(%rdx), RCd;
307         movl 3 * 4(%rdx), RDd;
308
309         cmpl $12, (1 * 8)(%rsp);
310         jnb .Ldec_256;
311
312         firstdecround(9);
313 .align 4
314 .Ldec_tail:
315         decround(8);
316         decround(7);
317         decround(6);
318         decround(5);
319         decround(4);
320         decround(3);
321         decround(2);
322         decround(1);
323         lastdecround(0);
324
325         /* write output block */
326         movq (0 * 8)(%rsp), %rsi;
327         movl RNAd, 0 * 4(%rsi);
328         movl RNBd, 1 * 4(%rsi);
329         movl RNCd, 2 * 4(%rsi);
330         movl RNDd, 3 * 4(%rsi);
331
332         movq (4 * 8)(%rsp), %r12;
333         movq (3 * 8)(%rsp), %rbx;
334         movq (2 * 8)(%rsp), %rbp;
335         addq $(5 * 8), %rsp;
336
337         ret;
338
339 .align 4
340 .Ldec_256:
341         je .Ldec_192;
342
343         firstdecround(13);
344         decround(12);
345         decround(11);
346         decround(10);
347         decround(9);
348
349         jmp .Ldec_tail;
350
351 .align 4
352 .Ldec_192:
353         firstdecround(11);
354         decround(10);
355         decround(9);
356
357         jmp .Ldec_tail;
358 .size _gcry_aes_amd64_encrypt_block,.-_gcry_aes_amd64_encrypt_block;
359
360 .data
361 .align 16
362
363 /* Encryption tables */
364 .LtableE0:
365 .long 0xa56363c6
366 .LtableEs0:
367 .long             0x00000063, 0x847c7cf8, 0x0000007c
368 .long 0x997777ee, 0x00000077, 0x8d7b7bf6, 0x0000007b
369 .long 0x0df2f2ff, 0x000000f2, 0xbd6b6bd6, 0x0000006b
370 .long 0xb16f6fde, 0x0000006f, 0x54c5c591, 0x000000c5
371 .long 0x50303060, 0x00000030, 0x03010102, 0x00000001
372 .long 0xa96767ce, 0x00000067, 0x7d2b2b56, 0x0000002b
373 .long 0x19fefee7, 0x000000fe, 0x62d7d7b5, 0x000000d7
374 .long 0xe6abab4d, 0x000000ab, 0x9a7676ec, 0x00000076
375 .long 0x45caca8f, 0x000000ca, 0x9d82821f, 0x00000082
376 .long 0x40c9c989, 0x000000c9, 0x877d7dfa, 0x0000007d
377 .long 0x15fafaef, 0x000000fa, 0xeb5959b2, 0x00000059
378 .long 0xc947478e, 0x00000047, 0x0bf0f0fb, 0x000000f0
379 .long 0xecadad41, 0x000000ad, 0x67d4d4b3, 0x000000d4
380 .long 0xfda2a25f, 0x000000a2, 0xeaafaf45, 0x000000af
381 .long 0xbf9c9c23, 0x0000009c, 0xf7a4a453, 0x000000a4
382 .long 0x967272e4, 0x00000072, 0x5bc0c09b, 0x000000c0
383 .long 0xc2b7b775, 0x000000b7, 0x1cfdfde1, 0x000000fd
384 .long 0xae93933d, 0x00000093, 0x6a26264c, 0x00000026
385 .long 0x5a36366c, 0x00000036, 0x413f3f7e, 0x0000003f
386 .long 0x02f7f7f5, 0x000000f7, 0x4fcccc83, 0x000000cc
387 .long 0x5c343468, 0x00000034, 0xf4a5a551, 0x000000a5
388 .long 0x34e5e5d1, 0x000000e5, 0x08f1f1f9, 0x000000f1
389 .long 0x937171e2, 0x00000071, 0x73d8d8ab, 0x000000d8
390 .long 0x53313162, 0x00000031, 0x3f15152a, 0x00000015
391 .long 0x0c040408, 0x00000004, 0x52c7c795, 0x000000c7
392 .long 0x65232346, 0x00000023, 0x5ec3c39d, 0x000000c3
393 .long 0x28181830, 0x00000018, 0xa1969637, 0x00000096
394 .long 0x0f05050a, 0x00000005, 0xb59a9a2f, 0x0000009a
395 .long 0x0907070e, 0x00000007, 0x36121224, 0x00000012
396 .long 0x9b80801b, 0x00000080, 0x3de2e2df, 0x000000e2
397 .long 0x26ebebcd, 0x000000eb, 0x6927274e, 0x00000027
398 .long 0xcdb2b27f, 0x000000b2, 0x9f7575ea, 0x00000075
399 .long 0x1b090912, 0x00000009, 0x9e83831d, 0x00000083
400 .long 0x742c2c58, 0x0000002c, 0x2e1a1a34, 0x0000001a
401 .long 0x2d1b1b36, 0x0000001b, 0xb26e6edc, 0x0000006e
402 .long 0xee5a5ab4, 0x0000005a, 0xfba0a05b, 0x000000a0
403 .long 0xf65252a4, 0x00000052, 0x4d3b3b76, 0x0000003b
404 .long 0x61d6d6b7, 0x000000d6, 0xceb3b37d, 0x000000b3
405 .long 0x7b292952, 0x00000029, 0x3ee3e3dd, 0x000000e3
406 .long 0x712f2f5e, 0x0000002f, 0x97848413, 0x00000084
407 .long 0xf55353a6, 0x00000053, 0x68d1d1b9, 0x000000d1
408 .long 0x00000000, 0x00000000, 0x2cededc1, 0x000000ed
409 .long 0x60202040, 0x00000020, 0x1ffcfce3, 0x000000fc
410 .long 0xc8b1b179, 0x000000b1, 0xed5b5bb6, 0x0000005b
411 .long 0xbe6a6ad4, 0x0000006a, 0x46cbcb8d, 0x000000cb
412 .long 0xd9bebe67, 0x000000be, 0x4b393972, 0x00000039
413 .long 0xde4a4a94, 0x0000004a, 0xd44c4c98, 0x0000004c
414 .long 0xe85858b0, 0x00000058, 0x4acfcf85, 0x000000cf
415 .long 0x6bd0d0bb, 0x000000d0, 0x2aefefc5, 0x000000ef
416 .long 0xe5aaaa4f, 0x000000aa, 0x16fbfbed, 0x000000fb
417 .long 0xc5434386, 0x00000043, 0xd74d4d9a, 0x0000004d
418 .long 0x55333366, 0x00000033, 0x94858511, 0x00000085
419 .long 0xcf45458a, 0x00000045, 0x10f9f9e9, 0x000000f9
420 .long 0x06020204, 0x00000002, 0x817f7ffe, 0x0000007f
421 .long 0xf05050a0, 0x00000050, 0x443c3c78, 0x0000003c
422 .long 0xba9f9f25, 0x0000009f, 0xe3a8a84b, 0x000000a8
423 .long 0xf35151a2, 0x00000051, 0xfea3a35d, 0x000000a3
424 .long 0xc0404080, 0x00000040, 0x8a8f8f05, 0x0000008f
425 .long 0xad92923f, 0x00000092, 0xbc9d9d21, 0x0000009d
426 .long 0x48383870, 0x00000038, 0x04f5f5f1, 0x000000f5
427 .long 0xdfbcbc63, 0x000000bc, 0xc1b6b677, 0x000000b6
428 .long 0x75dadaaf, 0x000000da, 0x63212142, 0x00000021
429 .long 0x30101020, 0x00000010, 0x1affffe5, 0x000000ff
430 .long 0x0ef3f3fd, 0x000000f3, 0x6dd2d2bf, 0x000000d2
431 .long 0x4ccdcd81, 0x000000cd, 0x140c0c18, 0x0000000c
432 .long 0x35131326, 0x00000013, 0x2fececc3, 0x000000ec
433 .long 0xe15f5fbe, 0x0000005f, 0xa2979735, 0x00000097
434 .long 0xcc444488, 0x00000044, 0x3917172e, 0x00000017
435 .long 0x57c4c493, 0x000000c4, 0xf2a7a755, 0x000000a7
436 .long 0x827e7efc, 0x0000007e, 0x473d3d7a, 0x0000003d
437 .long 0xac6464c8, 0x00000064, 0xe75d5dba, 0x0000005d
438 .long 0x2b191932, 0x00000019, 0x957373e6, 0x00000073
439 .long 0xa06060c0, 0x00000060, 0x98818119, 0x00000081
440 .long 0xd14f4f9e, 0x0000004f, 0x7fdcdca3, 0x000000dc
441 .long 0x66222244, 0x00000022, 0x7e2a2a54, 0x0000002a
442 .long 0xab90903b, 0x00000090, 0x8388880b, 0x00000088
443 .long 0xca46468c, 0x00000046, 0x29eeeec7, 0x000000ee
444 .long 0xd3b8b86b, 0x000000b8, 0x3c141428, 0x00000014
445 .long 0x79dedea7, 0x000000de, 0xe25e5ebc, 0x0000005e
446 .long 0x1d0b0b16, 0x0000000b, 0x76dbdbad, 0x000000db
447 .long 0x3be0e0db, 0x000000e0, 0x56323264, 0x00000032
448 .long 0x4e3a3a74, 0x0000003a, 0x1e0a0a14, 0x0000000a
449 .long 0xdb494992, 0x00000049, 0x0a06060c, 0x00000006
450 .long 0x6c242448, 0x00000024, 0xe45c5cb8, 0x0000005c
451 .long 0x5dc2c29f, 0x000000c2, 0x6ed3d3bd, 0x000000d3
452 .long 0xefacac43, 0x000000ac, 0xa66262c4, 0x00000062
453 .long 0xa8919139, 0x00000091, 0xa4959531, 0x00000095
454 .long 0x37e4e4d3, 0x000000e4, 0x8b7979f2, 0x00000079
455 .long 0x32e7e7d5, 0x000000e7, 0x43c8c88b, 0x000000c8
456 .long 0x5937376e, 0x00000037, 0xb76d6dda, 0x0000006d
457 .long 0x8c8d8d01, 0x0000008d, 0x64d5d5b1, 0x000000d5
458 .long 0xd24e4e9c, 0x0000004e, 0xe0a9a949, 0x000000a9
459 .long 0xb46c6cd8, 0x0000006c, 0xfa5656ac, 0x00000056
460 .long 0x07f4f4f3, 0x000000f4, 0x25eaeacf, 0x000000ea
461 .long 0xaf6565ca, 0x00000065, 0x8e7a7af4, 0x0000007a
462 .long 0xe9aeae47, 0x000000ae, 0x18080810, 0x00000008
463 .long 0xd5baba6f, 0x000000ba, 0x887878f0, 0x00000078
464 .long 0x6f25254a, 0x00000025, 0x722e2e5c, 0x0000002e
465 .long 0x241c1c38, 0x0000001c, 0xf1a6a657, 0x000000a6
466 .long 0xc7b4b473, 0x000000b4, 0x51c6c697, 0x000000c6
467 .long 0x23e8e8cb, 0x000000e8, 0x7cdddda1, 0x000000dd
468 .long 0x9c7474e8, 0x00000074, 0x211f1f3e, 0x0000001f
469 .long 0xdd4b4b96, 0x0000004b, 0xdcbdbd61, 0x000000bd
470 .long 0x868b8b0d, 0x0000008b, 0x858a8a0f, 0x0000008a
471 .long 0x907070e0, 0x00000070, 0x423e3e7c, 0x0000003e
472 .long 0xc4b5b571, 0x000000b5, 0xaa6666cc, 0x00000066
473 .long 0xd8484890, 0x00000048, 0x05030306, 0x00000003
474 .long 0x01f6f6f7, 0x000000f6, 0x120e0e1c, 0x0000000e
475 .long 0xa36161c2, 0x00000061, 0x5f35356a, 0x00000035
476 .long 0xf95757ae, 0x00000057, 0xd0b9b969, 0x000000b9
477 .long 0x91868617, 0x00000086, 0x58c1c199, 0x000000c1
478 .long 0x271d1d3a, 0x0000001d, 0xb99e9e27, 0x0000009e
479 .long 0x38e1e1d9, 0x000000e1, 0x13f8f8eb, 0x000000f8
480 .long 0xb398982b, 0x00000098, 0x33111122, 0x00000011
481 .long 0xbb6969d2, 0x00000069, 0x70d9d9a9, 0x000000d9
482 .long 0x898e8e07, 0x0000008e, 0xa7949433, 0x00000094
483 .long 0xb69b9b2d, 0x0000009b, 0x221e1e3c, 0x0000001e
484 .long 0x92878715, 0x00000087, 0x20e9e9c9, 0x000000e9
485 .long 0x49cece87, 0x000000ce, 0xff5555aa, 0x00000055
486 .long 0x78282850, 0x00000028, 0x7adfdfa5, 0x000000df
487 .long 0x8f8c8c03, 0x0000008c, 0xf8a1a159, 0x000000a1
488 .long 0x80898909, 0x00000089, 0x170d0d1a, 0x0000000d
489 .long 0xdabfbf65, 0x000000bf, 0x31e6e6d7, 0x000000e6
490 .long 0xc6424284, 0x00000042, 0xb86868d0, 0x00000068
491 .long 0xc3414182, 0x00000041, 0xb0999929, 0x00000099
492 .long 0x772d2d5a, 0x0000002d, 0x110f0f1e, 0x0000000f
493 .long 0xcbb0b07b, 0x000000b0, 0xfc5454a8, 0x00000054
494 .long 0xd6bbbb6d, 0x000000bb, 0x3a16162c, 0x00000016
495 .LtableE1:
496 .long 0x6363c6a5
497 .LtableEs1:
498 .long             0x00006300, 0x7c7cf884, 0x00007c00
499 .long 0x7777ee99, 0x00007700, 0x7b7bf68d, 0x00007b00
500 .long 0xf2f2ff0d, 0x0000f200, 0x6b6bd6bd, 0x00006b00
501 .long 0x6f6fdeb1, 0x00006f00, 0xc5c59154, 0x0000c500
502 .long 0x30306050, 0x00003000, 0x01010203, 0x00000100
503 .long 0x6767cea9, 0x00006700, 0x2b2b567d, 0x00002b00
504 .long 0xfefee719, 0x0000fe00, 0xd7d7b562, 0x0000d700
505 .long 0xabab4de6, 0x0000ab00, 0x7676ec9a, 0x00007600
506 .long 0xcaca8f45, 0x0000ca00, 0x82821f9d, 0x00008200
507 .long 0xc9c98940, 0x0000c900, 0x7d7dfa87, 0x00007d00
508 .long 0xfafaef15, 0x0000fa00, 0x5959b2eb, 0x00005900
509 .long 0x47478ec9, 0x00004700, 0xf0f0fb0b, 0x0000f000
510 .long 0xadad41ec, 0x0000ad00, 0xd4d4b367, 0x0000d400
511 .long 0xa2a25ffd, 0x0000a200, 0xafaf45ea, 0x0000af00
512 .long 0x9c9c23bf, 0x00009c00, 0xa4a453f7, 0x0000a400
513 .long 0x7272e496, 0x00007200, 0xc0c09b5b, 0x0000c000
514 .long 0xb7b775c2, 0x0000b700, 0xfdfde11c, 0x0000fd00
515 .long 0x93933dae, 0x00009300, 0x26264c6a, 0x00002600
516 .long 0x36366c5a, 0x00003600, 0x3f3f7e41, 0x00003f00
517 .long 0xf7f7f502, 0x0000f700, 0xcccc834f, 0x0000cc00
518 .long 0x3434685c, 0x00003400, 0xa5a551f4, 0x0000a500
519 .long 0xe5e5d134, 0x0000e500, 0xf1f1f908, 0x0000f100
520 .long 0x7171e293, 0x00007100, 0xd8d8ab73, 0x0000d800
521 .long 0x31316253, 0x00003100, 0x15152a3f, 0x00001500
522 .long 0x0404080c, 0x00000400, 0xc7c79552, 0x0000c700
523 .long 0x23234665, 0x00002300, 0xc3c39d5e, 0x0000c300
524 .long 0x18183028, 0x00001800, 0x969637a1, 0x00009600
525 .long 0x05050a0f, 0x00000500, 0x9a9a2fb5, 0x00009a00
526 .long 0x07070e09, 0x00000700, 0x12122436, 0x00001200
527 .long 0x80801b9b, 0x00008000, 0xe2e2df3d, 0x0000e200
528 .long 0xebebcd26, 0x0000eb00, 0x27274e69, 0x00002700
529 .long 0xb2b27fcd, 0x0000b200, 0x7575ea9f, 0x00007500
530 .long 0x0909121b, 0x00000900, 0x83831d9e, 0x00008300
531 .long 0x2c2c5874, 0x00002c00, 0x1a1a342e, 0x00001a00
532 .long 0x1b1b362d, 0x00001b00, 0x6e6edcb2, 0x00006e00
533 .long 0x5a5ab4ee, 0x00005a00, 0xa0a05bfb, 0x0000a000
534 .long 0x5252a4f6, 0x00005200, 0x3b3b764d, 0x00003b00
535 .long 0xd6d6b761, 0x0000d600, 0xb3b37dce, 0x0000b300
536 .long 0x2929527b, 0x00002900, 0xe3e3dd3e, 0x0000e300
537 .long 0x2f2f5e71, 0x00002f00, 0x84841397, 0x00008400
538 .long 0x5353a6f5, 0x00005300, 0xd1d1b968, 0x0000d100
539 .long 0x00000000, 0x00000000, 0xededc12c, 0x0000ed00
540 .long 0x20204060, 0x00002000, 0xfcfce31f, 0x0000fc00
541 .long 0xb1b179c8, 0x0000b100, 0x5b5bb6ed, 0x00005b00
542 .long 0x6a6ad4be, 0x00006a00, 0xcbcb8d46, 0x0000cb00
543 .long 0xbebe67d9, 0x0000be00, 0x3939724b, 0x00003900
544 .long 0x4a4a94de, 0x00004a00, 0x4c4c98d4, 0x00004c00
545 .long 0x5858b0e8, 0x00005800, 0xcfcf854a, 0x0000cf00
546 .long 0xd0d0bb6b, 0x0000d000, 0xefefc52a, 0x0000ef00
547 .long 0xaaaa4fe5, 0x0000aa00, 0xfbfbed16, 0x0000fb00
548 .long 0x434386c5, 0x00004300, 0x4d4d9ad7, 0x00004d00
549 .long 0x33336655, 0x00003300, 0x85851194, 0x00008500
550 .long 0x45458acf, 0x00004500, 0xf9f9e910, 0x0000f900
551 .long 0x02020406, 0x00000200, 0x7f7ffe81, 0x00007f00
552 .long 0x5050a0f0, 0x00005000, 0x3c3c7844, 0x00003c00
553 .long 0x9f9f25ba, 0x00009f00, 0xa8a84be3, 0x0000a800
554 .long 0x5151a2f3, 0x00005100, 0xa3a35dfe, 0x0000a300
555 .long 0x404080c0, 0x00004000, 0x8f8f058a, 0x00008f00
556 .long 0x92923fad, 0x00009200, 0x9d9d21bc, 0x00009d00
557 .long 0x38387048, 0x00003800, 0xf5f5f104, 0x0000f500
558 .long 0xbcbc63df, 0x0000bc00, 0xb6b677c1, 0x0000b600
559 .long 0xdadaaf75, 0x0000da00, 0x21214263, 0x00002100
560 .long 0x10102030, 0x00001000, 0xffffe51a, 0x0000ff00
561 .long 0xf3f3fd0e, 0x0000f300, 0xd2d2bf6d, 0x0000d200
562 .long 0xcdcd814c, 0x0000cd00, 0x0c0c1814, 0x00000c00
563 .long 0x13132635, 0x00001300, 0xececc32f, 0x0000ec00
564 .long 0x5f5fbee1, 0x00005f00, 0x979735a2, 0x00009700
565 .long 0x444488cc, 0x00004400, 0x17172e39, 0x00001700
566 .long 0xc4c49357, 0x0000c400, 0xa7a755f2, 0x0000a700
567 .long 0x7e7efc82, 0x00007e00, 0x3d3d7a47, 0x00003d00
568 .long 0x6464c8ac, 0x00006400, 0x5d5dbae7, 0x00005d00
569 .long 0x1919322b, 0x00001900, 0x7373e695, 0x00007300
570 .long 0x6060c0a0, 0x00006000, 0x81811998, 0x00008100
571 .long 0x4f4f9ed1, 0x00004f00, 0xdcdca37f, 0x0000dc00
572 .long 0x22224466, 0x00002200, 0x2a2a547e, 0x00002a00
573 .long 0x90903bab, 0x00009000, 0x88880b83, 0x00008800
574 .long 0x46468cca, 0x00004600, 0xeeeec729, 0x0000ee00
575 .long 0xb8b86bd3, 0x0000b800, 0x1414283c, 0x00001400
576 .long 0xdedea779, 0x0000de00, 0x5e5ebce2, 0x00005e00
577 .long 0x0b0b161d, 0x00000b00, 0xdbdbad76, 0x0000db00
578 .long 0xe0e0db3b, 0x0000e000, 0x32326456, 0x00003200
579 .long 0x3a3a744e, 0x00003a00, 0x0a0a141e, 0x00000a00
580 .long 0x494992db, 0x00004900, 0x06060c0a, 0x00000600
581 .long 0x2424486c, 0x00002400, 0x5c5cb8e4, 0x00005c00
582 .long 0xc2c29f5d, 0x0000c200, 0xd3d3bd6e, 0x0000d300
583 .long 0xacac43ef, 0x0000ac00, 0x6262c4a6, 0x00006200
584 .long 0x919139a8, 0x00009100, 0x959531a4, 0x00009500
585 .long 0xe4e4d337, 0x0000e400, 0x7979f28b, 0x00007900
586 .long 0xe7e7d532, 0x0000e700, 0xc8c88b43, 0x0000c800
587 .long 0x37376e59, 0x00003700, 0x6d6ddab7, 0x00006d00
588 .long 0x8d8d018c, 0x00008d00, 0xd5d5b164, 0x0000d500
589 .long 0x4e4e9cd2, 0x00004e00, 0xa9a949e0, 0x0000a900
590 .long 0x6c6cd8b4, 0x00006c00, 0x5656acfa, 0x00005600
591 .long 0xf4f4f307, 0x0000f400, 0xeaeacf25, 0x0000ea00
592 .long 0x6565caaf, 0x00006500, 0x7a7af48e, 0x00007a00
593 .long 0xaeae47e9, 0x0000ae00, 0x08081018, 0x00000800
594 .long 0xbaba6fd5, 0x0000ba00, 0x7878f088, 0x00007800
595 .long 0x25254a6f, 0x00002500, 0x2e2e5c72, 0x00002e00
596 .long 0x1c1c3824, 0x00001c00, 0xa6a657f1, 0x0000a600
597 .long 0xb4b473c7, 0x0000b400, 0xc6c69751, 0x0000c600
598 .long 0xe8e8cb23, 0x0000e800, 0xdddda17c, 0x0000dd00
599 .long 0x7474e89c, 0x00007400, 0x1f1f3e21, 0x00001f00
600 .long 0x4b4b96dd, 0x00004b00, 0xbdbd61dc, 0x0000bd00
601 .long 0x8b8b0d86, 0x00008b00, 0x8a8a0f85, 0x00008a00
602 .long 0x7070e090, 0x00007000, 0x3e3e7c42, 0x00003e00
603 .long 0xb5b571c4, 0x0000b500, 0x6666ccaa, 0x00006600
604 .long 0x484890d8, 0x00004800, 0x03030605, 0x00000300
605 .long 0xf6f6f701, 0x0000f600, 0x0e0e1c12, 0x00000e00
606 .long 0x6161c2a3, 0x00006100, 0x35356a5f, 0x00003500
607 .long 0x5757aef9, 0x00005700, 0xb9b969d0, 0x0000b900
608 .long 0x86861791, 0x00008600, 0xc1c19958, 0x0000c100
609 .long 0x1d1d3a27, 0x00001d00, 0x9e9e27b9, 0x00009e00
610 .long 0xe1e1d938, 0x0000e100, 0xf8f8eb13, 0x0000f800
611 .long 0x98982bb3, 0x00009800, 0x11112233, 0x00001100
612 .long 0x6969d2bb, 0x00006900, 0xd9d9a970, 0x0000d900
613 .long 0x8e8e0789, 0x00008e00, 0x949433a7, 0x00009400
614 .long 0x9b9b2db6, 0x00009b00, 0x1e1e3c22, 0x00001e00
615 .long 0x87871592, 0x00008700, 0xe9e9c920, 0x0000e900
616 .long 0xcece8749, 0x0000ce00, 0x5555aaff, 0x00005500
617 .long 0x28285078, 0x00002800, 0xdfdfa57a, 0x0000df00
618 .long 0x8c8c038f, 0x00008c00, 0xa1a159f8, 0x0000a100
619 .long 0x89890980, 0x00008900, 0x0d0d1a17, 0x00000d00
620 .long 0xbfbf65da, 0x0000bf00, 0xe6e6d731, 0x0000e600
621 .long 0x424284c6, 0x00004200, 0x6868d0b8, 0x00006800
622 .long 0x414182c3, 0x00004100, 0x999929b0, 0x00009900
623 .long 0x2d2d5a77, 0x00002d00, 0x0f0f1e11, 0x00000f00
624 .long 0xb0b07bcb, 0x0000b000, 0x5454a8fc, 0x00005400
625 .long 0xbbbb6dd6, 0x0000bb00, 0x16162c3a, 0x00001600
626 .LtableE2:
627 .long 0x63c6a563
628 .LtableEs2:
629 .long             0x00630000, 0x7cf8847c, 0x007c0000
630 .long 0x77ee9977, 0x00770000, 0x7bf68d7b, 0x007b0000
631 .long 0xf2ff0df2, 0x00f20000, 0x6bd6bd6b, 0x006b0000
632 .long 0x6fdeb16f, 0x006f0000, 0xc59154c5, 0x00c50000
633 .long 0x30605030, 0x00300000, 0x01020301, 0x00010000
634 .long 0x67cea967, 0x00670000, 0x2b567d2b, 0x002b0000
635 .long 0xfee719fe, 0x00fe0000, 0xd7b562d7, 0x00d70000
636 .long 0xab4de6ab, 0x00ab0000, 0x76ec9a76, 0x00760000
637 .long 0xca8f45ca, 0x00ca0000, 0x821f9d82, 0x00820000
638 .long 0xc98940c9, 0x00c90000, 0x7dfa877d, 0x007d0000
639 .long 0xfaef15fa, 0x00fa0000, 0x59b2eb59, 0x00590000
640 .long 0x478ec947, 0x00470000, 0xf0fb0bf0, 0x00f00000
641 .long 0xad41ecad, 0x00ad0000, 0xd4b367d4, 0x00d40000
642 .long 0xa25ffda2, 0x00a20000, 0xaf45eaaf, 0x00af0000
643 .long 0x9c23bf9c, 0x009c0000, 0xa453f7a4, 0x00a40000
644 .long 0x72e49672, 0x00720000, 0xc09b5bc0, 0x00c00000
645 .long 0xb775c2b7, 0x00b70000, 0xfde11cfd, 0x00fd0000
646 .long 0x933dae93, 0x00930000, 0x264c6a26, 0x00260000
647 .long 0x366c5a36, 0x00360000, 0x3f7e413f, 0x003f0000
648 .long 0xf7f502f7, 0x00f70000, 0xcc834fcc, 0x00cc0000
649 .long 0x34685c34, 0x00340000, 0xa551f4a5, 0x00a50000
650 .long 0xe5d134e5, 0x00e50000, 0xf1f908f1, 0x00f10000
651 .long 0x71e29371, 0x00710000, 0xd8ab73d8, 0x00d80000
652 .long 0x31625331, 0x00310000, 0x152a3f15, 0x00150000
653 .long 0x04080c04, 0x00040000, 0xc79552c7, 0x00c70000
654 .long 0x23466523, 0x00230000, 0xc39d5ec3, 0x00c30000
655 .long 0x18302818, 0x00180000, 0x9637a196, 0x00960000
656 .long 0x050a0f05, 0x00050000, 0x9a2fb59a, 0x009a0000
657 .long 0x070e0907, 0x00070000, 0x12243612, 0x00120000
658 .long 0x801b9b80, 0x00800000, 0xe2df3de2, 0x00e20000
659 .long 0xebcd26eb, 0x00eb0000, 0x274e6927, 0x00270000
660 .long 0xb27fcdb2, 0x00b20000, 0x75ea9f75, 0x00750000
661 .long 0x09121b09, 0x00090000, 0x831d9e83, 0x00830000
662 .long 0x2c58742c, 0x002c0000, 0x1a342e1a, 0x001a0000
663 .long 0x1b362d1b, 0x001b0000, 0x6edcb26e, 0x006e0000
664 .long 0x5ab4ee5a, 0x005a0000, 0xa05bfba0, 0x00a00000
665 .long 0x52a4f652, 0x00520000, 0x3b764d3b, 0x003b0000
666 .long 0xd6b761d6, 0x00d60000, 0xb37dceb3, 0x00b30000
667 .long 0x29527b29, 0x00290000, 0xe3dd3ee3, 0x00e30000
668 .long 0x2f5e712f, 0x002f0000, 0x84139784, 0x00840000
669 .long 0x53a6f553, 0x00530000, 0xd1b968d1, 0x00d10000
670 .long 0x00000000, 0x00000000, 0xedc12ced, 0x00ed0000
671 .long 0x20406020, 0x00200000, 0xfce31ffc, 0x00fc0000
672 .long 0xb179c8b1, 0x00b10000, 0x5bb6ed5b, 0x005b0000
673 .long 0x6ad4be6a, 0x006a0000, 0xcb8d46cb, 0x00cb0000
674 .long 0xbe67d9be, 0x00be0000, 0x39724b39, 0x00390000
675 .long 0x4a94de4a, 0x004a0000, 0x4c98d44c, 0x004c0000
676 .long 0x58b0e858, 0x00580000, 0xcf854acf, 0x00cf0000
677 .long 0xd0bb6bd0, 0x00d00000, 0xefc52aef, 0x00ef0000
678 .long 0xaa4fe5aa, 0x00aa0000, 0xfbed16fb, 0x00fb0000
679 .long 0x4386c543, 0x00430000, 0x4d9ad74d, 0x004d0000
680 .long 0x33665533, 0x00330000, 0x85119485, 0x00850000
681 .long 0x458acf45, 0x00450000, 0xf9e910f9, 0x00f90000
682 .long 0x02040602, 0x00020000, 0x7ffe817f, 0x007f0000
683 .long 0x50a0f050, 0x00500000, 0x3c78443c, 0x003c0000
684 .long 0x9f25ba9f, 0x009f0000, 0xa84be3a8, 0x00a80000
685 .long 0x51a2f351, 0x00510000, 0xa35dfea3, 0x00a30000
686 .long 0x4080c040, 0x00400000, 0x8f058a8f, 0x008f0000
687 .long 0x923fad92, 0x00920000, 0x9d21bc9d, 0x009d0000
688 .long 0x38704838, 0x00380000, 0xf5f104f5, 0x00f50000
689 .long 0xbc63dfbc, 0x00bc0000, 0xb677c1b6, 0x00b60000
690 .long 0xdaaf75da, 0x00da0000, 0x21426321, 0x00210000
691 .long 0x10203010, 0x00100000, 0xffe51aff, 0x00ff0000
692 .long 0xf3fd0ef3, 0x00f30000, 0xd2bf6dd2, 0x00d20000
693 .long 0xcd814ccd, 0x00cd0000, 0x0c18140c, 0x000c0000
694 .long 0x13263513, 0x00130000, 0xecc32fec, 0x00ec0000
695 .long 0x5fbee15f, 0x005f0000, 0x9735a297, 0x00970000
696 .long 0x4488cc44, 0x00440000, 0x172e3917, 0x00170000
697 .long 0xc49357c4, 0x00c40000, 0xa755f2a7, 0x00a70000
698 .long 0x7efc827e, 0x007e0000, 0x3d7a473d, 0x003d0000
699 .long 0x64c8ac64, 0x00640000, 0x5dbae75d, 0x005d0000
700 .long 0x19322b19, 0x00190000, 0x73e69573, 0x00730000
701 .long 0x60c0a060, 0x00600000, 0x81199881, 0x00810000
702 .long 0x4f9ed14f, 0x004f0000, 0xdca37fdc, 0x00dc0000
703 .long 0x22446622, 0x00220000, 0x2a547e2a, 0x002a0000
704 .long 0x903bab90, 0x00900000, 0x880b8388, 0x00880000
705 .long 0x468cca46, 0x00460000, 0xeec729ee, 0x00ee0000
706 .long 0xb86bd3b8, 0x00b80000, 0x14283c14, 0x00140000
707 .long 0xdea779de, 0x00de0000, 0x5ebce25e, 0x005e0000
708 .long 0x0b161d0b, 0x000b0000, 0xdbad76db, 0x00db0000
709 .long 0xe0db3be0, 0x00e00000, 0x32645632, 0x00320000
710 .long 0x3a744e3a, 0x003a0000, 0x0a141e0a, 0x000a0000
711 .long 0x4992db49, 0x00490000, 0x060c0a06, 0x00060000
712 .long 0x24486c24, 0x00240000, 0x5cb8e45c, 0x005c0000
713 .long 0xc29f5dc2, 0x00c20000, 0xd3bd6ed3, 0x00d30000
714 .long 0xac43efac, 0x00ac0000, 0x62c4a662, 0x00620000
715 .long 0x9139a891, 0x00910000, 0x9531a495, 0x00950000
716 .long 0xe4d337e4, 0x00e40000, 0x79f28b79, 0x00790000
717 .long 0xe7d532e7, 0x00e70000, 0xc88b43c8, 0x00c80000
718 .long 0x376e5937, 0x00370000, 0x6ddab76d, 0x006d0000
719 .long 0x8d018c8d, 0x008d0000, 0xd5b164d5, 0x00d50000
720 .long 0x4e9cd24e, 0x004e0000, 0xa949e0a9, 0x00a90000
721 .long 0x6cd8b46c, 0x006c0000, 0x56acfa56, 0x00560000
722 .long 0xf4f307f4, 0x00f40000, 0xeacf25ea, 0x00ea0000
723 .long 0x65caaf65, 0x00650000, 0x7af48e7a, 0x007a0000
724 .long 0xae47e9ae, 0x00ae0000, 0x08101808, 0x00080000
725 .long 0xba6fd5ba, 0x00ba0000, 0x78f08878, 0x00780000
726 .long 0x254a6f25, 0x00250000, 0x2e5c722e, 0x002e0000
727 .long 0x1c38241c, 0x001c0000, 0xa657f1a6, 0x00a60000
728 .long 0xb473c7b4, 0x00b40000, 0xc69751c6, 0x00c60000
729 .long 0xe8cb23e8, 0x00e80000, 0xdda17cdd, 0x00dd0000
730 .long 0x74e89c74, 0x00740000, 0x1f3e211f, 0x001f0000
731 .long 0x4b96dd4b, 0x004b0000, 0xbd61dcbd, 0x00bd0000
732 .long 0x8b0d868b, 0x008b0000, 0x8a0f858a, 0x008a0000
733 .long 0x70e09070, 0x00700000, 0x3e7c423e, 0x003e0000
734 .long 0xb571c4b5, 0x00b50000, 0x66ccaa66, 0x00660000
735 .long 0x4890d848, 0x00480000, 0x03060503, 0x00030000
736 .long 0xf6f701f6, 0x00f60000, 0x0e1c120e, 0x000e0000
737 .long 0x61c2a361, 0x00610000, 0x356a5f35, 0x00350000
738 .long 0x57aef957, 0x00570000, 0xb969d0b9, 0x00b90000
739 .long 0x86179186, 0x00860000, 0xc19958c1, 0x00c10000
740 .long 0x1d3a271d, 0x001d0000, 0x9e27b99e, 0x009e0000
741 .long 0xe1d938e1, 0x00e10000, 0xf8eb13f8, 0x00f80000
742 .long 0x982bb398, 0x00980000, 0x11223311, 0x00110000
743 .long 0x69d2bb69, 0x00690000, 0xd9a970d9, 0x00d90000
744 .long 0x8e07898e, 0x008e0000, 0x9433a794, 0x00940000
745 .long 0x9b2db69b, 0x009b0000, 0x1e3c221e, 0x001e0000
746 .long 0x87159287, 0x00870000, 0xe9c920e9, 0x00e90000
747 .long 0xce8749ce, 0x00ce0000, 0x55aaff55, 0x00550000
748 .long 0x28507828, 0x00280000, 0xdfa57adf, 0x00df0000
749 .long 0x8c038f8c, 0x008c0000, 0xa159f8a1, 0x00a10000
750 .long 0x89098089, 0x00890000, 0x0d1a170d, 0x000d0000
751 .long 0xbf65dabf, 0x00bf0000, 0xe6d731e6, 0x00e60000
752 .long 0x4284c642, 0x00420000, 0x68d0b868, 0x00680000
753 .long 0x4182c341, 0x00410000, 0x9929b099, 0x00990000
754 .long 0x2d5a772d, 0x002d0000, 0x0f1e110f, 0x000f0000
755 .long 0xb07bcbb0, 0x00b00000, 0x54a8fc54, 0x00540000
756 .long 0xbb6dd6bb, 0x00bb0000, 0x162c3a16, 0x00160000
757 .LtableE3:
758 .long 0xc6a56363
759 .LtableEs3:
760 .long             0x63000000, 0xf8847c7c, 0x7c000000
761 .long 0xee997777, 0x77000000, 0xf68d7b7b, 0x7b000000
762 .long 0xff0df2f2, 0xf2000000, 0xd6bd6b6b, 0x6b000000
763 .long 0xdeb16f6f, 0x6f000000, 0x9154c5c5, 0xc5000000
764 .long 0x60503030, 0x30000000, 0x02030101, 0x01000000
765 .long 0xcea96767, 0x67000000, 0x567d2b2b, 0x2b000000
766 .long 0xe719fefe, 0xfe000000, 0xb562d7d7, 0xd7000000
767 .long 0x4de6abab, 0xab000000, 0xec9a7676, 0x76000000
768 .long 0x8f45caca, 0xca000000, 0x1f9d8282, 0x82000000
769 .long 0x8940c9c9, 0xc9000000, 0xfa877d7d, 0x7d000000
770 .long 0xef15fafa, 0xfa000000, 0xb2eb5959, 0x59000000
771 .long 0x8ec94747, 0x47000000, 0xfb0bf0f0, 0xf0000000
772 .long 0x41ecadad, 0xad000000, 0xb367d4d4, 0xd4000000
773 .long 0x5ffda2a2, 0xa2000000, 0x45eaafaf, 0xaf000000
774 .long 0x23bf9c9c, 0x9c000000, 0x53f7a4a4, 0xa4000000
775 .long 0xe4967272, 0x72000000, 0x9b5bc0c0, 0xc0000000
776 .long 0x75c2b7b7, 0xb7000000, 0xe11cfdfd, 0xfd000000
777 .long 0x3dae9393, 0x93000000, 0x4c6a2626, 0x26000000
778 .long 0x6c5a3636, 0x36000000, 0x7e413f3f, 0x3f000000
779 .long 0xf502f7f7, 0xf7000000, 0x834fcccc, 0xcc000000
780 .long 0x685c3434, 0x34000000, 0x51f4a5a5, 0xa5000000
781 .long 0xd134e5e5, 0xe5000000, 0xf908f1f1, 0xf1000000
782 .long 0xe2937171, 0x71000000, 0xab73d8d8, 0xd8000000
783 .long 0x62533131, 0x31000000, 0x2a3f1515, 0x15000000
784 .long 0x080c0404, 0x04000000, 0x9552c7c7, 0xc7000000
785 .long 0x46652323, 0x23000000, 0x9d5ec3c3, 0xc3000000
786 .long 0x30281818, 0x18000000, 0x37a19696, 0x96000000
787 .long 0x0a0f0505, 0x05000000, 0x2fb59a9a, 0x9a000000
788 .long 0x0e090707, 0x07000000, 0x24361212, 0x12000000
789 .long 0x1b9b8080, 0x80000000, 0xdf3de2e2, 0xe2000000
790 .long 0xcd26ebeb, 0xeb000000, 0x4e692727, 0x27000000
791 .long 0x7fcdb2b2, 0xb2000000, 0xea9f7575, 0x75000000
792 .long 0x121b0909, 0x09000000, 0x1d9e8383, 0x83000000
793 .long 0x58742c2c, 0x2c000000, 0x342e1a1a, 0x1a000000
794 .long 0x362d1b1b, 0x1b000000, 0xdcb26e6e, 0x6e000000
795 .long 0xb4ee5a5a, 0x5a000000, 0x5bfba0a0, 0xa0000000
796 .long 0xa4f65252, 0x52000000, 0x764d3b3b, 0x3b000000
797 .long 0xb761d6d6, 0xd6000000, 0x7dceb3b3, 0xb3000000
798 .long 0x527b2929, 0x29000000, 0xdd3ee3e3, 0xe3000000
799 .long 0x5e712f2f, 0x2f000000, 0x13978484, 0x84000000
800 .long 0xa6f55353, 0x53000000, 0xb968d1d1, 0xd1000000
801 .long 0x00000000, 0x00000000, 0xc12ceded, 0xed000000
802 .long 0x40602020, 0x20000000, 0xe31ffcfc, 0xfc000000
803 .long 0x79c8b1b1, 0xb1000000, 0xb6ed5b5b, 0x5b000000
804 .long 0xd4be6a6a, 0x6a000000, 0x8d46cbcb, 0xcb000000
805 .long 0x67d9bebe, 0xbe000000, 0x724b3939, 0x39000000
806 .long 0x94de4a4a, 0x4a000000, 0x98d44c4c, 0x4c000000
807 .long 0xb0e85858, 0x58000000, 0x854acfcf, 0xcf000000
808 .long 0xbb6bd0d0, 0xd0000000, 0xc52aefef, 0xef000000
809 .long 0x4fe5aaaa, 0xaa000000, 0xed16fbfb, 0xfb000000
810 .long 0x86c54343, 0x43000000, 0x9ad74d4d, 0x4d000000
811 .long 0x66553333, 0x33000000, 0x11948585, 0x85000000
812 .long 0x8acf4545, 0x45000000, 0xe910f9f9, 0xf9000000
813 .long 0x04060202, 0x02000000, 0xfe817f7f, 0x7f000000
814 .long 0xa0f05050, 0x50000000, 0x78443c3c, 0x3c000000
815 .long 0x25ba9f9f, 0x9f000000, 0x4be3a8a8, 0xa8000000
816 .long 0xa2f35151, 0x51000000, 0x5dfea3a3, 0xa3000000
817 .long 0x80c04040, 0x40000000, 0x058a8f8f, 0x8f000000
818 .long 0x3fad9292, 0x92000000, 0x21bc9d9d, 0x9d000000
819 .long 0x70483838, 0x38000000, 0xf104f5f5, 0xf5000000
820 .long 0x63dfbcbc, 0xbc000000, 0x77c1b6b6, 0xb6000000
821 .long 0xaf75dada, 0xda000000, 0x42632121, 0x21000000
822 .long 0x20301010, 0x10000000, 0xe51affff, 0xff000000
823 .long 0xfd0ef3f3, 0xf3000000, 0xbf6dd2d2, 0xd2000000
824 .long 0x814ccdcd, 0xcd000000, 0x18140c0c, 0x0c000000
825 .long 0x26351313, 0x13000000, 0xc32fecec, 0xec000000
826 .long 0xbee15f5f, 0x5f000000, 0x35a29797, 0x97000000
827 .long 0x88cc4444, 0x44000000, 0x2e391717, 0x17000000
828 .long 0x9357c4c4, 0xc4000000, 0x55f2a7a7, 0xa7000000
829 .long 0xfc827e7e, 0x7e000000, 0x7a473d3d, 0x3d000000
830 .long 0xc8ac6464, 0x64000000, 0xbae75d5d, 0x5d000000
831 .long 0x322b1919, 0x19000000, 0xe6957373, 0x73000000
832 .long 0xc0a06060, 0x60000000, 0x19988181, 0x81000000
833 .long 0x9ed14f4f, 0x4f000000, 0xa37fdcdc, 0xdc000000
834 .long 0x44662222, 0x22000000, 0x547e2a2a, 0x2a000000
835 .long 0x3bab9090, 0x90000000, 0x0b838888, 0x88000000
836 .long 0x8cca4646, 0x46000000, 0xc729eeee, 0xee000000
837 .long 0x6bd3b8b8, 0xb8000000, 0x283c1414, 0x14000000
838 .long 0xa779dede, 0xde000000, 0xbce25e5e, 0x5e000000
839 .long 0x161d0b0b, 0x0b000000, 0xad76dbdb, 0xdb000000
840 .long 0xdb3be0e0, 0xe0000000, 0x64563232, 0x32000000
841 .long 0x744e3a3a, 0x3a000000, 0x141e0a0a, 0x0a000000
842 .long 0x92db4949, 0x49000000, 0x0c0a0606, 0x06000000
843 .long 0x486c2424, 0x24000000, 0xb8e45c5c, 0x5c000000
844 .long 0x9f5dc2c2, 0xc2000000, 0xbd6ed3d3, 0xd3000000
845 .long 0x43efacac, 0xac000000, 0xc4a66262, 0x62000000
846 .long 0x39a89191, 0x91000000, 0x31a49595, 0x95000000
847 .long 0xd337e4e4, 0xe4000000, 0xf28b7979, 0x79000000
848 .long 0xd532e7e7, 0xe7000000, 0x8b43c8c8, 0xc8000000
849 .long 0x6e593737, 0x37000000, 0xdab76d6d, 0x6d000000
850 .long 0x018c8d8d, 0x8d000000, 0xb164d5d5, 0xd5000000
851 .long 0x9cd24e4e, 0x4e000000, 0x49e0a9a9, 0xa9000000
852 .long 0xd8b46c6c, 0x6c000000, 0xacfa5656, 0x56000000
853 .long 0xf307f4f4, 0xf4000000, 0xcf25eaea, 0xea000000
854 .long 0xcaaf6565, 0x65000000, 0xf48e7a7a, 0x7a000000
855 .long 0x47e9aeae, 0xae000000, 0x10180808, 0x08000000
856 .long 0x6fd5baba, 0xba000000, 0xf0887878, 0x78000000
857 .long 0x4a6f2525, 0x25000000, 0x5c722e2e, 0x2e000000
858 .long 0x38241c1c, 0x1c000000, 0x57f1a6a6, 0xa6000000
859 .long 0x73c7b4b4, 0xb4000000, 0x9751c6c6, 0xc6000000
860 .long 0xcb23e8e8, 0xe8000000, 0xa17cdddd, 0xdd000000
861 .long 0xe89c7474, 0x74000000, 0x3e211f1f, 0x1f000000
862 .long 0x96dd4b4b, 0x4b000000, 0x61dcbdbd, 0xbd000000
863 .long 0x0d868b8b, 0x8b000000, 0x0f858a8a, 0x8a000000
864 .long 0xe0907070, 0x70000000, 0x7c423e3e, 0x3e000000
865 .long 0x71c4b5b5, 0xb5000000, 0xccaa6666, 0x66000000
866 .long 0x90d84848, 0x48000000, 0x06050303, 0x03000000
867 .long 0xf701f6f6, 0xf6000000, 0x1c120e0e, 0x0e000000
868 .long 0xc2a36161, 0x61000000, 0x6a5f3535, 0x35000000
869 .long 0xaef95757, 0x57000000, 0x69d0b9b9, 0xb9000000
870 .long 0x17918686, 0x86000000, 0x9958c1c1, 0xc1000000
871 .long 0x3a271d1d, 0x1d000000, 0x27b99e9e, 0x9e000000
872 .long 0xd938e1e1, 0xe1000000, 0xeb13f8f8, 0xf8000000
873 .long 0x2bb39898, 0x98000000, 0x22331111, 0x11000000
874 .long 0xd2bb6969, 0x69000000, 0xa970d9d9, 0xd9000000
875 .long 0x07898e8e, 0x8e000000, 0x33a79494, 0x94000000
876 .long 0x2db69b9b, 0x9b000000, 0x3c221e1e, 0x1e000000
877 .long 0x15928787, 0x87000000, 0xc920e9e9, 0xe9000000
878 .long 0x8749cece, 0xce000000, 0xaaff5555, 0x55000000
879 .long 0x50782828, 0x28000000, 0xa57adfdf, 0xdf000000
880 .long 0x038f8c8c, 0x8c000000, 0x59f8a1a1, 0xa1000000
881 .long 0x09808989, 0x89000000, 0x1a170d0d, 0x0d000000
882 .long 0x65dabfbf, 0xbf000000, 0xd731e6e6, 0xe6000000
883 .long 0x84c64242, 0x42000000, 0xd0b86868, 0x68000000
884 .long 0x82c34141, 0x41000000, 0x29b09999, 0x99000000
885 .long 0x5a772d2d, 0x2d000000, 0x1e110f0f, 0x0f000000
886 .long 0x7bcbb0b0, 0xb0000000, 0xa8fc5454, 0x54000000
887 .long 0x6dd6bbbb, 0xbb000000, 0x2c3a1616, 0x16000000
888
889 /* Decryption tables */
890 .LtableD0:
891 .long 0x50a7f451
892 .LtableDs0:
893 .long             0x00000052, 0x5365417e, 0x00000009
894 .long 0xc3a4171a, 0x0000006a, 0x965e273a, 0x000000d5
895 .long 0xcb6bab3b, 0x00000030, 0xf1459d1f, 0x00000036
896 .long 0xab58faac, 0x000000a5, 0x9303e34b, 0x00000038
897 .long 0x55fa3020, 0x000000bf, 0xf66d76ad, 0x00000040
898 .long 0x9176cc88, 0x000000a3, 0x254c02f5, 0x0000009e
899 .long 0xfcd7e54f, 0x00000081, 0xd7cb2ac5, 0x000000f3
900 .long 0x80443526, 0x000000d7, 0x8fa362b5, 0x000000fb
901 .long 0x495ab1de, 0x0000007c, 0x671bba25, 0x000000e3
902 .long 0x980eea45, 0x00000039, 0xe1c0fe5d, 0x00000082
903 .long 0x02752fc3, 0x0000009b, 0x12f04c81, 0x0000002f
904 .long 0xa397468d, 0x000000ff, 0xc6f9d36b, 0x00000087
905 .long 0xe75f8f03, 0x00000034, 0x959c9215, 0x0000008e
906 .long 0xeb7a6dbf, 0x00000043, 0xda595295, 0x00000044
907 .long 0x2d83bed4, 0x000000c4, 0xd3217458, 0x000000de
908 .long 0x2969e049, 0x000000e9, 0x44c8c98e, 0x000000cb
909 .long 0x6a89c275, 0x00000054, 0x78798ef4, 0x0000007b
910 .long 0x6b3e5899, 0x00000094, 0xdd71b927, 0x00000032
911 .long 0xb64fe1be, 0x000000a6, 0x17ad88f0, 0x000000c2
912 .long 0x66ac20c9, 0x00000023, 0xb43ace7d, 0x0000003d
913 .long 0x184adf63, 0x000000ee, 0x82311ae5, 0x0000004c
914 .long 0x60335197, 0x00000095, 0x457f5362, 0x0000000b
915 .long 0xe07764b1, 0x00000042, 0x84ae6bbb, 0x000000fa
916 .long 0x1ca081fe, 0x000000c3, 0x942b08f9, 0x0000004e
917 .long 0x58684870, 0x00000008, 0x19fd458f, 0x0000002e
918 .long 0x876cde94, 0x000000a1, 0xb7f87b52, 0x00000066
919 .long 0x23d373ab, 0x00000028, 0xe2024b72, 0x000000d9
920 .long 0x578f1fe3, 0x00000024, 0x2aab5566, 0x000000b2
921 .long 0x0728ebb2, 0x00000076, 0x03c2b52f, 0x0000005b
922 .long 0x9a7bc586, 0x000000a2, 0xa50837d3, 0x00000049
923 .long 0xf2872830, 0x0000006d, 0xb2a5bf23, 0x0000008b
924 .long 0xba6a0302, 0x000000d1, 0x5c8216ed, 0x00000025
925 .long 0x2b1ccf8a, 0x00000072, 0x92b479a7, 0x000000f8
926 .long 0xf0f207f3, 0x000000f6, 0xa1e2694e, 0x00000064
927 .long 0xcdf4da65, 0x00000086, 0xd5be0506, 0x00000068
928 .long 0x1f6234d1, 0x00000098, 0x8afea6c4, 0x00000016
929 .long 0x9d532e34, 0x000000d4, 0xa055f3a2, 0x000000a4
930 .long 0x32e18a05, 0x0000005c, 0x75ebf6a4, 0x000000cc
931 .long 0x39ec830b, 0x0000005d, 0xaaef6040, 0x00000065
932 .long 0x069f715e, 0x000000b6, 0x51106ebd, 0x00000092
933 .long 0xf98a213e, 0x0000006c, 0x3d06dd96, 0x00000070
934 .long 0xae053edd, 0x00000048, 0x46bde64d, 0x00000050
935 .long 0xb58d5491, 0x000000fd, 0x055dc471, 0x000000ed
936 .long 0x6fd40604, 0x000000b9, 0xff155060, 0x000000da
937 .long 0x24fb9819, 0x0000005e, 0x97e9bdd6, 0x00000015
938 .long 0xcc434089, 0x00000046, 0x779ed967, 0x00000057
939 .long 0xbd42e8b0, 0x000000a7, 0x888b8907, 0x0000008d
940 .long 0x385b19e7, 0x0000009d, 0xdbeec879, 0x00000084
941 .long 0x470a7ca1, 0x00000090, 0xe90f427c, 0x000000d8
942 .long 0xc91e84f8, 0x000000ab, 0x00000000, 0x00000000
943 .long 0x83868009, 0x0000008c, 0x48ed2b32, 0x000000bc
944 .long 0xac70111e, 0x000000d3, 0x4e725a6c, 0x0000000a
945 .long 0xfbff0efd, 0x000000f7, 0x5638850f, 0x000000e4
946 .long 0x1ed5ae3d, 0x00000058, 0x27392d36, 0x00000005
947 .long 0x64d90f0a, 0x000000b8, 0x21a65c68, 0x000000b3
948 .long 0xd1545b9b, 0x00000045, 0x3a2e3624, 0x00000006
949 .long 0xb1670a0c, 0x000000d0, 0x0fe75793, 0x0000002c
950 .long 0xd296eeb4, 0x0000001e, 0x9e919b1b, 0x0000008f
951 .long 0x4fc5c080, 0x000000ca, 0xa220dc61, 0x0000003f
952 .long 0x694b775a, 0x0000000f, 0x161a121c, 0x00000002
953 .long 0x0aba93e2, 0x000000c1, 0xe52aa0c0, 0x000000af
954 .long 0x43e0223c, 0x000000bd, 0x1d171b12, 0x00000003
955 .long 0x0b0d090e, 0x00000001, 0xadc78bf2, 0x00000013
956 .long 0xb9a8b62d, 0x0000008a, 0xc8a91e14, 0x0000006b
957 .long 0x8519f157, 0x0000003a, 0x4c0775af, 0x00000091
958 .long 0xbbdd99ee, 0x00000011, 0xfd607fa3, 0x00000041
959 .long 0x9f2601f7, 0x0000004f, 0xbcf5725c, 0x00000067
960 .long 0xc53b6644, 0x000000dc, 0x347efb5b, 0x000000ea
961 .long 0x7629438b, 0x00000097, 0xdcc623cb, 0x000000f2
962 .long 0x68fcedb6, 0x000000cf, 0x63f1e4b8, 0x000000ce
963 .long 0xcadc31d7, 0x000000f0, 0x10856342, 0x000000b4
964 .long 0x40229713, 0x000000e6, 0x2011c684, 0x00000073
965 .long 0x7d244a85, 0x00000096, 0xf83dbbd2, 0x000000ac
966 .long 0x1132f9ae, 0x00000074, 0x6da129c7, 0x00000022
967 .long 0x4b2f9e1d, 0x000000e7, 0xf330b2dc, 0x000000ad
968 .long 0xec52860d, 0x00000035, 0xd0e3c177, 0x00000085
969 .long 0x6c16b32b, 0x000000e2, 0x99b970a9, 0x000000f9
970 .long 0xfa489411, 0x00000037, 0x2264e947, 0x000000e8
971 .long 0xc48cfca8, 0x0000001c, 0x1a3ff0a0, 0x00000075
972 .long 0xd82c7d56, 0x000000df, 0xef903322, 0x0000006e
973 .long 0xc74e4987, 0x00000047, 0xc1d138d9, 0x000000f1
974 .long 0xfea2ca8c, 0x0000001a, 0x360bd498, 0x00000071
975 .long 0xcf81f5a6, 0x0000001d, 0x28de7aa5, 0x00000029
976 .long 0x268eb7da, 0x000000c5, 0xa4bfad3f, 0x00000089
977 .long 0xe49d3a2c, 0x0000006f, 0x0d927850, 0x000000b7
978 .long 0x9bcc5f6a, 0x00000062, 0x62467e54, 0x0000000e
979 .long 0xc2138df6, 0x000000aa, 0xe8b8d890, 0x00000018
980 .long 0x5ef7392e, 0x000000be, 0xf5afc382, 0x0000001b
981 .long 0xbe805d9f, 0x000000fc, 0x7c93d069, 0x00000056
982 .long 0xa92dd56f, 0x0000003e, 0xb31225cf, 0x0000004b
983 .long 0x3b99acc8, 0x000000c6, 0xa77d1810, 0x000000d2
984 .long 0x6e639ce8, 0x00000079, 0x7bbb3bdb, 0x00000020
985 .long 0x097826cd, 0x0000009a, 0xf418596e, 0x000000db
986 .long 0x01b79aec, 0x000000c0, 0xa89a4f83, 0x000000fe
987 .long 0x656e95e6, 0x00000078, 0x7ee6ffaa, 0x000000cd
988 .long 0x08cfbc21, 0x0000005a, 0xe6e815ef, 0x000000f4
989 .long 0xd99be7ba, 0x0000001f, 0xce366f4a, 0x000000dd
990 .long 0xd4099fea, 0x000000a8, 0xd67cb029, 0x00000033
991 .long 0xafb2a431, 0x00000088, 0x31233f2a, 0x00000007
992 .long 0x3094a5c6, 0x000000c7, 0xc066a235, 0x00000031
993 .long 0x37bc4e74, 0x000000b1, 0xa6ca82fc, 0x00000012
994 .long 0xb0d090e0, 0x00000010, 0x15d8a733, 0x00000059
995 .long 0x4a9804f1, 0x00000027, 0xf7daec41, 0x00000080
996 .long 0x0e50cd7f, 0x000000ec, 0x2ff69117, 0x0000005f
997 .long 0x8dd64d76, 0x00000060, 0x4db0ef43, 0x00000051
998 .long 0x544daacc, 0x0000007f, 0xdf0496e4, 0x000000a9
999 .long 0xe3b5d19e, 0x00000019, 0x1b886a4c, 0x000000b5
1000 .long 0xb81f2cc1, 0x0000004a, 0x7f516546, 0x0000000d
1001 .long 0x04ea5e9d, 0x0000002d, 0x5d358c01, 0x000000e5
1002 .long 0x737487fa, 0x0000007a, 0x2e410bfb, 0x0000009f
1003 .long 0x5a1d67b3, 0x00000093, 0x52d2db92, 0x000000c9
1004 .long 0x335610e9, 0x0000009c, 0x1347d66d, 0x000000ef
1005 .long 0x8c61d79a, 0x000000a0, 0x7a0ca137, 0x000000e0
1006 .long 0x8e14f859, 0x0000003b, 0x893c13eb, 0x0000004d
1007 .long 0xee27a9ce, 0x000000ae, 0x35c961b7, 0x0000002a
1008 .long 0xede51ce1, 0x000000f5, 0x3cb1477a, 0x000000b0
1009 .long 0x59dfd29c, 0x000000c8, 0x3f73f255, 0x000000eb
1010 .long 0x79ce1418, 0x000000bb, 0xbf37c773, 0x0000003c
1011 .long 0xeacdf753, 0x00000083, 0x5baafd5f, 0x00000053
1012 .long 0x146f3ddf, 0x00000099, 0x86db4478, 0x00000061
1013 .long 0x81f3afca, 0x00000017, 0x3ec468b9, 0x0000002b
1014 .long 0x2c342438, 0x00000004, 0x5f40a3c2, 0x0000007e
1015 .long 0x72c31d16, 0x000000ba, 0x0c25e2bc, 0x00000077
1016 .long 0x8b493c28, 0x000000d6, 0x41950dff, 0x00000026
1017 .long 0x7101a839, 0x000000e1, 0xdeb30c08, 0x00000069
1018 .long 0x9ce4b4d8, 0x00000014, 0x90c15664, 0x00000063
1019 .long 0x6184cb7b, 0x00000055, 0x70b632d5, 0x00000021
1020 .long 0x745c6c48, 0x0000000c, 0x4257b8d0, 0x0000007d
1021 .LtableD1:
1022 .long 0xa7f45150
1023 .LtableDs1:
1024 .long             0x00005200, 0x65417e53, 0x00000900
1025 .long 0xa4171ac3, 0x00006a00, 0x5e273a96, 0x0000d500
1026 .long 0x6bab3bcb, 0x00003000, 0x459d1ff1, 0x00003600
1027 .long 0x58faacab, 0x0000a500, 0x03e34b93, 0x00003800
1028 .long 0xfa302055, 0x0000bf00, 0x6d76adf6, 0x00004000
1029 .long 0x76cc8891, 0x0000a300, 0x4c02f525, 0x00009e00
1030 .long 0xd7e54ffc, 0x00008100, 0xcb2ac5d7, 0x0000f300
1031 .long 0x44352680, 0x0000d700, 0xa362b58f, 0x0000fb00
1032 .long 0x5ab1de49, 0x00007c00, 0x1bba2567, 0x0000e300
1033 .long 0x0eea4598, 0x00003900, 0xc0fe5de1, 0x00008200
1034 .long 0x752fc302, 0x00009b00, 0xf04c8112, 0x00002f00
1035 .long 0x97468da3, 0x0000ff00, 0xf9d36bc6, 0x00008700
1036 .long 0x5f8f03e7, 0x00003400, 0x9c921595, 0x00008e00
1037 .long 0x7a6dbfeb, 0x00004300, 0x595295da, 0x00004400
1038 .long 0x83bed42d, 0x0000c400, 0x217458d3, 0x0000de00
1039 .long 0x69e04929, 0x0000e900, 0xc8c98e44, 0x0000cb00
1040 .long 0x89c2756a, 0x00005400, 0x798ef478, 0x00007b00
1041 .long 0x3e58996b, 0x00009400, 0x71b927dd, 0x00003200
1042 .long 0x4fe1beb6, 0x0000a600, 0xad88f017, 0x0000c200
1043 .long 0xac20c966, 0x00002300, 0x3ace7db4, 0x00003d00
1044 .long 0x4adf6318, 0x0000ee00, 0x311ae582, 0x00004c00
1045 .long 0x33519760, 0x00009500, 0x7f536245, 0x00000b00
1046 .long 0x7764b1e0, 0x00004200, 0xae6bbb84, 0x0000fa00
1047 .long 0xa081fe1c, 0x0000c300, 0x2b08f994, 0x00004e00
1048 .long 0x68487058, 0x00000800, 0xfd458f19, 0x00002e00
1049 .long 0x6cde9487, 0x0000a100, 0xf87b52b7, 0x00006600
1050 .long 0xd373ab23, 0x00002800, 0x024b72e2, 0x0000d900
1051 .long 0x8f1fe357, 0x00002400, 0xab55662a, 0x0000b200
1052 .long 0x28ebb207, 0x00007600, 0xc2b52f03, 0x00005b00
1053 .long 0x7bc5869a, 0x0000a200, 0x0837d3a5, 0x00004900
1054 .long 0x872830f2, 0x00006d00, 0xa5bf23b2, 0x00008b00
1055 .long 0x6a0302ba, 0x0000d100, 0x8216ed5c, 0x00002500
1056 .long 0x1ccf8a2b, 0x00007200, 0xb479a792, 0x0000f800
1057 .long 0xf207f3f0, 0x0000f600, 0xe2694ea1, 0x00006400
1058 .long 0xf4da65cd, 0x00008600, 0xbe0506d5, 0x00006800
1059 .long 0x6234d11f, 0x00009800, 0xfea6c48a, 0x00001600
1060 .long 0x532e349d, 0x0000d400, 0x55f3a2a0, 0x0000a400
1061 .long 0xe18a0532, 0x00005c00, 0xebf6a475, 0x0000cc00
1062 .long 0xec830b39, 0x00005d00, 0xef6040aa, 0x00006500
1063 .long 0x9f715e06, 0x0000b600, 0x106ebd51, 0x00009200
1064 .long 0x8a213ef9, 0x00006c00, 0x06dd963d, 0x00007000
1065 .long 0x053eddae, 0x00004800, 0xbde64d46, 0x00005000
1066 .long 0x8d5491b5, 0x0000fd00, 0x5dc47105, 0x0000ed00
1067 .long 0xd406046f, 0x0000b900, 0x155060ff, 0x0000da00
1068 .long 0xfb981924, 0x00005e00, 0xe9bdd697, 0x00001500
1069 .long 0x434089cc, 0x00004600, 0x9ed96777, 0x00005700
1070 .long 0x42e8b0bd, 0x0000a700, 0x8b890788, 0x00008d00
1071 .long 0x5b19e738, 0x00009d00, 0xeec879db, 0x00008400
1072 .long 0x0a7ca147, 0x00009000, 0x0f427ce9, 0x0000d800
1073 .long 0x1e84f8c9, 0x0000ab00, 0x00000000, 0x00000000
1074 .long 0x86800983, 0x00008c00, 0xed2b3248, 0x0000bc00
1075 .long 0x70111eac, 0x0000d300, 0x725a6c4e, 0x00000a00
1076 .long 0xff0efdfb, 0x0000f700, 0x38850f56, 0x0000e400
1077 .long 0xd5ae3d1e, 0x00005800, 0x392d3627, 0x00000500
1078 .long 0xd90f0a64, 0x0000b800, 0xa65c6821, 0x0000b300
1079 .long 0x545b9bd1, 0x00004500, 0x2e36243a, 0x00000600
1080 .long 0x670a0cb1, 0x0000d000, 0xe757930f, 0x00002c00
1081 .long 0x96eeb4d2, 0x00001e00, 0x919b1b9e, 0x00008f00
1082 .long 0xc5c0804f, 0x0000ca00, 0x20dc61a2, 0x00003f00
1083 .long 0x4b775a69, 0x00000f00, 0x1a121c16, 0x00000200
1084 .long 0xba93e20a, 0x0000c100, 0x2aa0c0e5, 0x0000af00
1085 .long 0xe0223c43, 0x0000bd00, 0x171b121d, 0x00000300
1086 .long 0x0d090e0b, 0x00000100, 0xc78bf2ad, 0x00001300
1087 .long 0xa8b62db9, 0x00008a00, 0xa91e14c8, 0x00006b00
1088 .long 0x19f15785, 0x00003a00, 0x0775af4c, 0x00009100
1089 .long 0xdd99eebb, 0x00001100, 0x607fa3fd, 0x00004100
1090 .long 0x2601f79f, 0x00004f00, 0xf5725cbc, 0x00006700
1091 .long 0x3b6644c5, 0x0000dc00, 0x7efb5b34, 0x0000ea00
1092 .long 0x29438b76, 0x00009700, 0xc623cbdc, 0x0000f200
1093 .long 0xfcedb668, 0x0000cf00, 0xf1e4b863, 0x0000ce00
1094 .long 0xdc31d7ca, 0x0000f000, 0x85634210, 0x0000b400
1095 .long 0x22971340, 0x0000e600, 0x11c68420, 0x00007300
1096 .long 0x244a857d, 0x00009600, 0x3dbbd2f8, 0x0000ac00
1097 .long 0x32f9ae11, 0x00007400, 0xa129c76d, 0x00002200
1098 .long 0x2f9e1d4b, 0x0000e700, 0x30b2dcf3, 0x0000ad00
1099 .long 0x52860dec, 0x00003500, 0xe3c177d0, 0x00008500
1100 .long 0x16b32b6c, 0x0000e200, 0xb970a999, 0x0000f900
1101 .long 0x489411fa, 0x00003700, 0x64e94722, 0x0000e800
1102 .long 0x8cfca8c4, 0x00001c00, 0x3ff0a01a, 0x00007500
1103 .long 0x2c7d56d8, 0x0000df00, 0x903322ef, 0x00006e00
1104 .long 0x4e4987c7, 0x00004700, 0xd138d9c1, 0x0000f100
1105 .long 0xa2ca8cfe, 0x00001a00, 0x0bd49836, 0x00007100
1106 .long 0x81f5a6cf, 0x00001d00, 0xde7aa528, 0x00002900
1107 .long 0x8eb7da26, 0x0000c500, 0xbfad3fa4, 0x00008900
1108 .long 0x9d3a2ce4, 0x00006f00, 0x9278500d, 0x0000b700
1109 .long 0xcc5f6a9b, 0x00006200, 0x467e5462, 0x00000e00
1110 .long 0x138df6c2, 0x0000aa00, 0xb8d890e8, 0x00001800
1111 .long 0xf7392e5e, 0x0000be00, 0xafc382f5, 0x00001b00
1112 .long 0x805d9fbe, 0x0000fc00, 0x93d0697c, 0x00005600
1113 .long 0x2dd56fa9, 0x00003e00, 0x1225cfb3, 0x00004b00
1114 .long 0x99acc83b, 0x0000c600, 0x7d1810a7, 0x0000d200
1115 .long 0x639ce86e, 0x00007900, 0xbb3bdb7b, 0x00002000
1116 .long 0x7826cd09, 0x00009a00, 0x18596ef4, 0x0000db00
1117 .long 0xb79aec01, 0x0000c000, 0x9a4f83a8, 0x0000fe00
1118 .long 0x6e95e665, 0x00007800, 0xe6ffaa7e, 0x0000cd00
1119 .long 0xcfbc2108, 0x00005a00, 0xe815efe6, 0x0000f400
1120 .long 0x9be7bad9, 0x00001f00, 0x366f4ace, 0x0000dd00
1121 .long 0x099fead4, 0x0000a800, 0x7cb029d6, 0x00003300
1122 .long 0xb2a431af, 0x00008800, 0x233f2a31, 0x00000700
1123 .long 0x94a5c630, 0x0000c700, 0x66a235c0, 0x00003100
1124 .long 0xbc4e7437, 0x0000b100, 0xca82fca6, 0x00001200
1125 .long 0xd090e0b0, 0x00001000, 0xd8a73315, 0x00005900
1126 .long 0x9804f14a, 0x00002700, 0xdaec41f7, 0x00008000
1127 .long 0x50cd7f0e, 0x0000ec00, 0xf691172f, 0x00005f00
1128 .long 0xd64d768d, 0x00006000, 0xb0ef434d, 0x00005100
1129 .long 0x4daacc54, 0x00007f00, 0x0496e4df, 0x0000a900
1130 .long 0xb5d19ee3, 0x00001900, 0x886a4c1b, 0x0000b500
1131 .long 0x1f2cc1b8, 0x00004a00, 0x5165467f, 0x00000d00
1132 .long 0xea5e9d04, 0x00002d00, 0x358c015d, 0x0000e500
1133 .long 0x7487fa73, 0x00007a00, 0x410bfb2e, 0x00009f00
1134 .long 0x1d67b35a, 0x00009300, 0xd2db9252, 0x0000c900
1135 .long 0x5610e933, 0x00009c00, 0x47d66d13, 0x0000ef00
1136 .long 0x61d79a8c, 0x0000a000, 0x0ca1377a, 0x0000e000
1137 .long 0x14f8598e, 0x00003b00, 0x3c13eb89, 0x00004d00
1138 .long 0x27a9ceee, 0x0000ae00, 0xc961b735, 0x00002a00
1139 .long 0xe51ce1ed, 0x0000f500, 0xb1477a3c, 0x0000b000
1140 .long 0xdfd29c59, 0x0000c800, 0x73f2553f, 0x0000eb00
1141 .long 0xce141879, 0x0000bb00, 0x37c773bf, 0x00003c00
1142 .long 0xcdf753ea, 0x00008300, 0xaafd5f5b, 0x00005300
1143 .long 0x6f3ddf14, 0x00009900, 0xdb447886, 0x00006100
1144 .long 0xf3afca81, 0x00001700, 0xc468b93e, 0x00002b00
1145 .long 0x3424382c, 0x00000400, 0x40a3c25f, 0x00007e00
1146 .long 0xc31d1672, 0x0000ba00, 0x25e2bc0c, 0x00007700
1147 .long 0x493c288b, 0x0000d600, 0x950dff41, 0x00002600
1148 .long 0x01a83971, 0x0000e100, 0xb30c08de, 0x00006900
1149 .long 0xe4b4d89c, 0x00001400, 0xc1566490, 0x00006300
1150 .long 0x84cb7b61, 0x00005500, 0xb632d570, 0x00002100
1151 .long 0x5c6c4874, 0x00000c00, 0x57b8d042, 0x00007d00
1152 .LtableD2:
1153 .long 0xf45150a7
1154 .LtableDs2:
1155 .long             0x00520000, 0x417e5365, 0x00090000
1156 .long 0x171ac3a4, 0x006a0000, 0x273a965e, 0x00d50000
1157 .long 0xab3bcb6b, 0x00300000, 0x9d1ff145, 0x00360000
1158 .long 0xfaacab58, 0x00a50000, 0xe34b9303, 0x00380000
1159 .long 0x302055fa, 0x00bf0000, 0x76adf66d, 0x00400000
1160 .long 0xcc889176, 0x00a30000, 0x02f5254c, 0x009e0000
1161 .long 0xe54ffcd7, 0x00810000, 0x2ac5d7cb, 0x00f30000
1162 .long 0x35268044, 0x00d70000, 0x62b58fa3, 0x00fb0000
1163 .long 0xb1de495a, 0x007c0000, 0xba25671b, 0x00e30000
1164 .long 0xea45980e, 0x00390000, 0xfe5de1c0, 0x00820000
1165 .long 0x2fc30275, 0x009b0000, 0x4c8112f0, 0x002f0000
1166 .long 0x468da397, 0x00ff0000, 0xd36bc6f9, 0x00870000
1167 .long 0x8f03e75f, 0x00340000, 0x9215959c, 0x008e0000
1168 .long 0x6dbfeb7a, 0x00430000, 0x5295da59, 0x00440000
1169 .long 0xbed42d83, 0x00c40000, 0x7458d321, 0x00de0000
1170 .long 0xe0492969, 0x00e90000, 0xc98e44c8, 0x00cb0000
1171 .long 0xc2756a89, 0x00540000, 0x8ef47879, 0x007b0000
1172 .long 0x58996b3e, 0x00940000, 0xb927dd71, 0x00320000
1173 .long 0xe1beb64f, 0x00a60000, 0x88f017ad, 0x00c20000
1174 .long 0x20c966ac, 0x00230000, 0xce7db43a, 0x003d0000
1175 .long 0xdf63184a, 0x00ee0000, 0x1ae58231, 0x004c0000
1176 .long 0x51976033, 0x00950000, 0x5362457f, 0x000b0000
1177 .long 0x64b1e077, 0x00420000, 0x6bbb84ae, 0x00fa0000
1178 .long 0x81fe1ca0, 0x00c30000, 0x08f9942b, 0x004e0000
1179 .long 0x48705868, 0x00080000, 0x458f19fd, 0x002e0000
1180 .long 0xde94876c, 0x00a10000, 0x7b52b7f8, 0x00660000
1181 .long 0x73ab23d3, 0x00280000, 0x4b72e202, 0x00d90000
1182 .long 0x1fe3578f, 0x00240000, 0x55662aab, 0x00b20000
1183 .long 0xebb20728, 0x00760000, 0xb52f03c2, 0x005b0000
1184 .long 0xc5869a7b, 0x00a20000, 0x37d3a508, 0x00490000
1185 .long 0x2830f287, 0x006d0000, 0xbf23b2a5, 0x008b0000
1186 .long 0x0302ba6a, 0x00d10000, 0x16ed5c82, 0x00250000
1187 .long 0xcf8a2b1c, 0x00720000, 0x79a792b4, 0x00f80000
1188 .long 0x07f3f0f2, 0x00f60000, 0x694ea1e2, 0x00640000
1189 .long 0xda65cdf4, 0x00860000, 0x0506d5be, 0x00680000
1190 .long 0x34d11f62, 0x00980000, 0xa6c48afe, 0x00160000
1191 .long 0x2e349d53, 0x00d40000, 0xf3a2a055, 0x00a40000
1192 .long 0x8a0532e1, 0x005c0000, 0xf6a475eb, 0x00cc0000
1193 .long 0x830b39ec, 0x005d0000, 0x6040aaef, 0x00650000
1194 .long 0x715e069f, 0x00b60000, 0x6ebd5110, 0x00920000
1195 .long 0x213ef98a, 0x006c0000, 0xdd963d06, 0x00700000
1196 .long 0x3eddae05, 0x00480000, 0xe64d46bd, 0x00500000
1197 .long 0x5491b58d, 0x00fd0000, 0xc471055d, 0x00ed0000
1198 .long 0x06046fd4, 0x00b90000, 0x5060ff15, 0x00da0000
1199 .long 0x981924fb, 0x005e0000, 0xbdd697e9, 0x00150000
1200 .long 0x4089cc43, 0x00460000, 0xd967779e, 0x00570000
1201 .long 0xe8b0bd42, 0x00a70000, 0x8907888b, 0x008d0000
1202 .long 0x19e7385b, 0x009d0000, 0xc879dbee, 0x00840000
1203 .long 0x7ca1470a, 0x00900000, 0x427ce90f, 0x00d80000
1204 .long 0x84f8c91e, 0x00ab0000, 0x00000000, 0x00000000
1205 .long 0x80098386, 0x008c0000, 0x2b3248ed, 0x00bc0000
1206 .long 0x111eac70, 0x00d30000, 0x5a6c4e72, 0x000a0000
1207 .long 0x0efdfbff, 0x00f70000, 0x850f5638, 0x00e40000
1208 .long 0xae3d1ed5, 0x00580000, 0x2d362739, 0x00050000
1209 .long 0x0f0a64d9, 0x00b80000, 0x5c6821a6, 0x00b30000
1210 .long 0x5b9bd154, 0x00450000, 0x36243a2e, 0x00060000
1211 .long 0x0a0cb167, 0x00d00000, 0x57930fe7, 0x002c0000
1212 .long 0xeeb4d296, 0x001e0000, 0x9b1b9e91, 0x008f0000
1213 .long 0xc0804fc5, 0x00ca0000, 0xdc61a220, 0x003f0000
1214 .long 0x775a694b, 0x000f0000, 0x121c161a, 0x00020000
1215 .long 0x93e20aba, 0x00c10000, 0xa0c0e52a, 0x00af0000
1216 .long 0x223c43e0, 0x00bd0000, 0x1b121d17, 0x00030000
1217 .long 0x090e0b0d, 0x00010000, 0x8bf2adc7, 0x00130000
1218 .long 0xb62db9a8, 0x008a0000, 0x1e14c8a9, 0x006b0000
1219 .long 0xf1578519, 0x003a0000, 0x75af4c07, 0x00910000
1220 .long 0x99eebbdd, 0x00110000, 0x7fa3fd60, 0x00410000
1221 .long 0x01f79f26, 0x004f0000, 0x725cbcf5, 0x00670000
1222 .long 0x6644c53b, 0x00dc0000, 0xfb5b347e, 0x00ea0000
1223 .long 0x438b7629, 0x00970000, 0x23cbdcc6, 0x00f20000
1224 .long 0xedb668fc, 0x00cf0000, 0xe4b863f1, 0x00ce0000
1225 .long 0x31d7cadc, 0x00f00000, 0x63421085, 0x00b40000
1226 .long 0x97134022, 0x00e60000, 0xc6842011, 0x00730000
1227 .long 0x4a857d24, 0x00960000, 0xbbd2f83d, 0x00ac0000
1228 .long 0xf9ae1132, 0x00740000, 0x29c76da1, 0x00220000
1229 .long 0x9e1d4b2f, 0x00e70000, 0xb2dcf330, 0x00ad0000
1230 .long 0x860dec52, 0x00350000, 0xc177d0e3, 0x00850000
1231 .long 0xb32b6c16, 0x00e20000, 0x70a999b9, 0x00f90000
1232 .long 0x9411fa48, 0x00370000, 0xe9472264, 0x00e80000
1233 .long 0xfca8c48c, 0x001c0000, 0xf0a01a3f, 0x00750000
1234 .long 0x7d56d82c, 0x00df0000, 0x3322ef90, 0x006e0000
1235 .long 0x4987c74e, 0x00470000, 0x38d9c1d1, 0x00f10000
1236 .long 0xca8cfea2, 0x001a0000, 0xd498360b, 0x00710000
1237 .long 0xf5a6cf81, 0x001d0000, 0x7aa528de, 0x00290000
1238 .long 0xb7da268e, 0x00c50000, 0xad3fa4bf, 0x00890000
1239 .long 0x3a2ce49d, 0x006f0000, 0x78500d92, 0x00b70000
1240 .long 0x5f6a9bcc, 0x00620000, 0x7e546246, 0x000e0000
1241 .long 0x8df6c213, 0x00aa0000, 0xd890e8b8, 0x00180000
1242 .long 0x392e5ef7, 0x00be0000, 0xc382f5af, 0x001b0000
1243 .long 0x5d9fbe80, 0x00fc0000, 0xd0697c93, 0x00560000
1244 .long 0xd56fa92d, 0x003e0000, 0x25cfb312, 0x004b0000
1245 .long 0xacc83b99, 0x00c60000, 0x1810a77d, 0x00d20000
1246 .long 0x9ce86e63, 0x00790000, 0x3bdb7bbb, 0x00200000
1247 .long 0x26cd0978, 0x009a0000, 0x596ef418, 0x00db0000
1248 .long 0x9aec01b7, 0x00c00000, 0x4f83a89a, 0x00fe0000
1249 .long 0x95e6656e, 0x00780000, 0xffaa7ee6, 0x00cd0000
1250 .long 0xbc2108cf, 0x005a0000, 0x15efe6e8, 0x00f40000
1251 .long 0xe7bad99b, 0x001f0000, 0x6f4ace36, 0x00dd0000
1252 .long 0x9fead409, 0x00a80000, 0xb029d67c, 0x00330000
1253 .long 0xa431afb2, 0x00880000, 0x3f2a3123, 0x00070000
1254 .long 0xa5c63094, 0x00c70000, 0xa235c066, 0x00310000
1255 .long 0x4e7437bc, 0x00b10000, 0x82fca6ca, 0x00120000
1256 .long 0x90e0b0d0, 0x00100000, 0xa73315d8, 0x00590000
1257 .long 0x04f14a98, 0x00270000, 0xec41f7da, 0x00800000
1258 .long 0xcd7f0e50, 0x00ec0000, 0x91172ff6, 0x005f0000
1259 .long 0x4d768dd6, 0x00600000, 0xef434db0, 0x00510000
1260 .long 0xaacc544d, 0x007f0000, 0x96e4df04, 0x00a90000
1261 .long 0xd19ee3b5, 0x00190000, 0x6a4c1b88, 0x00b50000
1262 .long 0x2cc1b81f, 0x004a0000, 0x65467f51, 0x000d0000
1263 .long 0x5e9d04ea, 0x002d0000, 0x8c015d35, 0x00e50000
1264 .long 0x87fa7374, 0x007a0000, 0x0bfb2e41, 0x009f0000
1265 .long 0x67b35a1d, 0x00930000, 0xdb9252d2, 0x00c90000
1266 .long 0x10e93356, 0x009c0000, 0xd66d1347, 0x00ef0000
1267 .long 0xd79a8c61, 0x00a00000, 0xa1377a0c, 0x00e00000
1268 .long 0xf8598e14, 0x003b0000, 0x13eb893c, 0x004d0000
1269 .long 0xa9ceee27, 0x00ae0000, 0x61b735c9, 0x002a0000
1270 .long 0x1ce1ede5, 0x00f50000, 0x477a3cb1, 0x00b00000
1271 .long 0xd29c59df, 0x00c80000, 0xf2553f73, 0x00eb0000
1272 .long 0x141879ce, 0x00bb0000, 0xc773bf37, 0x003c0000
1273 .long 0xf753eacd, 0x00830000, 0xfd5f5baa, 0x00530000
1274 .long 0x3ddf146f, 0x00990000, 0x447886db, 0x00610000
1275 .long 0xafca81f3, 0x00170000, 0x68b93ec4, 0x002b0000
1276 .long 0x24382c34, 0x00040000, 0xa3c25f40, 0x007e0000
1277 .long 0x1d1672c3, 0x00ba0000, 0xe2bc0c25, 0x00770000
1278 .long 0x3c288b49, 0x00d60000, 0x0dff4195, 0x00260000
1279 .long 0xa8397101, 0x00e10000, 0x0c08deb3, 0x00690000
1280 .long 0xb4d89ce4, 0x00140000, 0x566490c1, 0x00630000
1281 .long 0xcb7b6184, 0x00550000, 0x32d570b6, 0x00210000
1282 .long 0x6c48745c, 0x000c0000, 0xb8d04257, 0x007d0000
1283 .LtableD3:
1284 .long 0x5150a7f4
1285 .LtableDs3:
1286 .long             0x52000000, 0x7e536541, 0x09000000
1287 .long 0x1ac3a417, 0x6a000000, 0x3a965e27, 0xd5000000
1288 .long 0x3bcb6bab, 0x30000000, 0x1ff1459d, 0x36000000
1289 .long 0xacab58fa, 0xa5000000, 0x4b9303e3, 0x38000000
1290 .long 0x2055fa30, 0xbf000000, 0xadf66d76, 0x40000000
1291 .long 0x889176cc, 0xa3000000, 0xf5254c02, 0x9e000000
1292 .long 0x4ffcd7e5, 0x81000000, 0xc5d7cb2a, 0xf3000000
1293 .long 0x26804435, 0xd7000000, 0xb58fa362, 0xfb000000
1294 .long 0xde495ab1, 0x7c000000, 0x25671bba, 0xe3000000
1295 .long 0x45980eea, 0x39000000, 0x5de1c0fe, 0x82000000
1296 .long 0xc302752f, 0x9b000000, 0x8112f04c, 0x2f000000
1297 .long 0x8da39746, 0xff000000, 0x6bc6f9d3, 0x87000000
1298 .long 0x03e75f8f, 0x34000000, 0x15959c92, 0x8e000000
1299 .long 0xbfeb7a6d, 0x43000000, 0x95da5952, 0x44000000
1300 .long 0xd42d83be, 0xc4000000, 0x58d32174, 0xde000000
1301 .long 0x492969e0, 0xe9000000, 0x8e44c8c9, 0xcb000000
1302 .long 0x756a89c2, 0x54000000, 0xf478798e, 0x7b000000
1303 .long 0x996b3e58, 0x94000000, 0x27dd71b9, 0x32000000
1304 .long 0xbeb64fe1, 0xa6000000, 0xf017ad88, 0xc2000000
1305 .long 0xc966ac20, 0x23000000, 0x7db43ace, 0x3d000000
1306 .long 0x63184adf, 0xee000000, 0xe582311a, 0x4c000000
1307 .long 0x97603351, 0x95000000, 0x62457f53, 0x0b000000
1308 .long 0xb1e07764, 0x42000000, 0xbb84ae6b, 0xfa000000
1309 .long 0xfe1ca081, 0xc3000000, 0xf9942b08, 0x4e000000
1310 .long 0x70586848, 0x08000000, 0x8f19fd45, 0x2e000000
1311 .long 0x94876cde, 0xa1000000, 0x52b7f87b, 0x66000000
1312 .long 0xab23d373, 0x28000000, 0x72e2024b, 0xd9000000
1313 .long 0xe3578f1f, 0x24000000, 0x662aab55, 0xb2000000
1314 .long 0xb20728eb, 0x76000000, 0x2f03c2b5, 0x5b000000
1315 .long 0x869a7bc5, 0xa2000000, 0xd3a50837, 0x49000000
1316 .long 0x30f28728, 0x6d000000, 0x23b2a5bf, 0x8b000000
1317 .long 0x02ba6a03, 0xd1000000, 0xed5c8216, 0x25000000
1318 .long 0x8a2b1ccf, 0x72000000, 0xa792b479, 0xf8000000
1319 .long 0xf3f0f207, 0xf6000000, 0x4ea1e269, 0x64000000
1320 .long 0x65cdf4da, 0x86000000, 0x06d5be05, 0x68000000
1321 .long 0xd11f6234, 0x98000000, 0xc48afea6, 0x16000000
1322 .long 0x349d532e, 0xd4000000, 0xa2a055f3, 0xa4000000
1323 .long 0x0532e18a, 0x5c000000, 0xa475ebf6, 0xcc000000
1324 .long 0x0b39ec83, 0x5d000000, 0x40aaef60, 0x65000000
1325 .long 0x5e069f71, 0xb6000000, 0xbd51106e, 0x92000000
1326 .long 0x3ef98a21, 0x6c000000, 0x963d06dd, 0x70000000
1327 .long 0xddae053e, 0x48000000, 0x4d46bde6, 0x50000000
1328 .long 0x91b58d54, 0xfd000000, 0x71055dc4, 0xed000000
1329 .long 0x046fd406, 0xb9000000, 0x60ff1550, 0xda000000
1330 .long 0x1924fb98, 0x5e000000, 0xd697e9bd, 0x15000000
1331 .long 0x89cc4340, 0x46000000, 0x67779ed9, 0x57000000
1332 .long 0xb0bd42e8, 0xa7000000, 0x07888b89, 0x8d000000
1333 .long 0xe7385b19, 0x9d000000, 0x79dbeec8, 0x84000000
1334 .long 0xa1470a7c, 0x90000000, 0x7ce90f42, 0xd8000000
1335 .long 0xf8c91e84, 0xab000000, 0x00000000, 0x00000000
1336 .long 0x09838680, 0x8c000000, 0x3248ed2b, 0xbc000000
1337 .long 0x1eac7011, 0xd3000000, 0x6c4e725a, 0x0a000000
1338 .long 0xfdfbff0e, 0xf7000000, 0x0f563885, 0xe4000000
1339 .long 0x3d1ed5ae, 0x58000000, 0x3627392d, 0x05000000
1340 .long 0x0a64d90f, 0xb8000000, 0x6821a65c, 0xb3000000
1341 .long 0x9bd1545b, 0x45000000, 0x243a2e36, 0x06000000
1342 .long 0x0cb1670a, 0xd0000000, 0x930fe757, 0x2c000000
1343 .long 0xb4d296ee, 0x1e000000, 0x1b9e919b, 0x8f000000
1344 .long 0x804fc5c0, 0xca000000, 0x61a220dc, 0x3f000000
1345 .long 0x5a694b77, 0x0f000000, 0x1c161a12, 0x02000000
1346 .long 0xe20aba93, 0xc1000000, 0xc0e52aa0, 0xaf000000
1347 .long 0x3c43e022, 0xbd000000, 0x121d171b, 0x03000000
1348 .long 0x0e0b0d09, 0x01000000, 0xf2adc78b, 0x13000000
1349 .long 0x2db9a8b6, 0x8a000000, 0x14c8a91e, 0x6b000000
1350 .long 0x578519f1, 0x3a000000, 0xaf4c0775, 0x91000000
1351 .long 0xeebbdd99, 0x11000000, 0xa3fd607f, 0x41000000
1352 .long 0xf79f2601, 0x4f000000, 0x5cbcf572, 0x67000000
1353 .long 0x44c53b66, 0xdc000000, 0x5b347efb, 0xea000000
1354 .long 0x8b762943, 0x97000000, 0xcbdcc623, 0xf2000000
1355 .long 0xb668fced, 0xcf000000, 0xb863f1e4, 0xce000000
1356 .long 0xd7cadc31, 0xf0000000, 0x42108563, 0xb4000000
1357 .long 0x13402297, 0xe6000000, 0x842011c6, 0x73000000
1358 .long 0x857d244a, 0x96000000, 0xd2f83dbb, 0xac000000
1359 .long 0xae1132f9, 0x74000000, 0xc76da129, 0x22000000
1360 .long 0x1d4b2f9e, 0xe7000000, 0xdcf330b2, 0xad000000
1361 .long 0x0dec5286, 0x35000000, 0x77d0e3c1, 0x85000000
1362 .long 0x2b6c16b3, 0xe2000000, 0xa999b970, 0xf9000000
1363 .long 0x11fa4894, 0x37000000, 0x472264e9, 0xe8000000
1364 .long 0xa8c48cfc, 0x1c000000, 0xa01a3ff0, 0x75000000
1365 .long 0x56d82c7d, 0xdf000000, 0x22ef9033, 0x6e000000
1366 .long 0x87c74e49, 0x47000000, 0xd9c1d138, 0xf1000000
1367 .long 0x8cfea2ca, 0x1a000000, 0x98360bd4, 0x71000000
1368 .long 0xa6cf81f5, 0x1d000000, 0xa528de7a, 0x29000000
1369 .long 0xda268eb7, 0xc5000000, 0x3fa4bfad, 0x89000000
1370 .long 0x2ce49d3a, 0x6f000000, 0x500d9278, 0xb7000000
1371 .long 0x6a9bcc5f, 0x62000000, 0x5462467e, 0x0e000000
1372 .long 0xf6c2138d, 0xaa000000, 0x90e8b8d8, 0x18000000
1373 .long 0x2e5ef739, 0xbe000000, 0x82f5afc3, 0x1b000000
1374 .long 0x9fbe805d, 0xfc000000, 0x697c93d0, 0x56000000
1375 .long 0x6fa92dd5, 0x3e000000, 0xcfb31225, 0x4b000000
1376 .long 0xc83b99ac, 0xc6000000, 0x10a77d18, 0xd2000000
1377 .long 0xe86e639c, 0x79000000, 0xdb7bbb3b, 0x20000000
1378 .long 0xcd097826, 0x9a000000, 0x6ef41859, 0xdb000000
1379 .long 0xec01b79a, 0xc0000000, 0x83a89a4f, 0xfe000000
1380 .long 0xe6656e95, 0x78000000, 0xaa7ee6ff, 0xcd000000
1381 .long 0x2108cfbc, 0x5a000000, 0xefe6e815, 0xf4000000
1382 .long 0xbad99be7, 0x1f000000, 0x4ace366f, 0xdd000000
1383 .long 0xead4099f, 0xa8000000, 0x29d67cb0, 0x33000000
1384 .long 0x31afb2a4, 0x88000000, 0x2a31233f, 0x07000000
1385 .long 0xc63094a5, 0xc7000000, 0x35c066a2, 0x31000000
1386 .long 0x7437bc4e, 0xb1000000, 0xfca6ca82, 0x12000000
1387 .long 0xe0b0d090, 0x10000000, 0x3315d8a7, 0x59000000
1388 .long 0xf14a9804, 0x27000000, 0x41f7daec, 0x80000000
1389 .long 0x7f0e50cd, 0xec000000, 0x172ff691, 0x5f000000
1390 .long 0x768dd64d, 0x60000000, 0x434db0ef, 0x51000000
1391 .long 0xcc544daa, 0x7f000000, 0xe4df0496, 0xa9000000
1392 .long 0x9ee3b5d1, 0x19000000, 0x4c1b886a, 0xb5000000
1393 .long 0xc1b81f2c, 0x4a000000, 0x467f5165, 0x0d000000
1394 .long 0x9d04ea5e, 0x2d000000, 0x015d358c, 0xe5000000
1395 .long 0xfa737487, 0x7a000000, 0xfb2e410b, 0x9f000000
1396 .long 0xb35a1d67, 0x93000000, 0x9252d2db, 0xc9000000
1397 .long 0xe9335610, 0x9c000000, 0x6d1347d6, 0xef000000
1398 .long 0x9a8c61d7, 0xa0000000, 0x377a0ca1, 0xe0000000
1399 .long 0x598e14f8, 0x3b000000, 0xeb893c13, 0x4d000000
1400 .long 0xceee27a9, 0xae000000, 0xb735c961, 0x2a000000
1401 .long 0xe1ede51c, 0xf5000000, 0x7a3cb147, 0xb0000000
1402 .long 0x9c59dfd2, 0xc8000000, 0x553f73f2, 0xeb000000
1403 .long 0x1879ce14, 0xbb000000, 0x73bf37c7, 0x3c000000
1404 .long 0x53eacdf7, 0x83000000, 0x5f5baafd, 0x53000000
1405 .long 0xdf146f3d, 0x99000000, 0x7886db44, 0x61000000
1406 .long 0xca81f3af, 0x17000000, 0xb93ec468, 0x2b000000
1407 .long 0x382c3424, 0x04000000, 0xc25f40a3, 0x7e000000
1408 .long 0x1672c31d, 0xba000000, 0xbc0c25e2, 0x77000000
1409 .long 0x288b493c, 0xd6000000, 0xff41950d, 0x26000000
1410 .long 0x397101a8, 0xe1000000, 0x08deb30c, 0x69000000
1411 .long 0xd89ce4b4, 0x14000000, 0x6490c156, 0x63000000
1412 .long 0x7b6184cb, 0x55000000, 0xd570b632, 0x21000000
1413 .long 0x48745c6c, 0x0c000000, 0xd04257b8, 0x7d000000
1414
1415 #endif /*USE_AES*/
1416 #endif /*__x86_64*/