Skip to content

Methods

Peter Van Eeckhoutte edited this page May 11, 2026 · 1 revision

Methods

Overview of functions and methods currently defined in mona.py, grouped by class. Module-level functions are listed under Generic helpers.

Descriptions are intentionally short so this page stays usable as a developer index.

Generic helpers

Core setup and debugger integration

  • getAliasName(): Returns the debugger-specific mona alias currently in use.
  • getLaunchCommand(): Builds the debugger command used to launch mona.
  • guessAliasName(current_command): Tries to infer which mona alias name is being used in the debugger.
  • clickWinDBGCmd(windbg_cmd='', displaytext=''): Build a clickable debugger action for win dbgcmd.
  • clickFetchSym(modname, displaytext=''): Build a clickable debugger action for fetch symbol.
  • clickChunkPtr(chunkptr=0, chunksize=0, displaytext=''): Build a clickable debugger action for chunk pointer.
  • clickModuleName(modname='', displaytext=''): Build a clickable debugger action for module name.
  • clickDisassemble(locstr=''): Build a clickable debugger action for disassemble.
  • clickStackPtr(stackptr=0): Build a clickable debugger action for stack pointer.
  • clickPageAcl(ptrinfo=0): Build a clickable debugger action for page ACL.
  • clickPEB(pebstr=''): Build a clickable debugger action for PEB.
  • clickTEB(tebptr=0, displaytext=''): Build a clickable debugger action for TEB.
  • clickHeapWinDBG(heapbase, heaptype='nt', displaytext=''): Build a clickable debugger action for heap win debugger.
  • clickSegmentWinDBG(segmentbase, heaptype='nt', displaytext=''): Build a clickable debugger action for segment win debugger.
  • clickMnCommand(commandname=''): Build a clickable debugger action for mn command.
  • checkKeystone(): Checks whether the Keystone assembler backend is available.
  • interruptMona(cleanup=False): Interrupts the current mona run and optionally performs cleanup.
  • resetGlobals(): Resets mutable global state and caches for a fresh mona run.
  • get_script_name(): Return script name.
  • get_current_function_name(): Return current function name.
  • dbgGetModuleSafe(modulename): Handle debugger get module safe.
  • getPythonVersion(): Return python version.
  • getBanner(): Builds the banner text shown in help or startup output.
  • populateCommands(args): Registers all supported mona commands and their metadata.
  • _strip_launcher_and_script(argv): Internal helper that Strip launcher and script.
  • _parse_mona_args_with_argparse(raw_args): Internal helper that Parse mona args with argparse.
  • main(args): Program entry point that parses arguments, initializes mona state, and dispatches commands.

AI and prompt helpers

  • getAvailableAIEngines(reason='', refresh=False): Return available aiengines.
  • _normalizeAIEngine(engine_value): Internal helper that Normalize aiengine.
  • getDefaultAIEngineConfigName(): Return default aiengine config name.
  • getDefaultAIEngineEnvName(): Return default aiengine env name.
  • _isSupportedAIEngine(engine_value): Internal helper that Return whether supported aiengine is true.
  • ensureDefaultAIEngineConfig(mona_config, available_engines): Ensure default aiengine config is present and usable.
  • resolveAIEngine(engine_arg, mona_config, available_engines): Resolve aiengine.
  • collectAICurrentFunctionContext(address, follow_depth=1): Collect aicurrent function context.
  • getAIPattern(): Return aipattern.
  • collectAIContext(question_type='', heapdynamics_files=None, additional_context_files=None, poc_file='', heap_target_address=0): Collect aicontext.
  • buildAIPrompt(question_type, context, maxsize_kb=0): Build aiprompt.
  • getAIModelAndKey(engine, mona_config): Return aimodel and key.
  • getDefaultAIModel(engine): Return default aimodel.
  • _importOpenAI(): Internal helper that Handle import open AI.
  • getAITimeout(engine, mona_config, args=None): Return aitimeout.
  • getAIMaxTokens(engine, mona_config): Return aimax tokens.
  • getAITestModel(engine): Return aitest model.
  • _extractProviderErrorPayload(err): Internal helper that Extract provider error payload.
  • _getProviderErrorMessage(err): Internal helper that Return provider error message.
  • _logProviderErrorDetails(prefix, payload): Internal helper that Log provider error details.
  • _logOpenAIError(err): Internal helper that Log open aierror.
  • _logAnthropicError(err): Internal helper that Log anthropic error.
  • logAIProviderError(engine, err): Log aiprovider error.
  • formatAIResponseLines(answer): Format airesponse lines.
  • _getProfileTemplateVariables(question_type): Internal helper that Return profile template variables.
  • _buildProfileTemplateText(question_type): Internal helper that Build profile template text.
  • _getDefaultTemplateFilename(question_type): Internal helper that Return default template filename.
  • _guessTemplateQuestionType(template_path): Internal helper that Guess template question type.
  • _containsTemplatePlaceholders(text): Internal helper that Return whether template placeholders contains the requested value.
  • _ensureDefaultTemplate(question_type, mona_config): Internal helper that Ensure default template is present and usable.
  • _extractPrebuiltPrompt(template_path): Internal helper that Extract prebuilt prompt.
  • buildAIPromptFromTemplateFile(template_path, context, question_type='9'): Build aiprompt from template file.
  • writeAIRequestLog(engine, model, question_type, prompt, request_id='', template_file='', target_address=0, target_address_source=''): Write airequest log.
  • writeAIResponseLog(engine, model, question_type, request_id, ai_response_lines, template_file='', target_address=0, target_address_source=''): Write airesponse log.
  • writeAIOfflineLog(engine, model, question_type, prompt, template_file='', target_address=0, target_address_source=''): Write aioffline log.
  • _fetchOpenAIModelsDirect(api_key, timeout_seconds=20.0): Internal helper that Handle fetch open aimodels direct.
  • _fetchAnthropicModelsDirect(api_key, timeout_seconds=20.0): Internal helper that Handle fetch anthropic models direct.
  • getAvailableAIModels(engine, api_key, timeout_seconds=20.0, refresh=False): Return available aimodels.
  • callAIOpenAI(openai_client_class, api_key, model, prompt, timeout_seconds=60.0): Call aiopen AI.
  • _extractOpenAIText(response_data): Internal helper that Extract open aitext.
  • callAIOpenAIDirect(api_key, model, prompt, timeout_seconds=60.0): Call aiopen aidirect.
  • callAIAnthropic(api_key, model, prompt, timeout_seconds=60.0, max_tokens=4096): Call aianthropic.

