mem_scan_exploits = function (mem_scan) ex_list = [] while true ex_mark = mem_scan.indexOf("<b>") if ex_mark == null then break // get exploit value ex_mark_end = mem_scan.indexOf("</b>") value = slice(mem_scan, ex_mark+3, ex_mark_end) // get requirements mem_scan = mem_scan[ex_mark_end+5:] mem_scan = mem_scan[mem_scan.indexOf(".")+1:] mem_scan_lines = mem_scan.split("\n")[1:] if mem_scan_lines[0].indexOf("*") != null then req = mem_scan_lines[:mem_scan_lines.indexOf("")] else req = [] end if //print(mem_scan) if req.len >= 1 then mem_scan = mem_scan[mem_scan.indexOf(req[-1])+req[-1].len+1:] end if exploit = {value: req} ex_list.push(exploit) end while return ex_list end function