- sscanf(argv[1],"%x",&uid);
- sscanf(argv[2],"%x",&nt);
- sscanf(argv[3],"%x",&nr0_enc);
- sscanf(argv[4],"%x",&ar0_enc);
- sscanf(argv[5],"%x",&nr1_enc);
- sscanf(argv[6],"%x",&ar1_enc);
+ bool moebius_attack = (argc == 8);
+
+ sscanf(argv[1],"%x",&data.cuid);
+ sscanf(argv[2],"%x",&data.nonce);
+ data.nonce2 = data.nonce;
+ sscanf(argv[3],"%x",&data.nr);
+ sscanf(argv[4],"%x",&data.ar);
+ if (moebius_attack) {
+ sscanf(argv[5],"%x",&data.nonce2);
+ sscanf(argv[6],"%x",&data.nr2);
+ sscanf(argv[7],"%x",&data.ar2);
+ } else {
+ sscanf(argv[5],"%x",&data.nr2);
+ sscanf(argv[6],"%x",&data.ar2);
+ }