Heap and layout helpers

  • extractChunkInfo(chunktext): Extract chunk info.
  • _collectHeapDetails(): Internal helper that Collect heap details.
  • _getHeapChunkMetadata(address): Internal helper that Return heap chunk metadata.
  • _getHeapXMetadata(address): Internal helper that Return heap xmetadata.
  • _collectManualHeapTargetFallback(address): Internal helper that Collect manual heap target fallback.
  • _getChunkPointerDump(chunk_address, chunk_size, label='chunk'): Internal helper that Return chunk pointer dump.
  • _describeChunkContext(chunk, mheap, va_blks, lfh_ranges, lfh_starts): Internal helper that Handle describe chunk context.
  • _serializeAdjacentChunk(label, chunk, mheap, va_blks, lfh_ranges, lfh_starts): Internal helper that Serialize adjacent chunk.
  • _collectAdjacentChunkContext(refvalue): Internal helper that Collect adjacent chunk context.
  • _findLayoutRegion(address, layout_regions): Internal helper that Find layout region.
  • _collectLayoutRegionNeighbors(address, layout_regions): Internal helper that Collect layout region neighbors.
  • _parseHeapHlChunkLine(line): Internal helper that Parse heap hl chunk line.
  • _parseHeapHlOutput(output, target_address): Internal helper that Parse heap hl output.
  • _getHeapHlContext(heap_address, target_address): Internal helper that Return heap hl context.
  • _getSegmentHeapFallback(address, layout_region, layout_regions): Internal helper that Return segment heap fallback.
  • _applyHeapHlChunkMatch(entry, heap_hl_result, reg_value, ref_name): Internal helper that Handle apply heap hl chunk match.
  • _buildHeapReferenceEntry(ref_name, reg_value, ref_source, instruction_text, layout_regions): Internal helper that Build heap reference entry.
  • _collectInstructionHeapContext(regs, pc, extra_references=None): Internal helper that Collect instruction heap context.
  • _collectHeapdynamicsContext(regs, pc, heapdynamics_file=''): Internal helper that Collect heapdynamics context.
  • _buildHeapdynamicsMini(heapdynamics): Internal helper that Build heapdynamics mini.
  • _isHeapdynamicsFile(file_path): Internal helper that Return whether heapdynamics file is true.
  • _collectHeapdynamicsContexts(regs, pc, heapdynamics_files=None): Internal helper that Collect heapdynamics contexts.
  • _renderLayoutCategoriesText(categories, include_chunks=True): Internal helper that Render layout categories text.
  • _summarizeHeapCommandOutput(heap_info): Internal helper that Summarize heap command output.
  • _compactHeapdynamicsContexts(heapdynamics): Internal helper that Compact heapdynamics contexts.
  • getHeapAllocSize(requested_size, granularity=8): Return heap alloc size.
  • getSegmentEnd(segmentstart): Return segment end.
  • getHeapFlag(flag): Return heap flag.
  • decodeHeapHeader(headeraddress, headersize, key): Decode heap header.
  • walkSegment(FirstEntry, LastValidEntry, heapbase): Walk segment.
  • getProcessHeapsInfo(): Return process heaps info.
  • getNTSegmentInfo(heapbase, segaddr, segstart, segend, firstentry, lastentry): Return ntsegment info.
  • getNTHeapInfo(heapaddr): Return ntheap info.
  • getLFHSubSegmentRanges(heapaddr): Return lfhsub segment ranges.
  • getDefaultProcessHeap(): Return default process heap.
  • getSortedSegmentList(heapbase): Return sorted segment list.
  • getSegmentList(heapbase): Return segment list.
  • getSegmentsForHeap(heapbase): Return segments for heap.
  • procLayout(args): Command handler for layout.
  • _procHeapByAddr(refvalue): Internal helper that Handle process heap by address.
  • procHeap(args): Command handler for heap.
  • procFillChunk(args): Command handler for fillchunk.
  • procHeapCookie(args): Command handler for heapcookie.

Module, symbol, and process helpers

  • _isUnreadablePageCached(page_start): Internal helper that Return whether unreadable page cached is true.
  • _markUnreadablePageCached(page_start): Internal helper that Handle mark unreadable page cached.
  • _findSymbolsCached(mod, cache_dirs=None): Internal helper that Find symbols cached.
  • _hasSymbolsCached(mod): Internal helper that Return whether symbols cached is available.
  • _getCallStack(command='kb', max_lines=50): Internal helper that Return call stack.
  • _getPageSummary(address): Internal helper that Return page summary.
  • _getModuleSummary(address): Internal helper that Return module summary.
  • _getSymbolName(address): Internal helper that Return symbol name.
  • _getNearestSymbolOutput(address): Internal helper that Return nearest symbol output.
  • _getModuleReturnWindows(module_obj, max_windows=None, context_before=16): Internal helper that Return module return windows.
  • _getModuleIatEntries(module_obj): Internal helper that Return module IAT entries.
  • _collectRopTargetModules(args): Internal helper that Collect ROP target modules.
  • _renderStackText(max_bytes=4096): Internal helper that Render stack text.
  • _renderModulesText(focus_addresses=None, max_modules=25): Internal helper that Render modules text.
  • _serializeModuleSummaryForTellme(mod): Internal helper that Serialize module summary for tellme.
  • _collectRelevantModuleAddresses(context): Internal helper that Collect relevant module addresses.
  • _buildCompactModulesSummary(context): Internal helper that Build compact modules summary.
  • getStacks(): Return stacks.
  • getModuleObj(modname): Return module obj.
  • searchInModule(sequences, name, criteria=[], refresh_pages=True): Search in module.
  • getRangesOutsideModules(): Return ranges outside modules.
  • isModuleLoadedInProcess(modulename): Return whether module loaded in process is true.
  • getModulesToQuery(criteria, from_memory=False, peb_order='load'): Return modules to query.
  • showModuleTable(logfile='', modules=[], modulecriteria={}, sort_keys=None, peb_order='load'): Show module table.
  • getStackPivotDistance(gadget, distance=0): Return stack pivot distance.
  • procModuleInfo(args): Command handler for modinfo.
  • procStackPivots(args): Command handler for stackpivot.
  • procStacks(args): Command handler for stacks.
  • procGetIAT(args): Command handler for getiat.
  • procGetEAT(args): Command handler for geteat.
  • procPEB(args): Command handler for peb.
  • procTEB(args): Command handler for teb.
  • procPageACL(args): Command handler for pageacl.
  • procSym(args): Command handler for sym.

