== BEGIN: "Makefile" ================ # Makefile for aes128Enc. Automatically generated by SBV. Do not edit! # include any user-defined .mk file in the current directory. -include *.mk CC?=gcc CCFLAGS?=-Wall -O3 -DNDEBUG -fomit-frame-pointer all: aes128Enc_driver aes128Enc.o: aes128Enc.c aes128Enc.h ${CC} ${CCFLAGS} -c $< -o $@ aes128Enc_driver.o: aes128Enc_driver.c ${CC} ${CCFLAGS} -c $< -o $@ aes128Enc_driver: aes128Enc.o aes128Enc_driver.o ${CC} ${CCFLAGS} $^ -o $@ clean: rm -f *.o veryclean: clean rm -f aes128Enc_driver == END: "Makefile" ================== == BEGIN: "aes128Enc.h" ================ /* Header file for aes128Enc. Automatically generated by SBV. Do not edit! */ #ifndef __aes128Enc__HEADER_INCLUDED__ #define __aes128Enc__HEADER_INCLUDED__ #include #include #include #include #include #include #include /* The boolean type */ typedef bool SBool; /* The float type */ typedef float SFloat; /* The double type */ typedef double SDouble; /* Unsigned bit-vectors */ typedef uint8_t SWord8; typedef uint16_t SWord16; typedef uint32_t SWord32; typedef uint64_t SWord64; /* Signed bit-vectors */ typedef int8_t SInt8; typedef int16_t SInt16; typedef int32_t SInt32; typedef int64_t SInt64; /* Entry point prototype: */ void aes128Enc(const SWord32 *pt, const SWord32 *key, SWord32 *ct); #endif /* __aes128Enc__HEADER_INCLUDED__ */ == END: "aes128Enc.h" ================== == BEGIN: "aes128Enc_driver.c" ================ /* Example driver program for aes128Enc. */ /* Automatically generated by SBV. Edit as you see fit! */ #include #include "aes128Enc.h" int main(void) { const SWord32 pt[4] = { 0x00000000UL, 0x00000000UL, 0x00000000UL, 0x00000000UL }; printf("Contents of input array pt:\n"); int pt_ctr; for(pt_ctr = 0; pt_ctr < 4 ; ++pt_ctr) printf(" pt[%1d] = 0x%08"PRIx32"UL\n", pt_ctr ,pt[pt_ctr]); const SWord32 key[4] = { 0x00000000UL, 0x00000000UL, 0x00000000UL, 0x00000000UL }; printf("Contents of input array key:\n"); int key_ctr; for(key_ctr = 0; key_ctr < 4 ; ++key_ctr) printf(" key[%1d] = 0x%08"PRIx32"UL\n", key_ctr ,key[key_ctr]); SWord32 ct[4]; aes128Enc(pt, key, ct); printf("aes128Enc(pt, key, ct) ->\n"); int ct_ctr; for(ct_ctr = 0; ct_ctr < 4 ; ++ct_ctr) printf(" ct[%1d] = 0x%08"PRIx32"UL\n", ct_ctr ,ct[ct_ctr]); return 0; } == END: "aes128Enc_driver.c" ================== == BEGIN: "aes128Enc.c" ================ /* File: "aes128Enc.c". Automatically generated by SBV. Do not edit! */ #include "aes128Enc.h" void aes128Enc(const SWord32 *pt, const SWord32 *key, SWord32 *ct) { const SWord32 s0 = pt[0]; const SWord32 s1 = pt[1]; const SWord32 s2 = pt[2]; const SWord32 s3 = pt[3]; const SWord32 s4 = key[0]; const SWord32 s5 = key[1]; const SWord32 s6 = key[2]; const SWord32 s7 = key[3]; static const SWord8 table0[] = { 99, 124, 119, 123, 242, 107, 111, 197, 48, 1, 103, 43, 254, 215, 171, 118, 202, 130, 201, 125, 250, 89, 71, 240, 173, 212, 162, 175, 156, 164, 114, 192, 183, 253, 147, 38, 54, 63, 247, 204, 52, 165, 229, 241, 113, 216, 49, 21, 4, 199, 35, 195, 24, 150, 5, 154, 7, 18, 128, 226, 235, 39, 178, 117, 9, 131, 44, 26, 27, 110, 90, 160, 82, 59, 214, 179, 41, 227, 47, 132, 83, 209, 0, 237, 32, 252, 177, 91, 106, 203, 190, 57, 74, 76, 88, 207, 208, 239, 170, 251, 67, 77, 51, 133, 69, 249, 2, 127, 80, 60, 159, 168, 81, 163, 64, 143, 146, 157, 56, 245, 188, 182, 218, 33, 16, 255, 243, 210, 205, 12, 19, 236, 95, 151, 68, 23, 196, 167, 126, 61, 100, 93, 25, 115, 96, 129, 79, 220, 34, 42, 144, 136, 70, 238, 184, 20, 222, 94, 11, 219, 224, 50, 58, 10, 73, 6, 36, 92, 194, 211, 172, 98, 145, 149, 228, 121, 231, 200, 55, 109, 141, 213, 78, 169, 108, 86, 244, 234, 101, 122, 174, 8, 186, 120, 37, 46, 28, 166, 180, 198, 232, 221, 116, 31, 75, 189, 139, 138, 112, 62, 181, 102, 72, 3, 246, 14, 97, 53, 87, 185, 134, 193, 29, 158, 225, 248, 152, 17, 105, 217, 142, 148, 155, 30, 135, 233, 206, 85, 40, 223, 140, 161, 137, 13, 191, 230, 66, 104, 65, 153, 45, 15, 176, 84, 187, 22 }; static const SWord32 table1[] = { 0xc66363a5UL, 0xf87c7c84UL, 0xee777799UL, 0xf67b7b8dUL, 0xfff2f20dUL, 0xd66b6bbdUL, 0xde6f6fb1UL, 0x91c5c554UL, 0x60303050UL, 0x02010103UL, 0xce6767a9UL, 0x562b2b7dUL, 0xe7fefe19UL, 0xb5d7d762UL, 0x4dababe6UL, 0xec76769aUL, 0x8fcaca45UL, 0x1f82829dUL, 0x89c9c940UL, 0xfa7d7d87UL, 0xeffafa15UL, 0xb25959ebUL, 0x8e4747c9UL, 0xfbf0f00bUL, 0x41adadecUL, 0xb3d4d467UL, 0x5fa2a2fdUL, 0x45afafeaUL, 0x239c9cbfUL, 0x53a4a4f7UL, 0xe4727296UL, 0x9bc0c05bUL, 0x75b7b7c2UL, 0xe1fdfd1cUL, 0x3d9393aeUL, 0x4c26266aUL, 0x6c36365aUL, 0x7e3f3f41UL, 0xf5f7f702UL, 0x83cccc4fUL, 0x6834345cUL, 0x51a5a5f4UL, 0xd1e5e534UL, 0xf9f1f108UL, 0xe2717193UL, 0xabd8d873UL, 0x62313153UL, 0x2a15153fUL, 0x0804040cUL, 0x95c7c752UL, 0x46232365UL, 0x9dc3c35eUL, 0x30181828UL, 0x379696a1UL, 0x0a05050fUL, 0x2f9a9ab5UL, 0x0e070709UL, 0x24121236UL, 0x1b80809bUL, 0xdfe2e23dUL, 0xcdebeb26UL, 0x4e272769UL, 0x7fb2b2cdUL, 0xea75759fUL, 0x1209091bUL, 0x1d83839eUL, 0x582c2c74UL, 0x341a1a2eUL, 0x361b1b2dUL, 0xdc6e6eb2UL, 0xb45a5aeeUL, 0x5ba0a0fbUL, 0xa45252f6UL, 0x763b3b4dUL, 0xb7d6d661UL, 0x7db3b3ceUL, 0x5229297bUL, 0xdde3e33eUL, 0x5e2f2f71UL, 0x13848497UL, 0xa65353f5UL, 0xb9d1d168UL, 0x00000000UL, 0xc1eded2cUL, 0x40202060UL, 0xe3fcfc1fUL, 0x79b1b1c8UL, 0xb65b5bedUL, 0xd46a6abeUL, 0x8dcbcb46UL, 0x67bebed9UL, 0x7239394bUL, 0x944a4adeUL, 0x984c4cd4UL, 0xb05858e8UL, 0x85cfcf4aUL, 0xbbd0d06bUL, 0xc5efef2aUL, 0x4faaaae5UL, 0xedfbfb16UL, 0x864343c5UL, 0x9a4d4dd7UL, 0x66333355UL, 0x11858594UL, 0x8a4545cfUL, 0xe9f9f910UL, 0x04020206UL, 0xfe7f7f81UL, 0xa05050f0UL, 0x783c3c44UL, 0x259f9fbaUL, 0x4ba8a8e3UL, 0xa25151f3UL, 0x5da3a3feUL, 0x804040c0UL, 0x058f8f8aUL, 0x3f9292adUL, 0x219d9dbcUL, 0x70383848UL, 0xf1f5f504UL, 0x63bcbcdfUL, 0x77b6b6c1UL, 0xafdada75UL, 0x42212163UL, 0x20101030UL, 0xe5ffff1aUL, 0xfdf3f30eUL, 0xbfd2d26dUL, 0x81cdcd4cUL, 0x180c0c14UL, 0x26131335UL, 0xc3ecec2fUL, 0xbe5f5fe1UL, 0x359797a2UL, 0x884444ccUL, 0x2e171739UL, 0x93c4c457UL, 0x55a7a7f2UL, 0xfc7e7e82UL, 0x7a3d3d47UL, 0xc86464acUL, 0xba5d5de7UL, 0x3219192bUL, 0xe6737395UL, 0xc06060a0UL, 0x19818198UL, 0x9e4f4fd1UL, 0xa3dcdc7fUL, 0x44222266UL, 0x542a2a7eUL, 0x3b9090abUL, 0x0b888883UL, 0x8c4646caUL, 0xc7eeee29UL, 0x6bb8b8d3UL, 0x2814143cUL, 0xa7dede79UL, 0xbc5e5ee2UL, 0x160b0b1dUL, 0xaddbdb76UL, 0xdbe0e03bUL, 0x64323256UL, 0x743a3a4eUL, 0x140a0a1eUL, 0x924949dbUL, 0x0c06060aUL, 0x4824246cUL, 0xb85c5ce4UL, 0x9fc2c25dUL, 0xbdd3d36eUL, 0x43acacefUL, 0xc46262a6UL, 0x399191a8UL, 0x319595a4UL, 0xd3e4e437UL, 0xf279798bUL, 0xd5e7e732UL, 0x8bc8c843UL, 0x6e373759UL, 0xda6d6db7UL, 0x018d8d8cUL, 0xb1d5d564UL, 0x9c4e4ed2UL, 0x49a9a9e0UL, 0xd86c6cb4UL, 0xac5656faUL, 0xf3f4f407UL, 0xcfeaea25UL, 0xca6565afUL, 0xf47a7a8eUL, 0x47aeaee9UL, 0x10080818UL, 0x6fbabad5UL, 0xf0787888UL, 0x4a25256fUL, 0x5c2e2e72UL, 0x381c1c24UL, 0x57a6a6f1UL, 0x73b4b4c7UL, 0x97c6c651UL, 0xcbe8e823UL, 0xa1dddd7cUL, 0xe874749cUL, 0x3e1f1f21UL, 0x964b4bddUL, 0x61bdbddcUL, 0x0d8b8b86UL, 0x0f8a8a85UL, 0xe0707090UL, 0x7c3e3e42UL, 0x71b5b5c4UL, 0xcc6666aaUL, 0x904848d8UL, 0x06030305UL, 0xf7f6f601UL, 0x1c0e0e12UL, 0xc26161a3UL, 0x6a35355fUL, 0xae5757f9UL, 0x69b9b9d0UL, 0x17868691UL, 0x99c1c158UL, 0x3a1d1d27UL, 0x279e9eb9UL, 0xd9e1e138UL, 0xebf8f813UL, 0x2b9898b3UL, 0x22111133UL, 0xd26969bbUL, 0xa9d9d970UL, 0x078e8e89UL, 0x339494a7UL, 0x2d9b9bb6UL, 0x3c1e1e22UL, 0x15878792UL, 0xc9e9e920UL, 0x87cece49UL, 0xaa5555ffUL, 0x50282878UL, 0xa5dfdf7aUL, 0x038c8c8fUL, 0x59a1a1f8UL, 0x09898980UL, 0x1a0d0d17UL, 0x65bfbfdaUL, 0xd7e6e631UL, 0x844242c6UL, 0xd06868b8UL, 0x824141c3UL, 0x299999b0UL, 0x5a2d2d77UL, 0x1e0f0f11UL, 0x7bb0b0cbUL, 0xa85454fcUL, 0x6dbbbbd6UL, 0x2c16163aUL }; static const SWord32 table2[] = { 0xa5c66363UL, 0x84f87c7cUL, 0x99ee7777UL, 0x8df67b7bUL, 0x0dfff2f2UL, 0xbdd66b6bUL, 0xb1de6f6fUL, 0x5491c5c5UL, 0x50603030UL, 0x03020101UL, 0xa9ce6767UL, 0x7d562b2bUL, 0x19e7fefeUL, 0x62b5d7d7UL, 0xe64dababUL, 0x9aec7676UL, 0x458fcacaUL, 0x9d1f8282UL, 0x4089c9c9UL, 0x87fa7d7dUL, 0x15effafaUL, 0xebb25959UL, 0xc98e4747UL, 0x0bfbf0f0UL, 0xec41adadUL, 0x67b3d4d4UL, 0xfd5fa2a2UL, 0xea45afafUL, 0xbf239c9cUL, 0xf753a4a4UL, 0x96e47272UL, 0x5b9bc0c0UL, 0xc275b7b7UL, 0x1ce1fdfdUL, 0xae3d9393UL, 0x6a4c2626UL, 0x5a6c3636UL, 0x417e3f3fUL, 0x02f5f7f7UL, 0x4f83ccccUL, 0x5c683434UL, 0xf451a5a5UL, 0x34d1e5e5UL, 0x08f9f1f1UL, 0x93e27171UL, 0x73abd8d8UL, 0x53623131UL, 0x3f2a1515UL, 0x0c080404UL, 0x5295c7c7UL, 0x65462323UL, 0x5e9dc3c3UL, 0x28301818UL, 0xa1379696UL, 0x0f0a0505UL, 0xb52f9a9aUL, 0x090e0707UL, 0x36241212UL, 0x9b1b8080UL, 0x3ddfe2e2UL, 0x26cdebebUL, 0x694e2727UL, 0xcd7fb2b2UL, 0x9fea7575UL, 0x1b120909UL, 0x9e1d8383UL, 0x74582c2cUL, 0x2e341a1aUL, 0x2d361b1bUL, 0xb2dc6e6eUL, 0xeeb45a5aUL, 0xfb5ba0a0UL, 0xf6a45252UL, 0x4d763b3bUL, 0x61b7d6d6UL, 0xce7db3b3UL, 0x7b522929UL, 0x3edde3e3UL, 0x715e2f2fUL, 0x97138484UL, 0xf5a65353UL, 0x68b9d1d1UL, 0x00000000UL, 0x2cc1ededUL, 0x60402020UL, 0x1fe3fcfcUL, 0xc879b1b1UL, 0xedb65b5bUL, 0xbed46a6aUL, 0x468dcbcbUL, 0xd967bebeUL, 0x4b723939UL, 0xde944a4aUL, 0xd4984c4cUL, 0xe8b05858UL, 0x4a85cfcfUL, 0x6bbbd0d0UL, 0x2ac5efefUL, 0xe54faaaaUL, 0x16edfbfbUL, 0xc5864343UL, 0xd79a4d4dUL, 0x55663333UL, 0x94118585UL, 0xcf8a4545UL, 0x10e9f9f9UL, 0x06040202UL, 0x81fe7f7fUL, 0xf0a05050UL, 0x44783c3cUL, 0xba259f9fUL, 0xe34ba8a8UL, 0xf3a25151UL, 0xfe5da3a3UL, 0xc0804040UL, 0x8a058f8fUL, 0xad3f9292UL, 0xbc219d9dUL, 0x48703838UL, 0x04f1f5f5UL, 0xdf63bcbcUL, 0xc177b6b6UL, 0x75afdadaUL, 0x63422121UL, 0x30201010UL, 0x1ae5ffffUL, 0x0efdf3f3UL, 0x6dbfd2d2UL, 0x4c81cdcdUL, 0x14180c0cUL, 0x35261313UL, 0x2fc3ececUL, 0xe1be5f5fUL, 0xa2359797UL, 0xcc884444UL, 0x392e1717UL, 0x5793c4c4UL, 0xf255a7a7UL, 0x82fc7e7eUL, 0x477a3d3dUL, 0xacc86464UL, 0xe7ba5d5dUL, 0x2b321919UL, 0x95e67373UL, 0xa0c06060UL, 0x98198181UL, 0xd19e4f4fUL, 0x7fa3dcdcUL, 0x66442222UL, 0x7e542a2aUL, 0xab3b9090UL, 0x830b8888UL, 0xca8c4646UL, 0x29c7eeeeUL, 0xd36bb8b8UL, 0x3c281414UL, 0x79a7dedeUL, 0xe2bc5e5eUL, 0x1d160b0bUL, 0x76addbdbUL, 0x3bdbe0e0UL, 0x56643232UL, 0x4e743a3aUL, 0x1e140a0aUL, 0xdb924949UL, 0x0a0c0606UL, 0x6c482424UL, 0xe4b85c5cUL, 0x5d9fc2c2UL, 0x6ebdd3d3UL, 0xef43acacUL, 0xa6c46262UL, 0xa8399191UL, 0xa4319595UL, 0x37d3e4e4UL, 0x8bf27979UL, 0x32d5e7e7UL, 0x438bc8c8UL, 0x596e3737UL, 0xb7da6d6dUL, 0x8c018d8dUL, 0x64b1d5d5UL, 0xd29c4e4eUL, 0xe049a9a9UL, 0xb4d86c6cUL, 0xfaac5656UL, 0x07f3f4f4UL, 0x25cfeaeaUL, 0xafca6565UL, 0x8ef47a7aUL, 0xe947aeaeUL, 0x18100808UL, 0xd56fbabaUL, 0x88f07878UL, 0x6f4a2525UL, 0x725c2e2eUL, 0x24381c1cUL, 0xf157a6a6UL, 0xc773b4b4UL, 0x5197c6c6UL, 0x23cbe8e8UL, 0x7ca1ddddUL, 0x9ce87474UL, 0x213e1f1fUL, 0xdd964b4bUL, 0xdc61bdbdUL, 0x860d8b8bUL, 0x850f8a8aUL, 0x90e07070UL, 0x427c3e3eUL, 0xc471b5b5UL, 0xaacc6666UL, 0xd8904848UL, 0x05060303UL, 0x01f7f6f6UL, 0x121c0e0eUL, 0xa3c26161UL, 0x5f6a3535UL, 0xf9ae5757UL, 0xd069b9b9UL, 0x91178686UL, 0x5899c1c1UL, 0x273a1d1dUL, 0xb9279e9eUL, 0x38d9e1e1UL, 0x13ebf8f8UL, 0xb32b9898UL, 0x33221111UL, 0xbbd26969UL, 0x70a9d9d9UL, 0x89078e8eUL, 0xa7339494UL, 0xb62d9b9bUL, 0x223c1e1eUL, 0x92158787UL, 0x20c9e9e9UL, 0x4987ceceUL, 0xffaa5555UL, 0x78502828UL, 0x7aa5dfdfUL, 0x8f038c8cUL, 0xf859a1a1UL, 0x80098989UL, 0x171a0d0dUL, 0xda65bfbfUL, 0x31d7e6e6UL, 0xc6844242UL, 0xb8d06868UL, 0xc3824141UL, 0xb0299999UL, 0x775a2d2dUL, 0x111e0f0fUL, 0xcb7bb0b0UL, 0xfca85454UL, 0xd66dbbbbUL, 0x3a2c1616UL }; static const SWord32 table3[] = { 0x63a5c663UL, 0x7c84f87cUL, 0x7799ee77UL, 0x7b8df67bUL, 0xf20dfff2UL, 0x6bbdd66bUL, 0x6fb1de6fUL, 0xc55491c5UL, 0x30506030UL, 0x01030201UL, 0x67a9ce67UL, 0x2b7d562bUL, 0xfe19e7feUL, 0xd762b5d7UL, 0xabe64dabUL, 0x769aec76UL, 0xca458fcaUL, 0x829d1f82UL, 0xc94089c9UL, 0x7d87fa7dUL, 0xfa15effaUL, 0x59ebb259UL, 0x47c98e47UL, 0xf00bfbf0UL, 0xadec41adUL, 0xd467b3d4UL, 0xa2fd5fa2UL, 0xafea45afUL, 0x9cbf239cUL, 0xa4f753a4UL, 0x7296e472UL, 0xc05b9bc0UL, 0xb7c275b7UL, 0xfd1ce1fdUL, 0x93ae3d93UL, 0x266a4c26UL, 0x365a6c36UL, 0x3f417e3fUL, 0xf702f5f7UL, 0xcc4f83ccUL, 0x345c6834UL, 0xa5f451a5UL, 0xe534d1e5UL, 0xf108f9f1UL, 0x7193e271UL, 0xd873abd8UL, 0x31536231UL, 0x153f2a15UL, 0x040c0804UL, 0xc75295c7UL, 0x23654623UL, 0xc35e9dc3UL, 0x18283018UL, 0x96a13796UL, 0x050f0a05UL, 0x9ab52f9aUL, 0x07090e07UL, 0x12362412UL, 0x809b1b80UL, 0xe23ddfe2UL, 0xeb26cdebUL, 0x27694e27UL, 0xb2cd7fb2UL, 0x759fea75UL, 0x091b1209UL, 0x839e1d83UL, 0x2c74582cUL, 0x1a2e341aUL, 0x1b2d361bUL, 0x6eb2dc6eUL, 0x5aeeb45aUL, 0xa0fb5ba0UL, 0x52f6a452UL, 0x3b4d763bUL, 0xd661b7d6UL, 0xb3ce7db3UL, 0x297b5229UL, 0xe33edde3UL, 0x2f715e2fUL, 0x84971384UL, 0x53f5a653UL, 0xd168b9d1UL, 0x00000000UL, 0xed2cc1edUL, 0x20604020UL, 0xfc1fe3fcUL, 0xb1c879b1UL, 0x5bedb65bUL, 0x6abed46aUL, 0xcb468dcbUL, 0xbed967beUL, 0x394b7239UL, 0x4ade944aUL, 0x4cd4984cUL, 0x58e8b058UL, 0xcf4a85cfUL, 0xd06bbbd0UL, 0xef2ac5efUL, 0xaae54faaUL, 0xfb16edfbUL, 0x43c58643UL, 0x4dd79a4dUL, 0x33556633UL, 0x85941185UL, 0x45cf8a45UL, 0xf910e9f9UL, 0x02060402UL, 0x7f81fe7fUL, 0x50f0a050UL, 0x3c44783cUL, 0x9fba259fUL, 0xa8e34ba8UL, 0x51f3a251UL, 0xa3fe5da3UL, 0x40c08040UL, 0x8f8a058fUL, 0x92ad3f92UL, 0x9dbc219dUL, 0x38487038UL, 0xf504f1f5UL, 0xbcdf63bcUL, 0xb6c177b6UL, 0xda75afdaUL, 0x21634221UL, 0x10302010UL, 0xff1ae5ffUL, 0xf30efdf3UL, 0xd26dbfd2UL, 0xcd4c81cdUL, 0x0c14180cUL, 0x13352613UL, 0xec2fc3ecUL, 0x5fe1be5fUL, 0x97a23597UL, 0x44cc8844UL, 0x17392e17UL, 0xc45793c4UL, 0xa7f255a7UL, 0x7e82fc7eUL, 0x3d477a3dUL, 0x64acc864UL, 0x5de7ba5dUL, 0x192b3219UL, 0x7395e673UL, 0x60a0c060UL, 0x81981981UL, 0x4fd19e4fUL, 0xdc7fa3dcUL, 0x22664422UL, 0x2a7e542aUL, 0x90ab3b90UL, 0x88830b88UL, 0x46ca8c46UL, 0xee29c7eeUL, 0xb8d36bb8UL, 0x143c2814UL, 0xde79a7deUL, 0x5ee2bc5eUL, 0x0b1d160bUL, 0xdb76addbUL, 0xe03bdbe0UL, 0x32566432UL, 0x3a4e743aUL, 0x0a1e140aUL, 0x49db9249UL, 0x060a0c06UL, 0x246c4824UL, 0x5ce4b85cUL, 0xc25d9fc2UL, 0xd36ebdd3UL, 0xacef43acUL, 0x62a6c462UL, 0x91a83991UL, 0x95a43195UL, 0xe437d3e4UL, 0x798bf279UL, 0xe732d5e7UL, 0xc8438bc8UL, 0x37596e37UL, 0x6db7da6dUL, 0x8d8c018dUL, 0xd564b1d5UL, 0x4ed29c4eUL, 0xa9e049a9UL, 0x6cb4d86cUL, 0x56faac56UL, 0xf407f3f4UL, 0xea25cfeaUL, 0x65afca65UL, 0x7a8ef47aUL, 0xaee947aeUL, 0x08181008UL, 0xbad56fbaUL, 0x7888f078UL, 0x256f4a25UL, 0x2e725c2eUL, 0x1c24381cUL, 0xa6f157a6UL, 0xb4c773b4UL, 0xc65197c6UL, 0xe823cbe8UL, 0xdd7ca1ddUL, 0x749ce874UL, 0x1f213e1fUL, 0x4bdd964bUL, 0xbddc61bdUL, 0x8b860d8bUL, 0x8a850f8aUL, 0x7090e070UL, 0x3e427c3eUL, 0xb5c471b5UL, 0x66aacc66UL, 0x48d89048UL, 0x03050603UL, 0xf601f7f6UL, 0x0e121c0eUL, 0x61a3c261UL, 0x355f6a35UL, 0x57f9ae57UL, 0xb9d069b9UL, 0x86911786UL, 0xc15899c1UL, 0x1d273a1dUL, 0x9eb9279eUL, 0xe138d9e1UL, 0xf813ebf8UL, 0x98b32b98UL, 0x11332211UL, 0x69bbd269UL, 0xd970a9d9UL, 0x8e89078eUL, 0x94a73394UL, 0x9bb62d9bUL, 0x1e223c1eUL, 0x87921587UL, 0xe920c9e9UL, 0xce4987ceUL, 0x55ffaa55UL, 0x28785028UL, 0xdf7aa5dfUL, 0x8c8f038cUL, 0xa1f859a1UL, 0x89800989UL, 0x0d171a0dUL, 0xbfda65bfUL, 0xe631d7e6UL, 0x42c68442UL, 0x68b8d068UL, 0x41c38241UL, 0x99b02999UL, 0x2d775a2dUL, 0x0f111e0fUL, 0xb0cb7bb0UL, 0x54fca854UL, 0xbbd66dbbUL, 0x163a2c16UL }; static const SWord32 table4[] = { 0x6363a5c6UL, 0x7c7c84f8UL, 0x777799eeUL, 0x7b7b8df6UL, 0xf2f20dffUL, 0x6b6bbdd6UL, 0x6f6fb1deUL, 0xc5c55491UL, 0x30305060UL, 0x01010302UL, 0x6767a9ceUL, 0x2b2b7d56UL, 0xfefe19e7UL, 0xd7d762b5UL, 0xababe64dUL, 0x76769aecUL, 0xcaca458fUL, 0x82829d1fUL, 0xc9c94089UL, 0x7d7d87faUL, 0xfafa15efUL, 0x5959ebb2UL, 0x4747c98eUL, 0xf0f00bfbUL, 0xadadec41UL, 0xd4d467b3UL, 0xa2a2fd5fUL, 0xafafea45UL, 0x9c9cbf23UL, 0xa4a4f753UL, 0x727296e4UL, 0xc0c05b9bUL, 0xb7b7c275UL, 0xfdfd1ce1UL, 0x9393ae3dUL, 0x26266a4cUL, 0x36365a6cUL, 0x3f3f417eUL, 0xf7f702f5UL, 0xcccc4f83UL, 0x34345c68UL, 0xa5a5f451UL, 0xe5e534d1UL, 0xf1f108f9UL, 0x717193e2UL, 0xd8d873abUL, 0x31315362UL, 0x15153f2aUL, 0x04040c08UL, 0xc7c75295UL, 0x23236546UL, 0xc3c35e9dUL, 0x18182830UL, 0x9696a137UL, 0x05050f0aUL, 0x9a9ab52fUL, 0x0707090eUL, 0x12123624UL, 0x80809b1bUL, 0xe2e23ddfUL, 0xebeb26cdUL, 0x2727694eUL, 0xb2b2cd7fUL, 0x75759feaUL, 0x09091b12UL, 0x83839e1dUL, 0x2c2c7458UL, 0x1a1a2e34UL, 0x1b1b2d36UL, 0x6e6eb2dcUL, 0x5a5aeeb4UL, 0xa0a0fb5bUL, 0x5252f6a4UL, 0x3b3b4d76UL, 0xd6d661b7UL, 0xb3b3ce7dUL, 0x29297b52UL, 0xe3e33eddUL, 0x2f2f715eUL, 0x84849713UL, 0x5353f5a6UL, 0xd1d168b9UL, 0x00000000UL, 0xeded2cc1UL, 0x20206040UL, 0xfcfc1fe3UL, 0xb1b1c879UL, 0x5b5bedb6UL, 0x6a6abed4UL, 0xcbcb468dUL, 0xbebed967UL, 0x39394b72UL, 0x4a4ade94UL, 0x4c4cd498UL, 0x5858e8b0UL, 0xcfcf4a85UL, 0xd0d06bbbUL, 0xefef2ac5UL, 0xaaaae54fUL, 0xfbfb16edUL, 0x4343c586UL, 0x4d4dd79aUL, 0x33335566UL, 0x85859411UL, 0x4545cf8aUL, 0xf9f910e9UL, 0x02020604UL, 0x7f7f81feUL, 0x5050f0a0UL, 0x3c3c4478UL, 0x9f9fba25UL, 0xa8a8e34bUL, 0x5151f3a2UL, 0xa3a3fe5dUL, 0x4040c080UL, 0x8f8f8a05UL, 0x9292ad3fUL, 0x9d9dbc21UL, 0x38384870UL, 0xf5f504f1UL, 0xbcbcdf63UL, 0xb6b6c177UL, 0xdada75afUL, 0x21216342UL, 0x10103020UL, 0xffff1ae5UL, 0xf3f30efdUL, 0xd2d26dbfUL, 0xcdcd4c81UL, 0x0c0c1418UL, 0x13133526UL, 0xecec2fc3UL, 0x5f5fe1beUL, 0x9797a235UL, 0x4444cc88UL, 0x1717392eUL, 0xc4c45793UL, 0xa7a7f255UL, 0x7e7e82fcUL, 0x3d3d477aUL, 0x6464acc8UL, 0x5d5de7baUL, 0x19192b32UL, 0x737395e6UL, 0x6060a0c0UL, 0x81819819UL, 0x4f4fd19eUL, 0xdcdc7fa3UL, 0x22226644UL, 0x2a2a7e54UL, 0x9090ab3bUL, 0x8888830bUL, 0x4646ca8cUL, 0xeeee29c7UL, 0xb8b8d36bUL, 0x14143c28UL, 0xdede79a7UL, 0x5e5ee2bcUL, 0x0b0b1d16UL, 0xdbdb76adUL, 0xe0e03bdbUL, 0x32325664UL, 0x3a3a4e74UL, 0x0a0a1e14UL, 0x4949db92UL, 0x06060a0cUL, 0x24246c48UL, 0x5c5ce4b8UL, 0xc2c25d9fUL, 0xd3d36ebdUL, 0xacacef43UL, 0x6262a6c4UL, 0x9191a839UL, 0x9595a431UL, 0xe4e437d3UL, 0x79798bf2UL, 0xe7e732d5UL, 0xc8c8438bUL, 0x3737596eUL, 0x6d6db7daUL, 0x8d8d8c01UL, 0xd5d564b1UL, 0x4e4ed29cUL, 0xa9a9e049UL, 0x6c6cb4d8UL, 0x5656faacUL, 0xf4f407f3UL, 0xeaea25cfUL, 0x6565afcaUL, 0x7a7a8ef4UL, 0xaeaee947UL, 0x08081810UL, 0xbabad56fUL, 0x787888f0UL, 0x25256f4aUL, 0x2e2e725cUL, 0x1c1c2438UL, 0xa6a6f157UL, 0xb4b4c773UL, 0xc6c65197UL, 0xe8e823cbUL, 0xdddd7ca1UL, 0x74749ce8UL, 0x1f1f213eUL, 0x4b4bdd96UL, 0xbdbddc61UL, 0x8b8b860dUL, 0x8a8a850fUL, 0x707090e0UL, 0x3e3e427cUL, 0xb5b5c471UL, 0x6666aaccUL, 0x4848d890UL, 0x03030506UL, 0xf6f601f7UL, 0x0e0e121cUL, 0x6161a3c2UL, 0x35355f6aUL, 0x5757f9aeUL, 0xb9b9d069UL, 0x86869117UL, 0xc1c15899UL, 0x1d1d273aUL, 0x9e9eb927UL, 0xe1e138d9UL, 0xf8f813ebUL, 0x9898b32bUL, 0x11113322UL, 0x6969bbd2UL, 0xd9d970a9UL, 0x8e8e8907UL, 0x9494a733UL, 0x9b9bb62dUL, 0x1e1e223cUL, 0x87879215UL, 0xe9e920c9UL, 0xcece4987UL, 0x5555ffaaUL, 0x28287850UL, 0xdfdf7aa5UL, 0x8c8c8f03UL, 0xa1a1f859UL, 0x89898009UL, 0x0d0d171aUL, 0xbfbfda65UL, 0xe6e631d7UL, 0x4242c684UL, 0x6868b8d0UL, 0x4141c382UL, 0x9999b029UL, 0x2d2d775aUL, 0x0f0f111eUL, 0xb0b0cb7bUL, 0x5454fca8UL, 0xbbbbd66dUL, 0x16163a2cUL }; const SWord32 s520 = s0 ^ s4; const SWord8 s521 = (SWord8) (s520 >> 24); const SWord32 s522 = table1[s521]; const SWord32 s778 = s1 ^ s5; const SWord8 s779 = (SWord8) (s778 >> 16); const SWord32 s780 = table2[s779]; const SWord32 s781 = s522 ^ s780; const SWord32 s1037 = s2 ^ s6; const SWord8 s1038 = (SWord8) (s1037 >> 8); const SWord32 s1039 = table3[s1038]; const SWord32 s1040 = s781 ^ s1039; const SWord32 s1296 = s3 ^ s7; const SWord8 s1297 = (SWord8) s1296; const SWord32 s1298 = table4[s1297]; const SWord32 s1299 = s1040 ^ s1298; const SWord32 s1300 = (s7 << 8) | (s7 >> 24); const SWord8 s1301 = (SWord8) (s1300 >> 24); const SWord8 s1302 = table0[s1301]; const SWord8 s1303 = 1 ^ s1302; const SWord8 s1304 = (SWord8) (s1300 >> 16); const SWord8 s1305 = table0[s1304]; const SWord16 s1306 = (((SWord16) s1303) << 8) | ((SWord16) s1305); const SWord8 s1307 = (SWord8) (s1300 >> 8); const SWord8 s1308 = table0[s1307]; const SWord8 s1309 = (SWord8) s1300; const SWord8 s1310 = table0[s1309]; const SWord16 s1311 = (((SWord16) s1308) << 8) | ((SWord16) s1310); const SWord32 s1312 = (((SWord32) s1306) << 16) | ((SWord32) s1311); const SWord32 s1313 = s4 ^ s1312; const SWord32 s1314 = s1299 ^ s1313; const SWord8 s1315 = (SWord8) (s1314 >> 24); const SWord32 s1316 = table1[s1315]; const SWord8 s1317 = (SWord8) (s778 >> 24); const SWord32 s1318 = table1[s1317]; const SWord8 s1319 = (SWord8) (s1037 >> 16); const SWord32 s1320 = table2[s1319]; const SWord32 s1321 = s1318 ^ s1320; const SWord8 s1322 = (SWord8) (s1296 >> 8); const SWord32 s1323 = table3[s1322]; const SWord32 s1324 = s1321 ^ s1323; const SWord8 s1325 = (SWord8) s520; const SWord32 s1326 = table4[s1325]; const SWord32 s1327 = s1324 ^ s1326; const SWord32 s1328 = s5 ^ s1313; const SWord32 s1329 = s1327 ^ s1328; const SWord8 s1330 = (SWord8) (s1329 >> 16); const SWord32 s1331 = table2[s1330]; const SWord32 s1332 = s1316 ^ s1331; const SWord8 s1333 = (SWord8) (s1037 >> 24); const SWord32 s1334 = table1[s1333]; const SWord8 s1335 = (SWord8) (s1296 >> 16); const SWord32 s1336 = table2[s1335]; const SWord32 s1337 = s1334 ^ s1336; const SWord8 s1338 = (SWord8) (s520 >> 8); const SWord32 s1339 = table3[s1338]; const SWord32 s1340 = s1337 ^ s1339; const SWord8 s1341 = (SWord8) s778; const SWord32 s1342 = table4[s1341]; const SWord32 s1343 = s1340 ^ s1342; const SWord32 s1344 = s6 ^ s1328; const SWord32 s1345 = s1343 ^ s1344; const SWord8 s1346 = (SWord8) (s1345 >> 8); const SWord32 s1347 = table3[s1346]; const SWord32 s1348 = s1332 ^ s1347; const SWord8 s1349 = (SWord8) (s1296 >> 24); const SWord32 s1350 = table1[s1349]; const SWord8 s1351 = (SWord8) (s520 >> 16); const SWord32 s1352 = table2[s1351]; const SWord32 s1353 = s1350 ^ s1352; const SWord8 s1354 = (SWord8) (s778 >> 8); const SWord32 s1355 = table3[s1354]; const SWord32 s1356 = s1353 ^ s1355; const SWord8 s1357 = (SWord8) s1037; const SWord32 s1358 = table4[s1357]; const SWord32 s1359 = s1356 ^ s1358; const SWord32 s1360 = s7 ^ s1344; const SWord32 s1361 = s1359 ^ s1360; const SWord8 s1362 = (SWord8) s1361; const SWord32 s1363 = table4[s1362]; const SWord32 s1364 = s1348 ^ s1363; const SWord32 s1365 = (s1360 << 8) | (s1360 >> 24); const SWord8 s1366 = (SWord8) (s1365 >> 24); const SWord8 s1367 = table0[s1366]; const SWord8 s1368 = 2 ^ s1367; const SWord8 s1369 = (SWord8) (s1365 >> 16); const SWord8 s1370 = table0[s1369]; const SWord16 s1371 = (((SWord16) s1368) << 8) | ((SWord16) s1370); const SWord8 s1372 = (SWord8) (s1365 >> 8); const SWord8 s1373 = table0[s1372]; const SWord8 s1374 = (SWord8) s1365; const SWord8 s1375 = table0[s1374]; const SWord16 s1376 = (((SWord16) s1373) << 8) | ((SWord16) s1375); const SWord32 s1377 = (((SWord32) s1371) << 16) | ((SWord32) s1376); const SWord32 s1378 = s1313 ^ s1377; const SWord32 s1379 = s1364 ^ s1378; const SWord8 s1380 = (SWord8) (s1379 >> 24); const SWord32 s1381 = table1[s1380]; const SWord8 s1382 = (SWord8) (s1329 >> 24); const SWord32 s1383 = table1[s1382]; const SWord8 s1384 = (SWord8) (s1345 >> 16); const SWord32 s1385 = table2[s1384]; const SWord32 s1386 = s1383 ^ s1385; const SWord8 s1387 = (SWord8) (s1361 >> 8); const SWord32 s1388 = table3[s1387]; const SWord32 s1389 = s1386 ^ s1388; const SWord8 s1390 = (SWord8) s1314; const SWord32 s1391 = table4[s1390]; const SWord32 s1392 = s1389 ^ s1391; const SWord32 s1393 = s1328 ^ s1378; const SWord32 s1394 = s1392 ^ s1393; const SWord8 s1395 = (SWord8) (s1394 >> 16); const SWord32 s1396 = table2[s1395]; const SWord32 s1397 = s1381 ^ s1396; const SWord8 s1398 = (SWord8) (s1345 >> 24); const SWord32 s1399 = table1[s1398]; const SWord8 s1400 = (SWord8) (s1361 >> 16); const SWord32 s1401 = table2[s1400]; const SWord32 s1402 = s1399 ^ s1401; const SWord8 s1403 = (SWord8) (s1314 >> 8); const SWord32 s1404 = table3[s1403]; const SWord32 s1405 = s1402 ^ s1404; const SWord8 s1406 = (SWord8) s1329; const SWord32 s1407 = table4[s1406]; const SWord32 s1408 = s1405 ^ s1407; const SWord32 s1409 = s1344 ^ s1393; const SWord32 s1410 = s1408 ^ s1409; const SWord8 s1411 = (SWord8) (s1410 >> 8); const SWord32 s1412 = table3[s1411]; const SWord32 s1413 = s1397 ^ s1412; const SWord8 s1414 = (SWord8) (s1361 >> 24); const SWord32 s1415 = table1[s1414]; const SWord8 s1416 = (SWord8) (s1314 >> 16); const SWord32 s1417 = table2[s1416]; const SWord32 s1418 = s1415 ^ s1417; const SWord8 s1419 = (SWord8) (s1329 >> 8); const SWord32 s1420 = table3[s1419]; const SWord32 s1421 = s1418 ^ s1420; const SWord8 s1422 = (SWord8) s1345; const SWord32 s1423 = table4[s1422]; const SWord32 s1424 = s1421 ^ s1423; const SWord32 s1425 = s1360 ^ s1409; const SWord32 s1426 = s1424 ^ s1425; const SWord8 s1427 = (SWord8) s1426; const SWord32 s1428 = table4[s1427]; const SWord32 s1429 = s1413 ^ s1428; const SWord32 s1430 = (s1425 << 8) | (s1425 >> 24); const SWord8 s1431 = (SWord8) (s1430 >> 24); const SWord8 s1432 = table0[s1431]; const SWord8 s1433 = 4 ^ s1432; const SWord8 s1434 = (SWord8) (s1430 >> 16); const SWord8 s1435 = table0[s1434]; const SWord16 s1436 = (((SWord16) s1433) << 8) | ((SWord16) s1435); const SWord8 s1437 = (SWord8) (s1430 >> 8); const SWord8 s1438 = table0[s1437]; const SWord8 s1439 = (SWord8) s1430; const SWord8 s1440 = table0[s1439]; const SWord16 s1441 = (((SWord16) s1438) << 8) | ((SWord16) s1440); const SWord32 s1442 = (((SWord32) s1436) << 16) | ((SWord32) s1441); const SWord32 s1443 = s1378 ^ s1442; const SWord32 s1444 = s1429 ^ s1443; const SWord8 s1445 = (SWord8) (s1444 >> 24); const SWord32 s1446 = table1[s1445]; const SWord8 s1447 = (SWord8) (s1394 >> 24); const SWord32 s1448 = table1[s1447]; const SWord8 s1449 = (SWord8) (s1410 >> 16); const SWord32 s1450 = table2[s1449]; const SWord32 s1451 = s1448 ^ s1450; const SWord8 s1452 = (SWord8) (s1426 >> 8); const SWord32 s1453 = table3[s1452]; const SWord32 s1454 = s1451 ^ s1453; const SWord8 s1455 = (SWord8) s1379; const SWord32 s1456 = table4[s1455]; const SWord32 s1457 = s1454 ^ s1456; const SWord32 s1458 = s1393 ^ s1443; const SWord32 s1459 = s1457 ^ s1458; const SWord8 s1460 = (SWord8) (s1459 >> 16); const SWord32 s1461 = table2[s1460]; const SWord32 s1462 = s1446 ^ s1461; const SWord8 s1463 = (SWord8) (s1410 >> 24); const SWord32 s1464 = table1[s1463]; const SWord8 s1465 = (SWord8) (s1426 >> 16); const SWord32 s1466 = table2[s1465]; const SWord32 s1467 = s1464 ^ s1466; const SWord8 s1468 = (SWord8) (s1379 >> 8); const SWord32 s1469 = table3[s1468]; const SWord32 s1470 = s1467 ^ s1469; const SWord8 s1471 = (SWord8) s1394; const SWord32 s1472 = table4[s1471]; const SWord32 s1473 = s1470 ^ s1472; const SWord32 s1474 = s1409 ^ s1458; const SWord32 s1475 = s1473 ^ s1474; const SWord8 s1476 = (SWord8) (s1475 >> 8); const SWord32 s1477 = table3[s1476]; const SWord32 s1478 = s1462 ^ s1477; const SWord8 s1479 = (SWord8) (s1426 >> 24); const SWord32 s1480 = table1[s1479]; const SWord8 s1481 = (SWord8) (s1379 >> 16); const SWord32 s1482 = table2[s1481]; const SWord32 s1483 = s1480 ^ s1482; const SWord8 s1484 = (SWord8) (s1394 >> 8); const SWord32 s1485 = table3[s1484]; const SWord32 s1486 = s1483 ^ s1485; const SWord8 s1487 = (SWord8) s1410; const SWord32 s1488 = table4[s1487]; const SWord32 s1489 = s1486 ^ s1488; const SWord32 s1490 = s1425 ^ s1474; const SWord32 s1491 = s1489 ^ s1490; const SWord8 s1492 = (SWord8) s1491; const SWord32 s1493 = table4[s1492]; const SWord32 s1494 = s1478 ^ s1493; const SWord32 s1495 = (s1490 << 8) | (s1490 >> 24); const SWord8 s1496 = (SWord8) (s1495 >> 24); const SWord8 s1497 = table0[s1496]; const SWord8 s1498 = 8 ^ s1497; const SWord8 s1499 = (SWord8) (s1495 >> 16); const SWord8 s1500 = table0[s1499]; const SWord16 s1501 = (((SWord16) s1498) << 8) | ((SWord16) s1500); const SWord8 s1502 = (SWord8) (s1495 >> 8); const SWord8 s1503 = table0[s1502]; const SWord8 s1504 = (SWord8) s1495; const SWord8 s1505 = table0[s1504]; const SWord16 s1506 = (((SWord16) s1503) << 8) | ((SWord16) s1505); const SWord32 s1507 = (((SWord32) s1501) << 16) | ((SWord32) s1506); const SWord32 s1508 = s1443 ^ s1507; const SWord32 s1509 = s1494 ^ s1508; const SWord8 s1510 = (SWord8) (s1509 >> 24); const SWord32 s1511 = table1[s1510]; const SWord8 s1512 = (SWord8) (s1459 >> 24); const SWord32 s1513 = table1[s1512]; const SWord8 s1514 = (SWord8) (s1475 >> 16); const SWord32 s1515 = table2[s1514]; const SWord32 s1516 = s1513 ^ s1515; const SWord8 s1517 = (SWord8) (s1491 >> 8); const SWord32 s1518 = table3[s1517]; const SWord32 s1519 = s1516 ^ s1518; const SWord8 s1520 = (SWord8) s1444; const SWord32 s1521 = table4[s1520]; const SWord32 s1522 = s1519 ^ s1521; const SWord32 s1523 = s1458 ^ s1508; const SWord32 s1524 = s1522 ^ s1523; const SWord8 s1525 = (SWord8) (s1524 >> 16); const SWord32 s1526 = table2[s1525]; const SWord32 s1527 = s1511 ^ s1526; const SWord8 s1528 = (SWord8) (s1475 >> 24); const SWord32 s1529 = table1[s1528]; const SWord8 s1530 = (SWord8) (s1491 >> 16); const SWord32 s1531 = table2[s1530]; const SWord32 s1532 = s1529 ^ s1531; const SWord8 s1533 = (SWord8) (s1444 >> 8); const SWord32 s1534 = table3[s1533]; const SWord32 s1535 = s1532 ^ s1534; const SWord8 s1536 = (SWord8) s1459; const SWord32 s1537 = table4[s1536]; const SWord32 s1538 = s1535 ^ s1537; const SWord32 s1539 = s1474 ^ s1523; const SWord32 s1540 = s1538 ^ s1539; const SWord8 s1541 = (SWord8) (s1540 >> 8); const SWord32 s1542 = table3[s1541]; const SWord32 s1543 = s1527 ^ s1542; const SWord8 s1544 = (SWord8) (s1491 >> 24); const SWord32 s1545 = table1[s1544]; const SWord8 s1546 = (SWord8) (s1444 >> 16); const SWord32 s1547 = table2[s1546]; const SWord32 s1548 = s1545 ^ s1547; const SWord8 s1549 = (SWord8) (s1459 >> 8); const SWord32 s1550 = table3[s1549]; const SWord32 s1551 = s1548 ^ s1550; const SWord8 s1552 = (SWord8) s1475; const SWord32 s1553 = table4[s1552]; const SWord32 s1554 = s1551 ^ s1553; const SWord32 s1555 = s1490 ^ s1539; const SWord32 s1556 = s1554 ^ s1555; const SWord8 s1557 = (SWord8) s1556; const SWord32 s1558 = table4[s1557]; const SWord32 s1559 = s1543 ^ s1558; const SWord32 s1560 = (s1555 << 8) | (s1555 >> 24); const SWord8 s1561 = (SWord8) (s1560 >> 24); const SWord8 s1562 = table0[s1561]; const SWord8 s1563 = 16 ^ s1562; const SWord8 s1564 = (SWord8) (s1560 >> 16); const SWord8 s1565 = table0[s1564]; const SWord16 s1566 = (((SWord16) s1563) << 8) | ((SWord16) s1565); const SWord8 s1567 = (SWord8) (s1560 >> 8); const SWord8 s1568 = table0[s1567]; const SWord8 s1569 = (SWord8) s1560; const SWord8 s1570 = table0[s1569]; const SWord16 s1571 = (((SWord16) s1568) << 8) | ((SWord16) s1570); const SWord32 s1572 = (((SWord32) s1566) << 16) | ((SWord32) s1571); const SWord32 s1573 = s1508 ^ s1572; const SWord32 s1574 = s1559 ^ s1573; const SWord8 s1575 = (SWord8) (s1574 >> 24); const SWord32 s1576 = table1[s1575]; const SWord8 s1577 = (SWord8) (s1524 >> 24); const SWord32 s1578 = table1[s1577]; const SWord8 s1579 = (SWord8) (s1540 >> 16); const SWord32 s1580 = table2[s1579]; const SWord32 s1581 = s1578 ^ s1580; const SWord8 s1582 = (SWord8) (s1556 >> 8); const SWord32 s1583 = table3[s1582]; const SWord32 s1584 = s1581 ^ s1583; const SWord8 s1585 = (SWord8) s1509; const SWord32 s1586 = table4[s1585]; const SWord32 s1587 = s1584 ^ s1586; const SWord32 s1588 = s1523 ^ s1573; const SWord32 s1589 = s1587 ^ s1588; const SWord8 s1590 = (SWord8) (s1589 >> 16); const SWord32 s1591 = table2[s1590]; const SWord32 s1592 = s1576 ^ s1591; const SWord8 s1593 = (SWord8) (s1540 >> 24); const SWord32 s1594 = table1[s1593]; const SWord8 s1595 = (SWord8) (s1556 >> 16); const SWord32 s1596 = table2[s1595]; const SWord32 s1597 = s1594 ^ s1596; const SWord8 s1598 = (SWord8) (s1509 >> 8); const SWord32 s1599 = table3[s1598]; const SWord32 s1600 = s1597 ^ s1599; const SWord8 s1601 = (SWord8) s1524; const SWord32 s1602 = table4[s1601]; const SWord32 s1603 = s1600 ^ s1602; const SWord32 s1604 = s1539 ^ s1588; const SWord32 s1605 = s1603 ^ s1604; const SWord8 s1606 = (SWord8) (s1605 >> 8); const SWord32 s1607 = table3[s1606]; const SWord32 s1608 = s1592 ^ s1607; const SWord8 s1609 = (SWord8) (s1556 >> 24); const SWord32 s1610 = table1[s1609]; const SWord8 s1611 = (SWord8) (s1509 >> 16); const SWord32 s1612 = table2[s1611]; const SWord32 s1613 = s1610 ^ s1612; const SWord8 s1614 = (SWord8) (s1524 >> 8); const SWord32 s1615 = table3[s1614]; const SWord32 s1616 = s1613 ^ s1615; const SWord8 s1617 = (SWord8) s1540; const SWord32 s1618 = table4[s1617]; const SWord32 s1619 = s1616 ^ s1618; const SWord32 s1620 = s1555 ^ s1604; const SWord32 s1621 = s1619 ^ s1620; const SWord8 s1622 = (SWord8) s1621; const SWord32 s1623 = table4[s1622]; const SWord32 s1624 = s1608 ^ s1623; const SWord32 s1625 = (s1620 << 8) | (s1620 >> 24); const SWord8 s1626 = (SWord8) (s1625 >> 24); const SWord8 s1627 = table0[s1626]; const SWord8 s1628 = 32 ^ s1627; const SWord8 s1629 = (SWord8) (s1625 >> 16); const SWord8 s1630 = table0[s1629]; const SWord16 s1631 = (((SWord16) s1628) << 8) | ((SWord16) s1630); const SWord8 s1632 = (SWord8) (s1625 >> 8); const SWord8 s1633 = table0[s1632]; const SWord8 s1634 = (SWord8) s1625; const SWord8 s1635 = table0[s1634]; const SWord16 s1636 = (((SWord16) s1633) << 8) | ((SWord16) s1635); const SWord32 s1637 = (((SWord32) s1631) << 16) | ((SWord32) s1636); const SWord32 s1638 = s1573 ^ s1637; const SWord32 s1639 = s1624 ^ s1638; const SWord8 s1640 = (SWord8) (s1639 >> 24); const SWord32 s1641 = table1[s1640]; const SWord8 s1642 = (SWord8) (s1589 >> 24); const SWord32 s1643 = table1[s1642]; const SWord8 s1644 = (SWord8) (s1605 >> 16); const SWord32 s1645 = table2[s1644]; const SWord32 s1646 = s1643 ^ s1645; const SWord8 s1647 = (SWord8) (s1621 >> 8); const SWord32 s1648 = table3[s1647]; const SWord32 s1649 = s1646 ^ s1648; const SWord8 s1650 = (SWord8) s1574; const SWord32 s1651 = table4[s1650]; const SWord32 s1652 = s1649 ^ s1651; const SWord32 s1653 = s1588 ^ s1638; const SWord32 s1654 = s1652 ^ s1653; const SWord8 s1655 = (SWord8) (s1654 >> 16); const SWord32 s1656 = table2[s1655]; const SWord32 s1657 = s1641 ^ s1656; const SWord8 s1658 = (SWord8) (s1605 >> 24); const SWord32 s1659 = table1[s1658]; const SWord8 s1660 = (SWord8) (s1621 >> 16); const SWord32 s1661 = table2[s1660]; const SWord32 s1662 = s1659 ^ s1661; const SWord8 s1663 = (SWord8) (s1574 >> 8); const SWord32 s1664 = table3[s1663]; const SWord32 s1665 = s1662 ^ s1664; const SWord8 s1666 = (SWord8) s1589; const SWord32 s1667 = table4[s1666]; const SWord32 s1668 = s1665 ^ s1667; const SWord32 s1669 = s1604 ^ s1653; const SWord32 s1670 = s1668 ^ s1669; const SWord8 s1671 = (SWord8) (s1670 >> 8); const SWord32 s1672 = table3[s1671]; const SWord32 s1673 = s1657 ^ s1672; const SWord8 s1674 = (SWord8) (s1621 >> 24); const SWord32 s1675 = table1[s1674]; const SWord8 s1676 = (SWord8) (s1574 >> 16); const SWord32 s1677 = table2[s1676]; const SWord32 s1678 = s1675 ^ s1677; const SWord8 s1679 = (SWord8) (s1589 >> 8); const SWord32 s1680 = table3[s1679]; const SWord32 s1681 = s1678 ^ s1680; const SWord8 s1682 = (SWord8) s1605; const SWord32 s1683 = table4[s1682]; const SWord32 s1684 = s1681 ^ s1683; const SWord32 s1685 = s1620 ^ s1669; const SWord32 s1686 = s1684 ^ s1685; const SWord8 s1687 = (SWord8) s1686; const SWord32 s1688 = table4[s1687]; const SWord32 s1689 = s1673 ^ s1688; const SWord32 s1690 = (s1685 << 8) | (s1685 >> 24); const SWord8 s1691 = (SWord8) (s1690 >> 24); const SWord8 s1692 = table0[s1691]; const SWord8 s1693 = 64 ^ s1692; const SWord8 s1694 = (SWord8) (s1690 >> 16); const SWord8 s1695 = table0[s1694]; const SWord16 s1696 = (((SWord16) s1693) << 8) | ((SWord16) s1695); const SWord8 s1697 = (SWord8) (s1690 >> 8); const SWord8 s1698 = table0[s1697]; const SWord8 s1699 = (SWord8) s1690; const SWord8 s1700 = table0[s1699]; const SWord16 s1701 = (((SWord16) s1698) << 8) | ((SWord16) s1700); const SWord32 s1702 = (((SWord32) s1696) << 16) | ((SWord32) s1701); const SWord32 s1703 = s1638 ^ s1702; const SWord32 s1704 = s1689 ^ s1703; const SWord8 s1705 = (SWord8) (s1704 >> 24); const SWord32 s1706 = table1[s1705]; const SWord8 s1707 = (SWord8) (s1654 >> 24); const SWord32 s1708 = table1[s1707]; const SWord8 s1709 = (SWord8) (s1670 >> 16); const SWord32 s1710 = table2[s1709]; const SWord32 s1711 = s1708 ^ s1710; const SWord8 s1712 = (SWord8) (s1686 >> 8); const SWord32 s1713 = table3[s1712]; const SWord32 s1714 = s1711 ^ s1713; const SWord8 s1715 = (SWord8) s1639; const SWord32 s1716 = table4[s1715]; const SWord32 s1717 = s1714 ^ s1716; const SWord32 s1718 = s1653 ^ s1703; const SWord32 s1719 = s1717 ^ s1718; const SWord8 s1720 = (SWord8) (s1719 >> 16); const SWord32 s1721 = table2[s1720]; const SWord32 s1722 = s1706 ^ s1721; const SWord8 s1723 = (SWord8) (s1670 >> 24); const SWord32 s1724 = table1[s1723]; const SWord8 s1725 = (SWord8) (s1686 >> 16); const SWord32 s1726 = table2[s1725]; const SWord32 s1727 = s1724 ^ s1726; const SWord8 s1728 = (SWord8) (s1639 >> 8); const SWord32 s1729 = table3[s1728]; const SWord32 s1730 = s1727 ^ s1729; const SWord8 s1731 = (SWord8) s1654; const SWord32 s1732 = table4[s1731]; const SWord32 s1733 = s1730 ^ s1732; const SWord32 s1734 = s1669 ^ s1718; const SWord32 s1735 = s1733 ^ s1734; const SWord8 s1736 = (SWord8) (s1735 >> 8); const SWord32 s1737 = table3[s1736]; const SWord32 s1738 = s1722 ^ s1737; const SWord8 s1739 = (SWord8) (s1686 >> 24); const SWord32 s1740 = table1[s1739]; const SWord8 s1741 = (SWord8) (s1639 >> 16); const SWord32 s1742 = table2[s1741]; const SWord32 s1743 = s1740 ^ s1742; const SWord8 s1744 = (SWord8) (s1654 >> 8); const SWord32 s1745 = table3[s1744]; const SWord32 s1746 = s1743 ^ s1745; const SWord8 s1747 = (SWord8) s1670; const SWord32 s1748 = table4[s1747]; const SWord32 s1749 = s1746 ^ s1748; const SWord32 s1750 = s1685 ^ s1734; const SWord32 s1751 = s1749 ^ s1750; const SWord8 s1752 = (SWord8) s1751; const SWord32 s1753 = table4[s1752]; const SWord32 s1754 = s1738 ^ s1753; const SWord32 s1755 = (s1750 << 8) | (s1750 >> 24); const SWord8 s1756 = (SWord8) (s1755 >> 24); const SWord8 s1757 = table0[s1756]; const SWord8 s1758 = 128 ^ s1757; const SWord8 s1759 = (SWord8) (s1755 >> 16); const SWord8 s1760 = table0[s1759]; const SWord16 s1761 = (((SWord16) s1758) << 8) | ((SWord16) s1760); const SWord8 s1762 = (SWord8) (s1755 >> 8); const SWord8 s1763 = table0[s1762]; const SWord8 s1764 = (SWord8) s1755; const SWord8 s1765 = table0[s1764]; const SWord16 s1766 = (((SWord16) s1763) << 8) | ((SWord16) s1765); const SWord32 s1767 = (((SWord32) s1761) << 16) | ((SWord32) s1766); const SWord32 s1768 = s1703 ^ s1767; const SWord32 s1769 = s1754 ^ s1768; const SWord8 s1770 = (SWord8) (s1769 >> 24); const SWord32 s1771 = table1[s1770]; const SWord8 s1772 = (SWord8) (s1719 >> 24); const SWord32 s1773 = table1[s1772]; const SWord8 s1774 = (SWord8) (s1735 >> 16); const SWord32 s1775 = table2[s1774]; const SWord32 s1776 = s1773 ^ s1775; const SWord8 s1777 = (SWord8) (s1751 >> 8); const SWord32 s1778 = table3[s1777]; const SWord32 s1779 = s1776 ^ s1778; const SWord8 s1780 = (SWord8) s1704; const SWord32 s1781 = table4[s1780]; const SWord32 s1782 = s1779 ^ s1781; const SWord32 s1783 = s1718 ^ s1768; const SWord32 s1784 = s1782 ^ s1783; const SWord8 s1785 = (SWord8) (s1784 >> 16); const SWord32 s1786 = table2[s1785]; const SWord32 s1787 = s1771 ^ s1786; const SWord8 s1788 = (SWord8) (s1735 >> 24); const SWord32 s1789 = table1[s1788]; const SWord8 s1790 = (SWord8) (s1751 >> 16); const SWord32 s1791 = table2[s1790]; const SWord32 s1792 = s1789 ^ s1791; const SWord8 s1793 = (SWord8) (s1704 >> 8); const SWord32 s1794 = table3[s1793]; const SWord32 s1795 = s1792 ^ s1794; const SWord8 s1796 = (SWord8) s1719; const SWord32 s1797 = table4[s1796]; const SWord32 s1798 = s1795 ^ s1797; const SWord32 s1799 = s1734 ^ s1783; const SWord32 s1800 = s1798 ^ s1799; const SWord8 s1801 = (SWord8) (s1800 >> 8); const SWord32 s1802 = table3[s1801]; const SWord32 s1803 = s1787 ^ s1802; const SWord8 s1804 = (SWord8) (s1751 >> 24); const SWord32 s1805 = table1[s1804]; const SWord8 s1806 = (SWord8) (s1704 >> 16); const SWord32 s1807 = table2[s1806]; const SWord32 s1808 = s1805 ^ s1807; const SWord8 s1809 = (SWord8) (s1719 >> 8); const SWord32 s1810 = table3[s1809]; const SWord32 s1811 = s1808 ^ s1810; const SWord8 s1812 = (SWord8) s1735; const SWord32 s1813 = table4[s1812]; const SWord32 s1814 = s1811 ^ s1813; const SWord32 s1815 = s1750 ^ s1799; const SWord32 s1816 = s1814 ^ s1815; const SWord8 s1817 = (SWord8) s1816; const SWord32 s1818 = table4[s1817]; const SWord32 s1819 = s1803 ^ s1818; const SWord32 s1820 = (s1815 << 8) | (s1815 >> 24); const SWord8 s1821 = (SWord8) (s1820 >> 24); const SWord8 s1822 = table0[s1821]; const SWord8 s1823 = 27 ^ s1822; const SWord8 s1824 = (SWord8) (s1820 >> 16); const SWord8 s1825 = table0[s1824]; const SWord16 s1826 = (((SWord16) s1823) << 8) | ((SWord16) s1825); const SWord8 s1827 = (SWord8) (s1820 >> 8); const SWord8 s1828 = table0[s1827]; const SWord8 s1829 = (SWord8) s1820; const SWord8 s1830 = table0[s1829]; const SWord16 s1831 = (((SWord16) s1828) << 8) | ((SWord16) s1830); const SWord32 s1832 = (((SWord32) s1826) << 16) | ((SWord32) s1831); const SWord32 s1833 = s1768 ^ s1832; const SWord32 s1834 = s1819 ^ s1833; const SWord8 s1835 = (SWord8) (s1834 >> 24); const SWord8 s1836 = table0[s1835]; const SWord8 s1837 = (SWord8) (s1784 >> 24); const SWord32 s1838 = table1[s1837]; const SWord8 s1839 = (SWord8) (s1800 >> 16); const SWord32 s1840 = table2[s1839]; const SWord32 s1841 = s1838 ^ s1840; const SWord8 s1842 = (SWord8) (s1816 >> 8); const SWord32 s1843 = table3[s1842]; const SWord32 s1844 = s1841 ^ s1843; const SWord8 s1845 = (SWord8) s1769; const SWord32 s1846 = table4[s1845]; const SWord32 s1847 = s1844 ^ s1846; const SWord32 s1848 = s1783 ^ s1833; const SWord32 s1849 = s1847 ^ s1848; const SWord8 s1850 = (SWord8) (s1849 >> 16); const SWord8 s1851 = table0[s1850]; const SWord16 s1852 = (((SWord16) s1836) << 8) | ((SWord16) s1851); const SWord8 s1853 = (SWord8) (s1800 >> 24); const SWord32 s1854 = table1[s1853]; const SWord8 s1855 = (SWord8) (s1816 >> 16); const SWord32 s1856 = table2[s1855]; const SWord32 s1857 = s1854 ^ s1856; const SWord8 s1858 = (SWord8) (s1769 >> 8); const SWord32 s1859 = table3[s1858]; const SWord32 s1860 = s1857 ^ s1859; const SWord8 s1861 = (SWord8) s1784; const SWord32 s1862 = table4[s1861]; const SWord32 s1863 = s1860 ^ s1862; const SWord32 s1864 = s1799 ^ s1848; const SWord32 s1865 = s1863 ^ s1864; const SWord8 s1866 = (SWord8) (s1865 >> 8); const SWord8 s1867 = table0[s1866]; const SWord8 s1868 = (SWord8) (s1816 >> 24); const SWord32 s1869 = table1[s1868]; const SWord8 s1870 = (SWord8) (s1769 >> 16); const SWord32 s1871 = table2[s1870]; const SWord32 s1872 = s1869 ^ s1871; const SWord8 s1873 = (SWord8) (s1784 >> 8); const SWord32 s1874 = table3[s1873]; const SWord32 s1875 = s1872 ^ s1874; const SWord8 s1876 = (SWord8) s1800; const SWord32 s1877 = table4[s1876]; const SWord32 s1878 = s1875 ^ s1877; const SWord32 s1879 = s1815 ^ s1864; const SWord32 s1880 = s1878 ^ s1879; const SWord8 s1881 = (SWord8) s1880; const SWord8 s1882 = table0[s1881]; const SWord16 s1883 = (((SWord16) s1867) << 8) | ((SWord16) s1882); const SWord32 s1884 = (((SWord32) s1852) << 16) | ((SWord32) s1883); const SWord32 s1885 = (s1879 << 8) | (s1879 >> 24); const SWord8 s1886 = (SWord8) (s1885 >> 24); const SWord8 s1887 = table0[s1886]; const SWord8 s1888 = 54 ^ s1887; const SWord8 s1889 = (SWord8) (s1885 >> 16); const SWord8 s1890 = table0[s1889]; const SWord16 s1891 = (((SWord16) s1888) << 8) | ((SWord16) s1890); const SWord8 s1892 = (SWord8) (s1885 >> 8); const SWord8 s1893 = table0[s1892]; const SWord8 s1894 = (SWord8) s1885; const SWord8 s1895 = table0[s1894]; const SWord16 s1896 = (((SWord16) s1893) << 8) | ((SWord16) s1895); const SWord32 s1897 = (((SWord32) s1891) << 16) | ((SWord32) s1896); const SWord32 s1898 = s1833 ^ s1897; const SWord32 s1899 = s1884 ^ s1898; const SWord8 s1900 = (SWord8) (s1849 >> 24); const SWord8 s1901 = table0[s1900]; const SWord8 s1902 = (SWord8) (s1865 >> 16); const SWord8 s1903 = table0[s1902]; const SWord16 s1904 = (((SWord16) s1901) << 8) | ((SWord16) s1903); const SWord8 s1905 = (SWord8) (s1880 >> 8); const SWord8 s1906 = table0[s1905]; const SWord8 s1907 = (SWord8) s1834; const SWord8 s1908 = table0[s1907]; const SWord16 s1909 = (((SWord16) s1906) << 8) | ((SWord16) s1908); const SWord32 s1910 = (((SWord32) s1904) << 16) | ((SWord32) s1909); const SWord32 s1911 = s1848 ^ s1898; const SWord32 s1912 = s1910 ^ s1911; const SWord8 s1913 = (SWord8) (s1865 >> 24); const SWord8 s1914 = table0[s1913]; const SWord8 s1915 = (SWord8) (s1880 >> 16); const SWord8 s1916 = table0[s1915]; const SWord16 s1917 = (((SWord16) s1914) << 8) | ((SWord16) s1916); const SWord8 s1918 = (SWord8) (s1834 >> 8); const SWord8 s1919 = table0[s1918]; const SWord8 s1920 = (SWord8) s1849; const SWord8 s1921 = table0[s1920]; const SWord16 s1922 = (((SWord16) s1919) << 8) | ((SWord16) s1921); const SWord32 s1923 = (((SWord32) s1917) << 16) | ((SWord32) s1922); const SWord32 s1924 = s1864 ^ s1911; const SWord32 s1925 = s1923 ^ s1924; const SWord8 s1926 = (SWord8) (s1880 >> 24); const SWord8 s1927 = table0[s1926]; const SWord8 s1928 = (SWord8) (s1834 >> 16); const SWord8 s1929 = table0[s1928]; const SWord16 s1930 = (((SWord16) s1927) << 8) | ((SWord16) s1929); const SWord8 s1931 = (SWord8) (s1849 >> 8); const SWord8 s1932 = table0[s1931]; const SWord8 s1933 = (SWord8) s1865; const SWord8 s1934 = table0[s1933]; const SWord16 s1935 = (((SWord16) s1932) << 8) | ((SWord16) s1934); const SWord32 s1936 = (((SWord32) s1930) << 16) | ((SWord32) s1935); const SWord32 s1937 = s1879 ^ s1924; const SWord32 s1938 = s1936 ^ s1937; ct[0] = s1899; ct[1] = s1912; ct[2] = s1925; ct[3] = s1938; } == END: "aes128Enc.c" ==================