PKHeX.SAV_OPower.SaveData C# (CSharp) Method

SaveData() private method

private SaveData ( ) : void
return void
        private void SaveData()
        {
            ComboBox[] cba =
            {
                CB_1, CB_2, CB_3, CB_4, CB_5, CB_6, CB_7, CB_8, CB_9,
                CB_10, CB_11, CB_12, CB_13, CB_14, CB_15, CB_16, CB_17,
            };
            int[] offsets =
            {
                1,6,0xB,0x10,0x15,
                0x1A,0x1D,0x20,0x23,
                0x27,
                0x2C,0x2F,0x32,0x35,0x38,0x3B,0x3E,
            };
            int o = opoweroffset + m_parent.savindex * 0x7F000; // offset

            for (int i = 0; i < cba.Length; i++)
            {
                byte[] data = new byte[cba[i].Items.Count - 1];
                for (int c = 0; c < cba[i].SelectedIndex; c++)
                {
                    data[c] = 1;
                }
                Array.Copy(data, 0, m_parent.savefile, o + offsets[i], data.Length);
            }

            // Save Maxes

            m_parent.savefile[m_parent.savindex * 0x7F000 + opoweroffset + 0x00] = Convert.ToByte(CHK_1.Checked);
            m_parent.savefile[m_parent.savindex * 0x7F000 + opoweroffset + 0x05] = Convert.ToByte(CHK_2.Checked);
            m_parent.savefile[m_parent.savindex * 0x7F000 + opoweroffset + 0x0A] = Convert.ToByte(CHK_3.Checked);
            m_parent.savefile[m_parent.savindex * 0x7F000 + opoweroffset + 0x0F] = Convert.ToByte(CHK_4.Checked);
            m_parent.savefile[m_parent.savindex * 0x7F000 + opoweroffset + 0x14] = Convert.ToByte(CHK_5.Checked);
            m_parent.savefile[m_parent.savindex * 0x7F000 + opoweroffset + 0x19] = Convert.ToByte(CHK_6.Checked);
            m_parent.savefile[m_parent.savindex * 0x7F000 + opoweroffset + 0x26] = Convert.ToByte(CHK_7.Checked);
            m_parent.savefile[m_parent.savindex * 0x7F000 + opoweroffset + 0x2B] = Convert.ToByte(CHK_8.Checked);
        }
        private int getIndex(int o, int l)