-
- if (fmtLen==36){
- FC = ((ByteStream[3] & 0x7F)<<7) | (ByteStream[4]>>1);
- Card = ((ByteStream[4]&1)<<19) | (ByteStream[5]<<11) | (ByteStream[6]<<3) | (ByteStream[7]>>5);
- PrintAndLog("G-Prox-II Found: FmtLen %d, FC %u, Card %u", (int)fmtLen, FC, Card);
- } else if(fmtLen==26){
- FC = ((ByteStream[3] & 0x7F)<<1) | (ByteStream[4]>>7);
- Card = ((ByteStream[4]&0x7F)<<9) | (ByteStream[5]<<1) | (ByteStream[6]>>7);
- PrintAndLog("G-Prox-II Found: FmtLen %d, FC %u, Card %u", (int)fmtLen, FC, Card);
- } else {
- PrintAndLog("Unknown G-Prox-II Fmt Found: FmtLen %d",(int)fmtLen);
- PrintAndLog("Decoded Raw: %s", sprint_hex(ByteStream, 8));
+ bool unknown = FALSE;
+ switch(fmtLen) {
+ case 36:
+ FC = ((ByteStream[3] & 0x7F)<<7) | (ByteStream[4]>>1);
+ Card = ((ByteStream[4]&1)<<19) | (ByteStream[5]<<11) | (ByteStream[6]<<3) | (ByteStream[7]>>5);
+ break;
+ case 26:
+ FC = ((ByteStream[3] & 0x7F)<<1) | (ByteStream[4]>>7);
+ Card = ((ByteStream[4]&0x7F)<<9) | (ByteStream[5]<<1) | (ByteStream[6]>>7);
+ break;
+ default :
+ unknown = TRUE;
+ break;