169 похожих чатов

Привет ребят. Я недавно занялся разработкой резидентного шпиона логгера выводимых

сообщений, который перехватывает прерывание 21h функцию 09h (Прога под MS DOS) и записывает то что выводиться в файл printed.log. И почему-то , не понимаю почему она работает некоректно. Во-первых, не записывает выведенное в лог файл ( он находится в папке с логгером ). Во-вторых, выводиться перехваченное сообщение некоректно, т.е. с лишними символами и останавливает работу всей системы. Исходники ниже.
CSEG segment
org 100h
Start:
        jmp Init
        
        Int_21h_proc proc
                cmp ah, 09h
                
                je Ok_09
                
                jmp dword ptr cs:[Int_21h_vect]
                
                Ok_09:   
                        push ax 
                        push bx
                        push cx
                        push dx
                        push ds
                        
                        push dx
                        
                        mov ah, 4Eh
                        xor cx, cx
                        lea dx, logfile
                        int 21h
                        
                        mov ax, 3D02h
                        mov dx, 9Eh
                        int 21h                       

                        xchg bx, ax
                        
                        mov ah, 40h
                        pop dx
                        mov cx, 0Fh
                        int 21h
                        
                        mov ah, 3Eh
                        int 21h
                        
                        mov ah, 09h
                        int 21h
                        
                        pop ds
                        pop dx
                        pop cx
                        pop bx
                        pop ax
                        
                        pushf
                        call dword ptr cs:[Int_21h_vect]
                        
                        iret
                        
                        Int_21h_vect dd ?
                        logfile db "PRINTED.LOG",0
        Int_21h_proc endp
        
        Init:
                mov ax, 3521h
                int 21h
                
                mov word ptr Int_21h_vect, bx
                mov word ptr Int_21h_vect+2, es
                
                mov ax, 2521h 
                
                mov dx, offset Int_21h_proc
                int 21h
                
                mov dx, offset Init
                int 27h
                
CSEG ends
end Start

1 ответов

4 просмотра
Пользователь-63efd Автор вопроса

Так мне никто не поможет с моей проблемой?

Похожие вопросы

Обсуждают сегодня

Какой-то там пердун в 90-х решил, что есть какая-то разная типизация. Кого вообще это волнует?
КТ315
49
void terminal_scroll() { memmove(terminal_buffer, terminal_buffer + VGA_WIDTH, buffer_size - VGA_WIDTH); memset(terminal_buffer + buffer_size - VGA_WIDTH, 0, VGA_WIDTH); ...
Егор
47
Всем привет! Подскажите, пожалуйста, в чем ошибка? Настраиваю подключение к MySQL. Либы лежат рядом с exe. Все как по "учебнику"
Евгений
16
А можете как-то проверить меня по знаниям по ассемблеру?
A A
132
Здравствуйте! У меня появилась возможность купить книгу "Изучай Haskell во имя добра!". Но я где-то слышал, что эта книга устарела. Насколько это правда??
E
22
Здравствуйте! Я вот на stepic решаю задачи на хаскеле https://stepik.org/lesson/8443/step/8?unit=1578 мой код import Data.List (isInfixOf) removing :: String -> [String] ->...
E
10
Камрады, кто тесно работал с vtv, хотел уточнить. Ширина column задаётся жёстко на этапе создания дерева или можно в рантайме ее менять программно (не мышкой)?
Ed Doc
10
да ладно ... что там неочевидного ? глянуть в исх-ки датасета и/или кверика чтобы понять в каком месте и как выполняется обращения к св-вам blablaSQL - минутное дело, даже е...
Сергей
7
Здесь для arm кто-нибудь кодит ?
Nothing
52
Всем привет, у меня есть сервер принимающий входящие HTTP подключения, как проверить, что подключение было через прокси или нет, есть какие то поля в заголовках по которым мо...
Кибер Бомж
8
Карта сайта