Use std::fs::File with std::io::Read to read binary data and std::io::Write to write it, handling errors with ? or unwrap().
use std::fs::File;
use std::io::{Read, Write};
fn main() -> std::io::Result<()> {
let mut file = File::open("data.bin")?;
let mut buffer = Vec::new();
file.read_to_end(&mut buffer)?;
let mut out = File::create("copy.bin")?;
out.write_all(&buffer)?;
Ok(())
}