Reversing : The Hacker's Guide to Reverse Engineering

(ff) #1
IL_0001: ldarg.0
IL_0002: ldfld class ListItem LinkedList::ListHead
IL_0007: stfld class ListItem ListItem::Next
IL_000c: ldarg.0
IL_000d: ldfld class ListItem LinkedList::ListHead
IL_0012: brfalse.s IL_0020

IL_0014: ldarg.0
IL_0015: ldfld class ListItem LinkedList::ListHead
IL_001a: ldarg.1
IL_001b: stfld class ListItem ListItem::Prev
IL_0020: ldarg.0
IL_0021: ldarg.1
IL_0022: stfld class ListItem LinkedList::ListHead
IL_0027: ret
} // end of method LinkedList::AddItem

.method public hidebysig instance void
Dump() cil managed
{
.maxstack 1
.locals init (class ListItem V_0)
IL_0000: ldarg.0
IL_0001: ldfld class ListItem LinkedList::ListHead
IL_0006: stloc.0
IL_0007: br.s IL_0016

IL_0009: ldloc.0
IL_000a: callvirt instance void ListItem::Dump()
IL_000f: ldloc.0
IL_0010: ldfld class ListItem ListItem::Next
IL_0015: stloc.0
IL_0016: ldloc.0
IL_0017: brtrue.s IL_0009

IL_0019: ret
} // end of method LinkedList::Dump

.method public hidebysig specialname rtspecialname
instance void .ctor() cil managed
{
.maxstack 1
IL_0000: ldarg.0
IL_0001: call instance void [mscorlib]System.Object::.ctor()
IL_0006: ret
} // end of method LinkedList::.ctor

} // end of class LinkedList

Listing 12.4 (continued)

440 Chapter 12

Free download pdf