struct defs

typedefs

global vars

int main();

int main()
{
  local vars

  goto_testt1 = 0;
  goto_tdeg1 = 0;
  si1 = 3000;
  degf1 = 1000;
  degs1 = 900;
  dmax1 = 750;
  tt1 = 200;
  temp_151 = (unsigned int ) si1;
  temp_141 = (temp_151 * 4);
  temp_162 = malloc(temp_141);
  f1 = (int *) temp_162;
  temp_181 = (unsigned int ) si1;
  temp_171 = (temp_181 * 4);
  temp_192 = malloc(temp_171);
  g1 = (int *) temp_192;
  temp_211 = (unsigned int ) si1;
  temp_201 = (temp_211 * 4);
  temp_222 = malloc(temp_201);
  u1 = (int *) temp_222;
  temp_241 = (unsigned int ) si1;
  temp_231 = (temp_241 * 4);
  temp_252 = malloc(temp_231);
  v1 = (int *) temp_252;
  temp_271 = (unsigned int ) si1;
  temp_261 = (temp_271 * 4);
  temp_282 = malloc(temp_261);
  s1 = (int *) temp_282;
  temp_301 = (unsigned int ) si1;
  temp_291 = (temp_301 * 4);
  temp_312 = malloc(temp_291);
  f11 = (int *) temp_312;
  temp_331 = (unsigned int ) si1;
  temp_321 = (temp_331 * 4);
  temp_342 = malloc(temp_321);
  ll1 = (int *) temp_342;
  temp_361 = (unsigned int ) si1;
  temp_351 = (temp_361 * 4);
  temp_372 = malloc(temp_351);
  rl1 = (int *) temp_372;
  temp_391 = (unsigned int ) si1;
  temp_381 = (temp_391 * 4);
  temp_402 = malloc(temp_381);
  templ1 = (int *) temp_402;
  temp_421 = (unsigned int ) si1;
  temp_411 = (temp_421 * 4);
  temp_432 = malloc(temp_411);
  tempr1 = (int *) temp_432;
  temp_441 = (si1 - 1);
  for ( i1 = 0 ; (i2 <= temp_442) ; i3 = (i2 + 1) )
  {
    ll1[i2] = 0;
    g1[i2] = ll1[i2];
    f1[i2] = g1[i2];
    temp_443 = (si1 - 1);
  }
  for ( i5 = 0 ; (i6 < si1) ; i7 = (i6 + 1) )
  {
    f1[i6] = (dmax1 * i6);
    g1[i6] = (si1 - i6);
    temp_452 = (dmax1 * tt1);
    temp_462 = (i6 + 1);
    u1[i6] = (temp_452 / temp_462);
    v1[i6] = (degf1 + i6);
    temp_472 = (i6 * 2);
    f11[i6] = (i6 * temp_472);
    temp_492 = (i6 + 1);
    temp_482 = (temp_492 * degs1);
    ll1[i6] = (i6 - temp_482);
    rl1[i6] = (i6 % tt1);
    temp_502 = (i6 + 1);
    templ1[i6] = (tt1 % temp_502);
    temp_512 = (tt1 + dmax1);
    temp_522 = (degs1 * i6);
    tempr1[i6] = (temp_512 - temp_522);
  }
  for ( i9 = 0 ; (i10 <= degf1) ; i11 = (i10 + 1) )
  {
    u1[i10] = f1[i10];
    v1[i10] = g1[i10];
  }
  m1 = 0;
  n1 = m1;
  for ( i13 = 0 ; (i14 <= degf1) ; i15 = (i14 + 1) )
  {
    temp_532 = u1[i14];
    if ((temp_532 > 0))
    {
      m3 = i14;
    }
    temp_542 = v1[i14];
    if ((temp_542 > 0))
    {
      n3 = i14;
    }
  }
  for ( i17 = 0 ; (i18 <= dmax1) ; i19 = (i18 + 1) )
  {
    temp_552 = (m5 - n5);
    for ( j2 = 0 ; (j3 <= temp_553) ; j4 = (j3 + 1) )
    {
      temp_563 = (i18 + j3);
      temp_583 = (i18 + j3);
      temp_573 = templ1[temp_583];
      temp_603 = f11[j3];
      temp_613 = ll1[i18];
      temp_593 = (temp_603 * temp_613);
      templ1[temp_563] = (temp_573 ^ temp_593);
      temp_623 = (i18 + j3);
      temp_643 = (i18 + j3);
      temp_633 = tempr1[temp_643];
      temp_663 = f11[j3];
      temp_673 = rl1[i18];
      temp_653 = (temp_663 * temp_673);
      tempr1[temp_623] = (temp_633 ^ temp_653);
      temp_554 = (m5 - n5);
    }
  }
  temp_681 = (m5 - n5);
  for ( k1 = temp_681 ; (k2 >= 0) ; k3 = (k2 - 1) )
  {
    temp_692 = (n5 + k2);
    f11[k2] = u1[temp_692];
    temp_702 = (n5 + k2);
    u1[temp_702] = 0;
    temp_722 = (n5 + k2);
    temp_712 = (temp_722 - 1);
    for ( j8 = temp_712 ; (j9 >= k2) ; j10 = (j9 - 1) )
    {
      /** u[j] = (u[j] ^ (f1[k] * v[(j - k)])) **/
      temp_733 = u1[j9];
      temp_753 = f11[k2];
      temp_773 = (j9 - k2);
      temp_763 = v1[temp_773];
      temp_743 = (temp_753 * temp_763);
      u1[j9] = (temp_733 ^ temp_743);
    }
  }
  sum1 = 0;
  temp_781 = (degf1 / 2);
  for ( k5 = 1 ; (k6 <= temp_782) ; k7 = (k6 + 1) )
  {
    temp_812 = (2 * k6);
    temp_802 = (temp_812 + 1);
    temp_792 = f1[temp_802];
    sum3 = (sum2 + temp_792);
    temp_783 = (degf1 / 2);
  }
  for ( k9 = 1 ; (k10 <= degf1) ; k11 = (k10 + 1) )
  {
    /** f[k] = f[(2 * k)] **/
    temp_822 = (2 * k10);
    f1[k10] = f1[temp_822];
  }
  for ( j13 = degf1 ; (j14 >= 0) ; j15 = (j14 - 1) )
  {
    /** (s[j] > 0) **/
    temp_832 = s1[j14];
    if ((temp_832 > 0))
    {
      degs3 = j14;
      goto_tdeg3 = 1;
      if ((goto_tdeg3 == 0))
      {
      }
    }
    if ((goto_tdeg4 == 1))
    {
      break; 
    }
  }
  if ((goto_tdeg5 == 0))
  {
  }
  goto_tdeg6 = 0;
  do 
  {
    goto_testt3 = 0;
    if ((tt2 < degf1))
    {
      v1[tt2] = 1;
      tt3 = (2 * tt2);
      ctr2 = (ctr1 + 1);
      goto_testt4 = (ctr2 < n5);
      if ((goto_testt4 == 0))
      {
      }
    }
  }
  while ( (goto_testt5 == 1) );
  for ( k13 = 0 ; (k14 <= degs5) ; k15 = (k14 + 1) )
  {
    for ( q2 = 0 ; (q3 <= degf1) ; q4 = (q3 + 1) )
    {
      temp_853 = s1[k14];
      temp_843 = (temp_853 == 1);
      if ((temp_843 != 0))
      {
        /** temp_84 = (u[q] == 1) **/
        temp_863 = u1[q3];
        temp_844 = (temp_863 == 1);
      }
      if ((temp_845 != 0))
      {
        /** f[(k + q)] = (f[(k + q)] ^ 1) **/
        temp_873 = (k14 + q3);
        temp_893 = (k14 + q3);
        temp_883 = f1[temp_893];
        f1[temp_873] = (temp_883 ^ 1);
      }
    }
  }
  for ( i21 = 0 ; (i22 < si1) ; i23 = (i22 + 1) )
  {
    temp_902 = "f[%d]=%d ";
    temp_912 = f1[i22];
    printf(temp_902, i22, temp_912);
    temp_922 = "\n";
    printf(temp_922);
    temp_932 = "g[%d]=%d ";
    temp_942 = g1[i22];
    printf(temp_932, i22, temp_942);
    temp_952 = "\n";
    printf(temp_952);
    temp_962 = "u[%d]=%d ";
    temp_972 = u1[i22];
    printf(temp_962, i22, temp_972);
    temp_982 = "\n";
    printf(temp_982);
    temp_992 = "v[%d]=%d ";
    temp_1002 = v1[i22];
    printf(temp_992, i22, temp_1002);
    temp_1012 = "\n";
    printf(temp_1012);
    temp_1022 = "f1[%d]=%d ";
    temp_1032 = f11[i22];
    printf(temp_1022, i22, temp_1032);
    temp_1042 = "\n";
    printf(temp_1042);
    temp_1052 = "ll[%d]=%d ";
    temp_1062 = ll1[i22];
    printf(temp_1052, i22, temp_1062);
    temp_1072 = "\n";
    printf(temp_1072);
    temp_1082 = "rl[%d]=%d ";
    temp_1092 = rl1[i22];
    printf(temp_1082, i22, temp_1092);
    temp_1102 = "\n";
    printf(temp_1102);
    temp_1112 = "templ[%d]=%d ";
    temp_1122 = templ1[i22];
    printf(temp_1112, i22, temp_1122);
    temp_1132 = "\n";
    printf(temp_1132);
    temp_1142 = "tempr[%d]=%d ";
    temp_1152 = tempr1[i22];
    printf(temp_1142, i22, temp_1152);
    temp_1162 = "\n";
    printf(temp_1162);
  }
}