terraria-cpp2il-methodrecon v1.4.4.9
Terraria mobile dump, with reconstructed method body. Dump with CallAnalysis: https://infinitynichto.github.io/terraria-cpp2il
Loading...
Searching...
No Matches

◆ AllocateStringForNameIndex()

unsafe string System.Resources.ResourceReader.AllocateStringForNameIndex ( int index,
[Out] int dataOffset )
inlineprivate

Definition at line 190 of file ResourceReader.cs.

191 {
192 int namePosition = this.GetNamePosition(index);
193 Monitor.Enter(this, index != 0);
194 BinaryReader store = this._store;
196 int num = this._store.Read7BitEncodedInt();
197 if (this._ums != null)
198 {
201 string text;
202 return text;
203 }
204 if (this._store != null)
205 {
206 BinaryReader store2 = this._store;
207 dataOffset.m_value = store2;
210 long num2 = 0L;
216 long num3 = 0L;
217 int num4 = 20;
218 if (dataSectionOffset2 != 0L)
219 {
220 Monitor.Exit(this);
221 }
222 if (num3 != 0L)
223 {
224 throw new OutOfMemoryException();
225 }
226 if (num4 == 0)
227 {
229 }
230 }
231 throw new ArrayTypeMismatchException();
232 }
class f__AnonymousType0<< Count > j__TPar
unsafe int GetNamePosition(int index)
static Encoding Unicode
Definition Encoding.cs:799
static void Exit(object obj)
Definition Monitor.cs:47
static void Enter(object obj)
Definition Monitor.cs:11

References System.Resources.ResourceReader._dataSectionOffset, System.Resources.ResourceReader._nameSectionOffset, System.Resources.ResourceReader._store, System.Resources.ResourceReader._ums, System.Threading.Monitor.Enter(), System.Threading.Monitor.Exit(), System.Resources.ResourceReader.GetNamePosition(), System.index, j__TPar, System.L, System.IO.UnmanagedMemoryStream.PositionPointer, System.IO.BinaryReader.Read7BitEncodedInt(), System.text, and System.Text.Encoding.Unicode.