It's trying to call it like:
StartCreditSequence(0, "");
AmanoJyaku can correct me if I'm interpreting the bytecode incorrectly, being further along the get a degree in computer science in order to make better modding tools for a 15-year-old game career track, but I believe the number after the function is the number of arguments to call the function with, and then those arguments are taken off the stack. Things are taken off a stack last in, first out, so it takes the integer 0 and then the empty string.
My guess is that at some point in development, the function took two arguments - maybe the string was for the name of a movie file - but they changed how the function behaves sometime after this script was compiled, and never recompiled it.
That seems to be the case. I tested with the following:
int testInt() {
return 1;
}
int TEST_INT = testInt();
And that will cause DeNCS to fail to decompile any script that includes it.
For completion's sake, I also tried it this way:
int testInt() {
return 1;
}
int x;
x = testInt();
Interestingly, this would not even compile.
It seems the tools aren't very fond of variables with global scope, but I'm not sure why it would care whether one was initialized or not.