CURSOR is probably the slowest way to do things in SQL and should be used only when there is a real need...
You case seems to me better handled with a simple UPDATE statement...
Something like this would do the trick:
UPDATE CNDCPMAIN
SET
CNDCPMAIN.STATUS = 'D',
CNDCPMAIN.HOSTSOURCE = 'INC7892752_30OCT2018'
FROM PRD
WHERE
PRD.STATUS <> 'D' AND
PRD.PKEY NOT IN (SELECT PRDGROUPREL.PRDPKEY FROM PRDGROUPREL WHERE PRDGROUPREL.STATUS <> 'D') AND
CNDCPMAIN.MERGEDKEY LIKE '%' + PRD.PKEY + '%' AND
CNDCPMAIN.CNDCPMETAPKEY = '00100000007GU6IB' AND
CNDCPMAIN.SALESORG = 'MS01' AND
CNDCPMAIN.STATUS <> 'D'