Please check the updated patch. It will check e_entry and p_paddr to decide if need to switch 64 bit in convert.
Current status: I have forced it switch to 64 bit and use startup_64 in kernel directly, it will restart instead of boot the kernel.
YH