diff --git a/Proxmark3GUI.pro b/Proxmark3GUI.pro index 8fc53e0..872d42e 100644 --- a/Proxmark3GUI.pro +++ b/Proxmark3GUI.pro @@ -50,5 +50,3 @@ VERSION = 0.0.1 QMAKE_TARGET_PRODUCT = "Proxmark3GUI" QMAKE_TARGET_DESCRIPTION = "Proxmark3GUI" QMAKE_TARGET_COMPANY = "wh201906" - -LANGUAGES diff --git a/module/mifare.cpp b/module/mifare.cpp index db70d5a..6a75d04 100644 --- a/module/mifare.cpp +++ b/module/mifare.cpp @@ -68,8 +68,7 @@ void Mifare::nested() void Mifare::hardnested() { - int secs = cardType.sectors; - MF_Attack_hardnestedDialog dialog(cardType.blks[secs - 1] + cardType.blk[secs - 1]); + MF_Attack_hardnestedDialog dialog(cardType.blocks); connect(&dialog, &MF_Attack_hardnestedDialog::sendCMD, util, &Util::execCMD); if(dialog.exec() == QDialog::Accepted) ui->funcTab->setCurrentIndex(1); @@ -421,8 +420,7 @@ void Mifare::data_syncWithDataWidget(bool syncAll, int block) QString tmp = ""; if(syncAll) { - int secs = cardType.sectors; - for(int i = 0; i < cardType.blks[secs - 1] + cardType.blk[secs - 1]; i++) + for(int i = 0; i < cardType.blocks; i++) { tmp += dataList->at(i).mid(0, 2); for(int j = 1; j < 16; j++) @@ -466,9 +464,8 @@ void Mifare::data_syncWithKeyWidget(bool syncAll, int sector, bool isKeyA) void Mifare::data_clearData() { - int secs = cardType.sectors; dataList->clear(); - for(int i = 0; i < cardType.blks[secs - 1] + cardType.blk[secs - 1]; i++) + for(int i = 0; i < cardType.blocks; i++) dataList->append(""); } diff --git a/module/mifare.h b/module/mifare.h index 3057c43..ede29a6 100644 --- a/module/mifare.h +++ b/module/mifare.h @@ -39,6 +39,7 @@ public: { int type; int sectors; + int blocks; int blk[40]; int blks[40]; }; @@ -47,6 +48,7 @@ public: { 0, 5, + 20, {4, 4, 4, 4, 4}, {0, 4, 8, 12, 16} }; @@ -54,6 +56,7 @@ public: { 1, 16, + 64, {4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4}, {0, 4, 8, 12, 16, 20, 24, 28, 32, 36, 40, 44, 48, 52, 56, 60} }; @@ -61,6 +64,7 @@ public: { 2, 32, + 128, {4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4}, {0, 4, 8, 12, 16, 20, 24, 28, 32, 36, 40, 44, 48, 52, 56, 60, 64, 68, 72, 76, 80, 84, 88, 92, 96, 100, 104, 108, 112, 116, 120, 124} }; @@ -68,6 +72,7 @@ public: { 4, 40, + 256, {4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 16, 16, 16, 16, 16, 16, 16, 16}, {0, 4, 8, 12, 16, 20, 24, 28, 32, 36, 40, 44, 48, 52, 56, 60, 64, 68, 72, 76, 80, 84, 88, 92, 96, 100, 104, 108, 112, 116, 120, 124, 128, 144, 160, 176, 192, 208, 224, 240} }; diff --git a/ui/mainwindow.cpp b/ui/mainwindow.cpp index 0a0cb7a..5e93ffa 100644 --- a/ui/mainwindow.cpp +++ b/ui/mainwindow.cpp @@ -266,7 +266,7 @@ void MainWindow::on_MF_Sniff_listButton_clicked() void MainWindow::MF_widgetReset() { int secs = mifare->cardType.sectors; - int blks = mifare->cardType.blks[secs - 1] + mifare->cardType.blk[secs - 1]; + int blks = mifare->cardType.blocks; ui->MF_RW_blockBox->clear(); ui->MF_keyWidget->setRowCount(secs); ui->MF_dataWidget->setRowCount(blks);