mono_escape_uri_string (const gchar * string)
{
  unsigned int c.0;
  unsigned int D.4948;
  _Bool D.4949;
  unsigned int D.4950;
  _Bool D.4951;
  _Bool D.4952;
  unsigned int D.4954;
  unsigned int D.4956;
  char D.4957;
  int D.4958;
  _Bool D.4962;
  _Bool D.4963;
  _Bool D.4964;
  _Bool D.4966;
  _Bool D.4967;
  _Bool D.4968;
  _Bool D.4970;
  _Bool D.4971;
  int D.4972;
  char D.4973;
  int D.4974;
  int D.4975;
  char D.4976;
  int D.4977;
  char D.4978;
  unsigned char D.4979;
  gchar * D.4980;
  struct GString * str;
  char * ret;
  int c;

  str = monoeg_g_string_new ("");
  goto <D.4941>;
  <D.4940>:
  c.0 = (unsigned int) c;
  D.4948 = c.0 + 4294967199;
  D.4949 = D.4948 <= 25;
  c.0 = (unsigned int) c;
  D.4950 = c.0 + 4294967231;
  D.4951 = D.4950 <= 25;
  D.4952 = D.4949 | D.4951;
  if (D.4952 != 0) goto <D.4944>; else goto <D.4953>;
  <D.4953>:
  c.0 = (unsigned int) c;
  D.4954 = c.0 + 4294967251;
  if (D.4954 <= 13) goto <D.4944>; else goto <D.4955>;
  <D.4955>:
  c.0 = (unsigned int) c;
  D.4956 = c.0 + 4294967258;
  if (D.4956 <= 4) goto <D.4944>; else goto <D.4945>;
  <D.4944>:
  D.4957 = (char) c;
  D.4958 = (int) D.4957;
  monoeg_g_string_append_c (str, D.4958);
  goto <D.4946>;
  <D.4945>:
  D.4962 = c == 33;
  D.4963 = c == 61;
  D.4964 = D.4962 | D.4963;
  if (D.4964 != 0) goto <D.4959>; else goto <D.4965>;
  <D.4965>:
  D.4966 = c == 63;
  D.4967 = c == 95;
  D.4968 = D.4966 | D.4967;
  if (D.4968 != 0) goto <D.4959>; else goto <D.4969>;
  <D.4969>:
  D.4967 = c == 95;
  D.4970 = c == 126;
  D.4971 = D.4967 | D.4970;
  if (D.4971 != 0) goto <D.4959>; else goto <D.4960>;
  <D.4959>:
  D.4957 = (char) c;
  D.4958 = (int) D.4957;
  monoeg_g_string_append_c (str, D.4958);
  goto <D.4961>;
  <D.4960>:
  monoeg_g_string_append_c (str, 37);
  D.4972 = c >> 4;
  D.4973 = "0123456789ABCDEF"[D.4972];
  D.4974 = (int) D.4973;
  monoeg_g_string_append_c (str, D.4974);
  D.4975 = c & 15;
  D.4976 = "0123456789ABCDEF"[D.4975];
  D.4977 = (int) D.4976;
  monoeg_g_string_append_c (str, D.4977);
  <D.4961>:
  <D.4946>:
  string = string + 1;
  <D.4941>:
  D.4978 = *string;
  D.4979 = (unsigned char) D.4978;
  c = (int) D.4979;
  if (c != 0) goto <D.4940>; else goto <D.4942>;
  <D.4942>:
  ret = str->str;
  monoeg_g_string_free (str, 0);
  D.4980 = ret;
  return D.4980;
}


