func: static void goodG2B() char * data ; data = NULL; CWE126_Buffer_Overread__new_char_memmove_84_goodG2B * goodG2BObject = new CWE126_Buffer_Overread__new_char_memmove_84_goodG2B ( data ) ; CWE126_Buffer_Overread__new_char_memmove_84_goodG2B::CWE126_Buffer_Overread__new_char_memmove_84_goodG2B(char * dataCopy) data = dataCopy; data = new char [ 100 ]; memset ( data , 'A' , 100 - 1 ); data [ 100 - 1 ] = '\0'; delete goodG2BObject CWE126_Buffer_Overread__new_char_memmove_84_goodG2B::~CWE126_Buffer_Overread__new_char_memmove_84_goodG2B() char dest [ 100 ] ; memset ( dest , 'C' , 100 - 1 ); dest [ 100 - 1 ] = '\0'; memmove ( dest , data , strlen ( dest ) * sizeof ( char ) ); dest [ 100 - 1 ] = '\0'; printLine ( dest ); void printLine (const char * line) if ( line != NULL )  printf ( "%s\n" , line ); 