MCPcopy Create free account
hub / github.com/CCob/BOF.NET / Go

Method Go

managed/BOFNET/Bofs/AssemblyLoader.cs:39–62  ·  view source on GitHub ↗
(byte[] chunk)

Source from the content-addressed store, hash-verified

37 }
38
39 public override void Go(byte[] chunk) {
40
41 Unpack unpack = new Unpack("Zib", chunk);
42
43 string assemblyName = (string)unpack.Values[0];
44 int chunkSize = (int)unpack.Values[1];
45 byte[] assemblyChunk = (byte[])unpack.Values[2];
46 MemoryStream assemblyData;
47
48 if (!activeAssemblyLoads.ContainsKey(assemblyName)) {
49 BeaconConsole.WriteLine($"[+] Setting up new loader with unique id {assemblyName}");
50 assemblyData = new MemoryStream();
51 activeAssemblyLoads[assemblyName] = assemblyData;
52 } else {
53 assemblyData = activeAssemblyLoads[assemblyName];
54 }
55
56 assemblyData.Write(assemblyChunk, 0, assemblyChunk.Length);
57
58 if (assemblyChunk.Length < chunkSize) {
59 LoadAssembly(assemblyData.ToArray());
60 activeAssemblyLoads.Remove(assemblyName);
61 }
62 }
63 }
64}

Callers

nothing calls this directly

Calls 1

WriteMethod · 0.80

Tested by

no test coverage detected