CAST_LONG
const CAST_LONG CAST_S_table1[256] = {
const CAST_LONG CAST_S_table2[256] = {
const CAST_LONG CAST_S_table3[256] = {
const CAST_LONG CAST_S_table4[256] = {
const CAST_LONG CAST_S_table5[256] = {
const CAST_LONG CAST_S_table6[256] = {
const CAST_LONG CAST_S_table7[256] = {
CAST_encrypt(CAST_LONG *data, const CAST_KEY *key)
CAST_LONG l, r, t;
const CAST_LONG *k;
CAST_decrypt(CAST_LONG *data, const CAST_KEY *key)
const CAST_LONG CAST_S_table0[256] = {
CAST_LONG l, r, t;
const CAST_LONG *k;
CAST_LONG x[16];
CAST_LONG z[16];
CAST_LONG k[32];
CAST_LONG X[4], Z[4];
CAST_LONG l, *K;
CAST_LONG tin0, tin1;
CAST_LONG tout0, tout1, xor0, xor1;
CAST_LONG tin[2];
CAST_LONG v0, v1, t;
CAST_LONG ti[2];
CAST_encrypt((CAST_LONG *)ti, schedule);
CAST_encrypt((CAST_LONG *)ti, schedule);
CAST_LONG l, d[2];
CAST_LONG v0, v1, t;
CAST_LONG ti[2];
CAST_encrypt((CAST_LONG *)ti, schedule);
CAST_LONG data[32];
void CAST_encrypt(CAST_LONG *data, const CAST_KEY *key);
void CAST_decrypt(CAST_LONG *data, const CAST_KEY *key);
L^= (((((*(CAST_LONG *)((unsigned char *) \
*(CAST_LONG *)((unsigned char *) \
*(CAST_LONG *)((unsigned char *) \
*(CAST_LONG *)((unsigned char *) \
CAST_LONG u,v,w; \
t= *(CAST_LONG *)((unsigned char *)CAST_S_table0+u); \
t=(t OP2 *(CAST_LONG *)((unsigned char *)CAST_S_table1+v))&0xffffffffL;\
t=(t OP3 *(CAST_LONG *)((unsigned char *)CAST_S_table2+u)&0xffffffffL);\
t=(t OP1 *(CAST_LONG *)((unsigned char *)CAST_S_table3+v)&0xffffffffL);\
CAST_LONG a,b,c,d; \
extern const CAST_LONG CAST_S_table0[256];
extern const CAST_LONG CAST_S_table1[256];
extern const CAST_LONG CAST_S_table2[256];
extern const CAST_LONG CAST_S_table3[256];
extern const CAST_LONG CAST_S_table4[256];
extern const CAST_LONG CAST_S_table5[256];
extern const CAST_LONG CAST_S_table6[256];
extern const CAST_LONG CAST_S_table7[256];