#include <bits/stdc++.h>
using namespace std;
const long long N = 510;
long long ansneed, ansnoneed, n, m, s;
long long read() {
  long long x = 0, f = 1;
  char c = getchar();
  while (c < '0' || c > '9') {
    if (c == '-') f = -1;
    c = getchar();
  }
  while (c >= '0' && c <= '9') {
    x = (x << 1) + (x << 3) + (c ^ 48);
    c = getchar();
  }
  return x * f;
}
long long solutions(long long x, long long y) {
  return (n - x + 1) * (m - y + 1);
}
signed main() {
  n = read(), m = read(), s = read();
  if (!(s & 1) && s != 1) puts("0"), exit(0);
  for (long long a = 1; a <= n; a += 2) {
    for (long long b = 1; b <= m; b += 2) {
      long long res = s - a * b;
      if (res < 0) break;
      if (!res)
        ansneed += (a + 1) / 2 * (b + 1) / 2 * solutions(a, b),
            ansnoneed += solutions(a, b);
      else {
        res >>= 1;
        for (long long k = 1; k < a; k += 2) {
          if (!(res % k) && (b + 2 * res / k) <= m)
            ansneed += solutions(a, b + 2 * res / k);
        }
      }
    }
  }
  cout << ansneed * 2 - ansnoneed << endl;
  return 0;
}