Search, gadget, and exploit helpers

  • getAllStringOffsets(data, minlen, offsetstart=0): Return all string offsets.
  • getAllUnicodeStringOffsets(data, minlen, offsetstart=0): Return all unicode string offsets.
  • getPatternLength(startptr, pattern_type='normal', args=None): Return pattern length.
  • shortJump(sizeofinst, offset): Handle short jump.
  • search(sequences, criteria=[]): Search the related value.
  • searchInRange(sequences, start=0, end=TOP_USERLAND, criteria=[], refresh_pages=True): Search in range.
  • findSEH(modulecriteria={}, criteria={}): Find SEH.
  • findJMP(modulecriteria={}, criteria={}, register='esp'): Find JMP.
  • findROPFUNC(modulecriteria={}, criteria={}, searchfuncs=[]): Find ROPFUNC.
  • findROPGADGETS(modulecriteria={}, criteria={}, endings=[], maxoffset=40, depth=5, split=False, pivotdistance=0, fast=False, mode='all', sortedprint=False, technique=''): Find ROPGADGETS.
  • findJOPGADGETS(modulecriteria={}, criteria={}, depth=6): Find JOPGADGETS.
  • findFILECOMPARISON(modulecriteria={}, criteria={}, allfiles=[], tomatch='', checkstrict=True, rangeval=0, fast=False): Find FILECOMPARISON.
  • createPattern(size, args={}): Create pattern.
  • findOffsetInPattern(searchpat, size=20280, args={}): Find offset in pattern.
  • findPatternWild(modulecriteria, criteria, pattern, base, top, patterntype): Find pattern wild.
  • findPattern(modulecriteria, criteria, pattern, ptype, base, top, consecutive=False, rangep2p=0, level=0, poffset=0, poffsetlevel=0): Find pattern.
  • getGadgetAddressInfo(gadgetptr): Return gadget address info.
  • getPickupGadget(targetreg, targetval, freetext, suggestions, interestinggadgets, criteria, modulecriteria, routine=''): Return pickup gadget.
  • getGadgetMoveRegToReg(fromreg, toreg, suggestions, interestinggadgets): Return gadget move register to register.
  • getGadgetValueToReg(reg, value, suggestions, interestinggadgets): Return gadget value to register.
  • getOffset(instructions): Return offset.
  • getShortestGadget(chaintypedict): Return shortest gadget.
  • isInterestingGadget(instructions): Return whether interesting gadget is true.
  • isInterestingJopGadget(instructions): Return whether interesting JOP gadget is true.
  • readGadgetsFromFile(filename): Read gadgets from file.
  • isGoodGadgetPtr(gadget, criteria): Return whether good gadget pointer is true.
  • isGoodGadgetInstr(instruction): Return whether good gadget instruction is true.
  • isGoodJopGadgetInstr(instruction): Return whether good JOP gadget instruction is true.
  • isGadgetEnding(instruction, endings, verbosity=False): Return whether gadget ending is true.
  • suggestedGadgetCheck(instructions, allowed, notallowed): Handle suggested gadget check.
  • checkSEHOverwrite(address, nseh, seh): Handle check sehoverwrite.
  • goFindMSP(distance=0, args=None): Handle go find MSP.
  • procFindSEH(args, procUsage=''): Command handler for findseh.
  • procFindROPFUNC(args): Command handler for ropfunc.
  • procROP(args, mode='all'): Command handler for rop.
  • procJOP(args, mode='all'): Command handler for jop.
  • procOffsetPATTERN(args): Command handler for pattern_offset.
  • procOffset(args): Command handler for offset.
  • procFindMSP(args): Command handler for findmsp.

Encoding, conversion, and formatting helpers

  • cpbArgToBytes(value): Handle cpb arg to bytes.
  • _formatHexAsciiPreview(raw, max_len=128): Internal helper that Format hex ascii preview.
  • _readFirstBytesPreview(address, size=16, label='first_bytes'): Internal helper that Read first bytes preview.
  • _readBlobHex(address, size, label='', chunk_size=4096): Internal helper that Read blob hex.
  • _getJsonSizeBytes(value): Internal helper that Return JSON size bytes.
  • _to_text(value): Internal helper that Convert to text.
  • _to_bytes(value): Internal helper that Convert to bytes.
  • str_to_bool(value): Handle str to bool.
  • ensure_bytes(s, encoding='latin-1'): Ensure bytes is present and usable.
  • ensure_text(s, encoding='latin-1'): Ensure text is present and usable.
  • toHex(n): Convert to hex.
  • sanitize_module_name(modname): Handle sanitize module name.
  • getAddyArg(argaddy): Return address arg.
  • getIntArg(argvalue): Return int arg.
  • getFloatArg(argvalue): Return float arg.
  • toHexByte(n): Convert to hex byte.
  • toAsciiOnly(inputstr): Convert to ascii only.
  • toAscii(n): Convert to ascii.
  • hex2bin(pattern): Handle hex2bin.
  • normalizeHexBytesArg(pattern): Normalize hex bytes arg.
  • cleanHex(hex): Clean hex.
  • getVariantType(typenr): Return variant type.
  • bin2hex(binbytes): Handle bin2hex.
  • bin2hexstr(binbytes): Handle bin2hexstr.
  • readJSONDict(filename): Read jsondict.
  • writeJSONDict(filename, dicttosave): Write jsondict.
  • opcodesToHex(opcodes): Handle opcodes to hex.
  • toniceHex(data, size): Handle tonice hex.
  • hexStrToInt(inputstr): Handle hex str to int.
  • to_int(inputstr): Convert to int.
  • toSize(toPad, size): Convert to size.
  • toUnicode(input): Convert to unicode.
  • toJavaScript(input): Convert to java script.
  • getSourceDest(instruction): Return source dest.
  • isHexValue(string): Return whether hex value is true.
  • addrToInt(string): Handle address to int.
  • readString(address): Read string.
  • isAsciiString(data): Return whether ascii string is true.
  • isAscii(b): Return whether ascii is true.
  • isAscii2(b): Return whether ascii2 is true.
  • isHexString(input): Return whether hex string is true.
  • archValue(x86, x64): Handle arch value.
  • readPtrSizeBytes(ptr): Read pointer size bytes.
  • UnicodeTransformInfo(hexaddr): Handle unicode transform info.
  • procByteArray(args): Command handler for bytearray.
  • procString(args): Command handler for string.
  • procUnicodeAlign(args): Command handler for unicodealign.

