| 12
 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
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
 100
 101
 102
 103
 104
 105
 106
 107
 108
 109
 110
 111
 112
 113
 114
 115
 116
 117
 118
 119
 120
 121
 122
 123
 124
 125
 126
 127
 128
 129
 130
 131
 132
 133
 134
 135
 136
 
 | eg000:0000 seg000:0000
 seg000:0000
 seg000:0000
 seg000:0000
 seg000:0000
 seg000:0000
 seg000:0000
 seg000:0000
 seg000:0000
 seg000:0000
 seg000:0000
 seg000:0000
 seg000:0000
 seg000:0000
 seg000:0000                 .686p
 seg000:0000                 .mmx
 seg000:0000                 .model small
 seg000:0000
 seg000:0000
 seg000:0000
 seg000:0000
 seg000:0000 seg000          segment byte public 'CODE' use16
 seg000:0000                 assume cs:seg000
 seg000:0000                 assume es:nothing, ss:nothing, ds:nothing, fs:nothing, gs:nothing
 seg000:0000                 aaa
 seg000:0001                 adc     si, [bx]
 seg000:0003                 adc     ax, [bx+si]
 seg000:0003
 seg000:0005                 db    0
 seg000:0006                 db    0
 seg000:0007                 db    0
 seg000:0008                 db    0
 seg000:0009                 db 0FAh
 seg000:000A                 db  31h
 seg000:000B                 db 0C0h
 seg000:000C                 db  8Eh
 seg000:000D                 db 0D8h
 seg000:000E                 db  8Eh
 seg000:000F                 db 0C0h
 seg000:0010                 db  8Eh
 seg000:0011                 db 0D0h
 seg000:0012                 db 0BCh
 seg000:0013                 db 0FFh
 seg000:0014                 db 0FFh
 seg000:0015                 db 0FBh
 seg000:0016
 seg000:0016
 seg000:0016
 seg000:0016 start:
 seg000:0016
 seg000:0016                 call    getchar
 seg000:0019                 cmp     al, 1Bh
 seg000:001B                 jz      short endless_dead
 seg000:001D                 sub     al, 30h
 seg000:001F                 mov     ds:7C08h, al
 seg000:0022                 call    sub_37
 seg000:0025                 mov     eax, ds:7C04h
 seg000:0029                 cmp     eax, ds:7C00h
 seg000:002E                 jnz     short start
 seg000:0030
 seg000:0030 endless_dead:
 seg000:0030
 seg000:0030                 jmp     short endless_dead
 seg000:0030
 seg000:0032
 seg000:0032
 seg000:0032
 seg000:0032
 seg000:0032 getchar         proc near
 seg000:0032                 mov     ah, 0
 seg000:0034                 int     16h
 seg000:0034
 seg000:0036                 retn
 seg000:0036 getchar         endp
 seg000:0036
 seg000:0037
 seg000:0037
 seg000:0037
 seg000:0037
 seg000:0037 sub_37          proc near
 seg000:0037
 seg000:0037
 seg000:0037
 seg000:0037
 seg000:0037                 mov     ah, 0
 seg000:0039                 int     16h
 seg000:0039
 seg000:003B                 cmp     ah, 48h
 seg000:003E                 jz      short add_one
 seg000:0040                 cmp     ah, 50h
 seg000:0043                 jz      short sub
 seg000:0045                 cmp     al, 1Ch
 seg000:0047                 jz      short start
 seg000:0049                 jmp     short sub_37
 seg000:004B
 seg000:004B
 seg000:004B add_one:
 seg000:004B                 xor     ah, ah
 seg000:004D                 mov     al, ds:7C08h
 seg000:0050                 add     ax, 7C04h
 seg000:0053                 mov     bx, ax
 seg000:0055                 add     byte ptr [bx], 1
 seg000:0058
 seg000:0058 locret_58:
 seg000:0058
 seg000:0058                 retn
 seg000:0059
 seg000:0059
 seg000:0059 sub:
 seg000:0059                 xor     ah, ah
 seg000:005B                 mov     al, ds:7C08h
 seg000:005E                 add     ax, 7C04h
 seg000:0061                 mov     bx, ax
 seg000:0063                 sub     byte ptr [bx], 1
 seg000:0066                 retn
 seg000:0066 sub_37          endp
 seg000:0066
 seg000:0066
 seg000:0067                 db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
 seg000:0089                 db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
 seg000:00AB                 db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
 seg000:00CD                 db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
 seg000:00EF                 db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
 seg000:0111                 db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
 seg000:0133                 db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
 seg000:0155                 db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
 seg000:0177                 db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
 seg000:0199                 db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
 seg000:01BB                 db 0,0,0,0,0,0,0,0,0,0,0
 seg000:01C6 aBi0sctfXxxxxxx db 'bi0sctf{XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX}U'
 seg000:01FF                 db 0AAh
 seg000:01FF seg000          ends
 seg000:01FF
 seg000:01FF
 seg000:01FF                 end
 
 |