Уважаемые форумчане.
Как всем уже наверное известно, прошивки, поставляемые для mpx220 в каком-то странном зашифрованном формате, что и является камнем преткновения при создании прошивы для mpx220 с WinMobile2005.
Перед началом перепрошивки телефона, Motorola Mobile Upgrade Wizard переконвертирует прошивку в нормальный вид, о чем свидетельствует строка: Converting Upgraded Firmware... Казалось бы, что для расшифровки потребуется дизассемблировать всю программу, но НЕТ!!!
Программа использует COM-компоненты, которые хранятся в отдельных dll-файлах, и которые можно использовать в своей программе.
При беглом взгляде я понял, что для переконвертации прошивки используется файл DownloadCmp.dll, который реализует класс: DlAlgorithm Class.
Вот что я выдрал из этого файла:
HKCR
{
DownloadCmp.DlAlgorithm.1 = s 'DlAlgorithm Class'
{
CLSID = s '{3E4D2B26-0103-412C-92E7-34B1D2FA5CFB}'
}
DownloadCmp.DlAlgorithm = s 'DlAlgorithm Class'
{
CLSID = s '{3E4D2B26-0103-412C-92E7-34B1D2FA5CFB}'
CurVer = s 'DownloadCmp.DlAlgorithm.1'
}
NoRemove CLSID
{
ForceRemove {3E4D2B26-0103-412C-92E7-34B1D2FA5CFB} = s 'DlAlgorithm Class'
{
ProgID = s 'DownloadCmp.DlAlgorithm.1'
VersionIndependentProgID = s 'DownloadCmp.DlAlgorithm'
ForceRemove 'Programmable'
InprocServer32 = s '%MODULE%'
{
val ThreadingModel = s 'Apartment'
}
'TypeLib' = s '{497735A4-505A-4FDC-A9DD-E58D7038CAAC}'
}
}
}
Какой-то из интерфейсов содержит метод PreConvertFile.
Вообщем ничего необычного, простой COM-компонент, скомпилированный в Visual C++.
Я не очень силен в COM-технологии, поэтому обращаюсь к вам, форумчане. Может быть есть тут эксперт по COM, который вытащит названия интерфейсов, методов и свойств (а еще лучше и передаваемые параметры) из данного COM-компонента.
После этого можно будет написать свой конвертер прошивок и тд.
Может есть какой нибудь хороший отладчик-дизассемблер для COM-компонентов?
Как всем уже наверное известно, прошивки, поставляемые для mpx220 в каком-то странном зашифрованном формате, что и является камнем преткновения при создании прошивы для mpx220 с WinMobile2005.
Перед началом перепрошивки телефона, Motorola Mobile Upgrade Wizard переконвертирует прошивку в нормальный вид, о чем свидетельствует строка: Converting Upgraded Firmware... Казалось бы, что для расшифровки потребуется дизассемблировать всю программу, но НЕТ!!!
Программа использует COM-компоненты, которые хранятся в отдельных dll-файлах, и которые можно использовать в своей программе.
При беглом взгляде я понял, что для переконвертации прошивки используется файл DownloadCmp.dll, который реализует класс: DlAlgorithm Class.
Вот что я выдрал из этого файла:
HKCR
{
DownloadCmp.DlAlgorithm.1 = s 'DlAlgorithm Class'
{
CLSID = s '{3E4D2B26-0103-412C-92E7-34B1D2FA5CFB}'
}
DownloadCmp.DlAlgorithm = s 'DlAlgorithm Class'
{
CLSID = s '{3E4D2B26-0103-412C-92E7-34B1D2FA5CFB}'
CurVer = s 'DownloadCmp.DlAlgorithm.1'
}
NoRemove CLSID
{
ForceRemove {3E4D2B26-0103-412C-92E7-34B1D2FA5CFB} = s 'DlAlgorithm Class'
{
ProgID = s 'DownloadCmp.DlAlgorithm.1'
VersionIndependentProgID = s 'DownloadCmp.DlAlgorithm'
ForceRemove 'Programmable'
InprocServer32 = s '%MODULE%'
{
val ThreadingModel = s 'Apartment'
}
'TypeLib' = s '{497735A4-505A-4FDC-A9DD-E58D7038CAAC}'
}
}
}
Какой-то из интерфейсов содержит метод PreConvertFile.
Вообщем ничего необычного, простой COM-компонент, скомпилированный в Visual C++.
Я не очень силен в COM-технологии, поэтому обращаюсь к вам, форумчане. Может быть есть тут эксперт по COM, который вытащит названия интерфейсов, методов и свойств (а еще лучше и передаваемые параметры) из данного COM-компонента.
После этого можно будет написать свой конвертер прошивок и тд.
Может есть какой нибудь хороший отладчик-дизассемблер для COM-компонентов?