public MachObjectFile(byte[] buffer, int offset, int length) { Header = new MachHeader(buffer, offset); offset += Header.Length; for (int index = 0; index < Header.NumberOfLoadCommands; index++) { LoadCommand command = LoadCommand.ReadCommand(buffer, offset); LoadCommands.Add(command); offset += (int)command.CommandSize; } int dataLength = (int)(length - Header.Length - Header.SizeOfLoadCommands); DataOffset = (int)(Header.Length + Header.SizeOfLoadCommands); Data = ByteReader.ReadBytes(buffer, offset, dataLength); }
public static bool IsMachObjectFile(byte[] buffer, int offset) { return(MachHeader.IsMachHeader(buffer, offset)); }