It appears to be nearly the identity function.
The code that is executed is not what is in indicators.c. I know because I gutted that function and re-compiled, and there was no effect.
Proof:
Code:
function run() {
  set(PLOTNOW);
  vars R = series(random());
  vars Z = series(ZMA(R, 1000));
  vars Diff = series(abs(Z[0] - R[0]));
  if (Diff[0] > 0.00000001) {
    quit();
  }
  PlotHeight1 = 100;
  plot("Diff", Diff, LINE+NEW, RED);
}