Command handlers

  • processResults(all_opcodes, logfile, thislog, specialcases={}, ptronly=False, forcelower=False): Command handler for essresults.
  • procCleanLog(args): Command handler for cleanlog.
  • procConfig(args): Command handler for config.
  • procFindJ(args, procUsage=''): Command handler for find.
  • procFindJMP(args, procUsage=''): Command handler for findjmp.
  • procShowMODULES(args): Command handler for modules.
  • procJseh(args): Command handler for jseh.
  • procCreatePATTERN(args): Command handler for pattern_create.
  • procFileCOMPARE(args): Command handler for filecompare.
  • procFind(args): Command handler for find.
  • procFindWild(args): Command handler for findwild.
  • procAssemble(args): Command handler for assemble.
  • procInfo(args): Command handler for info.
  • procTellMe(args): Command handler for tellme.
  • procDump(args): Command handler for dump.
  • procCompare(args): Command handler for compare.
  • procBp(args): Command handler for bp.
  • procBf(args): Command handler for bf.
  • procPrintHeader(args): Command handler for header.
  • procUpdate(args): Command handler for update.
  • procgetPC(args): Command handler for getpc.
  • procEgg(args): Command handler for egg.
  • procSuggest(args): Command handler for suggest.
  • procFwptr(args): Command handler for fwptr.
  • procGetxAT(args, mode=''): Command handler for getxat.
  • procSkeleton(args): Command handler for skeleton.
  • procLoad(args): Command handler for load.
  • procInfoDump(args): Command handler for infodump.
  • procMacro(args): Command handler for macro.
  • procWrite(args): Command handler for write.
  • procEnc(args): Command handler for enc.
  • procBPSeh(self): Command handler for bpseh.
  • procSehChain(self): Command handler for sehchain.
  • procDumpLog(args): Command handler for dumplog.
  • procDumpObj(args): Command handler for dumpobj.
  • procCopy(args): Command handler for copy.
  • procStrPos(args): Command handler for strpos.
  • procFlags(args): Command handler for flags.
  • procEval(args): Command handler for eval.
  • _sym_list(args): Internal helper for the list symbol-management path.
  • _sym_load(args): Internal helper for the load symbol-management path.
  • _sym_clean(args): Internal helper for the clean symbol-management path.
  • procChangeACL(args): Command handler for changeacl.
  • procToBp(args): Command handler for tobp.
  • procAllocMem(args): Command handler for allocmem.
  • procHideDebug(args): Command handler for hidedebug.
  • procHelp(args, helpForCommand=None): Command handler for help.

Other generic helpers

  • getInvalidInstrCacheStats(): Return invalid instruction cache stats.
  • _mask_config_debug_line(line_text): Internal helper that Mask config debug line.
  • getRegisters(): Return registers.
  • getAllRegisters(): Return all registers.
  • _safe_int(v): Internal helper that Handle safe int.
  • _formatContextText(value, max_len=512): Internal helper that Format context text.
  • _readMemoryPreview(address, size, label): Internal helper that Read memory preview.
  • _getPointerDump(address, bytes_before=40, line_count=64, register_name=''): Internal helper that Return pointer dump.
  • _getWindbgAnalyze(command='!analyze -v', max_lines=0): Internal helper that Return windbg analyze.
  • _getInstructionWindow(address, depth_before=10, depth_after=10): Internal helper that Return instruction window.
  • _extractReturnPointerContext(raw_line): Internal helper that Extract return pointer context.
  • _getDisasmSummary(address, depth_before=10, depth_after=10): Internal helper that Return disasm summary.
  • tellMeHasCurrentInstruction(address): Handle tell me has current instruction.
  • _tryParseAddressToken(token): Internal helper that Handle try parse address token.
  • _resolveFunctionStart(address): Internal helper that Resolve function start.
  • _parseDisassemblyTextEntries(disasm_text): Internal helper that Parse disassembly text entries.
  • _normalizeDisassemblyTargetOperand(operand): Internal helper that Normalize disassembly target operand.
  • _resolveDisassemblyTargetOperand(operand): Internal helper that Resolve disassembly target operand.
  • _collectDisassemblyTargetContexts(disasm_text, max_targets=32, max_depth=1, current_depth=1, visited_targets=None): Internal helper that Collect disassembly target contexts.
  • _extractInstructionRegisters(instruction_text, regs): Internal helper that Extract instruction registers.
  • _readContextFile(file_path, label='context file'): Internal helper that Read context file.
  • _getArchitectureName(): Internal helper that Return architecture name.
  • _renderBadchars(raw_badchars): Internal helper that Render badchars.
  • _getNestedErrorDict(err): Internal helper that Return nested error dict.
  • _isTimeoutError(engine, err): Internal helper that Return whether timeout error is true.
  • _renderRegistersText(): Internal helper that Render registers text.
  • _getNtGlobalFlagSummary(): Internal helper that Return NT global flag summary.
  • _getSehChainSummary(): Internal helper that Return SEH chain summary.
  • _getFindMspSummary(args=None): Internal helper that Return find MSP summary.
  • _appendOmittedSection(omitted_sections, name, original_value, reason, retrieval_hint=''): Internal helper that Append omitted section.
  • _extractWindbgAnalyzeSummary(output): Internal helper that Extract windbg analyze summary.
  • _simplifyWindbgAnalyze(analyze_info, call_stack_present=False): Internal helper that Simplify windbg analyze.
  • _serializeReturnPointerEvidence(return_pointer): Internal helper that Serialize return pointer evidence.
  • _makeVariableAlias(target_name, note=''): Internal helper that Handle make variable alias.
  • _optimizeQ1RequestVariables(context, maxsize_kb=0): Internal helper that Optimize Q1 request variables.
  • _buildRequestVariables(context): Internal helper that Build request variables.
  • _buildRequestPayload(mode, question_type, variables, template_text='', template_file=''): Internal helper that Build request payload.
  • _getProfileInstructions(question_type): Internal helper that Return profile instructions.
  • _extractModelIdsFromListPayload(payload): Internal helper that Extract model ids from list payload.
  • _anthropic_extract_text(message): Internal helper that Handle anthropic extract text.
  • _ord(x): Internal helper that Handle ord.
  • _normalize_single_fill_byte(fillvalue): Internal helper that Normalize single fill byte.
  • askForConfirmation(displaytext='', default='N'): Handle ask for confirmation.
  • DwordToBits(srcDword): Handle dword to bits.
  • print_dict_table(data, headers, types, ptr_size=None, padding='', itemsequence=None, logobj=None, logfile=None, key_col=None): Print dict table.
  • getDisasmInstruction(disasmentry): Return disasm instruction.
  • multiSplit(thisarg, delimchars): Handle multi split.
  • getFunctionAddress(modname, funcname): Return function address.
  • getFunctionName(addy): Return function name.
  • printDataArray(data, charsperline=16, prefix=b''): Print data array.
  • find_all_copies(tofind, data): Find all copies.
  • stripExtension(fullname): Strip extension.
  • hex2int(hex): Handle hex2int.
  • listToLower(items): Handle list to lower.
  • strPosLen(address, mode='all'): Handle str pos len.
  • stripTags(input=''): Strip tags.
  • yesno(): Handle yesno.
  • fileToBin(filename): Handle file to bin.
  • str2js(inputstring): Handle str2js.
  • rmLeading(input, toremove, toignore=''): Handle rm leading.
  • getVersionInfo(filename): Return version info.
  • getAllRegs(): Return all regs.
  • getSmallerRegs(reg): Return smaller regs.
  • isReg(reg): Return whether register is true.
  • isAddress(string): Return whether address is true.
  • Poly_ReturnDW(value): Handle poly return DW.
  • Poly_Return0(): Handle poly return0.
  • splitAddress(address): Split address.
  • bytesInRange(address, range): Handle bytes in range.
  • meetsAccessLevel(page, accessLevel): Check whether access level meets the expected conditions.
  • splitToPtrInstr(input): Split to pointer instruction.
  • getNrOfDictElements(thisdict): Return nr of dict elements.
  • getAPointer(modules, criteria, accesslevel): Return apointer.
  • haveRepetition(string, pos): Handle have repetition.
  • findAllPaths(graph, start_vertex, end_vertex, path=[]): Find all paths.
  • extract_chunks(iterable, size): Extract chunks.
  • rrange(x, y=0): Handle rrange.
  • getSkeletonHeader(exploittype, portnr, extension, url, badchars='\x00\n\r'): Return skeleton header.
  • _parseOsVersion(): Internal helper that Parse OS version.
  • _lfh_contains(addr, lfh_ranges, lfh_starts): Internal helper that Handle LFH contains.
  • containsBadChars(address, badchars=b'\n\r'): Return whether bad chars contains the requested value.
  • meetsCriteria(pointer, criteria): Check whether criteria meets the expected conditions.
  • getSearchSequences(searchtype, searchcriteria='', type='', criteria={}): Return search sequences.
  • getPointerAccess(address, forcedread=False): Return pointer access.
  • criteriaToText(criteria, toupper=False): Handle criteria to text.
  • mergeOpcodes(all_opcodes, found_opcodes): Merge opcodes.
  • assemble(instructions, encoder=''): Assemble the related value.
  • get_eta(startmoment, done, total): Return eta.
  • parseInstructionWildcardSearch(userinput, mindistance, maxdistance): Parse instruction wildcard search.
  • doesForwardDisasmMatch(parsed, first_pattern_flat, thisdisam): Handle does forward disasm match.
  • normalizeInstructionText(instr): Normalize instruction text.
  • wouldBreakChain(instruction): Handle would break chain.
  • compareFormattedFileWithMemory(filename, format, startpos, skipmodules=False, findunicode=False): Compare formatted file with memory.
  • memoized(func): Handle memoized.
  • read_memory(dbg, location, max_size): Read memory.
  • shorten_bytes(bytestr, size=8): Handle shorten bytes.
  • draw_byte_table(mapping, log, columns=16): Handle draw byte table.
  • draw_chunk_table(cmp, log): Handle draw chunk table.
  • guess_bad_chars(cmp, log, logsilent, mapping=None): Guess bad chars.
  • memcompare(location, src, comparetable, sctype, smart=True, tablecols=16): Handle memcompare.
  • createRopChains(suggestions, interestinggadgets, allgadgets, modulecriteria, criteria, objprogressfile, progressfile, technique): Create ROP chains.
  • getRegImpact(instructionstr): Return register impact.
  • getRopFuncPtr(apiname, modulecriteria, criteria, mode, objprogressfile, progressfile): Return ROP func pointer.
  • putValueInReg(reg, value, freetext, suggestions, interestinggadgets, criteria): Handle put value in register.
  • clearReg(reg, suggestions, interestinggadgets): Handle clear register.
  • getJunk(instructions): Return junk.
  • createJunk(size, message='filler (compensate)', alignsize=0): Create junk.
  • getRopSuggestion(ropchains, allchains): Return ROP suggestion.
  • getRegToReg(type, fromreg, toreg, ropchains, moveptr_allowed, moveptr_notallowed): Return register to register.
  • dumpMemoryToFile(address, size, filename): Dump memory to file.
  • args2criteria(args, modulecriteria, criteria): Handle args2criteria.
  • doManageBpOnFunc(modulecriteria, criteria, funcfilter, mode='add', query_type='export', extracmd=''): Handle do manage bp on func.
  • getAbsolutePath(filename): Return absolute path.
  • _parse_sort_spec(spec): Internal helper that Parse sort spec.
  • _walkSehChain(sehchain): Internal helper that Walk SEH chain.
  • prepareAlignment(leaks, address, bufferRegister, timeToRun, registers): Prepare alignment.
  • generateAlignment(alignment_code_loc, bufferRegister, registers, timeToRun, prefix, postfix, additionalLength): Generate alignment.
  • _http_fetch_symbol(pdbname, guidage, cache_dir, servers): Internal helper that Handle http fetch symbol.

