diff --git a/examples/mul/generate_cprogs.sh b/examples/mul/generate_cprogs.sh
index a409850107eeb41a920965e489f0f3a490de39ea..4ee93dfb94072a776a4a11852c163c43a1e59033 100755
--- a/examples/mul/generate_cprogs.sh
+++ b/examples/mul/generate_cprogs.sh
@@ -39,7 +39,7 @@ create_prog()
 
 	gcc -w $progname.c -o $progname.orig.exe
 	
-	$PEASOUP_HOME/tools/ps_analyze.sh --step ilr=off --step p1transform=off $progname.orig.exe $progname.protected.exe
+	$PEASOUP_HOME/tools/ps_analyze.sh $progname.orig.exe $progname.protected.exe --step ilr=off --step p1transform=off --step concolic=off
 }
 
 for type1 in $types
diff --git a/examples/mul/mul.ctmpl b/examples/mul/mul.ctmpl
index f73522e05934f81f3b0223d5ed491e6491b91e5a..d7f63ea7801a5c56d1c9ff8e979de550fb24bdae 100644
--- a/examples/mul/mul.ctmpl
+++ b/examples/mul/mul.ctmpl
@@ -1,3 +1,6 @@
+#define INT_MAX 2147483647
+#define UINT_MAX 4294967295
+
 #TYPE1# #FUNCTION_NAME#(#TYPE1# x, #TYPE2# y)
 {
   #TYPE1# result = x * y;
@@ -7,15 +10,94 @@
 
 main()
 {
-  #TYPE1# x = 127;
-  #TYPE2# y = 0xFFFFFFFF;
+  #TYPE1# x;
+  #TYPE2# y;
+
+  x = 0x7f;
+  y = 0x7f;
+  #FUNCTION_NAME#(x, y);
+
+  x = 0x7f;
+  y = 0xff;
+  #FUNCTION_NAME#(x, y);
+
+  x = 0x7f;
+  y = 0x7fff;
+  #FUNCTION_NAME#(x, y);
+
+  x = 0x7f;
+  y = 0xffff;
+  #FUNCTION_NAME#(x, y);
+
+  x = 0x7f;
+  y = 0x7fffffff;
+  #FUNCTION_NAME#(x, y);
+
+  x = 0x7f;
+  y = 0xffffffff;
+  #FUNCTION_NAME#(x, y);
+
+  x = 0x7fff;
+  y = 0x7f;
+  #FUNCTION_NAME#(x, y);
+
+  x = 0x7fff;
+  y = 0xff;
+  #FUNCTION_NAME#(x, y);
+
+  x = 0x7fff;
+  y = 0x7fff;
+  #FUNCTION_NAME#(x, y);
+
+  x = 0x7fff;
+  y = 0xffff;
+  #FUNCTION_NAME#(x, y);
+
+  x = 0x7fff;
+  y = 0x7fffffff;
+  #FUNCTION_NAME#(x, y);
+
+  x = 0x7fff;
+  y = 0xffffffff;
+  #FUNCTION_NAME#(x, y);
+
+  x = 0x7fffffff;
+  y = 0x7f;
+  #FUNCTION_NAME#(x, y);
+
+  x = 0x7fffffff;
+  y = 0xff;
+  #FUNCTION_NAME#(x, y);
+
+  x = 0x7fffffff;
+  y = 0x7fff;
+  #FUNCTION_NAME#(x, y);
+
+  x = 0x7fffffff;
+  y = 0xffff;
+  #FUNCTION_NAME#(x, y);
+
+  x = 0x7fffffff;
+  y = 0x7fffffff;
+  #FUNCTION_NAME#(x, y);
+
+  x = 0x7fffffff;
+  y = 0xffffffff;
+  #FUNCTION_NAME#(x, y);
+
+  x = 0xff;
+  y = 0xff;
+  #FUNCTION_NAME#(x, y);
+
+  x = 0xffff;
+  y = 0xffff;
   #FUNCTION_NAME#(x, y);
 
-  x = 0x0FFFFFFF;
-  y = 0x0FFFFFFF;
+  x = 0xffffffff;
+  y = 0xffffffff;
   #FUNCTION_NAME#(x, y);
 
-  x = 0x0000007F;
-  y = 0x0000007F;
+  x = 255;
+  y = 255;
   #FUNCTION_NAME#(x, y);
 }