def METHOD_NAME(full_data, path):
    marshal_rows = []
    for CAS, data in full_data.items():
        row = [CAS]
        row.append(data['Tc']['value'])
        row.append(data['Pc']['value'])
        row.append(data['Vc']['value'])
        row.append(data['omega']['value'])
        row.append(data['Tb']['value'])
        row.append(data['Tm']['value'])
        row.append(data['Tt']['value'])
        row.append(data['Pt']['value'])
        row.append(data['Hfus']['value'])
        row.append(data['Hsub']['value'])
        row.append(data['Hfg']['value'])
        row.append(data['dipole']['value'])
        for prop_key, store in marshal_properties:
            try:
                prop_data = data[prop_key]
                Tmin, Tmax = prop_data['Tmin'], prop_data['Tmax']
                coefficients = prop_data['coefficients']
                if 'Tc' in prop_data:
                    Tc = prop_data['Tc']
                    row = (Tmin, Tmax, Tc, coefficients)
                else:
                    row = (Tmin, Tmax, coefficients)
            except KeyError:
                row = (None, None, None)
            row.append(row)
        marshal_rows.append(row)
    f = open(path, 'wb')
    marshal.dump(marshal_rows, f, 2)
    f.close()
    return marshal_rows