MnDebugger

Debugger/session abstraction used to read memory, execute debugger commands, and format debugger-facing output.

  • __init__(self): Initialize a new MnDebugger instance.
  • isWinDBG(self): Return whether win debugger is true.
  • isImmunity(self): Return whether immunity is true.
  • getWinDBGVersion(self): Return win dbgversion.
  • get_current_datetime(self): Return current datetime.
  • get_current_datetime_flat(self): Return current datetime flat.
  • dbgp(self, s, highlight=False, errormode=False): Handle dbgp.
  • _ensureSymbolCache(self, auto_fix=False): Internal helper that Ensure symbol cache is present and usable.

AIProviderError

Custom exception type used to normalize AI provider failures.

  • __init__(self, message, request_id='', status_code=None, code='', param='', body=None, error_type=''): Initialize a new AIProviderError instance.

WalkLevel

Small helper container used while walking pointer or object graphs.

  • to_dict(cls): Convert to dict.

MnPEB

Represents the Process Environment Block and exposes process-wide loader and runtime structures.

  • getArch(): Return arch.
  • __init__(self, walk_level=WalkLevel.NONE): Initialize a new MnPEB instance.
  • get_address(self): Return address.
  • getNtGlobalFlag(self): Return NT global flag.
  • getNtGlobalFlagValues(self, flag): Return NT global flag values.
  • getNtGlobalFlagNames(self, flag): Return NT global flag names.
  • getNtGlobalFlagValueData(self, flag_value): Return NT global flag value data.
  • getActiveFlagNames(self, flag_value): Return active flag names.
  • getNtGlobalFlagValueName(self, flag_value): Return NT global flag value name.
  • _iter_ldr(self, list_name='InLoadOrderModuleList'): Internal helper that Iterate over ldr.
  • _collect_ldr_raw(self, from_memory=False, peb_order='load'): Internal helper that Collect ldr raw.
  • _build_module_objects(self, list_raw): Internal helper that Build module objects.
  • _walk_modules(self, from_memory=False, peb_order='load'): Internal helper that Walk modules.
  • _locate_module(self, modulename): Internal helper that Handle locate module.
  • getModuleByName(self, module_name): Return module by name.
  • getModuleByAddress(self, addr): Return module by address.
  • getModulesSortedByBase(self, reverse=False): Return modules sorted by base.
  • getModulesSortedBySize(self, reverse=False): Return modules sorted by size.
  • getModulesSortedByName(self, reverse=False): Return modules sorted by name.
  • getModules(self, from_memory=False, peb_order='load'): Return modules.
  • _walk_heaps(self, walk_level=WalkLevel.HEAP): Internal helper that Walk heaps.
  • getHeapObject(self, heapbase, walk_level=WalkLevel.HEAP): Return heap object.
  • getHeaps(self): Return heaps.
  • getSegmentHeaps(self): Return segment heaps.
  • getNTHeaps(self): Return ntheaps.
  • getProcessHeap(self): Return process heap.
  • getHeapByAddress(self, addr): Return heap by address.
  • getSegmentByAddress(self, addr): Return segment by address.

