Очевидно, это указатель на функцию:
typedef int (* foobar) (int a, unsigned char *b, unsigned int c);
Но что этот делает?
typedef int (foobar *) (int a, unsigned char *b, unsigned int c);
Выдает ошибку компилятора, по крайней мере, в GCC 4.3:
foo.cpp:1: error: expected `)' before '*' token