Виноват, ошибся в коде. Разбираюсь.
F000:2035 _ALT: F000:2035 mov eax, cr4 F000:2038 or eax, 200h F000:203E mov cr4, eax F000:2041 xchg esp, ebp F000:2044 mov esp, ebp F000:2047 shr esp, 10h F000:204B pslldq xmm5, 2 F000:2050 pinsrw xmm5, esp, 0 F000:2055 pslldq xmm5, 2 F000:205A pinsrw xmm5, ebp, 0 F000:205F mov esp, ebx F000:2062 shr esp, 10h F000:2066 pslldq xmm3, 2 F000:206B pinsrw xmm3, esp, 0 F000:2070 pslldq xmm3, 2 F000:2075 pinsrw xmm3, ebx, 0 F000:207A jmp ALT_Begin_Before ; вызов подпрограммы F000:207D ALT_Begin: F000:207D jmp ALT_Start_Before ; вызов подпрограммы F000:2080 ALT_Start: F000:2080 mov edi, 0FED40000h F000:2086 loop: F000:2086 mov al, es:[edi] F000:208A test al, 80h ; ! F000:208C jz loop ; до посинения F000:208E mov sp, 209Eh F000:2091 pslldq xmm4, 2 F000:2096 pinsrw xmm4, esp, 0 F000:209B jmp loc_F194B F000:209E mov al, 99h F000:20A0 out 80h, al ; manufacture's diagnostic checkpoint ...
Виноват, ошибся в коде. Разбираюсь.
Тем не менее, не вижу регулярной точки входа в процедуру, которая выводит в диаг.порт ряд приведенных в файле POST.zip значений, в т.ч. и код 66. Вполне возможно, что это действие выполняется "по событию". Процедуру условно называю _ALT: