1static unsigned short 2foo (unsigned char *x, int y) 3{ 4 unsigned short r = 0; 5 int i; 6 for (i = 0; i < y; i++) 7 r += x[i]; 8 return r; 9} 10 11int baz (int, unsigned short); 12 13void 14bar (unsigned char *x, unsigned char *y) 15{ 16 int i; 17 unsigned short key = foo (x, 0x10000); 18 baz (0, 0); 19 for (i = 0; i < 0x80000; i++) 20 y[i] = x[baz (i, key)]; 21} 22