private List <InstructionLine> FetchRange(int startIndex, int pageCount) { List <InstructionLine> result = null; var task = debugger.DisassembleAsync(BaseAddress + (ulong)startIndex, (uint)pageCount); task.Wait(); var instructions = task.Result; if (instructions != null) { result = new List <InstructionLine>(); for (uint i = 0; i < pageCount; i++) { var address = (uint)startIndex + i; var instruction = instructions.Where(inst => inst.Address == address); if (instruction.Count() == 0) { result.Add(new InstructionLine { Visible = false }); } else { result.Add(instruction.First()); } } } return(result); }