You overwrote AX register when doing mov ax, 0x0000 so AH and AL don't have proper values when calling int 13h.
mov ax, 0x0000
(8-bit AH and AL registers are high and low bytes of 16-bit AX register)