+ printf("+----+--------+---+-----+---------------+\n");
+ printf("|diff|{nr} |ks3|ks3^5|parity |\n");
+ printf("+----+--------+---+-----+---------------+\n");
+ for ( i = 0; i < 8; i++) {
+ nr_diff = nr | i << 5;
+ printf("| %02x |%08x| %01x | %01x |", i << 5, nr_diff, ks3x[i], ks3x[i]^5);
+
+ for (pos = 0; pos < 7; pos++) printf("%01x,", par[i][pos]);
+ printf("%01x|\n", par[i][7]);
+ }
+ printf("+----+--------+---+-----+---------------+\n");
+
+ clock_t t1 = clock();
+
+ state = lfsr_common_prefix(nr, rr, ks3x, par);
+ lfsr_rollback_word(state, uid ^ nt, 0);
+ crypto1_get_lfsr(state, key);
+ crypto1_destroy(state);
+
+ t1 = clock() - t1;
+ if ( t1 > 0 ) PrintAndLog("Time in nonce2key: %.0f ticks \n", (float)t1);
+ return 0;