skip e count são ambos expressos em blocos. Você está pedindo para pular 518358 × 50311 bytes.
dd pode deixar os erros não serem detectados , por isso é melhor evitar de qualquer maneira.
Com a maioria das variantes do Unix (incluindo o BusyBox, mas não o OpenSBD), você pode passar um número de bytes para head e tail . Lembre-se de que tail conta a partir de 1.
<file tail -c "$((0x7E8D6 + 1))" | head -c "$((0x8AD5D - 0x7E8D6))" >result