Windows Vista OEM Award BIOS Mod Method by Adding SLIC Table with Dynamic Memory Address Windows Vista OEM BIOS Award mod méthode en ajoutant CHRIT table avec mémoire dynamique Adresse
Windows Vista OEM activation crack method requires a SLP 2.0 (System Locked Preinstallation 2.0) compliant BIOS motherboard. Windows Vista OEM activation crack méthode nécessite un SLP 2.0 (système fermé de préinstallation 2.0) compatible BIOS carte mère. New branded OEM computer comes with one, or offers not-so-old motherboard a BIOS free upgrade to the one that supports SLP 2.0 with SLIC table and signed Windows Market (OEM ID and Table ID). Nouvelle marque OEM ordinateur est livré avec un, ou offre pas moins une vieille carte mère BIOS mise à jour gratuite à celui qui soutient SLP 2,0 CHRIT avec table et signé de marché Windows (OEM ID ID et le tableau). If you are using older computer or DIY motherboard, you’re not out of luck though. Si vous utilisez ancien ordinateur ou carte-mère de bricolage, vous n'êtes pas de chance si. Chinese hackers have managed to mod the BIOS to Les pirates chinois ont réussi à mod le BIOS à replace remplacer or ou add in the SLIC ajouter dans le CHRIT (Software Licensing Internal Code) table into the ACPI table. (Software Licence Code Interne) dans le tableau tableau ACPI. However, the replacement of existing ACPI table may cause loss of certain features, while addition of SLIC table may Toutefois, de remplacer une partie du tableau ACPI mai causer la perte de certaines fonctions, alors que plus de CHRIT tableau mai incompatible on computer with different size of memory incompatibles sur ordinateur avec différentes tailles de mémoire , as BIOS is , Comme le BIOS est hard patched with the SLIC’s table physical memory address patchée dur avec la table du CHRIT adresse mémoire physique which restrict the mod BIOS to the machine it’s been modified only. qui restreignent le mod BIOS de la machine il a été modifié.
So, the method to mod BIOS for Ainsi, la méthode de BIOS pour mod Windows Vista Windows Vista OEM support with previously used static SLIC memory address is problematic as the memory address will be changed when the memory size changed, and users need to modify the SLIC address in OEM avec l'appui statique précédemment utilisé CHRIT adresse mémoire pose problème, car l'adresse mémoire sera modifiée lorsque la taille de la mémoire a changé, et les utilisateurs ont besoin de modifier l'adresse dans CHRIT ACPITBL.BIN or else they won’t be able to boot into the system, disallowing mass circulation of the mod OEM BIOS. ou bien ils ne seront pas en mesure d'amorcer le système, de rejeter la circulation massive du mod OEM BIOS. Thus the Chinese hackers refine the technique to allows dynamic physical memory address allocation of SLIC table is been used. Ainsi, les pirates chinois affiner la technique dynamique permet à la mémoire physique de l'allocation des adresses de CHRIT tableau est été utilisé. With dynamic memory allocation, physical memory size can be changed without any consent of BIOS non-compliant. Avec l'allocation de mémoire dynamique, la taille de la mémoire physique peut être modifié sans le consentement de BIOS non-conforme. Beside, previous method of adding SLIC table may require users to flash BIOS into ROM 2 times, first with the mod BIOS and later with the original BIOS, while the BIOS with this refined method with dynamic memory address register requires only one flash at most. A côté de ça, méthode précédente d'ajouter CHRIT tableau mai obliger les utilisateurs à flash BIOS ROM en 2 fois, d'abord avec le mod BIOS et plus tard avec le BIOS d'origine, tandis que le BIOS avec cette méthode plus perfectionnée avec mémoire dynamique registre des adresses n'a besoin que d'un flash au maximum.
Tools and utilities required: Outils et services d'utilité publique requise:
- MODBIN6
- CBROM219
- WinHEX
- Hiew 7.4 (Hiew32) Hiew 7.4 (Hiew32) (only for Award BIOS, if you have Hiew32 you no longer require IDA 5.0) (uniquement pour les BIOS Award, si vous avez Hiew32 vous n'avez plus besoin ACCOVAM 5.0)
- IDA 5.0 5,0 ACCOVAM
- UltraEdit
The instruction to create a mod Vista OEM BIOS with dynamic memory address allocation capability is complicated, and recommended for expert only. L'instruction de créer un mod Vista OEM BIOS avec mémoire dynamique capacité de l'allocation des adresses est compliqué, et recommandé à l'expert. Beside, this article is translated from documents in Chinese, so the accuracy of the translation is not guaranteed. A côté de ça, cet article est traduit de documents en chinois, de sorte que la précision de la traduction n'est pas garantie. If you really want to make your BIOS to be able to activate OEM version of Windows Vista, try the Si vous voulez vraiment faire de votre BIOS pour être en mesure d'activer la version OEM de Windows Vista, essayez le ready-mod BIOS (with static address) prêt-mod BIOS (avec une adresse statique) , software based , Logiciel Vista Loader OEM BIOS emulator Vista chargeur OEM BIOS émulateur , or software based , Ou logiciel OEM BIOS Emulation Toolkit OEM BIOS émulation Toolkit . Other popular Vista crack include Parmi les autres comprennent Vista fissure TimerLock which automatically apply qui s'appliquent automatiquement TimerStop driver. conducteur. This tutorial is proof of concept only, as each BIOS is different, and hence the values or steps or things modified may be different. Ce tutoriel est la preuve de concept que, comme chaque BIOS est différent, et, par conséquent, les valeurs ou les mesures ou modifiés mai choses différentes.
Warning : Alteration to BIOS may invalidate warranty, cause computer to unable to boot up or other irrecoverable effect. Attention: modification de BIOS mai invalider la garantie, à cause ordinateur incapable de démarrer ou d'autres irrécouvrables. Do it at your own risk. Faites-le à vos propres risques.
If you need help on mod BIOS for Vista activation, check out Si vous besoin d'aide pour l'mod BIOS pour Windows Vista activation, consultez this thread ce fil .
- Create a temporary folder (Vista or BIOS is you like) at root directory (C:\). Créer un dossier temporaire (Vista ou BIOS est comme vous) au répertoire racine (C: \).
- Download CBROM 2.19 (depending on where you download, it may need to rename the executable to cbrom.exe as illustrated in this article), MODBIN6 2.01.01, SLIC.BIN (named acpislic.bin which can be varied, which is the SLIC table portion of BIOS) from download links above, and place them in the temporary folder. Télécharger CBROM 2.19 (selon l'endroit où vous téléchargez, mai il faut renommer l'exécutable à cbrom.exe comme illustré dans cet article), MODBIN6 2.01.01, SLIC.BIN (du nom acpislic.bin qui peut être varié, qui est le CHRIT tableau de BIOS) de télécharger des liens ci-dessus, et de les placer dans le répertoire temporaire.
- Extract, export or save the XXXXXXXX.BIN (name can be changed, which is the motherboard BIOS that you want to hack for Windows Vista OEM activation). Extrait, d'exportation ou de mettre la XXXXXXXX.BIN (nom peut être changé, qui est la carte mère BIOS que vous voulez hack pour Windows Vista OEM activation). Easier way is to simply download the BIOS firmware from the computer or motherboard’s manufacturers such as ASUS, Gigabyte, MSI, Acer, HP, Dell, Lenovo and etc. Méthode plus simple est de simplement télécharger le microprogramme BIOS de l'ordinateur ou carte mère fabricants comme ASUS, Gigabyte, MSI, Acer, HP, Dell, Lenovo, etc
- Determine which BIOS portion of file is the field of RSDT…FACS located: Déterminer qui BIOS partie de fichier est le domaine de RSDT… FACS situé:
- In Dans elevated command prompt invite de commande élevé (or (ou disable UAC désactiver l'UAC ), type the following command: ), Tapez la commande suivante:
CBROM.EXE XXXXXX.BIN /d CBROM.EXE XXXXXX.BIN / j
You will see something like below screencap: Vous verrez quelque chose comme ci-dessous screencap:
CBROM V2.19 (C)Award Software 2001 All Rights Reserved. CBROM V2.19 (c) d'accorder des Logiciels 2001 Tous droits réservés.
******** XXXXXXXX.BIN BIOS component ******** ******** XXXXXXXX.BIN BIOS composante ********
No. Item-Name Original-Size Compressed-Size Original-File-Name Point n °-Nom original Taille comprimé Taille du fichier original-Nom
===================================================== ================================================== ===
0. System BIOS 20000h(128.00K) 13B3Eh(78.81K) 83IID318.BIN BIOS système 20000h (128.00K) 13B3Eh (78.81K) 83IID318.BIN
1. XGROUP CODE 0DFF0h(55.98K) 0993Ch(38.31K) awardext.rom XGROUP CODE 0DFF0h (55.98K) 0993Ch (38.31K) awardext.rom
2. ACPI table 043E5h(16.97K) 01A46h(6.57K) ACPITBL.BIN 043E5h tableau ACPI (16.97K) 01A46h (6.57K) ACPITBL.BIN
3. EPA LOGO 0168Ch(5.64K) 002AAh(0.67K) AwardBmp.bmp EPA LOGO 0168Ch (5.64K) 002AAh (0.67K) AwardBmp.bmp
4. YGROUP ROM 0F570h(61.36K) 0482Dh(18.04K) awardeyt.rom YGROUP ROM 0F570h (61.36K) 0482Dh (18.04K) awardeyt.rom
5. GROUP ROM[ 0] 04CD0h(19.20K) 02261h(8.59K) _EN_CODE.BIN GROUPE ROM [0] 04CD0h (19.20K) 02261h (8.59K) _EN_CODE.BIN
6. Other(404E:0000) 03476h(13.12K) 00EB4h(3.68K) 64N8IIP.BMP Autres (404E: 0000) 03476h (13.12K) 00EB4h (3.68K) 64N8IIP.BMP
7. Other(404F:0000) 0345Dh(13.09K) 008B9h(2.18K) 64N8P4P.BMP Autres (404F: 0000) 0345Dh (13.09K) 008B9h (2.18K) 64N8P4P.BMP
8. Other(4050:0000) 0345Dh(13.09K) 008CCh(2.20K) 64N8P4HT.BMP Autre (4050:0000) 0345Dh (13.09K) 008CCh (2.20K) 64N8P4HT.BMP
9. Other(4051:0000) 04286h(16.63K) 00A7Eh(2.62K) 64N8P4E.BMP Autres (4051:0000) 04286h (16.63K) 00A7Eh (2.62K) 64N8P4E.BMP
10. Other(4052:0000) 04286h(16.63K) 00B58h(2.84K) 64N8P4HE.BMP Autres (4052:0000) 04286h (16.63K) 00B58h (2.84K) 64N8P4HE.BMP
11. Other(4053:0000) 0345Dh(13.09K)007D9h(1.96K) 64N8ICPD.BMP Autres (4053:0000) 0345Dh (13.09K) 007D9h (1.96K) 64N8ICPD.BMP
12. PCI ROM[A] 0D000h(52.00K)07DA8h(31.41K) RTM8100.LOM PCI ROM [A] 0D000h (52.00K) 07DA8h (31.41K) RTM8100.LOMTotal compress code space = 4B000h(300.00K) Total compresser l'espace code = 4B000h (300.00K)
Total compressed code size = 31788h(197.88K) Total comprimé taille du code = 31788h (197.88K)
Remain compress code space = 19878h(102.12K) Restez compresser Code 19878h espace = (102.12K)** Micro Code Information ** Micro ** ** Code Information
Update ID CPUID | Update ID CPUID | Update ID CPUID | Update ID CPUID Mise à jour ID CPUID | Mises à jour ID CPUID | Mises à jour ID CPUID | Mises à jour ID CPUID
——————+——————–+——————–+—————— ------+-------+-------+------
PGA478 2E 0F29| PGA478 2E 0F29 | - In above case, inside XXXXXXX.BIN, there is no ggroup.bin (where “RSDTFACPDSDTAPICHPETMCFGFACS” or similar ACPI tables index field is located), so RSDT…FACS field is located inside the system BIOS byte code中, and to modify this need to use MODBIN6. En cas ci-dessus, à l'intérieur XXXXXXX.BIN, il n'existe pas de ggroup.bin (où "RSDTFACPDSDTAPICHPETMCFGFACS" ou similaires ACPI tableaux champ d'index est située), de sorte RSDT… FACS domaine est situé à l'intérieur du système BIOS du byte code中, et de modifier ce besoin MODBIN6 à utiliser. If your BIOS contains ggroup.bin, you can use CBROM to extract and seperate ggroup.bin BIOS part as file. Si votre BIOS ggroup.bin contient, vous pouvez utiliser CBROM d'extraire et de séparer ggroup.bin BIOS partie en tant que fichier.
Below is the sample CBROM output of “CBROM.EXE XXXXXX.BIN /d” command for BIOS with ggruoup.bin (Gigabyte GA-G1975X BIOS as example): Ci-dessous, l'échantillon est CBROM sortie de "CBROM.EXE XXXXXX.BIN / d" pour le BIOS avec ggruoup.bin (Gigabyte GA-G1975X BIOS à titre d'exemple):
No. Item-Name Original-Size Compressed-Size Original-Fi Point No-Name original Taille comprimé Taille Original-Fi
================================================
0. System BIOS 20000h(128.00K)1492Ah(82.29K)G1975X.BIN 20000h système BIOS (128.00K) 1492Ah (82.29K) G1975X.BIN
1. XGROUP CODE 0F7B0h(61.92K)0A8E6h(42.22K)awardext.rom XGROUP CODE 0F7B0h (61.92K) 0A8E6h (42.22K) awardext.rom
2. EPA LOGO 0168Ch(5.64K)0030Dh(0.76K)AwardBmp.bmp EPA LOGO 0168Ch (5.64K) 0030Dh (0.76K) AwardBmp.bmp
3. GROUP ROM[18] 00EF0h(3.73K)00B77h(2.87K)ggroup.bin GROUPE-ROM [18] 00EF0h (3.73K) 00B77h (2.87K) ggroup.bin
4. YGROUP ROM 07140h(28.31K)04D7Ch(19.37K)awardeyt.rom YGROUP ROM 07140h (28.31K) 04D7Ch (19.37K) awardeyt.rom
5. FNT1 ROM 02D28h(11.29K)02038h(8.05K)font1.awd FNT1 ROM 02D28h (11.29K) 02038h (8.05K) font1.awd
6. FNT2 ROM 03278h(12.62K)01F18h(7.77K)font2.awd FNT2 ROM 03278h (12.62K) 01F18h (7.77K) font2.awd
7. FNT3 ROM 025FCh(9.50K)017FBh(6.00K)font3.awd FNT3 ROM 025FCh (9.50K) 017FBh (6.00K) font3.awd
8. GROUP ROM[ 0] 06010h(24.02K)02787h(9.88K)_EN_CODE.BIN GROUPE ROM [0] 06010h (24.02K) 02787h (9.88K) _EN_CODE.BIN
9. GROUP ROM[ 1] 06510h(25.27K)02A1Fh(10.53K)_FR_CODE.BIN GROUPE ROM [1] 06510h (25.27K) 02A1Fh (10.53K) _FR_CODE.BIN
10. GROUP ROM[ 3] 06420h(25.03K)02A75h(10.61K)_GR_CODE.BIN GROUPE ROM [3] 06420h (25.03K) 02A75h (10.61K) _GR_CODE.BIN
11. GROUP ROM[ 4] 068D0h(26.20K)02A74h(10.61K)_SP_CODE.BIN GROUPE ROM [4] 068D0h (26.20K) 02A74h (10.61K) _SP_CODE.BIN
12. GROUP ROM[ 8] 04EF0h(19.73K)02575h(9.36K)_B5_CODE.BIN GROUPE ROM [8] 04EF0h (19.73K) 02575h (9.36K) _B5_CODE.BIN
13. GROUP ROM[10] 04F60h(19.84K)025E9h(9.48K)_GB_CODE.BIN GROUPE ROM [10] 04F60h (19.84K) 025E9h (9.48K) _GB_CODE.BIN
14. GROUP ROM[11] 05E50h(23.58K)02A85h(10.63K)_JP_CODE.BIN GROUPE ROM [11] 05E50h (23.58K) 02A85h (10.63K) _JP_CODE.BIN
15. PCI ROM[A] 0F200h(60.50K)09594h(37.39K)ICH7RAID.BIN PCI ROM [A] 0F200h (60.50K) 09594h (37.39K) ICH7RAID.BIN
16. PCI ROM[B] 10000h(64.00K)09A15h(38.52K)b169d.pxe PCI ROM [B] 10000h (64.00K) 09A15h (38.52K) b169d.pxe
17. LOGO1 ROM 00B64h(2.85K)00520h(1.28K)dbios.bmp LOGO1 ROM 00B64h (2.85K) 00520h (1.28K) dbios.bmp
18. PCI ROM[C] 04000h(16.00K)02287h(8.63K)ITE8212.ROM PCI ROM [C] 04000h (16.00K) 02287h (8.63K) ITE8212.ROM
19. Other(4067:0000) 01AADh(6.67K)00B75h(2.86K)PPMINIT.ROM Autres (4067:0000) 01AADh (6.67K) 00B75h (2.86K) PPMINIT.ROM
20. OEM0 CODE 025B3h(9.42K)01B37h(6.80K)dbf.bin OEM0 CODE 025B3h (9.42K) 01B37h (6.80K) dbf.bin
21. GROUP ROM[24] 00132h(0.30K)0011Eh(0.28K)SPECIAL.FNT GROUPE ROM [24] 00132h (0.30K) 0011Eh (0.28K) SPECIAL.FNT
22. ACPI table 09640h(37.56K)0352Ch(13.29K)ASUSACPI.BIN Table 09640h ACPI (37.56K) 0352Ch (13.29K) ASUSACPI.BINTotal compress code space = 67000h(412.00K) Total compresser l'espace code = 67000h (412.00K)
Total compressed code size = 57613h(349.52K) Total comprimé taille du code = 57613h (349.52K)
Remain compress code space = 0F9EDh(62.48K) Restez compresser l'espace code = 0F9EDh (62.48K)** Micro Code Information ** Micro ** ** Code Information
Update ID CPUID | Update ID CPUID | Update ID CPUID | Upd CPUID mise à jour id | Mises à jour ID CPUID | Mises à jour ID CPUID | upd
——————+——————–+——————–+—– ------+-------+-------+--
SLOT1 0A 0F32| PGA423 2C 0F25| 00000000 00000000 0000 SLOT1 0A 0F32 | PGA423 2C 0F25 | 00000000 00000000 0000
00000000 00000000 0000 0000| 00000000 00000000 0000 00000000 00000000 0000 0000 | 00000000 00000000 0000
00000000 00000000 0000 0000| 00000000 00000000 0000 00000000 00000000 0000 0000 | 00000000 00000000 0000
00000000 00000000 0000 0000| 00000000 00000000 0000 00000000 00000000 0000 0000 | 00000000 00000000 0000
00000000 00000000 0000 0000| 00000000 00000000 0000 00000000 00000000 0000 0000 | 00000000 00000000 0000
00000000 00000000 0000 0000| 00000000 00000000 0000 0000 | - For BIOS with ggroup.bin, extract the ggroup.bin with the following command: Pour ggroup.bin BIOS avec, d'extraire les ggroup.bin avec la commande suivante:
CBROM.EXE G1975X.bin /group18 extract CBROM.EXE G1975X.bin / group18 extrait
You should see the following output as below screenshot: Vous devriez voir le résultat suivant capture d'écran ci-dessous:
CBROM V2.19 (C)Award Software 2001 All Rights Reserved. CBROM V2.19 (C) Attribution Software 2001 Tous droits réservés.
Enter an extract file Name :(ggroup.bin) Entrez un nom de fichier extrait: (ggroup.bin)
[GROUP] ROM is extracted to ggroup.bin [GROUPE] ROM sont extraites de ggroup.bin - Separate, save and extract the ACPITBL.BIN by using the following command: Distinct, sauvegarder et ACPITBL.BIN l'extrait en utilisant la commande suivante:
CBROM.EXE 050318.BIN /acpi extract CBROM.EXE 050318.BIN / acpi extrait
You should see the following output from CBROM: Vous devriez voir la sortie suivante de CBROM:
CBROM V2.19 (C)Award Software 2001 All Rights Reserved. CBROM V2.19 (C) Attribution Software 2001 Tous droits réservés.
Enter an extract file Name :(ACPITBL.BIN) Entrez un nom de fichier extrait: (ACPITBL.BIN)
[ACPI] ROM is extracted to ACPITBL.BIN [ACPI] ROM sont extraites de ACPITBL.BIN - For BIOS without ggroup.bin (those with ggroup.bin can skip this step), launch MODBIN6, select XXXXXXXX.BIN (Must be named in .BIN extension, if not rename it. It’s the BIOS to modify to add in the SLIC table so that it’s SLP 2.0 compliant.). Pour le BIOS sans ggroup.bin (ceux qui ont ggroup.bin pouvez sauter cette étape), lancement MODBIN6, sélectionnez XXXXXXXX.BIN (Doit être le nom en. Bin, si pas le renommer. C'est le BIOS pour modifier pour ajouter, dans l' CHRIT tableau pour qu'il soit conforme 2,0 SLP.). Do not close the window of MODBIN6, and wait for the ORIGINAL.BIN to be extracted and created in the temporary folder. Ne pas fermer la fenêtre de MODBIN6, et attendez que le ORIGINAL.BIN à extraire et a créé dans le répertoire temporaire.
- In Dans elevated command prompt invite de commande élevé (or (ou disable UAC désactiver l'UAC ), type the following command: ), Tapez la commande suivante:
- Follow the below instructions to modify ACPITBL.BIN: Suivez les instructions ci-dessous pour modifier ACPITBL.BIN:
- Run UltraEdit and open ACPITBL.BIN BIOS image file. Run UltraEdit et ouvert ACPITBL.BIN image fichier BIOS.
- Search text for RSDT. Recherche texte pour RSDT.
- Behind RSDT is the byte that indicates the length of RSDT table. Derrière RSDT est l'octet qui indique la durée de RSDT tableau. Add 4 to this number in HEX format. Ajouter 4 à ce numéro en format HEX. For example, if the value indicated is 002C, modify and edit the value to become 0030. Par exemple, si la valeur indiquée est 002C, de modification et de modifier la valeur de devenir 0030. Note that the reverse sequence of pairs when keying in UltraEdit Hex editor (ie enter as 30 00 instead of 00 30). Il est à noter que l'inverse séquence de paires Lors de la saisie d'UltraEdit Hex Editor (c'est-à-dire comme étant 30 00 au lieu de 00 30).
- Insert (not replace) additional 4 bytes of 00 value after the original length (002C) of RSDT table (normally in front of FACPt, or FXCPt for certain Gigabytes mobo). Insérer (pas remplacer) les 4 octets de valeur 00 après la longueur initiale (002C) du tableau RSDT (normalement en face de FACPt, ou pour certains FXCPt mobo gigaoctets). You can copy and paste the 4 bytes of 00 from other location to this location. Vous pouvez copier et coller les 4 octets de 00 autres de l'emplacement à cet endroit. This modification and alteration is to provide space to store the SLIC table in future steps, so remember this address (for this guide, assume this location is SLICaddress ). Cette modification et la modification est de fournir l'espace pour stocker le tableau du CHRIT prochaines étapes à suivre, donc n'oubliez pas cette adresse (pour ce guide, assumer cette situation est SLICaddress). In this example, SLICaddress value is 002C. Dans cet exemple, la valeur SLICaddress est 002C.
Before modification of ACPITBL.BIN in UltraEdit Avant de ACPITBL.BIN modification dans UltraEdit
After modification of ACPITBL.BIN in UltraEdit to allocate space for SLIC table. Après modification de ACPITBL.BIN UltraEdit dans d'allouer l'espace pour CHRIT tableau. - Check the total length of ACPITBL.BIN if the length can be divided in full by 4. Vérifier la longueur totale de ACPITBL.BIN si la longueur peut être divisé en totalité par 4. If not, add 1 to 3 bytes of 00 at the end of the BIOS image file so that the length can be divided by 4 without any remainder. Si non, ajouter 1 à 3 octets de 00 à la fin du BIOS du fichier de l'image de sorte que la durée peut être divisée par 4 sans reste. This is to ensure that after merging with SLIC.BIN image file, the header address of SLIC table can be divided by 4 without remainder too. Cette mesure vise à assurer que, après la fusion avec SLIC.BIN fichier image, l'en-tête l'adresse du CHRIT tableau peut être divisé par 4 reste sans trop.
Check if the length of ACPITBL.BIN (the last address of the file + 1) can be divided by 4 without remainder. Vérifier si la longueur de ACPITBL.BIN (la dernière adresse du fichier + 1) peut être divisé par 4 sans reste. In this example, before this step modification, the last byte has HEX address of 43E8, so the length of the file is 43E9, cannot be divided by 4 in full without remainder. Dans cet exemple, avant cette étape modification, le dernier octet a HEX adresse de 43E8, de sorte que la longueur du fichier est 43E9, ne peut être divisé par 4 en totalité sans reste.
After 4 division check modification, added 3 00 value bytes. Après 4 division vérifier la modification, a ajouté la valeur 3 00 octets. - Modify OEM_ID and OEM_Table_ID according to your requirements (normally _ASUS_ and Notebook). Modifier OEM_ID et OEM_Table_ID en fonction de vos besoins (et normalement _ASUS_ Bloc-notes). Refer to Reportez-vous à improved add SLIC table instruction ajouter l'amélioration de l'instruction tableau CHRIT at step 8 of part 2 for more information. à l'étape 8 de la partie 2 pour plus d'informations.
- Save the file. Enregistrez le fichier.
- Execute the following command to merge and patch the SLIC table content with the modified ACPITBL.BIN to get the final working copy of ACPITBL.BIN: Exécuter la commande suivante pour fusionner et des correctifs du CHRIT tableau avec le contenu modifié ACPITBL.BIN pour obtenir la dernière copie de travail de ACPITBL.BIN:
COPY ACPITBL.BIN /B + SLIC.BIN /B ACPI.BIN /B ACPITBL.BIN COPIE / SLIC.BIN B + / B ACPI.BIN / B
Note: According to your requirement, use the correct ACPI.BIN, ie ASUS for ASUS OEM ID, Lenovo for Lenovo OEM ID and etc. Note: Selon votre besoin, utilisez la bonne ACPI.BIN, c'est-à-dire pour ASUS ASUS OEM ID, pour Lenovo Lenovo OEM ID, etc
- Follow the below steps to find the position of the space that temporarily store the value of the address of headers of every tables in the code of ORIGINAL.BIN or ggroup.bin. Suivez les étapes ci-dessous pour trouver la position de l'espace que stocker temporairement la valeur de l'adresse d'en-têtes de tous les tableaux dans le code de ORIGINAL.BIN ou ggroup.bin. This address will be assumed as TempBuffer_Address : Cette adresse sera considérée comme TempBuffer_Address:
- Run Ultract to open ORIGINAL.BIN or ggroup.bin. Run Ultract d'ouvrir ORIGINAL.BIN ou ggroup.bin.
- Execute IDA. Exécuter l'ACCOVAM.
- Click on Go to enter IDA. Cliquez sur Go pour entrer ACCOVAM. Then select and open ORIGINAL.BIN file. Ensuite, sélectionner et ouvrir ORIGINAL.BIN fichier.
- In the “Load a new file” dialog box, under the section of “Processor type”, pull down the menu and select “Intel 80×86 processors:80686p”. Dans le "Charger un nouveau fichier" boîte de dialogue, en vertu de la section "Processor type", déroulez le menu et sélectionner "Intel 80 × 86 processeurs: 80686p".
- After selected, hit the “Set” button to the right. Après avoir sélectionné, cliquez sur le "Set" pour la droite.
- Click on “OK” button, and then hit on “Yes” button when asked to confirm “Do you want to change the processor type to 80686p?” Cliquez sur "OK", puis appuyez sur la touche et sur "Oui" lorsqu'on lui a demandé de confirmer «Est-ce que vous voulez changer le type de processeur à 80686p?"
- In dialog box asked to confirm “Do you want to disassemble it as a 32-bit code?”, press on “No” button as manipulation will be done in 16-bit mode. Dans la boîte de dialogue demande de confirmer "Voulez-vous démonter il que les 32 bits?", Appuyez sur "Non" que la manipulation se fera en 16-bit mode.
- In the Strings Window to the right, find and locate the RSDT…FACS character string sequence, and double click on it. Dans les cordes fenêtre à droite, trouver et localiser les RSDT… FACS chaîne de caractères séquence, et double-cliquez sur celle-ci.
- Position the cursor at the location of the R character. Positionnez le curseur à l'endroit de la R caractère. Then press “A” key, and then RSDT…FACS character string will be displayed. Ensuite appuyez sur "A" la clé de contact et puis… RSDT FACS chaîne de caractères seront affichés. This text sequence of RSDT…FACS will be called ACPItables . Ce texte séquence de RSDT… FACS sera appelé ACPItables.
Positioning cursor at the line of R. Positionnement du curseur sur la ligne de R.
After pressing A key. Après avoir appuyé sur une touche. - Position the cursor after the RSDT…FACS string ACPItables (db 1EH). Positionnez le curseur après la RSDT… FACS chaîne ACPItables (db 1EH).
Press the “C” key. Appuyez sur la touche "C" enfoncée. A block of Assembly code will be displayed. Un bloc de l'Assemblée code sera affichée.
- But there is remaining code that hasn’t been disassembled into Assembly code. Mais il ya encore du code qui n'a pas été démonté dans l'Assemblée de code. So position the cursor at the first remained assembled code. Donc, placez le curseur à la première assemblée est restée code. In this case, it’s line of unk_CC49 after the RSDT…FACS string ACPItables provided by db 1Eh. Dans ce cas, il la ligne de unk_CC49 après la RSDT… FACS chaîne ACPItables fournis par la DB 1Eh. Then press the “C” key to convert and disassemble the remaining BIOS byte code. Ensuite, appuyez sur le bouton "C" pour convertir et démonter le reste du byte code BIOS.
- Move the cursor across the lines of the following “CALL” block. Déplacez le curseur à travers les lignes de ce qui suit "CALL" bloc.
- Watch out for the “CALL” line that can pop up code like below: Attention aux "CALL" ligne qui peut apparaître comme le code ci-dessous:
push eax push eax
push cx push CX
push ebp push ebp
xor ebp, ebp XOR EBP, EBP
mov cx, TABLE_Numbers (temporarily use TABLE _Numbers to represent a value) mov cx, TABLE_Numbers (temporairement _Numbers utiliser le tableau pour représenter une valeur)
mov edi, eax MOV EDI, EAXIn this example, it’s the line of “call sub_CCD4″. Dans cet exemple, c'est la ligne de «l'appel sub_CCD4".
- Double click on sub_CCD4 to go to the code section of sub_CCD4. Double-cliquez sur sub_CCD4 pour aller à la section de code sub_CCD4. If the current display mode is in graphic, right click and select “TEXT View” on the context menu to switch to text mode. Si le mode d'affichage graphique, cliquez avec le bouton droit et sélectionnez "TEXTE Affichage» dans le menu contextuel pour passer en mode texte.
- Inside this block of code, retrieve the 3 important variables - TABLE_Numbers,ACPItables_adress,TempBuffer_Adress,and record their value. Dans ce bloc de code, de récupérer les 3 variables importantes - TABLE_Numbers, ACPItables_adress, TempBuffer_Adress, et d'enregistrer leur valeur. In this example, the value of the variables are 4, CC20, 89C4 respectively, where addresses are approximately located at CCDC,CCE2, CD12 respectively. Dans cet exemple, la valeur des variables sont 4, CC20, respectivement 89C4, où les adresses sont situés à environ CCDC, CCE2, CD12, respectivement.
- Use the value of TempBuffer_Adress (89C4 from step above) to match with each table in RSDT…FACS text string, with increment of 4 after each table (matching table). Utilisez la valeur de TempBuffer_Adress (89C4 à partir de l'étape ci-dessus) pour correspondre à chaque table dans RSDT… FACS chaîne de texte, avec l'augmentation de 4, après chaque tableau (tableau). For example: Par exemple:
89C4 RSDT 89C4 RSDT
89C8 FACP 89C8 FACP
89CC DSDT 89CC DSDT
89D0 APIC 89D0 APIC
89D4 FACS 89D4 FACS
89D8
89DCThe previous block of code duplicates the required tables in ACPITBL BIOS image according to RSDT…FACS string into a free memory address, and store these value of addresses in space specified by TempBuffer_Address, and then eventually fill these addresses into some specific tables. Le précédent bloc de code double emploi avec les tableaux de ACPITBL BIOS image selon RSDT… FACS chaîne en une adresse mémoire libre, et de stocker la valeur de ces adresses dans l'espace spécifié par TempBuffer_Address, et puis finalement combler ces adresses dans certains tableaux. So during this process, the storing address value of TempBuffer_Address has to be ensure that cannot and is not changing, or else mod BIOS will fail. Ainsi, au cours de ce processus, le stockage Valeur de l'adresse de TempBuffer_Address doit être veiller à ce que ne peut pas et ne change pas, ou d'autre mod BIOS est vouée à l'échec.
- Switch to UltraEdit, and press Ctrl-F keyboard shortcut to search for D889 (ie 89D8 value, the value of the memory space location after FACS, where it’sa reverse with low byte in front and high byte behind). Passage à UltraEdit, et appuyez sur Ctrl-F de raccourci clavier pour rechercher D889 (c'est-à-dire 89D8 valeur, la valeur de l'espace mémoire du site après FACS, le cas inverse, c'est un peu byte devant et derrière octet haut). Pay attention to a few location (82D4, CC91) that lower than FFFF. Faites attention à quelques emplacement (82D4, CC91) inférieur à FFFF. Most likely you will find it at a few location. Plus probable que vous le trouverez à quelques endroit. If you cannot find any D889 (stored value of 89D8), then you can use directly the address (89D8) located behind the address used to store FACS (89D4). Si vous ne savez pas D889 (valeur stockée de 89D8), vous pouvez utiliser directement l'adresse (89D8) qui se trouve derrière l'adresse utilisée pour stocker du matériel (89D4). Which mean SLIC table will be appended immediately behind FACS, with string become something like RSDT…FACSSLIC, and can do so by find a location to put this string (move forward 4 bytes or use new location). Ce qui signifie CHRIT tableau sera joint immédiatement derrière FACS, avec chaîne devenir quelque chose comme RSDT… FACSSLIC, et peut le faire par trouver un emplacement pour mettre cette chaîne (déplacement vers l'avant de 4 octets ou de l'utilisation de nouveaux sites).
- However, if you located code like the following near the location of CC91 in IDA, which mean the section of code is used right after “call sub_CCD4″, and use up the memory address of 89D8. Toutefois, si vous trouviez le code à celui-ci près de l'emplacement de l'ACCOVAM dans CC91, ce qui signifie la section de code est utilisé juste après "appel sub_CCD4", et l'utilisation de la mémoire l'adresse de 89D8.
seg000:CC80 sub_CC80 proc near ; CODE XREF: seg000:CC52p seg000: CC80 sub_CC80 proc près; xref CODE: seg000: CC52p
seg000:CC80 push ds seg000: CC80 pousser DS
seg000:CC81 mov ax, 0F000h seg000: CC81 mov ax, 0F000h
seg000:CC84 mov ds, ax seg000: CC84 mov ds, ax
seg000:CC86 assume ds:nothing seg000: CC86 assumer ds: rien
seg000:CC86 add edi, 10h seg000: CC86 ajouter edi, 10h
seg000:CC8A and di, 0FFF0h seg000: CC8A et di, 0FFF0h
seg000:CC8D mov large ds:89D8h, edi seg000: grand CC8D mov ds: 89D8h, EDI
seg000:CC95 pop ds seg000: CC95 pop DS
seg000:CC96 assume ds:nothing seg000: CC96 assumer ds: rien
seg000:CC96 retn seg000: CC96 retn
seg000:CC96 sub_CC80 endp seg000: CC96 sub_CC80 endpIn this case, use UltraEdit to search for next available address from step above (DC89 for 89DC). Dans ce cas, utilisez UltraEdit pour rechercher l'adresse suivante disponible à partir de l'étape ci-dessus (DC89 pour 89DC). If nothing is found, this memory address location can be used to put SLIC table. Si rien n'est trouvé, cette adresse mémoire, peut être utilisée pour mettre CHRIT tableau. The problem with this memory address allocation is that there is a skip address or space (89D8) between FACS and SLIC tables. Le problème avec cette mémoire de l'allocation des adresses est qu'il existe une adresse ou sauter l'espace (89D8) entre le FACS et CHRIT tableaux. To fix this issue, add the text string of FACSSLIC instead of just SLIC, as FACS table is small and won’t use too much memory. Pour résoudre ce problème, ajoutez la chaîne de texte de FACSSLIC au lieu de simplement CHRIT, FACS tableau est de petite taille et de ne pas utiliser trop de mémoire.
- After modification, you will have the ACPI table index string as either RSDT…FACSSLIC or RSDT…FACSFACSSLIC. Après modification, vous aurez le tableau ACPI indice chaîne de RSDT soit FACSSLIC…… RSDT ou FACSFACSSLIC. To accomodate the first instance of string, the whole string can be move forward (to the front) by 4 bytes as mentioned above. Pour tenir compte de la première instance de chaîne, toute la chaîne peut être aller de l'avant (vers l'avant) de 4 octets comme indiqué ci-dessus. Otherwise, a new location has to be identified to store the new text string. Sinon, un nouvel emplacement doit être identifié pour stocker la nouvelle chaîne de texte. But in the later case where 8 bytes have been added, so we need to find a new location for this longer string. Mais dans ce dernier cas où 8 octets ont été ajoutés, alors nous devons trouver un nouvel emplacement pour la plus longue chaîne. In this example BIOS, there is 11 empty bytes (00) in front of the ACPItables_address (located at CC20). Dans cet exemple du BIOS, il est de 11 octets vides (00) en face de la ACPItables_address (situé à CC20). This empty bytes should be unused, beside, in UltraEdit, there is no code that uses the CC18 or CC1C two address locations. Ce vide doit être octets non utilisés, à côté, UltraEdit, il n'existe pas de code qui utilise le CC18 ou l'adresse CC1C deux endroits. So, the new string can be put forward to location with starting address as CC18. Ainsi, la nouvelle chaîne peuvent être avancées à l'emplacement avec comme adresse de départ CC18.
Moving RSDT string forward 8 bytes to accommodate new 8 bytes SLIC table. Déménagement RSDT chaîne avant 8 octets pour accueillir les nouveaux 8 octets CHRIT tableau. - Now the anchor address of the RSDT…SLIC string has been moved, and the initial bit address of the string has to be made known to the system. Maintenant, l'ancre adresse du RSDT… CHRIT chaîne a été déplacé, et les premiers bits adresse de la chaîne doit être portée à la connaissance du système. Search in UltraEdit for “20CC” (the original address), you will find it at CCE2 address as found out from step above. Recherche dans UltraEdit pour "20CC" (l'adresse d'origine), vous le trouverez à l'adresse que CCE2 découvert à partir de l'étape ci-dessus. Change the 20 to 18 to make it “18CC” (address always reverse when indicate) to indicate the new starting address. Changement de 20 à 18 pour le rendre "18CC" (adresse toujours réversibles lorsque les indiquer) pour indiquer la nouvelle adresse de départ.
After changing 20 to 18 to indicate new location address. Après avoir changé 20 à 18 pour indiquer l'adresse nouvel emplacement. - Since the RSDT string has been moved, the location of FACS table has also moved too (refer to figures above). Depuis la RSDT chaîne a été déplacée, l'emplacement du tableau FACS a également trop (voir les chiffres ci-dessus). The original address of FACS table is CC30 while new address is CC28 or CC2C. À l'origine, l'adresse du FACS tableau est tout CC30 nouvelle adresse est CC28 ou CC2C. And, in the rest of the code, the address is been used. Et, dans le reste du code, l'adresse est utilisée. So the address of FACS has to be modified too. Ainsi, l'adresse du FACS doit être modifiée.
The value for the original address is address of ACPItables_address (CC20) + 10 which equals to CC30. La valeur de l'adresse d'origine est l'adresse de ACPItables_address (CC20) + 10 ce qui équivaut à CC30. In UltraEdit, search for 30CC, which should be found at around reference location of CD35. Dans UltraEdit, recherche de 30CC, qui devrait être trouvé autour de référence à l'emplacement de CD35. Change the 30CC to 28CC (for CC28) or 2CCC (for CC2C). Les 30CC changement de 28CC (CC28) ou 2CCC (pour CC2C).
- Next, SLIC table has to be added to the address that is been reserved for it in RSDT tables string in ACPI.BIN. Ensuite, CHRIT tableau doit être ajouté à l'adresse qui est réservée pour lui dans RSDT tableaux chaîne dans ACPI.BIN.
seg000:CD74 seg000: CD74
seg000:CD74 sub_CD74 proc near ; CODE XREF: seg000:CC5Bp seg000: CD74 sub_CD74 proc près; CODE Xref: seg000: CC5Bp
seg000:CD74 push edi seg000: CD74 pousser EDI
seg000:CD76 push esi seg000: CD76 pousser ESI
seg000:CD78 mov esi, 0F0000h seg000: CD78 mov esi, 0F0000h
seg000:CD7E mov eax, [esi+89C4h]; Fill RSDT address to RSDT Ptr seg000: CD7E mov eax, [esi +89 C4H]; Remplissez RSDT adresse à RSDT Ptr
seg000:CD86 or eax, eax seg000: CD86 ou eax, eax
seg000:CD89 jz loc_CE32 seg000: CD89 JZ loc_CE32
seg000:CD8D mov [esi+89C0h], eax ; RSDT Ptr seg000: CD8D mov [C0h esi +89], eax; RSDT Ptr
seg000:CD95 mov eax, [esi+89CCh]; Fill DSDT address to FACP seg000: CD95 mov eax, [esi +89 CCH]; Remplissez DSDT adresse à FACP
seg000:CD9D or eax, eax seg000: CD9D ou eax, eax
seg000:CDA0 jz loc_CE32 seg000: CDA0 JZ loc_CE32
seg000:CDA4 mov edi, [esi+89C8h]; FACP seg000: CDA4 mov edi, [esi +89 C8h]; FACP
seg000:CDAC mov es:[edi+28h], eax seg000: CADC mov es: [edi +28 h], eax
seg000:CDB2 mov eax, [esi+89D4h]; Fill FACS address to FACP seg000: CDB2 mov eax, [esi +89 D4h]; Remplissez FACS à l'adresse FACP
seg000:CDBA or eax, eax seg000: CDBA ou eax, eax
seg000:CDBD jz loc_CE32 seg000: CDBD JZ loc_CE32
seg000:CDC1 mov edi, [esi+89C8h] ; FACP seg000: CDC1 mov edi, [esi +89 C8h]; FACP
seg000:CDC9 mov es:[edi+24h], eax seg000: CDC9 mov es [edi +24 h], eax
seg000:CDCF mov eax, [esi+89C8h]; Fill FACP address to RSDT+24 seg000: CDCF mov eax, [C8h esi +89]; Remplissez FACP adresse à RSDT +24
seg000:CDD7 or eax, eax seg000: CDD7 ou eax, eax
seg000:CDDA jz loc_CE32 seg000: CDDA JZ loc_CE32
seg000:CDDE mov edi, [esi+89C4h] ; RSDT seg000: CDDE mov edi, [esi +89 C4H]; RSDT
seg000:CDE6 mov es:[edi+24h], eax seg000: CDE6 mov es: [edi +24 h], eax
seg000:CDEC cmp byte ptr [bp+1BFh], 7 seg000: CDEC cmp byte ptr [bp +1 BFH], 7
seg000:CDF1 jnz short loc_CDFE seg000: CDF1 jnz court loc_CDFE
seg000:CDF3 test dword ptr [bp+1C6h], 200h seg000: CDF3 essai dword ptr [bp +1 C6h], 200h
seg000:CDFC jz short loc_CE2F seg000: CDFC jz court loc_CE2F
seg000:CDFE seg000: CDFE
seg000:CDFE loc_CDFE: ; CODE XREF: sub_CD74+7Dj seg000: CDFE loc_CDFE:; CODE Xref: +7 Dj sub_CD74
seg000:CDFE test byte ptr [bp+2EBh], 4 seg000: CDFE test byte ptr [bp +2 EBh], 4
seg000:CE03 jz loc_CE2F seg000: CE03 JZ loc_CE2F
seg000:CE07 mov eax, [esi+89D0h] ; Fill ACPI address to RSDT+28 seg000: CE07 mov eax, [esi +89 D0h]; Remplissez ACPI adresse à RSDT +28
seg000:CE0F or eax, eax seg000: CE0F ou eax, eax
seg000:CE12 jz short loc_CE2F seg000: CE12 jz court loc_CE2F
seg000:CE14 mov edi, [esi+89C4h] seg000: CE14 mov edi, [C4H esi +89]
seg000:CE1C mov es:[edi+28h], eax seg000: mov es CE1C: [edi +28 h], eax
seg000:CE22 mov edi, eax seg000: CE22 mov edi, eax
seg000:CE25 push es seg000: CE25 pousser es
seg000:CE26 call sub_B4BB seg000: CE26 appel sub_B4BB
seg000:CE29 pop es seg000: CE29 pop es
seg000:CE2A jb short loc_CE2F seg000: CE2A jb loc_CE2F court
seg000:CE2C call sub_5077 seg000: CE2C appel sub_5077From the matching table that matches the ACPI tables to respective memory address made in step above, use it to match against the code above. Du tableau qui correspond à la ACPI tableaux respectifs adresse mémoire créé à l'étape ci-dessus, l'utiliser pour le match contre le code ci-dessus. Here, none of the code representing process to fill the data value of 89DC address to RSDT table, so the following code needs to be added: Ici, aucun du code représentant processus visant à combler la valeur des données de 89DC à l'adresse RSDT tableau, de sorte que le code suivant doit être ajouté:
mov eax, [esi+89DCh] ; 8 bytes mov eax, [esi +89 DCH]; 8 octets
mov edi, [esi+89C4h] ;8 bytes mov edi, [esi +89 C4H]; 8 octets
mov es:[edi+2Ch], eax; 6 bytes, the value of the length of the ACPI tables (SLICaddress which is 2C). mov es: [edi +2 CH], eax; 6 octets, la valeur de la longueur des tables ACPI (SLICaddress qui est 2C).Addition of these code cannot affect the the rest of the functions’ address, so a few not critical code has to be deleted to free up some space. Adjonction de ces code ne peut pas affecter le reste des fonctions' adresse, pour un peu de code critique ne doit être supprimé afin de libérer de l'espace.
In the above code, after every mov eax, [esi+????h], it’s followed by the block of code as below: Dans le code ci-dessus, après chaque mov eax, [esi +???? h], il est suivi par le bloc de code ci-dessous:
or eax, eax ; 3 bytes ou eax, eax, 3 octets
jz short loc_CE2F ;2 bytes jz court loc_CE2F, 2 octetsThese are verification bits which is precaution method to prevent collapse or fault of system. Il s'agit de la vérification de bits qui est précaution méthode pour éviter l'effondrement ou la faute du système. However, after analysis, there is pair of verification bits that can be removed after reorganization of RSDT table. Toutefois, après analyse, il ya vérification paire de bits qui peuvent être supprimés après la réorganisation de RSDT tableau. Thus, remove the data verification parts of RSDT table which is located as below: Ainsi, retirez la vérification des données des parties RSDT tableau qui se trouve ci-dessous:
seg000:CDD7 or eax, eax ; 3 bytes seg000: CDD7 ou eax, eax; 3 octets
seg000:CDDA jz loc_CE32 ;2 bytes seg000: CDDA loc_CE32 jz, 2 octetsand et
seg000:CE0F or eax, eax ; 3 bytes seg000: CE0F ou eax, eax, 3 octets
seg000:CE12 jz short loc_CE2F ;2 bytes seg000: CE12 jz court loc_CE2F, 2 octetsAfter doing this, only 10 bytes of space is freed up, but the mod requires 22 bytes. Après avoir fait cela, seulement 10 octets d'espace est libéré, mais le mod nécessite 22 octets. In the code above, whenever it fills up the code for RSDT table, it will execute this command: Dans le code ci-dessus, chaque fois qu'il remplit le code de RSDT tableau, il exécutera la commande suivante:
mov edi, [esi+89C4h] ; 8 bytes mov edi, [+89 C4H esi], 8 octets
But, it does not alter the value of the register or variable when twice it executes the process to fill in the RSDT table. Mais, il ne modifie pas la valeur du registre ou variable quand il exécute deux fois le processus de remplir le tableau RSDT. So this command can be executed only once. Donc, cette commande peut être exécuté qu'une seule fois. In fact, if the new code is placed here, this command for the new code can be skipped too. En fait, si le nouveau code est placé ici, cette commande pour le nouveau code peut être sautée. With this adjustment, there will be enough blank space been emptied. Avec cet ajustement, il y aura suffisamment d'espace été vidés. Extra space can then be filled up with blank command (90 and nop). Des espaces supplémentaires peuvent ensuite être remplies de commande vierge (90 et nop). The final code will look like this: Le code final ressemblera à ceci:
seg000:CDCF seg000: CDCF
mov eax, [esi+89C8h]; fill up FACP address to RSDT+24 mov eax, [esi +89 C8h]; remplir FACP adresse à RSDT +24
mov edi, [esi+89C4h] ; RSDT mov edi, [esi +89 C4H]; RSDT
mov es:[edi+24h], eax mov es: [edi +24 h], eax
mov eax, [esi+89DCh] mov eax, [esi +89 DCH]
mov es:[edi+2Ch], eax mov es: [edi +2 CH], eax
nop NOP
nop NOP
nop NOP
nop NOP
cmp byte ptr [bp+1BFh], 7 cmp byte ptr [bp +1 BFH], 7
jnz short loc_CDFE jnz court loc_CDFE
test dword ptr [bp+1C6h], 200h test dword ptr [bp +1 C6h], 200h
jz short loc_CE2F JZ court loc_CE2F
test byte ptr [bp+2EBh], 4 essai byte ptr [bp +2 EBh], 4
jz loc_CE2F JZ loc_CE2F
mov eax, [esi+89D0h] ; fill up ACPI address to RSDT+28 mov eax, [+89 D0h esi]; remplir ACPI adresse à RSDT +28
seg000:CE22 mov es:[edi+28h], eax the address for this command cannot be changed. seg000: CE22 mov es: [edi +28 h], eax l'adresse de cette commande ne peut pas être changé.The address location of the code that will be deleted and inserted has to be remembered: L'adresse de l'emplacement de code qui sera supprimé et a inséré à se rappeler:
seg000:CDD7 or eax, eax ; 3 bytes seg000: CDD7 ou eax, eax, 3 octets
seg000:CDDA jz loc_CE32 ;2 bytes seg000: CDDA loc_CE32 jz, 2 octets
5 bytes starting from CDD7 5 octets à partir de CDD7seg000:CE0F or eax, eax ; 3 bytes seg000: CE0F ou eax, eax, 3 octets
seg000:CE12 jz short loc_CE2F ;2 bytes seg000: CE12 jz court loc_CE2F, 2 octets
seg000:CE14 mov edi, [esi+89C4h] seg000: CE14 mov edi, [esi +89 C4H]
5+8 bytes staring from CE0F 5 +8 octets de départ de CE0Fseg000:CDEC cmp byte ptr [bp+1BFh], 7 seg000: CDEC cmp byte ptr [bp +1 BFH], 7
Original location of CDEC to insert all needed code here Emplacement initial de CDEC à tous besoin d'insérer le code ici - The mod process is done, now go back to UltraEdit for last step address modification. Le mod processus est terminé, maintenant revenir à UltraEdit pour la dernière étape de modification adresse. This step is best done from bottom up to prevent the code below been jumbled when replacing the front part. Cette étape est préférable de faire de bas en haut pour empêcher le code ci-dessous été jumbled lors du remplacement de la partie avant.
Firstly, remove 13 bytes starting from CE0F. Tout d'abord, enlevez 13 octets à partir de CE0F.
Then insert any 4 bytes of random data at the CDEC, then change the value to 4 90 (90h=nop). Ensuite, insérer les 4 octets de données aléatoires à la CDEC, puis changez la valeur à 4 90 (90h = nop).
Copy the code at CDE6 to CDEB, and paste it to address starting from CDEC to reflect the command used: mov es:[edi+2Ch], eax Copiez le code à CDE6 à CDEB, et collez-le à l'adresse à partir de CDEC afin de refléter la commande utilisée: mov es: [edi +2 CH], eax
Copy the code at CDCF to CDD6, and paste it to address starting from CDEC to reflect the command used: mov eax, [esi+89DCh] Copiez le code à CDCF à CDD6, et collez-le à l'adresse à partir de CDEC afin de refléter la commande utilisée: mov eax, [esi +89 DCH]
Lastly, remove 5 bytes starting from CDD7. Enfin, retirez 5 octets à partir de CDD7. - Save the code. Enregistrer le code.
- Verify that the modification of code is correct by using IDA to check if the modified code is correct. Vérifiez que la modification de code est correct en utilisant l'ACCOVAM pour vérifier si la modification code est correct. If yes, repack the code into the BIOS file. Si oui, le code remballer dans le fichier BIOS.
Disclaimer: This article is for informational and educational purpose only. Avertissement: Cet article est pour information et d'éducation seulement.
IMPORTANT : This is a machine translated page which is provided "as is" without warranty. IMPORTANT: Il s'agit d'une machine qui traduit la page est fourni «tel quel», sans garantie. Machine translation may be difficult to understand. La traduction automatique mai être difficile à comprendre. Please refer to S’il vous plaît se référer à original English article l'article original en anglais whenever possible. chaque fois que possible.
Share and contribute or get technical support and help at Partagez et contribuer ou obtenir de l'aide technique et l'aide à My Digital Life Forums Ma vie numérique forums .
Related Articles Articles connexes
- SLIC Table (SLIC.BIN or ACPISLIC.BIN) BIOS File for OEMs Download CHRIT Tableau (SLIC.BIN ou ACPISLIC.BIN) BIOS de dossier pour le marché OEM Télécharger
- Windows Vista No Activation OEM ID for Various Manufacturers Windows Vista Aucune activation OEM Numéro d'identification de différents fabricants
- Download Vista Loader 2.1.2 OEM BIOS Crack Emulator Télécharger Vista Loader 2.1.2 oem BIOS crack émulateur
- Best Vista Crack for Activation (Most Reliable Vista Activator) Meilleure Vista crack d'activation (le plus fiable Vista Activator)
- BIOS with Windows Vista OEM Support (ACPI_SLIC) Invalidate KMS Activation BIOS avec Windows Vista OEM Support (ACPI_SLIC) annuler l'activation KMS
- Invalid Key Error While Activate Vista with OEM Emulation or Mod BIOS Flash Clé invalide erreur lors activer Vista OEM avec émulation ou de BIOS flash mod
- Vista OEM Activation Crack: Hack to Modify BootMgr to Activate Vista Vista OEM activation crack: Hack de modifier BootMgr pour activer Vista
- Software BIOS Emulation Patch (softmod.iso) to Emulate OEM SLIC of Dell, HP, Lenovo, Sony, Acer and ASUS Logiciel d'émulation du BIOS Patch (softmod.iso) pour émuler CHRIT OEM de Dell, HP, Lenovo, Sony, Acer et ASUS
- Crack to Activate Windows Vista as OEM for Acer Motherboard/BIOS Crack pour activer Windows Vista OEM pour Acer mère / BIOS
- Windows Vista OEM Activation Crack (vstaldr) without Modify or Flash BIOS Windows Vista OEM Activation Crack (vstaldr) Modifier ou sans Flash BIOS



















December 30th, 2007 04:08 Décembre 30th, 2007 04:08
Yo!
Anyone can mod the Asus 1011_013 beta K8N4-E Deluxe bios? Tout le monde peut le mod 1011_013 bêta Asus K8N4-E Deluxe BIOS?
I have a Turion ML-42 cpu, but i don’t manage the voltage control in my current bios. J'ai un Turion ML-42 d'unité centrale de traitement, mais je ne gèrent pas le contrôle de tension dans mon BIOS actuel. I can down the voltage, but up is not working… Je peux à la tension, mais en place ne fonctionne pas…
Thank you for your time! Merci pour votre temps!
April 17th, 2007 01:30 Avril 17th, 2007 01:30
Step 16. Étape 16. Excuse me? Excusez-moi? what does that text even say? qu'est-ce que le texte même dire? I have read it many times now, and I am no closer to understand what you should achieve at that step. J'ai lu à plusieurs reprises maintenant, et je ne suis plus près de comprendre ce que vous devez atteindre à cette étape. It probably is the most dubious piece of english text I have ever read Il est probablement le plus douteux Anglais morceau de texte que j'ai jamais lu
Should I duplicate the strings at the address gained from Tempbuffer_address, counting +4 each step? Devrais-je faire double emploi avec les cordes à l'adresse de Tempbuffer_address acquise, compte +4 chaque étape?
April 10th, 2007 19:41 Avril 10th, 2007 19:41
Got it : step 22 ;] Got it: étape 22];
ida is to be used with original.bin , ida serves to find the code in the file . Ida est destiné à être utilisé avec original.bin, ida sert à trouver le code dans le fichier. when done you have to read the address locations : ce0f , cdd7 …. lorsque vous avez terminé, vous devez lire l'adresse endroits: ce0f, cdd7….
with ultraedit you go to ce0f , cdd7 …to apply the changes , the 2 locations i talk about are used to remove code or eax,eax…. avec UltraEdit vous allez à ce0f, cdd7… pour appliquer les modifications, les 2 endroits je parle sont utilisés pour supprimer ou code eax, eax….
nearly done 8] fait près de 8]
April 10th, 2007 09:29 Avril 10, 2007 09:29
step 15 étape 15
first variable : 4 / does not it need to be increased by 1 to 5 ? première variable: 4 / n'est-ce pas besoin d'être augmenté de 1 à 5?
and so it is to be used in step 16 / if value is 5 in bios : 89dc et il est destiné à être utilisé à l'étape 16 / si la valeur est de 5 dans le bios: 89dc
step 17 Étape 17
file to open in UltraEdit is original.bin [or acpitbl.bin] ? fichier à ouvrir dans UltraEdit est original.bin [ou acpitbl.bin]? that could be said instead of “shooow sweeeet” keyboard shortcut 8-P que l'on puisse dire au lieu de "shooow sweeeet" raccourci clavier 8-P
step22
what to do the file acpitbl.bin with ida to write code a this place / here i am out of knowing what to do ;[ ce qu'il faut faire le fichier avec acpitbl.bin ida écrire du code à cet endroit un / Here I Am de savoir quoi faire, [
vista is far to be free for me 8] Vista est loin d'être à l'abri pour moi 8]
April 9th, 2007 21:31 Avril 9th, 2007 21:31
hello Bonjour
Can anyone mod an Asus k8ne deluxe bios 1011 ? Quelqu'un peut-il un mod Asus k8ne deluxe bios 1011?
April 9th, 2007 18:46 Avril 9th, 2007 18:46
i “made it” for asus k8n4-e deluxe , i have not tested yet , i submit the bios in here . i "a" pour asus k8n4-e de luxe, je n'ai pas encore testé, je soumets le BIOS ici.
i made the archive with original bios and moded one . j'ai fait l'archive avec le bios d'origine et un moded.
the original is updated with latest pci_bios roms for nvraid nvpxe and sata_raid sil_3114 . l'original est mise à jour avec les dernières pci_bios ROM pour nvraid nvpxe et sata_raid sil_3114.
http://rapidshare.com/files/25065364/k8n4ed_slic.zip.html
tell me if i did it well dites-moi si je ne m'en suis bien
April 9th, 2007 09:29 Le 9 avril, 2007 09:29
the step 10 is not so clean : l'étape 10 n'est pas si propre:
10 Position the cursor after the RSDT…FACS string ACPItables (db 1EH). 10 Placez le curseur après la RSDT… FACS chaîne ACPItables (db 1EH).
here is CC20 / so no calc [step 15 ] ? ici, c'est CC20 / donc pas calc [Step 15]?
89D8 : if the address is not a “problem” to what step jump ? 89D8: si l'adresse n'est pas un "problème" à ce que pas sauter?
ps : is there a topic like this for installing vista on a fat32 , i know it can be be done after install on ntfs to format fat32 and copy the backup . ps: y at-il un sujet comme celui-ci pour installer Vista sur une FAT32, je sais elle peut être fait après l'installation sur le format ntfs à FAT32 et la copie de sauvegarde.
nice “chinese” work ;] belle "chinois";]
March 23rd, 2007 05:56 Mars 23rd, 2007 05:56
can someone please post a step-by-step (of this document at step 22) s’il vous plaît quelqu'un peut poster un, étape par étape (de ce document à l'étape 22)
March 22nd, 2007 11:38 Mars 22nd, 2007 11:38
Hi, Salut,
I am stuck at step 22 & 23. Je suis coincé à l'étape 22 et 23.
is step 22 for information, or is there a way to remove seg000:CDD7,CDDA,CE0F & CE12 in IDA? est l'étape 22 pour l'information, ou y at-il une façon d'enlever seg000: CDD7, CDDA, CE0F & CE12 dans ACCOVAM?
how do i type in the assemble code script at seg000:CDCF Comment puis-je taper le code de script montons à seg000: CDCF
Or do we delete the codes and type new one using winhex or ultraedit. Ou devons-nous supprimer les codes et le type en utilisant une nouvelle winhex ou UltraEdit.
I use winhex for all my editing. Winhex j'utilise pour toutes mes modifications.
March 21st, 2007 18:19 Mars 21 janvier 2007 18h19
Modded BIOS for MSI K8N SLI-F anyone? Modded BIOS pour MSI K8N SLI-F de quelqu'un d'autre?
March 16th, 2007 03:48 Mars 16th, 2007 03:48
Tools to open: Outils d'ouvrir:
Award: modbin Prix: modbin
AMI: mmtool, amimmwin AMI: mmtool, amimmwin
Phoenix: Phoenix Bios editor Phoenix: Phoenix Bios éditeur
March 16th, 2007 01:59 Mars 16th, 2007 01:59
I ask again, how to work with AMI or phoenix BIOS? Je demande encore, comment travailler avec AMI BIOS ou phénix?
What tools to use modbin6 does not work even if I rename files to *.bin Quels sont les outils à utiliser modbin6 ne fonctionne pas, même si je renommer des fichiers en *. bin