Try this:
DECLARE @bin VARBINARY(MAX)=0x4A6974656E6472612053616E6B686C61;
SELECT CAST(@bin AS VARCHAR(MAX))
The result Jitendra Sankhla looks pretty - uhm - fitting... :-)
Some background:
VARBINARY is nothing more than a BLOB. In a SELECT it is presented as HEX-string, but this is not the way it is stored actually.
You can store literally everything in a VARBINARYcolumn: pictures, strings, numbers, XML, complex structures... The only - but very important! - point is, that you must know, how to read and interpret this.
Why did I cast this to VARCHAR? Your numbers looked like ASCII-codes for plain letters. VARCHAR is a datatype representing 1-byte-extended-ASCII strings (the bound collation defines - like a codepage - the intpretation and sorting of non-plain characters).
Assuming, that you pass in byte after byte, the conversion to a normal string leads to letters according to the byte's values.
It is obvious, that you won't convert any binary to a string.
Many values between 0 and 255 are not printable. Other sources of pain can be differing collation/codepage settings. Furthermore, if you pass in a string with an encoding like utf-8 you will get some erronous characters, because utf-8 will encode some characters with more than one byte.
But in your simple example it works.
VARBINARY(MAX)data type behaves in terms of storing and retriving. As far as I know, The binary representation of a value might be change from version to version of SQL Server. This link will help you converting binary and varbinary Data