public StructureHeaderNode method_3() { var @class = new StructureHeaderNode(); @class.method_3(new UnicodeStructureNode("title", Title)); if (Songs.Count == 0) { @class.method_3(new ArrayPointerNode("songs", new FloatListNode(true))); } else { var list = new List <int>(); foreach (var current in Songs) { list.Add(QbSongClass1.AddKeyToDictionary(current.Name)); } @class.method_3(new ArrayPointerNode("songs", new TagArray(list))); } if (Boss) { @class.method_3(new TagStructureNode(0, "boss")); } if (Encorep1) { @class.method_3(new TagStructureNode(0, "encorep1")); } if (Encorep2) { @class.method_3(new TagStructureNode(0, "encorep2")); } if (AerosmithEncoreP1) { @class.method_3(new TagStructureNode(0, "aerosmith_encore_p1")); } if (Level != null && Level != "No Preset Stage") { @class.method_3(new TagStructureNode("level", Level)); } if (Defaultunlocked != 0) { @class.method_3(new IntegerStructureNode("defaultunlocked", Defaultunlocked)); } if (!CompletionMovie.Equals("")) { @class.method_3(new AsciiStructureNode("completion_movie", CompletionMovie)); } if (!SetlistIcon.Equals("No Icon")) { @class.method_3(new TagStructureNode("setlist_icon", SetlistIcon)); } if (Nocash) { @class.method_3(new TagStructureNode(0, "nocash")); } if (Unlockall) { @class.method_3(new TagStructureNode(0, "unlockall")); } return(@class); }
public StructureHeaderNode method_3() { StructureHeaderNode @class = new StructureHeaderNode(); @class.method_3(new UnicodeStructureNode("title", this.title)); if (this.songs.Count == 0) { @class.method_3(new ArrayPointerNode("songs", new FloatListNode(true))); } else { List <int> list = new List <int>(); foreach (GH3Song current in this.songs) { list.Add(QbSongClass1.smethod_9(current.name)); } @class.method_3(new ArrayPointerNode("songs", new TagArray(list))); } if (this.boss) { @class.method_3(new TagStructureNode(0, "boss")); } if (this.encorep1) { @class.method_3(new TagStructureNode(0, "encorep1")); } if (this.encorep2) { @class.method_3(new TagStructureNode(0, "encorep2")); } if (this.aerosmith_encore_p1) { @class.method_3(new TagStructureNode(0, "aerosmith_encore_p1")); } if (this.level != null && this.level != "No Preset Stage") { @class.method_3(new TagStructureNode("level", this.level)); } if (this.defaultunlocked != 0) { @class.method_3(new IntegerStructureNode("defaultunlocked", this.defaultunlocked)); } if (!this.completion_movie.Equals("")) { @class.method_3(new AsciiStructureNode("completion_movie", this.completion_movie)); } if (!this.setlist_icon.Equals("No Icon")) { @class.method_3(new TagStructureNode("setlist_icon", this.setlist_icon)); } if (this.nocash) { @class.method_3(new TagStructureNode(0, "nocash")); } if (this.unlockall) { @class.method_3(new TagStructureNode(0, "unlockall")); } return(@class); }
public string method_2() { if (QbSongClass1.smethod_3(this.int_0)) { return(QbSongClass1.smethod_5(this.int_0)); } return("0x" + base.IntToHex32Bit(this.int_0)); }
public void Add(GH3Song gh3Song_0) { if (!base.ContainsKey(gh3Song_0.getSongName())) { base.Add(gh3Song_0.getSongName(), gh3Song_0); QbSongClass1.smethod_9(gh3Song_0.getSongName()); } }
public string imethod_9() { if (!QbSongClass1.ContainsKey(imethod_7())) { return("0x" + KeyGenerator.ValToHex32Bit(imethod_7())); } return(QbSongClass1.GetDictString(imethod_7())); }
public string method_2() { if (QbSongClass1.ContainsKey(Int0)) { return(QbSongClass1.GetDictString(Int0)); } return("0x" + IntToHex32Bit(Int0)); }
public override string GetText() { if (QbSongClass1.smethod_3(this.int_0)) { return(QbSongClass1.smethod_5(this.int_0) + " (Script)"); } return(KeyGenerator.ValToHex32bit(this.int_0) + " (Script Tag)"); }
public void Add(Gh3Song gh3Song0) { if (!ContainsKey(gh3Song0.GetSongName())) { base.Add(gh3Song0.GetSongName(), gh3Song0); QbSongClass1.AddKeyToDictionary(gh3Song0.GetSongName()); } }
public override string GetText() { if (QbSongClass1.ContainsKey(Int0)) { return(QbSongClass1.GetDictString(Int0) + " (Script)"); } return(KeyGenerator.ValToHex32Bit(Int0) + " (Script Tag)"); }
public string imethod_9() { if (!QbSongClass1.smethod_3(this.imethod_7())) { return("0x" + KeyGenerator.ValToHex32bit(this.imethod_7())); } return(QbSongClass1.smethod_5(this.imethod_7())); }
public int imethod_7() { if (base.Parent != null && base.Parent is zzPakNode1 && !(base.Parent as zzPakNode1).bool_0) { return(QbSongClass1.smethod_9((base.Parent as zzPakNode1).vmethod_0() + base.Text)); } return(this.int_3); }
public int imethod_7() { if (Parent != null && Parent is ZzPakNode1 && !(Parent as ZzPakNode1).Bool0) { return(QbSongClass1.AddKeyToDictionary((Parent as ZzPakNode1).vmethod_0() + Text)); } return(_int3); }
public override void vmethod_0() { zzGenericNode1 @class = this.class318_0.zzGetNode1("scripts\\guitar\\guitar_events.qb"); ((StructureHeaderNode)@class.method_5 <TagStructureNode>(new TagStructureNode("event", "star_power_on")).Parent).method_5 <TagStructureNode>(new TagStructureNode("scr")).method_9(this.bool_0 ? "guitarevent_starpoweroff" : "guitarevent_starpoweron"); if (!this.bool_0) { @class.method_5 <ScriptRootNode>(new ScriptRootNode("hit_note_fx")).int_0 = QbSongClass1.smethod_9("hit_note_fx_empty"); @class.method_5 <ScriptRootNode>(new ScriptRootNode("guitarevent_starsequencebonus")).int_0 = QbSongClass1.smethod_9("guitarevent_starsequencebonus_empty"); @class.method_5 <ScriptRootNode>(new ScriptRootNode("guitarevent_multiplier4xon_spawned")).int_0 = QbSongClass1.smethod_9("guitarevent_multiplier4xon_spawned_empty"); @class.method_5 <ScriptRootNode>(new ScriptRootNode("first_gem_fx")).int_0 = QbSongClass1.smethod_9("first_gem_fx_empty"); @class.method_5 <ScriptRootNode>(new ScriptRootNode("hit_note_fx_original")).int_0 = QbSongClass1.smethod_9("hit_note_fx"); @class.method_5 <ScriptRootNode>(new ScriptRootNode("guitarevent_starsequencebonus_original")).int_0 = QbSongClass1.smethod_9("guitarevent_starsequencebonus"); @class.method_5 <ScriptRootNode>(new ScriptRootNode("guitarevent_multiplier4xon_spawned_original")).int_0 = QbSongClass1.smethod_9("guitarevent_multiplier4xon_spawned"); @class.method_5 <ScriptRootNode>(new ScriptRootNode("first_gem_fx_original")).int_0 = QbSongClass1.smethod_9("first_gem_fx"); return; } @class.method_5 <ScriptRootNode>(new ScriptRootNode("hit_note_fx")).int_0 = QbSongClass1.smethod_9("hit_note_fx_original"); @class.method_5 <ScriptRootNode>(new ScriptRootNode("guitarevent_starsequencebonus")).int_0 = QbSongClass1.smethod_9("guitarevent_starsequencebonus_original"); @class.method_5 <ScriptRootNode>(new ScriptRootNode("guitarevent_multiplier4xon_spawned")).int_0 = QbSongClass1.smethod_9("guitarevent_multiplier4xon_spawned_original"); @class.method_5 <ScriptRootNode>(new ScriptRootNode("first_gem_fx")).int_0 = QbSongClass1.smethod_9("first_gem_fx_original"); ScriptRootNode class2 = @class.method_5 <ScriptRootNode>(new ScriptRootNode("hit_note_fx_empty")); if (class2 != null) { class2.int_0 = QbSongClass1.smethod_9("hit_note_fx"); } else { @class.method_3(new ScriptRootNode("hit_note_fx", "scripts\\guitar\\guitar_events.qb", new QbScriptNode())); } class2 = @class.method_5 <ScriptRootNode>(new ScriptRootNode("guitarevent_starsequencebonus_empty")); if (class2 != null) { class2.int_0 = QbSongClass1.smethod_9("guitarevent_starsequencebonus"); } else { @class.method_3(new ScriptRootNode("guitarevent_starsequencebonus", "scripts\\guitar\\guitar_events.qb", new QbScriptNode())); } class2 = @class.method_5 <ScriptRootNode>(new ScriptRootNode("guitarevent_multiplier4xon_spawned_empty")); if (class2 != null) { class2.int_0 = QbSongClass1.smethod_9("guitarevent_multiplier4xon_spawned"); } else { @class.method_3(new ScriptRootNode("guitarevent_multiplier4xon_spawned", "scripts\\guitar\\guitar_events.qb", new QbScriptNode())); } class2 = @class.method_5 <ScriptRootNode>(new ScriptRootNode("first_gem_fx_empty")); if (class2 != null) { class2.int_0 = QbSongClass1.smethod_9("first_gem_fx"); return; } @class.method_3(new ScriptRootNode("first_gem_fx", "scripts\\guitar\\guitar_events.qb", new QbScriptNode())); }
public override string GetText() { var str = (Nodes.Count > 0) ? method_2(0).GetText() : "NULL"; if (QbSongClass1.ContainsKey(Int0)) { return(QbSongClass1.GetDictString(Int0) + " = " + str); } return(KeyGenerator.ValToHex32Bit(Int0) + " (Tag) = " + str); }
public void method_3(string string_1) { if (string_1 == null) { this.string_0 = null; return; } this.string_0 = string_1; this.int_0 = QbSongClass1.smethod_6(string_1); }
public zzCocoaNode12(string string_0) { base.Text = KeyGenerator.GetFileName(string_0); this.int_2 = QbSongClass1.smethod_9(string_0.Substring(string_0.LastIndexOf('.'))); this.int_3 = QbSongClass1.smethod_9(string_0); this.int_4 = QbSongClass1.smethod_9(KeyGenerator.GetFileNameNoExt(string_0)); base.ImageIndex = 39; base.SelectedImageIndex = 39; this.byte_0 = null; }
public override string GetText() { string text = (base.Nodes.Count > 0) ? base.method_2(0).GetText() : "NULL"; if (QbSongClass1.smethod_3(this.int_0)) { return(QbSongClass1.smethod_5(this.int_0) + " = " + text); } return("0x" + KeyGenerator.ValToHex32bit(this.int_0) + " (Tag) = " + text); }
public void method_3(string string1) { if (string1 == null) { _string0 = null; return; } _string0 = string1; Int0 = QbSongClass1.smethod_6(string1); }
public ZzCocoaNode12(string string0) { Text = KeyGenerator.GetFileName(string0); _int2 = QbSongClass1.AddKeyToDictionary(string0.Substring(string0.LastIndexOf('.'))); _int3 = QbSongClass1.AddKeyToDictionary(string0); _int4 = QbSongClass1.AddKeyToDictionary(KeyGenerator.GetFileNameNoExt(string0)); ImageIndex = 39; SelectedImageIndex = 39; _byte0 = null; }
public void method_13(ZzGenericNode1 class3080) { var list = new List <int>(); var list2 = new List <ZzUnkNode294>(); foreach (var current in Keys) { list.Add(QbSongClass1.AddKeyToDictionary(current)); list2.Add(base[current].vmethod_5()); } ((TagArray)class3080.method_5(new ArrayPointerRootNode("gh3_songlist")).method_7()).method_12(list); class3080.method_5(new StructurePointerRootNode("permanent_songlist_props")).method_7().method_9(list2); }
public void method_0(Gh3Song gh3Song0, bool bool0) { if (!ContainsKey(gh3Song0.GetSongName())) { base.Add(gh3Song0.GetSongName(), gh3Song0); QbSongClass1.AddKeyToDictionary(gh3Song0.GetSongName()); return; } if (base[gh3Song0.GetSongName()].IsEditable() && bool0) { base[gh3Song0.GetSongName()].vmethod_0(gh3Song0); } }
public void method_13(zzGenericNode1 class308_0) { List <int> list = new List <int>(); List <zzUnkNode294> list2 = new List <zzUnkNode294>(); foreach (string current in base.Keys) { list.Add(QbSongClass1.smethod_9(current)); list2.Add(base[current].vmethod_5()); } ((TagArray)class308_0.method_5 <ArrayPointerRootNode>(new ArrayPointerRootNode("gh3_songlist")).method_7()).method_12(list); class308_0.method_5 <StructurePointerRootNode>(new StructurePointerRootNode("permanent_songlist_props")).method_7().method_9(list2); }
public void method_0(GH3Song gh3Song_0, bool bool_0) { if (!base.ContainsKey(gh3Song_0.getSongName())) { base.Add(gh3Song_0.getSongName(), gh3Song_0); QbSongClass1.smethod_9(gh3Song_0.getSongName()); return; } if (base[gh3Song_0.getSongName()].isEditable() && bool_0) { base[gh3Song_0.getSongName()].vmethod_0(gh3Song_0); } }
public zzCocoaNode12(int int_6, int int_7, int int_8, int int_9, int int_10, int int_11, Enum35 enum35_1) { base.Text = (QbSongClass1.smethod_3(int_9) ? KeyGenerator.GetFileName(QbSongClass1.smethod_5(int_9)) : ("0x" + KeyGenerator.ValToHex32bit(int_9))); this.int_2 = int_6; this.int_0 = int_7; this.int_1 = int_8; this.int_3 = int_9; this.int_4 = int_10; this.int_5 = int_11; this.enum35_0 = enum35_1; base.ImageIndex = 39; base.SelectedImageIndex = 39; this.byte_0 = null; }
public ZzCocoaNode12(int int6, int int7, int int8, int int9, int int10, int int11, Enum35 enum351) { Text = (QbSongClass1.ContainsKey(int9) ? KeyGenerator.GetFileName(QbSongClass1.GetDictString(int9)) : ("0x" + KeyGenerator.ValToHex32Bit(int9))); _int2 = int6; _int0 = int7; _int1 = int8; _int3 = int9; _int4 = int10; _int5 = int11; _enum350 = enum351; ImageIndex = 39; SelectedImageIndex = 39; _byte0 = null; }
private void method_19() { if (String1 != null) { Class3180 = new ZzPakNode2(String1, false); } using (var stream = new Stream26(File.Open(String0, FileMode.Open, FileAccess.Read, FileShare.Read))) { var num = 0; var num2 = (int)stream.Length; if (num2 == 0) { throw new Exception("Pak File is empty!"); } var int_ = stream.ReadInt(); stream.ReverseEndianness = (Bool2 = (!QbSongClass1.ContainsKey(int_) || !QbSongClass1.GetDictString(int_).StartsWith("."))); Bool3 = (stream.ReadInt() < stream.Length); var @enum = (Enum35)stream.ReadIntAt(28); Bool1 = ((@enum & Enum35.Flag3) == Enum35.Flag0); Int0 = stream.ReadIntAt(Bool1 ? 12 : 16, Bool2 && (@enum & Enum35.Flag4) == Enum35.Flag0 && (@enum & Enum35.Flag5) == Enum35.Flag0); while (true) { var enum2 = (Enum35)stream.ReadIntAt(num + 28, false); var bool_ = Bool2 && (enum2 & Enum35.Flag4) == Enum35.Flag0 && (enum2 & Enum35.Flag5) == Enum35.Flag0; var num3 = stream.ReadIntAt(num, bool_); if (QbSongClass1.ContainsKey(num3) && (QbSongClass1.GetDictString(num3).Equals(".last") || QbSongClass1.GetDictString(num3).Equals("last"))) { break; } var num4 = stream.ReadInt(bool_); if (!Bool3) { num4 = num4 - num2 + num; } if (num4 < 0) { num4 = 0; } var int2 = stream.ReadInt(bool_); var num5 = stream.ReadIntAt(num + (Bool1 ? 16 : 12), bool_); var num6 = stream.ReadIntAt(num + 20, bool_); var int3 = stream.ReadInt(bool_); stream.Position += 4L; if ((enum2 & Enum35.Flag3) != Enum35.Flag0) { Bool1 = false; var text = Stream260.ReadString(160); var num7 = text.IndexOf('\0'); if (num7 >= 0) { text = text.Substring(0, num7); } if (QbSongClass1.ContainsKey(num3) && !QbSongClass1.GetDictString(num3).EndsWith(".qb.ngc") && !QbSongClass1.GetDictString(num3).EndsWith(".qb.ps2")) { if (!Bool2) { if (num5 == KeyGenerator.GetQbKey(text = text.Replace("/", "\\").Replace(".ps2", ""), true)) { QbSongClass1.AddKeyToDictionary(text); } else if (num5 == KeyGenerator.GetQbKey( text = text.Replace("/", "\\").Replace(".qb", ""), true)) { QbSongClass1.AddKeyToDictionary(text); } } else if (num5 == KeyGenerator.GetQbKey(text = text.Replace("/", "\\").Replace(".ngc", ""), true)) { QbSongClass1.AddKeyToDictionary(text); } else if (num5 == KeyGenerator.GetQbKey(text = text.Replace("/", "\\").Replace(".qb", ""), true)) { QbSongClass1.AddKeyToDictionary(text); } } else { var text2 = "abcdefghijklmnopqrstuvwxyz"; for (var i = 0; i < text2.Length; i++) { var c = text2[i]; if (num5 == KeyGenerator.GetQbKey(c + text, true)) { QbSongClass1.AddKeyToDictionary(c + text); } } } if (num6 == KeyGenerator.GetQbKey(text = KeyGenerator.GetFileNameNoExt(text), true)) { QbSongClass1.AddKeyToDictionary(text); } } TreeNode treeNode; if (QbSongClass1.ContainsKey(num3) && QbSongClass1.GetDictString(num3).EndsWith("qb")) { treeNode = new Class309(num3, num4, int2, num5, num6, int3, enum2); } else if (QbSongClass1.ContainsKey(num3) && QbSongClass1.GetDictString(num3).Contains("qs")) { treeNode = new Class328(num3, num4, int2, num5, num6, int3, enum2); } else { treeNode = new ZzCocoaNode12(num3, num4, int2, num5, num6, int3, enum2); } if (QbSongClass1.ContainsKey(num5)) { method_1(QbSongClass1.GetDictString(num5), treeNode); } else { method_5(num5, (INterface12)treeNode); } num += (((enum2 & Enum35.Flag3) != Enum35.Flag0) ? 192 : 32); } } Stream260 = new Stream26(File.Open(String2, FileMode.Open, FileAccess.Read, FileShare.Read)); if (Stream260.Length == 0L) { throw new Exception("Pab File is empty!"); } }
private void method_19() { if (this.string_1 != null) { this.class318_0 = new zzPakNode2(this.string_1, false); } using (Stream26 stream = new Stream26(File.Open(this.string_0, FileMode.Open, FileAccess.Read, FileShare.Read))) { int num = 0; int num2 = (int)stream.Length; if (num2 == 0) { throw new Exception("Pak File is empty!"); } int int_ = stream.ReadInt(); stream._reverseEndianness = (this.bool_2 = (!QbSongClass1.smethod_3(int_) || !QbSongClass1.smethod_5(int_).StartsWith("."))); this.bool_3 = ((long)stream.ReadInt() < stream.Length); Enum35 @enum = (Enum35)stream.ReadIntAt(28); this.bool_1 = ((@enum & Enum35.flag_3) == Enum35.flag_0); this.int_0 = stream.ReadIntAt(this.bool_1 ? 12 : 16, this.bool_2 && (@enum & Enum35.flag_4) == Enum35.flag_0 && (@enum & Enum35.flag_5) == Enum35.flag_0); while (true) { Enum35 enum2 = (Enum35)stream.ReadIntAt(num + 28, false); bool bool_ = this.bool_2 && (enum2 & Enum35.flag_4) == Enum35.flag_0 && (enum2 & Enum35.flag_5) == Enum35.flag_0; int num3 = stream.ReadIntAt(num, bool_); if (QbSongClass1.smethod_3(num3) && (QbSongClass1.smethod_5(num3).Equals(".last") || QbSongClass1.smethod_5(num3).Equals("last"))) { break; } int num4 = stream.ReadInt(bool_); if (!this.bool_3) { num4 = num4 - num2 + num; } if (num4 < 0) { num4 = 0; } int int_2 = stream.ReadInt(bool_); int num5 = stream.ReadIntAt(num + (this.bool_1 ? 16 : 12), bool_); int num6 = stream.ReadIntAt(num + 20, bool_); int int_3 = stream.ReadInt(bool_); stream.Position += 4L; if ((enum2 & Enum35.flag_3) != Enum35.flag_0) { this.bool_1 = false; string text = this.stream26_0.ReadString(160); int num7 = text.IndexOf('\0'); if (num7 >= 0) { text = text.Substring(0, num7); } if (QbSongClass1.smethod_3(num3) && !QbSongClass1.smethod_5(num3).EndsWith(".qb.ngc") && !QbSongClass1.smethod_5(num3).EndsWith(".qb.ps2")) { if (!this.bool_2) { if (num5 == KeyGenerator.GetQbKey(text = text.Replace("/", "\\").Replace(".ps2", ""), true)) { QbSongClass1.smethod_9(text); } else if (num5 == KeyGenerator.GetQbKey(text = text.Replace("/", "\\").Replace(".qb", ""), true)) { QbSongClass1.smethod_9(text); } } else if (num5 == KeyGenerator.GetQbKey(text = text.Replace("/", "\\").Replace(".ngc", ""), true)) { QbSongClass1.smethod_9(text); } else if (num5 == KeyGenerator.GetQbKey(text = text.Replace("/", "\\").Replace(".qb", ""), true)) { QbSongClass1.smethod_9(text); } } else { string text2 = "abcdefghijklmnopqrstuvwxyz"; for (int i = 0; i < text2.Length; i++) { char c = text2[i]; if (num5 == KeyGenerator.GetQbKey(c + text, true)) { QbSongClass1.smethod_9(c + text); } } } if (num6 == KeyGenerator.GetQbKey(text = KeyGenerator.GetFileNameNoExt(text), true)) { QbSongClass1.smethod_9(text); } } TreeNode treeNode; if (QbSongClass1.smethod_3(num3) && QbSongClass1.smethod_5(num3).EndsWith("qb")) { treeNode = new Class309(num3, num4, int_2, num5, num6, int_3, enum2); } else if (QbSongClass1.smethod_3(num3) && QbSongClass1.smethod_5(num3).Contains("qs")) { treeNode = new Class328(num3, num4, int_2, num5, num6, int_3, enum2); } else { treeNode = new zzCocoaNode12(num3, num4, int_2, num5, num6, int_3, enum2); } if (QbSongClass1.smethod_3(num5)) { base.method_1 <TreeNode>(QbSongClass1.smethod_5(num5), treeNode); } else { base.method_5(num5, (Interface12)treeNode); } num += (((enum2 & Enum35.flag_3) != Enum35.flag_0) ? 192 : 32); } } this.stream26_0 = new Stream26(File.Open(this.string_2, FileMode.Open, FileAccess.Read, FileShare.Read)); if (this.stream26_0.Length == 0L) { throw new Exception("Pab File is empty!"); } }
public ScriptRootNode(string string0, string string1, QbScriptNode class2750) : this( QbSongClass1.AddKeyToDictionary(string0), QbSongClass1.AddKeyToDictionary(string1), class2750) { }
public ScriptRootNode(string string0) : this(QbSongClass1.AddKeyToDictionary(string0)) { }
private void method_4() { if (this.stream26_0 == null) { this.stream26_0 = new Stream26(File.Open(this.string_0, FileMode.Open, FileAccess.Read, FileShare.Read)); } this.class318_0 = ((this.string_1 != null) ? new zzPakNode2(this.string_1, false) : this); if (this.stream26_0.Length == 0L) { throw new Exception("Pak File is empty!"); } int num = 0; int num2 = this.stream26_0.ReadInt(); this.stream26_0._reverseEndianness = (this.bool_2 = (!QbSongClass1.smethod_3(num2) || !QbSongClass1.smethod_5(num2).StartsWith("."))); Enum35 @enum = (Enum35)this.stream26_0.ReadIntAt(28); this.bool_1 = ((@enum & Enum35.flag_3) == Enum35.flag_0); this.int_0 = this.stream26_0.ReadIntAt(this.bool_1 ? 12 : 16, this.bool_2 && (@enum & Enum35.flag_4) == Enum35.flag_0 && (@enum & Enum35.flag_5) == Enum35.flag_0); if (this.bool_4 && this.string_0 != null) { string text = KeyGenerator.GetFileName(this.string_0); if (text.Contains("_song")) { QbSongClass1.smethod_10(text.Substring(0, text.LastIndexOf("_song.pak")).ToLower()); } else if (!this.bool_1) { QbSongClass1.smethod_10(text.Substring(0, text.LastIndexOf(".pak")).ToLower()); } } while (true) { Enum35 enum2 = (Enum35)this.stream26_0.ReadIntAt(num + 28); bool flag = this.bool_2 && (enum2 & Enum35.flag_4) == Enum35.flag_0 && (enum2 & Enum35.flag_5) == Enum35.flag_0; int int_ = this.stream26_0.ReadIntAt(num, flag); if (QbSongClass1.smethod_3(int_)) { if (QbSongClass1.smethod_5(int_).Equals(".last")) { return; } if (QbSongClass1.smethod_5(int_).Equals("last")) { break; } } int int_2 = this.stream26_0.ReadInt(flag) + num; int int_3 = this.stream26_0.ReadInt(flag); int num3 = this.stream26_0.ReadIntAt(num + (this.bool_1 ? 16 : 12), flag); int num4 = this.stream26_0.ReadIntAt(num + 20, flag); int int_4 = this.stream26_0.ReadInt(flag); this.stream26_0.Position += 4L; if ((enum2 & Enum35.flag_3) != Enum35.flag_0) { this.bool_1 = false; string text2 = this.stream26_0.ReadString(160); int num5 = text2.IndexOf('\0'); if (num5 >= 0) { text2 = text2.Substring(0, num5); } if (QbSongClass1.smethod_3(int_) && !QbSongClass1.smethod_5(int_).EndsWith(".qb.ngc") && !QbSongClass1.smethod_5(int_).EndsWith(".qb.ps2")) { if (!this.bool_2) { if (num3 == KeyGenerator.GetQbKey(text2 = text2.Replace("/", "\\").Replace(".ps2", ""), true)) { QbSongClass1.smethod_9(text2); } else if (num3 == KeyGenerator.GetQbKey(text2 = text2.Replace("/", "\\").Replace(".qb", ""), true)) { QbSongClass1.smethod_9(text2); } } else if (num3 == KeyGenerator.GetQbKey(text2 = text2.Replace("/", "\\").Replace(".ngc", ""), true)) { QbSongClass1.smethod_9(text2); } else if (num3 == KeyGenerator.GetQbKey(text2 = text2.Replace("/", "\\").Replace(".qb", ""), true)) { QbSongClass1.smethod_9(text2); } } else { string text3 = "abcdefghijklmnopqrstuvwxyz"; for (int i = 0; i < text3.Length; i++) { char c = text3[i]; if (num3 == KeyGenerator.GetQbKey(c + text2, true)) { QbSongClass1.smethod_9(c + text2); } } } if (num4 == KeyGenerator.GetQbKey(text2 = KeyGenerator.GetFileNameNoExt(text2), true)) { QbSongClass1.smethod_9(text2); } } TreeNode treeNode; if (QbSongClass1.smethod_3(int_) && QbSongClass1.smethod_5(int_).Contains("qb")) { treeNode = new Class309(int_, int_2, int_3, num3, num4, int_4, enum2); } else if (QbSongClass1.smethod_3(int_) && QbSongClass1.smethod_5(int_).Contains("qs")) { treeNode = new Class328(int_, int_2, int_3, num3, num4, int_4, enum2); } else { treeNode = new zzCocoaNode12(int_, int_2, int_3, num3, num4, int_4, enum2); } if (this.bool_4) { if (QbSongClass1.smethod_3(num3)) { base.method_1 <TreeNode>(QbSongClass1.smethod_5(num3), treeNode); } else { this.method_5(num3, (Interface12)treeNode); } } else { this.list_0.Add((Interface12)treeNode); } num += (((enum2 & Enum35.flag_3) != Enum35.flag_0) ? 192 : 32); } }