-
Notifications
You must be signed in to change notification settings - Fork 23
/
Copy pathSSP_SUB.X86
56 lines (51 loc) · 908 Bytes
/
SSP_SUB.X86
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
ssp_resdisp: xor di, di
mov cx, 1950h
call boxclear
ssp_rboxdisp: db FIXCS
lodsb
cmp al, 0
je short ssp_rtxtdisp
mov cl, al
db FIXCS
lodsw
mov dx, ax
db FIXCS
lodsw
mov bx, ax
call puttextbox
jmps ssp_rboxdisp
ssp_rtxtdisp: db FIXCS
lodsb
cmp al, 0
je ssp_resdsp_ed
mov cl, al
db FIXCS
lodsw
mov dx, ax
db FIXCS
lodsw
push si
mov si, ax
call disptextjis
pop si
jmps ssp_rtxtdisp
ssp_resdsp_ed: ret
ssp_keyevent: push ax
keyeventst: mov al, -1
keyeventlp: out 5fh, al
xchg al, ds:[KEYSTAT]
out 5fh, al
cmp al, -1
je keyeventlp
push si
keyeventsea: mov ah, cs:[si]
cmp ah, al
je keyeventhit
add si, 3
cmp ah, -1
jne keyeventsea
pop si
jmps keyeventst
keyeventhit: pop ax
pop ax
jmp word ptr cs:[si+1]