COMPANY_NAME=`cat file.txt | grep \"company_name\" | cut -d \'=\' -f 2`
outputs something like this
\"Abc Inc\";
Assuming the quotation marks are actually part of the output, couldn't you just use the -o switch to return everything between the quote marks?
COMPANY_NAME="\"ABC Inc\";" | echo $COMPANY_NAME | grep -o "\"*.*\""