ASCII encoded SHA256
#1
I have somewhat of an interesting case, i have a list of hashes that are produced using 
Code:
ascii(sha256(password))
, this effectively means it is a sha256 hash with all bytes larger than 0x80 are set to 0x3F '?'. I have tried modifying the m01400_*.cl file, but i can't seem to find out how this works exactly. Can someone point me in the right direction?

What methods are used to verify the produced hash? This is probably where i should be inserting some code like:
Code:
if(hash[0] >= 0x80)
  hash[0] = 0x3F;
if(hash[1] >= 0x80)
  hash[1] = 0x3F;
if(hash[2] >= 0x80)
  hash[2] = 0x3F;
if(hash[3] >= 0x80)
  hash[3] = 0x3F;
if(hash[4] >= 0x80)
  hash[4] = 0x3F;
if(hash[5] >= 0x80)
  hash[5] = 0x3F;
if(hash[6] >= 0x80)
  hash[6] = 0x3F;
if(hash[7] >= 0x80)
  hash[7] = 0x3F;
#2
Is the return of sha256(password) in binary? What is ascii()?