Page 119 - Hướng Dẫn Cách Phòng Thủ Và Khắc Phục Sự Cố Máy Tính
P. 119

int lp_len, lp_raw_len, Ipa, Ipb, Ipra, Iprb, pass_len,
           pass_lena, pass_lenb;
           char  Ipdata  [8192];//  hope  enough  room.  anyway who
      cares...
           lp_raw_len=strlen(login)+strlen(password)+2;

           lp_len=lp_raw_len+55;
           lpra=lp_raw_len/256;// divide by 356 to calculate
           higher value
           lprb=lp_raw_len%256;// remainder will be lower value
           lpa=lp_len/256;//divide by 256 to calculate higher

           value
           lpb=lp_len%256; // remainder will be lower value
           pass_len=strlen (password)+l;
           pass_lena=pass_len/256;
           pass_lenb=pass_len%256;
           memset (Ipdata, 0, sizeof (Ipdata));
           lpdata[2]=lpa; Ipdata [3]=lpb;

           lpdata[4]=0xff; Ipdata [5]=0x53;
           lpdata[6]=0x4d; Ipdata [7]=0x42;
           lpdata[8]=0x73; Ipdata [13]=0xl8;
           lpdata[14]=0x01; Ipdata [15]=0x20;
           lpdata[31]=0x28; Ipdata [36]=0x0a;
           lpdata[37]=0xff; Ipdata [41]=0x04;

           lpdata[42]=0xll; Ipdata [43]=0x02;
           lpdata[51]=pass_lenb; Ipdata [52]=pass_lena;
           lpdata[57]=lprb; Ipdata [58]=lpra;
           memcpy (&lpdata [59], password, strlen (password);
           memcpy (&lpdata [60+strlen(password)], login,
           strlen (login));


       120
   114   115   116   117   118   119   120   121   122   123   124