MnTEB

Represents a Thread Environment Block and exposes thread-specific state.

  • __init__(self, teb_addr, peb=None): Initialize a new MnTEB instance.
  • getByAddress(teb_addr): Return by address.

MnCommand

Holds metadata and execution details for a mona command.

  • __init__(self, name, description, usage, parseProc, alias='', archs=[32]): Initialize a new MnCommand instance.

MnEncoder

Opcode encoder helper used for transformed shellcode and byte-generation tasks.

  • __init__(self, bytestoencode): Initialize a new MnEncoder instance.
  • encodeAlphaNum(self, badchars=[]): Handle encode alpha num.
  • validatebadchars_enc(self, val1, val2, val3, badchars): Handle validatebadchars enc.

MnConditionalHook

Breakpoint hook that triggers mona logic conditionally inside the debugger.

  • __init__(self, condition): Initialize a new MnConditionalHook instance.
  • run(self, regs): Handle run.
  • run(self, regs): Handle run.

MnConfig

Reads, writes, migrates, and exposes mona configuration settings.

  • __init__(self): Initialize a new MnConfig instance.
  • getFileName(self): Return file name.
  • list(self, keyword=''): Handle list.
  • get(self, parameter): Return the related value.
  • set(self, parameter, paramvalue): Set the related value.
  • clear(self, parameter): Handle clear.

MnLog

Creates and writes mona output logs.

  • __init__(self, filename, numbered=False): Initialize a new MnLog instance.
  • _get_timestamped_filename(self, logfile, max_suffix=9999): Internal helper that Return timestamped filename.
  • reset(self, clear=True, showheader=True, skipModuleTable=False): Handle reset.
  • write(self, entry, logfile): Write the related value.

MnQueue

Simple queue abstraction used by mona internals.

  • __init__(self): Initialize a new MnQueue instance.
  • enqueue(self, val): Handle enqueue.
  • dequeue(self): Handle dequeue.
  • IsEmpty(self): Return whether empty is true.

MnModule

Represents a loaded module and exposes metadata, sections, symbols, and search ranges.

  • __init__(self, modulename, mzbase=0, path=''): Initialize a new MnModule instance.
  • _init_from_pe(self, modulename, mzbase=0, path=''): Internal helper that Handle init from pe.
  • _resolve_base_and_path(self, modulename, mzbase=0, path=''): Internal helper that Resolve base and path.
  • _parse_version(self, mzbase, path): Internal helper that Parse version.
  • _parse_pe_header(self, mzbase, path): Internal helper that Parse pe header.
  • _read_image_base_from_memory(self, pebase, is_pe64): Internal helper that Read image base from memory.
  • _detect_os_module(self, mzbase, path): Internal helper that Handle detect OS module.
  • _check_excluded(self, modulename): Internal helper that Handle check excluded.
  • get_property(self, parameter): Return property.
  • getCFGTable(self): Return cfgtable.
  • checkCFGCompatible(self, ptr, granularity=16, return_entry=False, return_reason=False): Handle check cfgcompatible.
  • __str__(self, clickable=False): Return a readable string representation.
  • isAslr(self): Return whether aslr is true.
  • isSafeSEH(self): Return whether safe SEH is true.
  • isRebase(self): Return whether rebase is true.
  • isOS(self): Return whether os is true.
  • isCFG(self): Return whether cfg is true.
  • isNX(self): Return whether nx is true.
  • moduleKey(self): Return module key.
  • modulePath(self): Return module path.
  • moduleFilename(self): Return module filename.
  • moduleBase(self): Return module base.
  • moduleSize(self): Return module size.
  • moduleTop(self): Return module top.
  • moduleEntry(self): Return module entry.
  • moduleCodebase(self): Return module codebase.
  • moduleCodesize(self): Return module codesize.
  • moduleCodetop(self): Return module codetop.
  • moduleVersion(self): Return module version.
  • moduleDllCharacteristics(self): Return module DLL characteristics.
  • isExcluded(self): Return whether excluded is true.
  • getFunctionCalls(self, criteria={}): Return function calls.
  • getIAT(self): Return IAT.
  • getEAT(self): Return EAT.
  • getShortName(self): Return short name.

MnNTXPChunkEntry

Heap chunk representation for classic NT/XP heap layouts.

  • data_offset(cls): Return the data offset.
  • parse(cls, raw_bytes): Parse the related value.

MnNTVistaChunkEntry

Heap chunk representation for Vista-style NT heap layouts.

  • data_offset(cls): Return the data offset.
  • parse(cls, raw_bytes): Parse the related value.

MnNT8ChunkEntry

Heap chunk representation for Windows 8+ NT heap layouts.

No methods are currently defined directly on this class.

HeapType

Enum-like namespace that identifies supported heap families.

No methods are currently defined directly on this class.

HeapVersion

Enum-like namespace that identifies supported heap versions.

No methods are currently defined directly on this class.

MnListEntry

LIST_ENTRY-style helper for linked-list traversal in Windows structures.

  • __init__(self, address): Initialize a new MnListEntry instance.
  • Flink(self): Return the FLINK linked-list pointer.
  • Blink(self): Return the BLINK linked-list pointer.
  • walk(self): Walk the related value.

MnHeap

Base heap model shared by NT heaps and Segment Heaps.

  • __new__(cls, address, walk_level=WalkLevel.HEAP): Python special constructor hook used before instance initialization.
  • _detectHeapType(address): Internal helper that Handle detect heap type.
  • __init__(self, address, walk_level=WalkLevel.HEAP): Initialize a new MnHeap instance.
  • _instantiate_for_cache(address, walk_level=WalkLevel.HEAP): Internal helper that Handle instantiate for cache.
  • _apply_walk_level(self): Internal helper that Handle apply walk level.
  • isCorrupted(self): Return whether corrupted is true.
  • getSignature(self): Return signature.
  • getSegmentHeapSignature(self): Return segment heap signature.
  • getHeapType(self): Return heap type.
  • getHeapVersion(self): Return heap version.
  • getHeaderSize(self): Return header size.
  • getEncodingInfo(self): Return encoding info.
  • getEncodingKey(self): Return encoding key.
  • getChunkHeaderDataOffset(self): Return chunk header data offset.
  • getHeapChunkHeaderAtAddress(self, thischunk, headersize=8, type='chunk'): Return heap chunk header at address.
  • getFrontEndHeap(self): Return front end heap.
  • getFrontEndHeapType(self): Return front end heap type.
  • getLookAsideHead(self): Return look aside head.
  • showLookAsideHead(self, lalindex): Show look aside head.
  • getLookAsideList(self): Return look aside list.
  • getFreeListInUseBitmap(self): Return free list in use bitmap.
  • getFreeList(self): Return free list.
  • getFreeBins(self): Return free bins.
  • getVirtualAllocdBlocks(self): Return virtual allocd blocks.
  • getHeapSegmentList(self): Return heap segment list.
  • usesLFH(self): Handle uses LFH.
  • getLFHAddress(self): Return lfhaddress.
  • getState(self): Return state.

