ifndef ??version
?debug macro
endm
endif
?debug S "keygen.c"
KEYGEN_TEXT segment byte public 'CODE'
DGROUP group _DATA,_BSS
assume cs:KEYGEN_TEXT,ds:DGROUP,ss:DGROUP
KEYGEN_TEXT ends
_DATA segment word public 'DATA'
d@ label byte
d@w label word
_DATA ends
_BSS segment word public 'BSS'
b@ label byte
b@w label word
?debug C E972277433086B657967656E2E63
?debug C E957A7972619443A5C57696E2D54435C494E434C5544455C737464+
?debug C 696F2E68
?debug C E957A797261A443A5C57696E2D54435C494E434C5544455C737464+
?debug C 6172672E68
_BSS ends
_DATA segment word public 'DATA'
db 0
db 254 dup (0)
_DATA ends
KEYGEN_TEXT segment byte public 'CODE'
; ?debug L 3
_main proc far
push bp
mov bp,sp
sub sp,266
push si
push di
; ?debug L 4
xor si,si
push ss
lea ax,word ptr [bp-256]
push ax
push ds
mov ax,offset DGROUP:d@
push ax
mov cx,255
call far ptr SCOPY@
; ?debug L 7
mov ax,offset DGROUP:s@
push ax
call far ptr _printf
pop cx
; ?debug L 8
mov ax,offset DGROUP:s@+54
push ax
call far ptr _printf
pop cx
; ?debug L 9
mov ax,offset DGROUP:s@+108
push ax
call far ptr _printf
pop cx
; ?debug L 10
mov ax,offset DGROUP:s@+162
push ax
call far ptr _printf
pop cx
; ?debug L 11
mov ax,offset DGROUP:s@+108
push ax
call far ptr _printf
pop cx
; ?debug L 12
mov ax,offset DGROUP:s@+216
push ax
call far ptr _printf
pop cx
; ?debug L 13
mov ax,offset DGROUP:s@+108
push ax
call far ptr _printf
pop cx
; ?debug L 14
mov ax,offset DGROUP:s@+270
push ax
call far ptr _printf
pop cx
; ?debug L 15
mov ax,offset DGROUP:s@+108
push ax
call far ptr _printf
pop cx
; ?debug L 16
mov ax,offset DGROUP:s@+324
push ax
call far ptr _printf
pop cx
; ?debug L 17
mov ax,offset DGROUP:s@+378
push ax
call far ptr _printf
pop cx
; ?debug L 18
mov ax,offset DGROUP:s@+433
push ax
call far ptr _printf
pop cx
; ?debug L 19
lea ax,word ptr [bp-256]
push ax
mov ax,offset DGROUP:s@+473
push ax
call far ptr _scanf
pop cx
pop cx
; ?debug L 21
lea ax,word ptr [bp-256]
push ax
call far ptr _strlen
pop cx
mov word ptr [bp-266],ax
; ?debug L 23
xor di,di
jmp short @5
@4:
; ?debug L 24
mov al,byte ptr [bp+di-256]
cbw
add si,ax
inc di
@5:
cmp di,word ptr [bp-266]
jl @4
; ?debug L 25
mov ax,si
mov bx,10
cwd
idiv bx
mov si,dx
; ?debug L 27
mov al,byte ptr [bp-256]
cbw
or ax,65
mov word ptr [bp-264],ax
; ?debug L 28
cwd
idiv bx
mov word ptr [bp-264],dx
; ?debug L 30
mov al,byte ptr [bp-255]
cbw
or ax,86
mov word ptr [bp-262],ax
; ?debug L 31
cwd
idiv bx
mov word ptr [bp-262],dx
; ?debug L 33
mov al,byte ptr [bp-256]
cbw
or ax,73
mov word ptr [bp-260],ax
; ?debug L 34
cwd
idiv bx
mov word ptr [bp-260],dx
; ?debug L 36
mov al,byte ptr [bp-255]
cbw
or ax,67
mov word ptr [bp-258],ax
; ?debug L 37
cwd
idiv bx
mov word ptr [bp-258],dx
; ?debug L 39
push si
push dx
push word ptr [bp-260]
push word ptr [bp-262]
push word ptr [bp-264]
mov ax,offset DGROUP:s@+476
push ax
call far ptr _printf
add sp,12
; ?debug L 41
call far ptr _getch
; ?debug L 42
xor ax,ax
; ?debug L 43
pop di
pop si
mov sp,bp
pop bp
ret
_main endp
KEYGEN_TEXT ends
?debug C E9
_DATA segment word public 'DATA'
s@ label byte
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 10
db 0
db 47
db 47
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 79
db 112
db 101
db 110
db 32
db 86
db 105
db 100
db 101
db 111
db 32
db 67
db 111
db 110
db 118
db 101
db 114
db 116
db 101
db 114
db 32
db 51
db 46
db 48
db 46
db 49
db 32
db 45
db 32
db 75
db 101
db 121
db 103
db 101
db 110
db 32
db 32
db 32
db 32
db 32
db 32
db 47
db 47
db 10
db 0
db 47
db 47
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 47
db 47
db 10
db 0
db 47
db 47
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 65
db 117
db 116
db 104
db 111
db 114
db 58
db 32
db 75
db 117
db 78
db 103
db 66
db 105
db 77
db 91
db 68
db 70
db 67
db 71
db 93
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 47
db 47
db 10
db 0
db 47
db 47
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 69
db 45
db 109
db 97
db 105
db 108
db 58
db 32
db 107
db 117
db 110
db 103
db 98
db 105
db 109
db 64
db 49
db 54
db 51
db 46
db 99
db 111
db 109
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 47
db 47
db 10
db 0
db 47
db 47
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 79
db 83
db 32
db 58
db 32
db 87
db 105
db 110
db 88
db 80
db 44
db 32
db 80
db 69
db 105
db 68
db 44
db 32
db 79
db 108
db 108
db 121
db 100
db 98
db 103
db 44
db 32
db 84
db 117
db 114
db 98
db 111
db 32
db 67
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 47
db 47
db 10
db 0
db 47
db 47
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 68
db 97
db 116
db 101
db 32
db 58
db 32
db 32
db 50
db 48
db 48
db 53
db 45
db 48
db 55
db 45
db 48
db 52
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 32
db 47
db 47
db 10
db 0
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 47
db 10
db 10
db 0
db 80
db 108
db 101
db 97
db 115
db 101
db 32
db 73
db 110
db 112
db 117
db 116
db 32
db 85
db 115
db 101
db 114
db 32
db 78
db 97
db 109
db 101
db 91
db 85
db 115
db 101
db 114
db 32
db 78
db 97
db 109
db 101
db 62
db 61
db 32
db 50
db 93
db 58
db 32
db 0
db 37
db 115
db 0
db 10
db 89
db 111
db 117
db 114
db 32
db 82
db 101
db 103
db 105
db 115
db 116
db 114
db 97
db 116
db 105
db 111
db 110
db 32
db 67
db 111
db 100
db 101
db 32
db 105
db 115
db 32
db 58
db 32
db 37
db 100
db 37
db 100
db 37
db 100
db 37
db 100
db 37
db 100
db 56
db 56
db 56
db 0
_DATA ends
extrn _strlen:far
extrn _printf:far
extrn _scanf:far
extrn _getch:far
extrn SCOPY@:far
KEYGEN_TEXT segment byte public 'CODE'
KEYGEN_TEXT ends
public _main
end