More interesting stuff from that binary. The resource section contains 3 zip-files among other stuff. Two of these contain DPR_Table.txt files per device-id(?) and some binary blobs I don't recognise. Names might indicate NV entries?
bjorn@miraculix:/tmp$ unzip -l resources/101.bin Archive: resources/101.bin Length Date Time Name --------- ---------- ----- ---- 0 2020-05-04 16:27 TuneCode/ 0 2020-05-04 16:27 TuneCode/tunecode_876D/ 3752 2019-12-24 15:18 TuneCode/tunecode_876D/DPR_Table.txt --------- ------- 3752 3 files bjorn@miraculix:/tmp$ unzip -l resources/102.bin Archive: resources/102.bin Length Date Time Name --------- ---------- ----- ---- 0 2021-03-08 17:14 TuneCode/ 0 2021-03-08 17:15 TuneCode/tunecode_093D/ 7462 2021-03-15 13:40 TuneCode/tunecode_093D/DPR_Table.txt 0 2021-03-08 17:16 TuneCode/tunecode_098C/ 7462 2021-03-15 13:40 TuneCode/tunecode_098C/DPR_Table.txt 0 2020-05-29 19:02 TuneCode/tunecode_09C6/ 36067 2020-04-22 16:11 TuneCode/tunecode_09C6/00029653 510 2020-04-30 10:40 TuneCode/tunecode_09C6/00029654 7403 2020-05-29 18:57 TuneCode/tunecode_09C6/DPR_Table.txt 0 2020-10-07 14:00 TuneCode/tunecode_0A3F/ 40314 2020-10-12 18:38 TuneCode/tunecode_0A3F/00029653 510 2020-10-12 18:40 TuneCode/tunecode_0A3F/00029654 7443 2020-10-07 13:35 TuneCode/tunecode_0A3F/DPR_Table.txt 0 2021-02-04 10:22 TuneCode/tunecode_0A5B/ 48254 2021-01-25 12:41 TuneCode/tunecode_0A5B/00029653 510 2021-01-25 12:36 TuneCode/tunecode_0A5B/00029654 7208 2021-02-26 15:46 TuneCode/tunecode_0A5B/DPR_Table.txt 0 2021-03-08 14:41 TuneCode/tunecode_0A69/ 39619 2021-03-08 14:37 TuneCode/tunecode_0A69/00029653 510 2021-03-08 14:37 TuneCode/tunecode_0A69/00029654 0 2021-03-08 14:42 TuneCode/tunecode_0A6A/ 39619 2021-03-08 14:37 TuneCode/tunecode_0A6A/00029653 510 2021-03-08 14:37 TuneCode/tunecode_0A6A/00029654 --------- ------- 243401 23 files The DPR_table files contains lines with different system+band conbinations followed by 8 numbers which looks like they could be dB or dBm values. Sample data: LTE B39 24 24 24 24 24 24 24 24 LTE B40 24 24 24 24 24 24 23 23 LTE B41 27 27 27 24 27 27 22.5 22.5 LTE B42 24 24 24 24 24 22.5 24 22.5 LTE B48 22 22 22 22 21 20.5 22 20.5 LTE B66 24 24 24 24 24 24 18 18 SA N1 24 24 24 24 24 24 24 24 SA N2 24 24 24 24 24 18 24 18 SA N3 24 24 24 24 24 24 24 24 SA N5 24 24 24 24 24 24 19.5 19.5 SA N7 24 24 24 24 21.5 15 24 15 SA N8 24 24 24 24 24 24 24 24 SA N12 24 24 24 24 24 24 19 19 SA N20 24 24 24 24 24 24 24 24 SA N28 24 24 24 24 24 24 24 24 SA N38 24 24 24 24 24 14 24 14 SA N41 27 27 27 27 21.5 15 27 15 SA N66 24 24 24 24 24 18 24 18 SA N77 27 27 27 27 27 18.5 27 18.5 SA N78 27 27 27 27 27 20.5 27 20.5 SA N79 27 27 27 27 27 16 27 16 ENDC B5 N2 24.5 24.5 24.5 24.5 24.5 24.5 18.5 18.5 NSA N2 B5 24 24 24 24 24 18 24 18 ENDC B12 N2 24.5 24.5 24.5 24.5 24.5 24.5 19.5 19.5 NSA N2 B12 24 24 24 24 24 18 24 18 ENDC B13 N2 24.5 24.5 24.5 24.5 24.5 24.5 21.5 21.5 NSA N2 B13 24 24 24 24 24 18 24 18 ENDC B7 N5 24 24 24 24 21.5 14 24 14 NSA N5 B7 24 24 24 24 24 24 18.5 18.5 ENDC B48 N5 22 22 22 22 21 19.5 22 19.5 NSA N5 B48 24 24 24 24 24 24 18.5 18.5 The last zip contains rtsar_config_fcc and rtsar_config_row data for a number of other(?) devices. Some of them in 2dB and 0dB variants. Interestingly enough, this seems to be made for another Foxconn customer and not intended for Lenovo devices at all. Doesn't look like there are similar resources for any Lenovo modem/PC. Talk about mess. bjorn@miraculix:/tmp$ unzip -l resources/106.bin Archive: resources/106.bin Length Date Time Name --------- ---------- ----- ---- 0 2020-12-30 10:51 MipiTable_HP_TALISKER/ 0 2020-12-30 10:55 MipiTable_HP_TALISKER/86F9/ 0 2020-12-30 10:55 MipiTable_HP_TALISKER/86F9/2dB/ 1612 2020-10-07 09:07 MipiTable_HP_TALISKER/86F9/2dB/rtsar_config_fcc 32 2020-10-07 09:08 MipiTable_HP_TALISKER/86F9/2dB/rtsar_config_fcc_md5.txt 1584 2020-10-07 09:07 MipiTable_HP_TALISKER/86F9/2dB/rtsar_config_row 32 2020-10-07 09:08 MipiTable_HP_TALISKER/86F9/2dB/rtsar_config_row_md5.txt 0 2020-12-30 10:55 MipiTable_HP_TALISKER/86FA/ 0 2020-12-30 10:55 MipiTable_HP_TALISKER/86FA/2dB/ 1612 2020-10-07 09:07 MipiTable_HP_TALISKER/86FA/2dB/rtsar_config_fcc 32 2020-10-07 09:08 MipiTable_HP_TALISKER/86FA/2dB/rtsar_config_fcc_md5.txt 1584 2020-10-07 09:07 MipiTable_HP_TALISKER/86FA/2dB/rtsar_config_row 32 2020-10-07 09:08 MipiTable_HP_TALISKER/86FA/2dB/rtsar_config_row_md5.txt 0 2020-12-30 10:55 MipiTable_HP_TALISKER/8709/ 0 2020-12-30 10:55 MipiTable_HP_TALISKER/8709/2dB/ 1612 2020-10-07 09:07 MipiTable_HP_TALISKER/8709/2dB/rtsar_config_fcc 32 2020-10-07 09:08 MipiTable_HP_TALISKER/8709/2dB/rtsar_config_fcc_md5.txt 1584 2020-10-07 09:07 MipiTable_HP_TALISKER/8709/2dB/rtsar_config_row 32 2020-10-07 09:08 MipiTable_HP_TALISKER/8709/2dB/rtsar_config_row_md5.txt 0 2020-12-30 10:56 MipiTable_HP_TALISKER/870A/ 0 2020-12-30 10:56 MipiTable_HP_TALISKER/870A/2dB/ 1612 2020-10-07 09:07 MipiTable_HP_TALISKER/870A/2dB/rtsar_config_fcc 32 2020-10-07 09:08 MipiTable_HP_TALISKER/870A/2dB/rtsar_config_fcc_md5.txt 1584 2020-10-07 09:07 MipiTable_HP_TALISKER/870A/2dB/rtsar_config_row 32 2020-10-07 09:08 MipiTable_HP_TALISKER/870A/2dB/rtsar_config_row_md5.txt 0 2020-12-30 10:57 MipiTable_HP_TALISKER/8716/ 0 2020-12-30 10:57 MipiTable_HP_TALISKER/8716/0db/ 1708 2020-10-09 12:14 MipiTable_HP_TALISKER/8716/0db/rtsar_config_fcc 32 2020-10-09 12:14 MipiTable_HP_TALISKER/8716/0db/rtsar_config_fcc_md5.txt 1680 2020-10-09 12:14 MipiTable_HP_TALISKER/8716/0db/rtsar_config_row 32 2020-10-09 12:14 MipiTable_HP_TALISKER/8716/0db/rtsar_config_row_md5.txt 0 2020-12-30 10:57 MipiTable_HP_TALISKER/8716/2db/ 1708 2020-10-09 12:15 MipiTable_HP_TALISKER/8716/2db/rtsar_config_fcc 32 2020-10-09 12:15 MipiTable_HP_TALISKER/8716/2db/rtsar_config_fcc_md5.txt 1680 2020-10-09 12:15 MipiTable_HP_TALISKER/8716/2db/rtsar_config_row 32 2020-10-09 12:15 MipiTable_HP_TALISKER/8716/2db/rtsar_config_row_md5.txt 125 2020-12-10 13:34 MipiTable_HP_TALISKER/8716/MIPI_Table.txt 0 2020-12-30 13:51 MipiTable_HP_TALISKER/8720/ 0 2020-12-31 15:23 MipiTable_HP_TALISKER/8720/2db/ 1660 2020-06-11 09:51 MipiTable_HP_TALISKER/8720/2db/rtsar_config_fcc 32 2020-06-11 09:51 MipiTable_HP_TALISKER/8720/2db/rtsar_config_fcc_md5.txt 1632 2020-06-11 09:51 MipiTable_HP_TALISKER/8720/2db/rtsar_config_row 32 2020-06-11 09:51 MipiTable_HP_TALISKER/8720/2db/rtsar_config_row_md5.txt 0 2020-12-30 10:56 MipiTable_HP_TALISKER/87BA/ 0 2020-12-30 10:56 MipiTable_HP_TALISKER/87BA/2dB/ 1612 2020-10-07 09:07 MipiTable_HP_TALISKER/87BA/2dB/rtsar_config_fcc 32 2020-10-07 09:08 MipiTable_HP_TALISKER/87BA/2dB/rtsar_config_fcc_md5.txt 1584 2020-10-07 09:07 MipiTable_HP_TALISKER/87BA/2dB/rtsar_config_row 32 2020-10-07 09:08 MipiTable_HP_TALISKER/87BA/2dB/rtsar_config_row_md5.txt 0 2020-12-30 13:52 MipiTable_HP_TALISKER/87CD/ 0 2020-12-30 13:53 MipiTable_HP_TALISKER/87CD/0db/ 1636 2020-10-21 09:19 MipiTable_HP_TALISKER/87CD/0db/rtsar_config_fcc 32 2020-10-21 09:20 MipiTable_HP_TALISKER/87CD/0db/rtsar_config_fcc_md5.txt 1608 2020-10-21 09:19 MipiTable_HP_TALISKER/87CD/0db/rtsar_config_row 32 2020-10-21 09:20 MipiTable_HP_TALISKER/87CD/0db/rtsar_config_row_md5.txt 0 2020-12-30 13:53 MipiTable_HP_TALISKER/87CD/2db/ 1636 2020-10-21 09:20 MipiTable_HP_TALISKER/87CD/2db/rtsar_config_fcc 32 2020-10-21 09:20 MipiTable_HP_TALISKER/87CD/2db/rtsar_config_fcc_md5.txt 1608 2020-10-21 09:20 MipiTable_HP_TALISKER/87CD/2db/rtsar_config_row 32 2020-10-21 09:20 MipiTable_HP_TALISKER/87CD/2db/rtsar_config_row_md5.txt 0 2020-12-30 13:54 MipiTable_HP_TALISKER/880D/ 0 2020-12-31 15:25 MipiTable_HP_TALISKER/880D/2dB/ 2024 2020-09-18 17:03 MipiTable_HP_TALISKER/880D/2dB/rtsar_config_fcc 32 2020-09-18 17:03 MipiTable_HP_TALISKER/880D/2dB/rtsar_config_fcc_md5.txt 1992 2020-09-18 17:03 MipiTable_HP_TALISKER/880D/2dB/rtsar_config_row 32 2020-09-18 17:03 MipiTable_HP_TALISKER/880D/2dB/rtsar_config_row_md5.txt 0 2020-12-30 10:54 MipiTable_HP_TALISKER/8846/ 0 2020-12-30 10:54 MipiTable_HP_TALISKER/8846/0dB/ 15282 2020-09-29 17:51 MipiTable_HP_TALISKER/8846/0dB/Cadillac 15 inch_Talisker_rtsar_0dB_20200917-LTE_WCDMA_0929.xlsx 2024 2020-09-29 13:48 MipiTable_HP_TALISKER/8846/0dB/rtsar_config_fcc 32 2020-09-29 13:49 MipiTable_HP_TALISKER/8846/0dB/rtsar_config_fcc_md5.txt 1992 2020-09-29 13:48 MipiTable_HP_TALISKER/8846/0dB/rtsar_config_row 32 2020-09-29 13:49 MipiTable_HP_TALISKER/8846/0dB/rtsar_config_row_md5.txt 0 2020-12-31 15:26 MipiTable_HP_TALISKER/8846/2dB/ 2024 2020-09-29 17:39 MipiTable_HP_TALISKER/8846/2dB/rtsar_config_fcc 32 2020-09-29 17:39 MipiTable_HP_TALISKER/8846/2dB/rtsar_config_fcc_md5.txt 1992 2020-09-29 17:39 MipiTable_HP_TALISKER/8846/2dB/rtsar_config_row 32 2020-09-29 17:40 MipiTable_HP_TALISKER/8846/2dB/rtsar_config_row_md5.txt 0 2020-12-30 10:58 MipiTable_HP_TALISKER/8847/ 0 2020-12-30 10:58 MipiTable_HP_TALISKER/8847/0db/ 1660 2020-10-16 14:43 MipiTable_HP_TALISKER/8847/0db/rtsar_config_fcc 32 2020-10-16 14:43 MipiTable_HP_TALISKER/8847/0db/rtsar_config_fcc_md5.txt 1632 2020-10-16 14:43 MipiTable_HP_TALISKER/8847/0db/rtsar_config_row 32 2020-10-16 14:43 MipiTable_HP_TALISKER/8847/0db/rtsar_config_row_md5.txt 0 2020-12-30 10:58 MipiTable_HP_TALISKER/8847/2db/ 1660 2020-10-16 14:44 MipiTable_HP_TALISKER/8847/2db/rtsar_config_fcc 32 2020-10-16 14:44 MipiTable_HP_TALISKER/8847/2db/rtsar_config_fcc_md5.txt 1632 2020-10-16 14:44 MipiTable_HP_TALISKER/8847/2db/rtsar_config_row 32 2020-10-16 14:44 MipiTable_HP_TALISKER/8847/2db/rtsar_config_row_md5.txt 0 2020-12-30 10:57 MipiTable_HP_TALISKER/8890/ 0 2020-12-30 10:58 MipiTable_HP_TALISKER/8890/0db/ 1708 2020-10-09 12:14 MipiTable_HP_TALISKER/8890/0db/rtsar_config_fcc 32 2020-10-09 12:14 MipiTable_HP_TALISKER/8890/0db/rtsar_config_fcc_md5.txt 1680 2020-10-09 12:14 MipiTable_HP_TALISKER/8890/0db/rtsar_config_row 32 2020-10-09 12:14 MipiTable_HP_TALISKER/8890/0db/rtsar_config_row_md5.txt 0 2020-12-30 10:57 MipiTable_HP_TALISKER/8890/2db/ 1708 2020-10-09 12:15 MipiTable_HP_TALISKER/8890/2db/rtsar_config_fcc 32 2020-10-09 12:15 MipiTable_HP_TALISKER/8890/2db/rtsar_config_fcc_md5.txt 1680 2020-10-09 12:15 MipiTable_HP_TALISKER/8890/2db/rtsar_config_row 32 2020-10-09 12:15 MipiTable_HP_TALISKER/8890/2db/rtsar_config_row_md5.txt 125 2020-12-10 13:34 MipiTable_HP_TALISKER/8890/MIPI_Table.txt --------- ------- 74564 101 files I don't think that the Excel file necessarily was meant to be included regardless of HP or Lenovo. Very eductional. It contains these 3 sheets: 1. Header: "By default this workbook contains an MCC list worksheet. Any FCC supported MCC's should be added in that sheet. Note that, only one of the workbooks (rtsar_fcc/ rtsar_row) should contain the mcc_list." version 12 reserve_power_margin_db_10 0 primary_max_power_dbm10 265 num_dsi 2 2. tech_records: DSI 1 2 Tech Antenna Band Tx power at SAR design target (dBm10) Tx power at SAR design target (dBm10) LTE 0 120 230 230 LTE B1 @ ANT#5 LTE 2 120 271 271 LTE B1 @ ANT#8 LTE 0 121 284 284 LTE B2 @ ANT#5 LTE 2 121 218 218 LTE B2 @ ANT#8 LTE 0 122 230 230 LTE B3 @ ANT#5 LTE 2 122 288 288 LTE B3 @ ANT#8 LTE 0 123 281 281 LTE B4 @ ANT#5 LTE 2 123 280 280 LTE B4 @ ANT#8 sportan w/o data LTE 0 124 275 275 LTE B5 @ ANT#5 LTE 0 126 296 296 LTE B7 @ ANT#5 LTE 2 126 193 193 LTE B7 @ ANT#8 LTE 0 127 235 235 LTE B8 @ ANT#5 LTE 0 131 290 290 LTE B12 @ ANT#5 LTE 0 132 295 295 LTE B13 @ ANT#5 LTE 0 133 296 296 LTE B14 @ ANT#5 LTE 0 136 290 290 LTE B17 @ ANT#5 LTE 0 137 280 280 LTE B18 @ ANT#5 LTE 0 138 280 280 LTE B19 @ ANT#5 LTE 0 139 235 235 LTE B20 @ ANT#5 LTE 0 144 284 284 LTE B25 @ ANT#5 LTE 2 144 280 280 LTE B25 @ ANT#8 add new LTE 0 145 275 275 LTE B26 @ ANT#5 LTE 0 147 235 235 LTE B28 @ ANT#5 LTE 0 149 299 299 LTE B30 @ ANT#5 LTE 2 149 280 280 LTE B30 @ ANT#8 add new LTE 0 153 230 230 LTE B34 @ ANT#5 LTE 2 153 280 280 LTE B34 @ ANT#8 add new LTE 0 157 296 296 LTE B38 @ ANT#5 LTE 2 157 280 280 LTE B38 @ ANT#8 add new LTE 0 158 280 280 LTE B39 @ ANT#5 LTE 2 158 280 280 LTE B39 @ ANT#8 add new LTE 0 159 230 230 LTE B40 @ ANT#5 LTE 2 159 280 280 LTE B40 @ ANT#8 add new LTE 0 160 296 296 LTE B41 @ ANT#5 LTE 2 160 280 280 LTE B41 @ ANT#8 add new LTE 2 161 233 233 LTE B42 @ ANT#8 LTE 0 168 281 281 LTE B66 @ ANT#5 LTE 2 168 203 203 LTE B66 @ ANT#8 LTE 2 178 216 216 LTE B48 @ ANT#8 LTE 0 179 280 280 LTE B71 @ ANT#5 not support NR5G 0 182 280 280 NR B1 @ ANT#5 sportan w/o data NR5G 2 182 274 274 NR B1 @ ANT#8 NR5G 0 183 276 276 NR B2 @ ANT#5 NR5G 2 183 207 207 NR B2 @ ANT#8 NR5G 0 184 280 280 NR B3 @ ANT#5 sportan w/o data NR5G 2 184 322 322 NR B3 @ ANT#8 NR5G 0 185 276 276 NR B5 @ ANT#5 NR5G 0 186 280 280 NR B7 @ ANT#5 sportan w/o data NR5G 2 186 187 187 NR B7 @ ANT#8 NR5G 0 187 230 230 NR B8 @ ANT#5 NR5G 0 188 230 230 NR B20 @ ANT#5 NR5G 0 189 230 230 NR B28 @ ANT#5 NR5G 0 190 280 280 NR B38 @ ANT#5 NR5G 2 190 208 208 NR B38 @ ANT#8 NR5G 0 191 280 280 NR B41 @ ANT#5 add new NR5G 1 191 280 280 add new NR5G 2 191 208 208 NR B41 @ ANT#8 NR5G 3 191 280 280 add new NR5G 0 194 281 281 NR B66 @ ANT#5 NR5G 2 194 225 225 NR B66 @ ANT#8 NR5G 0 196 280 280 NR B71 @ ANT#5 not support NR5G 2 200 230 230 NR B77 @ ANT#8 NR5G 2 201 230 230 NR B78 @ ANT#8 NR5G 2 202 280 280 NR B79 @ ANT#8 NR5G 0 212 280 280 mmW n260 not support NR5G 0 213 280 280 mmW n260 not support NR5G 0 215 290 290 NR N12 @ ANT#5 NR5G 0 216 280 280 NR N25 @ ANT#5 add new NR5G 2 216 280 280 NR N25 @ ANT#8 add new NR5G 0 219 280 280 NR N40 @ ANT#5 add new NR5G 2 219 280 280 NR N40 @ ANT#8 add new NR5G 2 222 280 280 NR N48 @ ANT#8 add new WCDMA 0 80 235 235 WCDMA B1 @ ANT#5 WCDMA 0 81 284 284 WCDMA B2 @ ANT#5 WCDMA 0 82 280 280 WCDMA B3 @ ANT#5 WCDMA 0 83 281 281 WCDMA B4 @ ANT#5 WCDMA 0 84 276 276 WCDMA B5 @ ANT#5 WCDMA 0 85 280 280 WCDMA B6 @ ANT#5 WCDMA 0 87 235 235 WCDMA B8 @ ANT#5 WCDMA 0 88 280 280 WCDMA B9 @ ANT#5 WCDMA 0 91 280 280 WCDMA B19 @ ANT#5 3. mcc_list: FCC supported MCC 310 311 312 313 314 316 1 466 Well, not that useful info I guess. But this is part of the explanation why the Windows binaries are so bloated. Because they are. The above is only looking at resources. But there is no reason to believe the code is any different. You could probably strip away 99% of it, and still keep all the *intended* functionality. I don't think it's intentional, but all the mess helps obfuscating the real code in there. So the first step when trying to analyze this is to identify which parts are actually executed. No need to wade through the rest. Bjørn