MnNTHeap

Base class for classic NT heap implementations.

  • _offset(self, name): Internal helper that Handle offset.
  • _getSignatureProbes(cls): Internal helper that Return signature probes.
  • _checkForRecentHeapVersion(address): Internal helper that Handle check for recent heap version.
  • _detectHeapClass(address): Internal helper that Handle detect heap class.
  • __new__(cls, address, walk_level=WalkLevel.HEAP): Python special constructor hook used before instance initialization.
  • __init__(self, address, walk_level=WalkLevel.HEAP): Initialize a new MnNTHeap instance.
  • getHeapType(self): Return heap type.
  • getSegments(self): Return segments.
  • getVABlocks(self): Return vablocks.
  • getLFHRanges(self): Return lfhranges.
  • _walkLFHSubSegmentRanges(self): Internal helper that Walk lfhsub segment ranges.
  • getSegmentByAddress(self, addr): Return segment by address.
  • getFrontEndHeap(self): Return front end heap.
  • getFrontEndHeapType(self): Return front end heap type.
  • showLookAsideHead(self, lalindex): Show look aside head.
  • getVirtualAllocdBlocks(self): Return virtual allocd blocks.
  • getLFHAddress(self): Return lfhaddress.
  • getState(self): Return state.

MnNTXPHeap

NT heap implementation for XP-era layouts.

  • __init__(self, address, walk_level=WalkLevel.HEAP): Initialize a new MnNTXPHeap instance.
  • getChunkHeaderDataOffset(self): Return chunk header data offset.
  • getHeapChunkHeaderAtAddress(self, thischunk, headersize=8, type='chunk'): Return heap chunk header at address.
  • getLookAsideHead(self): Return look aside head.
  • getLookAsideList(self): Return look aside list.
  • getFreeListInUseBitmap(self): Return free list in use bitmap.
  • getFreeList(self): Return free list.
  • getFreeBins(self): Return free bins.
  • getHeapSegmentList(self): Return heap segment list.
  • _seg_walk(self): Internal helper that Handle seg walk.
  • iterSegments(self): Iterate over segments.

MnNTVistaHeap

NT heap implementation for Vista/7-era layouts.

  • __init__(self, address, walk_level=WalkLevel.HEAP): Initialize a new MnNTVistaHeap instance.
  • getChunkHeaderDataOffset(self): Return chunk header data offset.
  • getEncodingInfo(self): Return encoding info.
  • getEncodingKey(self): Return encoding key.
  • getHeapChunkHeaderAtAddress(self, thischunk, headersize=8, type='chunk'): Return heap chunk header at address.
  • iterSegments(self): Iterate over segments.
  • getHeapSegmentList(self): Return heap segment list.
  • _seg_walk(self): Internal helper that Handle seg walk.
  • usesLFH(self): Handle uses LFH.
  • getFrontEndHeapUsageData(self): Return front end heap usage data.

MnNT8Heap

NT heap implementation for Windows 8-era layouts.

  • __init__(self, address, walk_level=WalkLevel.HEAP): Initialize a new MnNT8Heap instance.
  • getEncodingKey(self): Return encoding key.
  • getChunkHeaderDataOffset(self): Return chunk header data offset.
  • getHeapSegmentList(self): Return heap segment list.

MnNT10Heap

NT heap implementation for Windows 10-era layouts.

  • _offset(self, name): Internal helper that Handle offset.
  • __init__(self, address, walk_level=WalkLevel.HEAP): Initialize a new MnNT10Heap instance.

MnNT11Heap

NT heap implementation for Windows 11-era layouts.

  • __init__(self, address, walk_level=WalkLevel.HEAP): Initialize a new MnNT11Heap instance.

MnSegmentHeap

Heap model for the modern Segment Heap implementation.

  • __init__(self, address, walk_level=WalkLevel.HEAP): Initialize a new MnSegmentHeap instance.
  • getHeapType(self): Return heap type.

MnVirtualAllocdBlocks

Tracks VirtualAlloc-backed heap blocks.

  • __init__(self, entry_addr): Initialize a new MnVirtualAllocdBlocks instance.

MnNTSegmentBase

Base class for NT heap segment parsing.

  • _last_committed_entry(self): Internal helper that Handle last committed entry.
  • _walk(self): Internal helper that Walk the related value.
  • getChunks(self): Return chunks.

MnNTXPSegment

NT heap segment model for XP-era layouts.

  • __init__(self, segaddr, encoding_key=0): Initialize a new MnNTXPSegment instance.
  • getEncodingKey(self): Return encoding key.
  • getChunkHeaderDataOffset(self): Return chunk header data offset.
  • getChunks(self): Return chunks.

MnNTVistaSegment

NT heap segment model for Vista+ layouts.

  • _last_committed_entry(self): Internal helper that Handle last committed entry.
  • __init__(self, segaddr, encoding_key=0): Initialize a new MnNTVistaSegment instance.

MnNTVistaLFH

Low Fragmentation Heap metadata for Vista-era heaps.

  • __init__(self, lfhbase): Initialize a new MnNTVistaLFH instance.

MnNT8LFH

Low Fragmentation Heap metadata for Windows 8-era heaps.

  • __init__(self, lfhbase): Initialize a new MnNT8LFH instance.

MnNT10LFH

Low Fragmentation Heap metadata for Windows 10-era heaps.

  • __init__(self, lfhbase): Initialize a new MnNT10LFH instance.

MnNTVistaSubSegment

LFH subsegment model for Vista-era heaps.

  • __init__(self, ssbase): Initialize a new MnNTVistaSubSegment instance.

MnNT8SubSegment

LFH subsegment model for Windows 8-era heaps.

  • __init__(self, ssbase): Initialize a new MnNT8SubSegment instance.

MnNT10SubSegment

LFH subsegment model for Windows 10-era heaps.

  • __init__(self, ssbase): Initialize a new MnNT10SubSegment instance.

MnLFH

Aggregates LFH state and helper logic across heap implementations.

  • __init__(self, lfhbase): Initialize a new MnLFH instance.
  • populateLFHFields(self): Populate lfhfields.
  • getSegmentInfo(self): Return segment info.
  • getSubSegmentList(self): Return sub segment list.
  • getSubSegment(self): Return sub segment.

MnSegment

