--- chntpw/chntpw.c	2004-08-18 17:42:01.000000000 -0300
+++ chntpw.new/chntpw.c	2005-04-09 18:58:34.000000000 -0300
@@ -511,7 +511,7 @@
 	printf("** LANMAN password IS however set. Will now install new password as NT pass instead.\n");
 	printf("** NOTE: Continue at own risk!\n");
 	ntpw_offs = lmpw_offs;
-	(unsigned int)*(vp+0xa8) = ntpw_offs - 0xcc;
+ 	*((unsigned int*)vp+0xa8) = ntpw_offs - 0xcc;
 	ntpw_len = 16;
 	lmpw_len = 0;
       }
@@ -621,14 +621,14 @@
 	   ntpw_len = 16;
 	   lmpw_len = 16;
 	   ntpw_offs -= 4;
-	   (unsigned int)*(vp+0xa8) = ntpw_offs - 0xcc;
+	   *((unsigned int*)vp+0xa8) = ntpw_offs - 0xcc;
 	   *(vp + 0xa0) = 16;
 	   *(vp + 0xac) = 16;
 	 }
 	 
 	 for (i = 0; i < 16; i++) {
-	   (unsigned char)*(vp+ntpw_offs+i) = despw[i];
-	   if (lmpw_len >= 16) (unsigned char)*(vp+lmpw_offs+i) = newlandes[i];
+	   *(vp+ntpw_offs+i) = (char)despw[i];
+	   if (lmpw_len >= 16) *(vp+lmpw_offs+i) = (char)newlandes[i];
 	 }
        } else {
 	 printf("Unable to set since it is blank.\n");
--- chntpw/ntreg.c	2004-08-18 17:42:02.000000000 -0300
+++ chntpw.new/ntreg.c	2005-04-09 19:07:50.000000000 -0300
@@ -2514,7 +2514,7 @@
   ALLOC(kr,1,sizeof(int)+sizeof(int));
   
   kr->len = sizeof(int);
-  (int)kr->data = dword;
+  kr->data = dword;
 
   r = put_buf2val(hdesc, kr, vofs, path, REG_DWORD);