diff --git a/ibm_vpd_utils.cpp b/ibm_vpd_utils.cpp
index edb7a9f..cf3a798 100644
--- a/ibm_vpd_utils.cpp
+++ b/ibm_vpd_utils.cpp
@@ -706,20 +706,7 @@
                          [](const auto& kw) { return !isprint(kw); });
         if (it != kwVal.end())
         {
-            bool printable = true;
-            for (auto itr = it; itr != kwVal.end(); itr++)
-            {
-                if (*itr != 0x00)
-                {
-                    kwString = hexString(kwVal);
-                    printable = false;
-                    break;
-                }
-            }
-            if (printable)
-            {
-                kwString = std::string(kwVal.begin(), it);
-            }
+            kwString = hexString(kwVal);
         }
         else
         {
