Function 70, subfunction 0 - read file with long names support.
Parameters:
- eax = 70 - function number
- ebx = pointer to the information structure
Format of the information structure:
- +0: dword: 0 = subfunction number
- +4: dword: file offset (in bytes)
- +8: dword: 0 (reserved for high dword of offset)
- +12 = +0xC: dword: number of bytes to read
- +16 = +0x10: dword: pointer to buffer for data
- +20 = +0x14: ASCIIZ-name of file, the rules of names forming are
given in the general description
or
- +20 = +0x14: db 0
- +21 = +0x15: dd pointer to ASCIIZ-string with file name
Returned value:
- eax = 0 - success, otherwise file system error code
- ebx = number of read bytes or -1=0xffffffff if file was not found
Remarks:
- If file was ended before last requested block was read,
the function will read as many as it can, and after that return
eax=6 (EOF).
- The function does not allow to read folder (returns eax=10,
access denied).