\r
#include <stdint.h>\r
#include <stdbool.h>\r
-#include "data.h"\r
+#include "crapto1/crapto1.h"\r
+#include "util.h"\r
\r
// defaults\r
// timeout in units. (ms * 106)/10 or us*0.0106\r
extern int mfCGetBlock(uint8_t blockNo, uint8_t *data, uint8_t params);\r
\r
extern int mfTraceInit(uint8_t *tuid, uint8_t *atqa, uint8_t sak, bool wantSaveToEmlFile);\r
-extern int mfTraceDecode(uint8_t *data_src, int len, bool wantSaveToEmlFile);\r
+extern int mfTraceDecode(uint8_t *data_src, int len, uint8_t parity, bool wantSaveToEmlFile);\r
\r
extern int isTraceCardEmpty(void);\r
extern int isBlockEmpty(int blockN);\r
extern int tryDecryptWord(uint32_t nt, uint32_t ar_enc, uint32_t at_enc, uint8_t *data, int len);\r
\r
extern int mfCIdentify();\r
+extern int DetectClassicPrng(void);\r
+extern bool validate_prng_nonce(uint32_t nonce);\r
+extern void mf_crypto1_decrypt(struct Crypto1State *pcs, uint8_t *data, int len, bool isEncrypted);\r
\r
#endif\r