У меня есть Lenovo Thinkpad, на который можно установить только определенное оборудование. Если подключено оборудование, которого нет в белом списке, B IOS скажет вам удалить его и перезапустить. В противном случае машина не загрузится. Теперь я хочу установить неавторизованный модуль Wi-Fi + Bluetooth, поэтому мне нужно избавиться от этого белого списка.
Я следовал этому руководству до того момента, пока автор использование программного обеспечения IDA pro, которое я не хочу покупать только для этого одного взлома.
Вместо этого я немного поработал с извлеченным телом в Ghidra, и мне удалось найти шестигранник код для строки «Обнаружена неавторизованная сетевая карта ...» и выяснить, что строка является частью некоторой сущности с именем «DAT_000104d0», и единственное место, на которое ссылается эта сущность, - это следующая функция:
void FUN_00010ec4(undefined8 param_1,undefined *param_2,undefined8 param_3,undefined8 param_4)
{
if (param_2 == (undefined *)0x0) {
param_2 = &DAT_00010ec0;
}
(**(code **)(DAT_00011040 + 0x170))(0x200,param_1,param_2,param_3,&DAT_000104d0,param_4);
return;
}
Эта функция, в свою очередь, вызывается отсюда:
longlong entry(undefined8 param_1,longlong param_2)
{
longlong lVar1;
undefined8 local_res18;
undefined8 *local_res20;
undefined local_18 [24];
FUN_00010f08(param_1,param_2);
lVar1 = (**(code **)(DAT_00011040 + 0x140))(&LAB_00010480,0,&DAT_00011058);
if (-1 < lVar1) {
lVar1 = (**(code **)(DAT_00011040 + 0x140))(&LAB_00010410,0,&DAT_00011070);
if (-1 < lVar1) {
lVar1 = (**(code **)(DAT_00011040 + 0x140))(&DAT_000103f0,0,&DAT_00011078);
if (-1 < lVar1) {
lVar1 = (**(code **)(DAT_00011040 + 0x140))(&LAB_00010460,0);
if (-1 < lVar1) {
DAT_00011060 = *local_res20;
local_res18 = 0;
_DAT_00011068 = &LAB_00010b54;
(**(code **)(DAT_00011040 + 0x80))(&local_res18,&DAT_000103d0,0,&DAT_00011068);
DAT_00011028 = local_res18;
FUN_00010ec4(0x10,FUN_00010cf8,0,local_18);
lVar1 = 0;
}
}
}
}
return lVar1;
}
Есть идеи, как мне действовать, надеюсь, не все испортить?
Я загрузил полную версию b ios img и извлеченное тело здесь , если кто хочет их посмотреть.