ReC98/th04_memchk.asm

119 lines
2.5 KiB
NASM
Raw Normal View History

;
; +-------------------------------------------------------------------------+
; | This file has been generated by The Interactive Disassembler (IDA) |
; | Copyright (c) 2009 by Hex-Rays, <support@hex-rays.com> |
; +-------------------------------------------------------------------------+
;
; Input MD5 : 9466D867385BD4CC0A6FD3E3D4E9FB01
; File Name : th04/ZUN.COM:MEMCHK (-M)
; Format : MS-DOS COM-file
; Base Address: 0h Range: 100h-10E2h Loaded length: FE2h
; OS type : MS DOS
; Application type: Executable 16bit
.286
DGROUP group _TEXT, _DATA
_TEXT segment byte 'CODE' use16
assume cs:_TEXT
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
; int __cdecl main(int argc, const char **argv, const char **envp)
public _main
_main proc near
var_2 = word ptr -2
argc = word ptr 4
argv = word ptr 6
envp = word ptr 8
enter 2, 0
call sub_3B6
mov [bp+var_2], ax
push offset DGROUP:asc_E8E ; "<22>󂫃<EFBFBD><F382AB83>C<EFBFBD><43><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>`<60>F<EFBFBD>b<EFBFBD>N\n\n"
call sub_38E
cmp [bp+var_2], 7530h
ja short loc_389
push offset DGROUP:aVVxvVSlvsvVvvi ; "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƒ<EFBFBD><C691><EFBFBD><EFBFBD>Ȃ<EFBFBD><C882><EFBFBD><EFBFBD><EFBFBD><EFBFBD>A<EFBFBD><41><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E282B5>"...
call sub_38E
mov ax, 255
leave
retn
; ---------------------------------------------------------------------------
loc_389:
xor ax, ax
leave
retn
_main endp
db 0
; =============== S U B R O U T I N E =======================================
sub_38E proc near
mov bx, sp
mov cx, si
mov si, ss:[bx+2]
lodsb
or al, al
jz short loc_3B0
mov ah, 2
loc_39D:
cmp al, 0Ah
jnz short loc_3A7
mov dl, 0Dh
int 21h ; DOS - DISPLAY OUTPUT
; DL = character to send to standard output
mov al, 0Ah
loc_3A7:
mov dl, al
int 21h ; DOS - DISPLAY OUTPUT
; DL = character to send to standard output
lodsb
or al, al
jnz short loc_39D
loc_3B0:
mov si, cx
retn 2
sub_38E endp
nop
; =============== S U B R O U T I N E =======================================
sub_3B6 proc near
mov ah, 48h
mov bx, 0FFFFh
int 21h ; DOS - 2+ - ALLOCATE MEMORY
; BX = number of 16-byte paragraphs desired
cmp ax, 8
jnz short loc_3C6
mov ax, bx
clc
retn
; ---------------------------------------------------------------------------
loc_3C6:
xor ax, ax
stc
retn
sub_3B6 endp
_TEXT ends
_DATA segment byte 'DATA' use16
asc_E8E db '<27>󂫃<EFBFBD><F382AB83>C<EFBFBD><43><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>`<60>F<EFBFBD>b<EFBFBD>N',0Ah
db 0Ah,0
aVVxvVSlvsvVvvi db '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƒ<EFBFBD><C691><EFBFBD><EFBFBD>Ȃ<EFBFBD><C882><EFBFBD><EFBFBD><EFBFBD><EFBFBD>A<EFBFBD><41><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ă<EFBFBD><C482><EFBFBD><EFBFBD>N<EFBFBD><4E><EFBFBD><EFBFBD><EFBFBD>Ă<EFBFBD>',0
_DATA ends
end