Represents a heap segment and the chunks contained in it.

  • __init__(self, heapbase, segmentstart, segmentend, firstentry=0, lastvalidentry=0): Initialize a new MnSegment instance.
  • walk(self): Walk the related value.

MnChunk

Represents an individual heap chunk or allocation unit.

  • __init__(self, chunkptr, chunktype, headersize, heapbase, segmentbase, size, prevsize, segment, flag, unused, tag, flink=0, blink=0, commitsize=0, reservesize=0): Initialize a new MnChunk instance.
  • walk(cls, first_entry, last_valid_entry, heap, segment_base): Walk the related value.
  • getFillPattern(addy): Return fill pattern.
  • fill(self, fillchar='A', start=None, size=None, offset=None): Handle fill.
  • showChunk(self, showdata=False): Show chunk.
  • showChunkLine(self, showdata=False): Show chunk line.

MnProc

High-level model of the debugged process, including pages, modules, heaps, and threads.

  • __init__(self): Initialize a new MnProc instance.
  • ensure(cls): Ensure the related value is present and usable.
  • getHeapObject(self, heapbase): Return heap object.
  • getPEB(self): Return PEB.
  • getCurrentTEB(self): Return current TEB.
  • getTEBs(self): Return tebs.
  • getThreads(self): Return threads.
  • getStacks(self): Return stacks.
  • getTEBForStackAddress(self, addr): Return tebfor stack address.
  • getModuleForAddress(self, addr): Return module for address.
  • getStacksSorted(self): Return stacks sorted.
  • getAllHeapsSorted(self): Return all heaps sorted.
  • getNTHeapAddresses(self): Return ntheap addresses.
  • getSegmentHeapAddresses(self): Return segment heap addresses.
  • _getImmunityStructSizes(self): Internal helper that Return immunity struct sizes.
  • _struct_sizes(self): Internal helper that Handle struct sizes.
  • _peb_entry(self, peb_size): Internal helper that Handle PEB entry.
  • _teb_entry(self, tid, mteb, teb_size, current_teb_addr): Internal helper that Handle TEB entry.
  • _stack_entry(self, tid, mteb, sinfo, stackaddy): Internal helper that Handle stack entry.
  • _module_entry(self, mod): Internal helper that Return module entry.
  • _fmt_userptr(ptr, size, _alias=None, _windbg=None): Internal helper that Handle fmt userptr.
  • getAllSorted(self, include_chunks=False): Return all sorted.
  • getSortedByElement(self, include_chunks=False): Return sorted by element.

MnPointer

Represents a pointer discovered in process memory and the data around it.

  • __init__(self, address): Initialize a new MnPointer instance.
  • __str__(self): Return a readable string representation.
  • getAddress(self): Return address.
  • getOwnerName(self): Return owner name.
  • isUnicode(self): Return whether unicode is true.
  • isUnicodeRev(self): Return whether unicode rev is true.
  • isUnicodeTransform(self): Return whether unicode transform is true.
  • isAscii(self): Return whether ascii is true.
  • isAsciiPrintable(self): Return whether ascii printable is true.
  • isUppercase(self): Return whether uppercase is true.
  • isLowercase(self): Return whether lowercase is true.
  • isUpperNum(self): Return whether upper num is true.
  • isLowerNum(self): Return whether lower num is true.
  • isNumeric(self): Return whether numeric is true.
  • isAlphaNumeric(self): Return whether alpha numeric is true.
  • hasNulls(self): Return whether nulls is available.
  • startsWithNull(self): Handle starts with null.
  • belongsTo(self, modulesOnly=False): Handle belongs to.
  • isOnStack(self): Return whether on stack is true.
  • isInHeap(self): Return whether in heap is true.
  • getHeapInfo(self): Return heap info.
  • toHeapChunk(self): Convert to heap chunk.
  • showObjectInfo(self): Show object info.
  • showHeapBlockInfo(self): Show heap block info.
  • showHeapStackTrace(self, thischunk): Show heap stack trace.
  • memLocation(self): Handle mem location.
  • getPtrFunction(self): Return pointer function.
  • dumpObjectAtLocation(self, size, levels=0, nestedsize=0, customthislog='', customlogfile='', custommsg='', encoding_key=0, chunk_base=0): Dump object at location.
  • printObjDump(self, dumpdata, logfile, thislog, size=0, parent='', heapdata=[]): Print obj dump.
  • getLocInfo(self, loc, addy, startaddy, endaddy): Return loc info.

MemoryComparator

Helper used by memory-compare routines to track byte differences and bad-character candidates.

  • __init__(self, x, y): Initialize a new MemoryComparator instance.
  • get_last_unmodified_chunk(self): Return last unmodified chunk.
  • get_grid(self): Return grid.
  • get_blocks(self): Return blocks.
  • get_chunks(self): Return chunks.
  • guess_mapping(self): Guess mapping.

MnAI

Builds AI prompts, sends provider requests, and renders AI-assisted debugger output.

  • __init__(self, args, mona_config=None): Initialize a new MnAI instance.
  • logInfo(self, message): Log info.
  • logInfoDetail(self, message): Log info detail.
  • logError(self, message): Log error.
  • logErrorDetail(self, message): Log error detail.
  • isDefaultEngineSelection(self): Return whether default engine selection is true.
  • switchToOfflineEngine(self, reason, details=None): Handle switch to offline engine.
  • getConfiguredDefaultEngine(self): Return configured default engine.
  • parseEngineSelection(self): Parse engine selection.
  • parseQuestionProfile(self): Parse question profile.
  • fetchAvailableModels(self, refresh=False, log_errors=False): Handle fetch available models.
  • _isConfiguredModelAvailable(self, available_models): Internal helper that Return whether configured model available is true.
  • logAvailableModels(self, models=None, error_mode=False): Log available models.
  • maybePrintAvailableModelsWhenIdle(self): Handle maybe print available models when idle.
  • parseTargetAddress(self): Parse target address.
  • parseTemplateSelection(self): Parse template selection.
  • ensureDefaultTemplates(self): Ensure default templates is present and usable.
  • parseQ2FollowDepth(self): Parse Q2 follow depth.
  • parseRequestSettings(self): Parse request settings.
  • validateProviderConfiguration(self): Handle validate provider configuration.
  • parseContextFiles(self): Parse context files.
  • parsePocFile(self): Parse poc file.
  • parseRopModuleSelection(self): Parse ROP module selection.
  • validateCurrentInstruction(self): Handle validate current instruction.
  • getRequestContext(self): Return request context.
  • buildRequestPrompt(self): Build request prompt.
  • writeOfflineRequest(self): Write offline request.
  • getOpenAIRequestMode(self): Return open airequest mode.
  • writeRequestLog(self, request_id=''): Write request log.
  • writeResponseLog(self): Write response log.
  • request(self, question_type=None, prompt=None): Handle request.
  • execute(self): Handle execute.