def METHOD_NAME(self, key: str, value: str, data: str, value_type: Optional[str] = None):
    config = self.config
    logging.info(f"Adding Key: [{key}] with Value: [{value}] and "
                 f"Data: [{data}] in {config.Name} registry")
    winedbg = WineDbg(config)
    args = "add '%s' /v '%s' /d '%s' /f" % (key, value, data)
    if value_type is not None:
        args = "add '%s' /v '%s' /t %s /d '%s' /f" % (
            key, value, value_type, data
        )
    # avoid conflicts when executing async
    winedbg.wait_for_process("reg.exe")
    res = self.launch(args, communicate=True, minimal=True, action_name="add")
    logging.info(res.data)