INT 0x13 is literally how GRUB's stage-1 boot sector and MS-DOS's MBR code have loaded the next boot stage from disk since the original IBM PC, and the 0x55AA boot signature check you implement here is the same one every BIOS performs before jumping to 0x7C00. CHS-vs-LBA addressing bugs in this exact code path are why old bootloaders silently failed on drives larger than 8GB.