Reallocate Upper Memory Block (Function 12h)

ARGS: AH = 12h
BX = New size for UMB in paragraphs
DX = Segment number of the UMB to reallocate

RETS: AX = 1 if the block was reallocated, 0 otherwise

ERRS: BL = 80h if the function is not implemented
BL = B0h if no UMB large enough to satisfy the request
is available.
In this event, DX is returned with the size of
the largest UMB that is available.
BL = B2h if the UMB segment number is invalid

This function attempts to reallocate an Upper Memory Block to a newly
specified size. If the new size is smaller than the old block's size,
all data at the upper end of the block is lost.

Note: This function is new to version 3.0