var catvm = {}; //框架运行内存 catvm.memory = { config: {print: false, proxy:false} }; //默认关闭打印 catvm.memory.htmlelements = {} catvm.memory.listeners = {} catvm.memory.PluginArray = {} catvm.memory.RunElementList = []; catvm.memory.setTimeout_func = {}; catvm.memory.setInterval_func = {}; catvm.memory.html = {}; catvm.memory.document = {}; //主要用来保护伪造的函数 让其更难被识破 ;;;; (() => { "use strict"; const $toString = Function.toString; const myFunction_toString_symbol = Symbol('('.concat('', ')_', (Math.random() + '').toString(36))); const myToString = function() { return typeof this == 'function' && this[myFunction_toString_symbol] || $toString.call(this); }; function set_native(func, key, value) { Object.defineProperty(func, key, { "enumerable": false, "configurable": true, "writable": true, "value": value }) }; delete Function.prototype['toString']; //删除原型链上的toString set_native(Function.prototype, "toString", myToString); //自己定义个getter方法 set_native(Function.prototype.toString, myFunction_toString_symbol, "function toString() { [native code] }"); //套个娃 保护一下我们定义的toString 否则就暴露了 this.catvm.safefunction = (func) => { set_native(func, myFunction_toString_symbol, `function ${myFunction_toString_symbol,func.name || ''}() { [native code] }`); }; //导出函数到globalThis }).call(this); //框架日志功能 catvm.print = {} catvm.print.open = false; catvm.memory.print = []; catvm.print.log = function (logType,target,property,value) { if (catvm.print.open && catvm.memory.config.print) { //开始保存日志 if( catvm.memory.print.length == 111){ debugger; } catvm.memory.print.push({"类型":logType,"调用者":target,"属性":property,"值":value}); } } catvm.print.getall = function () { console.table(catvm.memory.print,["类型","调用者","属性","值"]); } //框架代理功能 catvm.proxy = function(o){ if(catvm.memory.config.proxy == false){return o}; return new Proxy(o, { set(target, property, value) { catvm.print.log("set",target,property,value); return Reflect.set(...arguments); }, get(target, property, receiver) { console.log("get",target,property,target[property]); catvm.print.log("get",target,property,target[property]); return target[property]; } }); } //更改浏览器的某些参数 常用的 //catvm.memory.Plugin.new({description:"npAliSSOLogin Plugin",filename:"npalissologin.dll",name:"AliSSOLogin plugin",MimeTypes:[{description: "AliSSOLogin",suffixes: "AliSSOLogin",type: "application/npalissologin"},{description: "AliSSOLogin1",suffixes: "AliSSOLogin",type: "application1/npalissologin"}]}) //在此文件下的代码 必须要框架run方法执行后执行 catvm.AddPlugin = function(data){ //{description:"npAliSSOLogin Plugin",filename:"npalissologin.dll",name:"AliSSOLogin plugin",MimeTypes:[{description: "AliSSOLogin",suffixes: "AliSSOLogin",type: "application/npalissologin"},{description: "AliSSOLogin1",suffixes: "AliSSOLogin",type: "application1/npalissologin"}]} if(catvm.memory.PluginArray.temp == undefined) { catvm.memory.PluginArray.temp = [] } catvm.memory.PluginArray.temp.push(data); } catvm.PointEvent = {}; //最后一个click事件的函数才会检验 catvm.PointEvent.SearchInputPointEvent = function SearchInputPointEvent(){ //搜索框 var srcElement_ = class srcElement{}; srcElement_.getBoundingClientRect = function getBoundingClientRect(){ //返回一个DOMRect var domrect = class domrect{}; domrect.bottom = 168.85000610351562; domrect.height = 34 domrect.left = 746.7374877929688 domrect.right = 1157.0874938964844 domrect.top = 134.85000610351562 domrect.width = 410.3500061035156 domrect.x = 746.7374877929688 domrect.y = 134.85000610351562 return catvm.proxy(domrect) }; var pointEvent = { isTrusted: true, altKey: false, altitudeAngle: 1.5707963267948966, azimuthAngle: 0, bubbles: true, button: 0, buttons: 0, cancelBubble: false, cancelable: true, clientX: 876, clientY: 148, composed: true, ctrlKey: false, currentTarget: catvm.proxy(class currentTarget{}), defaultPrevented: false, detail: 1, eventPhase: 1, fromElement: null, height: 1, isPrimary: false, layerX: 130, layerY: 13, metaKey: false, movementX: 0, movementY: 0, offsetX: 129, offsetY: 13, pageX: 876, pageY: 148, path: catvm.proxy(class path{}), pointerId: 1, pointerType: "mouse", pressure: 0, relatedTarget: null, returnValue: true, screenX: 876, screenY: 250, shiftKey: false, sourceCapabilities: catvm.proxy({firesTouchEvents: false}), srcElement: srcElement_, tangentialPressure: 0, target: srcElement_, tiltX: 0, tiltY: 0, timeStamp: 536587.8999999762, toElement: null, twist: 0, type: "click", view: catvm.proxy(class view{}), which: 1, width: 1, x: 876, y: 148, } return catvm.proxy(pointEvent); } catvm.PointEvent.SearchClickPointEvent = function SearchClickPointEvent(){ } catvm.memory.config.proxy=true; catvm.memory.config.print=true; catvm.AddPlugin({description:"npAliSSOLogin Plugin",filename:"npalissologin.dll",name:"AliSSOLogin plugin",MimeTypes:[{description: "AliSSOLogin",suffixes: "AliSSOLogin",type: "application/npalissologin"},{description: "AliSSOLogin1",suffixes: "AliSSOLogin",type: "application1/npalissologin"}]}); catvm.AddPlugin({description:"npAliSSOLogin Plugin",filename:"npalissologin1.dll",name:"AliSSOLogin plugin2",MimeTypes:[{description: "AliSSOLogin",suffixes: "AliSSOLogin",type: "application/npalissologin"},{description: "AliSSOLogin1",suffixes: "AliSSOLogin",type: "application1/npalissologin"}]}); ; var EventTarget =function EventTarget() //构造函数 { debugger; }; catvm.safefunction(EventTarget); Object.defineProperties(EventTarget.prototype , { [Symbol.toStringTag]: { value: "EventTarget", configurable: true } }); EventTarget.prototype.addEventListener = function addEventListener(type, callback){ if(!(type in catvm.memory.listeners)) { catvm.memory.listeners[type] = []; } catvm.memory.listeners[type].push(callback); };catvm.safefunction(EventTarget.prototype.addEventListener); //保护代码 EventTarget.prototype.dispatchEvent = function dispatchEvent(){ debugger; };catvm.safefunction(EventTarget.prototype.dispatchEvent); //保护代码 EventTarget.prototype.removeEventListener = function removeEventListener(){ debugger; };catvm.safefunction(EventTarget.prototype.removeEventListener); //保护代码 var WindowProperties = function WindowProperties(){ }; catvm.safefunction(WindowProperties); //保护代码 Object.defineProperties(WindowProperties.prototype , { [Symbol.toStringTag]: { value: "WindowProperties", configurable: true } }); WindowProperties.prototype.__proto__ = EventTarget.prototype; window = this; var Window = function Window(){ //容易被检测到的 堆栈 throw new TypeError("Illegal constructor"); }; catvm.safefunction(Window); Object.defineProperties(Window.prototype , { [Symbol.toStringTag]: { value: "Window", configurable: true } }); //// window.setTimeout = function setTimeout(x,d) { //x 有可能是方法 也有可能是文本 // debugger; // typeof(x) == "function"?x():undefined; // typeof(x) == "string"?eval(x) :undefined; //正确应该 生成UUID 并且保存到内存 catvm.memory.setTimeout_func[d.toString()] = x return 0; };catvm.safefunction(window.setTimeout); window.setInterval = function setInterval(x,d){ //x 有可能是方法 也有可能是文本 // typeof(x) == "function" ? x() : undefined; // typeof(x) == "string" ? eval(x) : undefined; //正确应该 生成UUID 并且保存到内存 catvm.memory.setInterval_func[d.toString()] = x return 0; };catvm.safefunction(window.setInterval); Window.prototype.PERSISTENT = 1 Window.prototype.TEMPORARY = 0 window.top = window; window.origin = 'chrome://newtab' window.name = '' window.open = function open(){debugger;};catvm.safefunction(window.open); window.webkitRTCPeerConnection = function RTCPeerConnection(){debugger};catvm.safefunction(window.webkitRTCPeerConnection); //chrome可以参照localStorange window.chrome = class chrome{}; window.chrome.loadTimes = function loadTimes(){debugger;};catvm.safefunction(window.chrome.loadTimes); window.chrome.csi = function csi(){debugger;};catvm.safefunction(window.chrome.csi); window.chrome.app = catvm.proxy(class app{}); window.chrome.app.InstallState = { DISABLED: "disabled", INSTALLED: "installed", NOT_INSTALLED: "not_installed", } window.chrome = catvm.proxy(window.chrome); window.Element = function Element(){debugger;};catvm.safefunction(window.Element); window.DeviceOrientationEvent = function DeviceOrientationEvent(){debugger};catvm.safefunction(window.DeviceOrientationEvent); window.DeviceMotionEvent = function DeviceMotionEvent(){debugger};catvm.safefunction(window.DeviceMotionEvent); window.XMLHttpRequest = function XMLHttpRequest(){debugger;};catvm.safefunction(window.XMLHttpRequest); // window.localStorange = class localStorange{} // window.localStorange.getItem = function getItem(){debugger;};catvm.safefunction(window.localStorange.getItem); // window.localStorange.setItem = function setItem(){debugger;};catvm.safefunction(window.localStorange.setItem); // window.localStorange = catvm.proxy(window.localStorange) //没问题 window.IDBFactory = function IDBFactory(){ debugger; };catvm.safefunction(window.IDBFactory); window.IDBFactory.prototype.open = function open(){ debugger; var open_ = { error: "", onblocked: null, onerror: null, onsuccess: null, onupgradeneeded: null, readyState: "pending", result: "", source: null, transaction: null, } return catvm.proxy(open_) };catvm.safefunction(window.IDBFactory.prototype.open); window.indexedDB = {}; window.indexedDB.__proto__ = window.IDBFactory.prototype; window.indexedDB = catvm.proxy(window.indexedDB); window.DOMParser = function DOMParser(){ debugger; };catvm.safefunction(window.DOMParser); //没问题 window.webkitRequestFileSystem = function webkitRequestFileSystem(){ debugger; };catvm.safefunction(window.webkitRequestFileSystem); window.clearInterval = function clearInterval(){ debugger; };catvm.safefunction(window.clearInterval); var HTMLFormElement = function HTMLFormElement(){ };catvm.safefunction(HTMLFormElement); window.fetch = function fetch(){ debugger; };catvm.safefunction(fetch); window.openDatabase = function openDatabase(){ debugger; };catvm.safefunction(window.openDatabase); window.self = window; window.Request = function Request(){ debugger; };catvm.safefunction(window.Request); // window.MutationObserver = function MutationObserver(){ // debugger; // };catvm.safefunction(window.MutationObserver); window.webkitResolveLocalFileSystemURL = function webkitResolveLocalFileSystemURL(){ debugger; };catvm.safefunction(window.webkitResolveLocalFileSystemURL); //没问题 window.MutationObserver = function MutationObserver(){ debugger; this.disconnect = function disconnect(){debugger;} this.observe = function observe(){debugger;} this.takeRecords = function takeRecords(){debugger;} return catvm.proxy(this) };catvm.safefunction(window.MutationObserver); window.Error = new Proxy(window.Error,{ construct: function (a,s){ res = new a(s) res.stack = `Error at _$e2 (eval at _$c5 (http://credit.customs.gov.cn/ccppwebserver/ZCQq7Fzuhp12/BSrw3csEQORp.f141528.js:5:170106), :2:20609) at _$nr (eval at _$c5 (http://credit.customs.gov.cn/ccppwebserver/ZCQq7Fzuhp12/BSrw3csEQORp.f141528.js:5:170106), :2:26991) at _$dg (eval at _$c5 (http://credit.customs.gov.cn/ccppwebserver/ZCQq7Fzuhp12/BSrw3csEQORp.f141528.js:5:170106), :2:22738) at _$nr (eval at _$c5 (http://credit.customs.gov.cn/ccppwebserver/ZCQq7Fzuhp12/BSrw3csEQORp.f141528.js:5:170106), :2:26104) at _$dg (eval at _$c5 (http://credit.customs.gov.cn/ccppwebserver/ZCQq7Fzuhp12/BSrw3csEQORp.f141528.js:5:170106), :2:22738) at _$nr (eval at _$c5 (http://credit.customs.gov.cn/ccppwebserver/ZCQq7Fzuhp12/BSrw3csEQORp.f141528.js:5:170106), :2:24525) at Array._$dg (eval at _$c5 (http://credit.customs.gov.cn/ccppwebserver/ZCQq7Fzuhp12/BSrw3csEQORp.f141528.js:5:170106), :2:22738) at eval (eval at _$c5 (http://credit.customs.gov.cn/ccppwebserver/ZCQq7Fzuhp12/BSrw3csEQORp.f141528.js:5:170106), :2:158543) at eval (eval at _$c5 (http://credit.customs.gov.cn/ccppwebserver/ZCQq7Fzuhp12/BSrw3csEQORp.f141528.js:5:170106), :9:2637) at eval ()` debugger return res; } }); window.addEventListener = function addEventListener(X,func){ debugger; if(!catvm.memory.listeners[X.toString()]){ catvm.memory.listeners[X.toString()] = []; } catvm.memory.listeners[X.toString()].push(func); };catvm.safefunction(window.addEventListener); /////////////////////////////////////////////////////////////////////////////////// window.defaultStatus = ""; window.onmessage = null; window.personalbar = window.scrollbars = window.statusbar = window.toolbar = window.locationbar = window.menubar = catvm.proxy({visible: true}); window.devicePixelRatio = 1.25; window.WebSocket = function WebSocket(){ debugger; };catvm.safefunction(window.WebSocket); window.Path2D = function Path2D(){ debugger; };catvm.safefunction(window.Path2D); window.SourceBuffer = function SourceBuffer(){ debugger; };catvm.safefunction(window.SourceBuffer); window.external = catvm.proxy(class external{}); window.SVGPatternElement = function SVGPatternElement(){ debugger; };catvm.safefunction(window.SVGPatternElement); window.CDATASection = function CDATASection(){ debugger; };catvm.safefunction(window.CDATASection); window.CloseEvent = function CloseEvent(){ debugger; };catvm.safefunction(window.CloseEvent); window.Notification = function Notification(){ debugger; };catvm.safefunction(window.Notification); window.HTMLFrameSetElement = function HTMLFrameSetElement(){ debugger; };catvm.safefunction(window.HTMLFrameSetElement); window.TextTrackList = function TextTrackList(){ debugger; };catvm.safefunction(window.TextTrackList); window.ScreenOrientation = function ScreenOrientation(){ debugger; };catvm.safefunction(window.ScreenOrientation); window.SpeechSynthesisUtterance = function SpeechSynthesisUtterance(){ debugger; };catvm.safefunction(window.SpeechSynthesisUtterance); window.onerror = null; window.PerformancePaintTiming = function PerformancePaintTiming(){ debugger; };catvm.safefunction(window.PerformancePaintTiming); window.SVGGraphicsElement = function SVGGraphicsElement(){ debugger; };catvm.safefunction(window.SVGGraphicsElement); window.MediaEncryptedEvent = function MediaEncryptedEvent(){ debugger; };catvm.safefunction(window.MediaEncryptedEvent); Window.prototype.__proto__ = WindowProperties.prototype; window.__proto__ = Window.prototype; Window.prototype = catvm.proxy(Window.prototype) window = catvm.proxy(window) var Location =function Location() {//构造函数 throw new TypeError("Illegal constructor"); }; catvm.safefunction(Location); Object.defineProperties(Location.prototype , { [Symbol.toStringTag]: { value: "Location", configurable: false } }); //// location = {}; location.ancestorOrigins = catvm.proxy(class ancestorOrigins{}); location.href = 'http://credit.customs.gov.cn/ccppwebserver/pages/ccpp/html/crossBorder.html'; location.host = 'credit.customs.gov.cn'; //如果url中包含了:端口号,则就要加上,但是hostname不用加 location.hostname = location.host; location.protocol = 'http:'; location.port = ''; location.origin = 'http://credit.customs.gov.cn'; location.pathname = '/ccppwebserver/pages/ccpp/html/crossBorder.html' location.search = ""; location.hash = ""; location.search = function search(){ debugger; };catvm.safefunction(location.search); location.replace = function replace(){ debugger; };catvm.safefunction(location.replace); location.__proto__ = Location.prototype; /// location = catvm.proxy(location); catvm.memory.navigator = {} var Navigator =function Navigator() {//构造函数 throw new TypeError("Illegal constructor"); }; catvm.safefunction(Navigator); Object.defineProperties(Navigator.prototype , { [Symbol.toStringTag]: { value: "Navigator", configurable: true } }); //// navigator = {}; navigator.__proto__ = Navigator.prototype; Navigator.prototype.appCodeName = 'Mozilla'; Navigator.prototype.appName = 'Netscape'; Navigator.prototype.userAgent = "5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/95.0.4638.69 Safari/537.36"; Navigator.prototype.languages = ["zh-CN", "zh"]; Navigator.prototype.platform = 'Win32'; Navigator.prototype.plugins = []; var NetworkInformation = class NetworkInformation{}; NetworkInformation.downlink = 10; NetworkInformation.effectiveType = "4g"; NetworkInformation.onchange = null; NetworkInformation.rtt = 150; NetworkInformation.saveData = false; Navigator.prototype.connection = catvm.proxy(NetworkInformation); Navigator.prototype.appVersion = '5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/95.0.4638.69 Safari/537.36'; Navigator.prototype.webkitPersistentStorage = class DeprecatedStorageQuota{}; Navigator.prototype.webkitPersistentStorage = catvm.proxy(Navigator.prototype.webkitPersistentStorage); Navigator.prototype.mimeTypes = { length:0 } Navigator.prototype.mimeTypes = catvm.proxy(Navigator.prototype.mimeTypes); Navigator.prototype.webdriver = false; catvm.memory.navigator.getwebdriver = function webdriver(){ return false; };catvm.safefunction(catvm.memory.navigator.getwebdriver); Object.defineProperty(Navigator.prototype, 'webdriver', { configurable: true, enumerable: true, get: catvm.memory.navigator.getwebdriver }); Navigator.prototype.hardwareConcurrency = 6; Navigator.prototype.productSub = '20030107'; Navigator.prototype.product = "Gecko"; Navigator.prototype.doNotTrack = null; Navigator.prototype.maxTouchPoints = 0; Navigator.prototype.vibrate = function vibrate(){ debugger; };catvm.safefunction(Navigator.prototype.vibrate); Navigator.prototype.language = 'zh-CN'; Navigator.prototype.getBattery = function getBattery(){ var BatteryManager_ = new (function BatteryManager(){}); BatteryManager_.charging = false; BatteryManager_.chargingTime = Infinity; BatteryManager_.dischargingTime = Infinity; BatteryManager_.level = 1; BatteryManager_.onchargingchange = null; BatteryManager_.onchargingtimechange = null; BatteryManager_.ondischargingtimechange = null; BatteryManager_.onlevelchange = null; BatteryManager_.__proto__ = BatteryManager.prototype; return new Promise((resolve,reject) => { resolve(BatteryManager_); }) };catvm.safefunction(Navigator.prototype.getBattery); //Navigator.prototype.getBattery = catvm.proxy(Navigator.prototype.getBattery); for (catvm.memory.navigator.temp in Navigator.prototype) { if(catvm.memory.navigator.temp === "webdriver"){ continue; } navigator[catvm.memory.navigator.temp] = Navigator.prototype[catvm.memory.navigator.temp]; Navigator.prototype.__defineGetter__(catvm.memory.navigator.temp, function() { throw new TypeError("Illegal constructor"); }); } //// window.clientInformation = navigator; navigator = catvm.proxy(navigator); var History =function History() {//构造函数 throw new TypeError("Illegal constructor"); }; catvm.safefunction(History); Object.defineProperties(History.prototype , { [Symbol.toStringTag]: { value: "History", configurable: true } }); //// History.prototype.back = function back(){debugger};catvm.safefunction(History.prototype.back); ///// history = {}; history.__proto__ = History.prototype; history = catvm.proxy(history); var Screen =function Screen() {//构造函数 throw new TypeError("Illegal constructor"); }; catvm.safefunction(Screen); Object.defineProperties(Screen.prototype , { [Symbol.toStringTag]: { value: "Screen", configurable: true } }); //// Screen.prototype.availHeight = 824; Screen.prototype.availWidth = 1536; Screen.prototype.availLeft = 0; Screen.prototype.availTop = 0; Screen.prototype.colorDepth = 24; Screen.prototype.height = 864; Screen.prototype.width = 1536; Screen.prototype.pixelDepth = 24; //// screen = {}; screen.__proto__ = Screen.prototype; screen = catvm.proxy(screen); var Storage =function Storage() {//构造函数 throw new TypeError("Illegal constructor"); }; catvm.safefunction(Storage); Object.defineProperties(Storage.prototype , { [Symbol.toStringTag]: { value: "Storage", configurable: true } }); ///// Storage.prototype.length=0; Storage.prototype.clear=function clear(){ debugger; var temp = Object.keys(this) for (var i=0;temp.length>i;i++) { delete this[temp[i]]; } }; catvm.safefunction(Storage.prototype.clear); Storage.prototype.getItem=function getItem(k){ debugger; return this[k]; }; catvm.safefunction(Storage.prototype.getItem); Storage.prototype.key=function key(index){ debugger; return Object.keys(this)[index] }; catvm.safefunction(Storage.prototype.key); Storage.prototype.removeItem=function removeItem(k){ debugger; delete this[k]; }; catvm.safefunction(Storage.prototype.removeItem); Storage.prototype.setItem=function setItem(k,v){ debugger; this[k] = v; }; catvm.safefunction(Storage.prototype.setItem); ////容易被检测 Storage.prototype.__defineGetter__('length',function(){ return Object.keys(this).length; }) ////// var localStorage = { $_YVTX: "Wq", $_YWTU: "EVgznX0cRo_SXWEdi8XdPitQMutbguHPx8Y3Ez1.4R0", _$rc: "aXcDXMffnjsmCvjX1MTgZtw.4QzustTMJcm6.ZeWohAbqlcEBpHaBTVNjVQ", "__#classType": "localStorage", length: 4 }; localStorage.__proto__ = Storage.prototype; localStorage = catvm.proxy(localStorage); var sessionStorage = { length: 0 }; sessionStorage.__proto__ = Storage.prototype; sessionStorage = catvm.proxy(sessionStorage); catvm.memory.Plugin = {} var Plugin =function Plugin() {//构造函数 throw new TypeError("Illegal constructor"); }; catvm.safefunction(Plugin); catvm.memory.Plugin.iterator = function values(){ debugger; }; catvm.safefunction(catvm.memory.Plugin.iterator); Object.defineProperties(Plugin.prototype , { [Symbol.toStringTag]: { value: "Plugin", configurable: true }, [Symbol.iterator]: { value: catvm.memory.Plugin.iterator, configurable: true } }); /////////// ////////// catvm.memory.Plugin.new = function (data){ var plugin = {}; plugin.__proto__ = Plugin.prototype; if(data != undefined){ plugin.description = data.description; plugin.filename = data.filename; plugin.name = data.name; } return plugin; } var Performance = function Performance(){ //容易被检测到的 堆栈 throw new TypeError("Illegal constructor"); }; catvm.safefunction(Performance); Object.defineProperties(Performance.prototype , { [Symbol.toStringTag]: { value: "Performance", configurable: true } }); //// performance = {}; performance.__proto__ = Performance.prototype; Performance.prototype = function getEntriesByName(){debugger};catvm.safefunction(Performance.prototype); ///// Performance.prototype.__proto__ = EventTarget.prototype; performance = catvm.proxy(performance); var BatteryManager = function BatteryManager(){ //容易被检测到的 堆栈 throw new TypeError("Illegal constructor"); }; catvm.safefunction(BatteryManager); Object.defineProperties(BatteryManager.prototype , { [Symbol.toStringTag]: { value: "BatteryManager", configurable: true } }); /// BatteryManager.prototype.charging = true; BatteryManager.prototype.chargingTime = Infinity; BatteryManager.prototype.dischargingTime = Infinity; BatteryManager.prototype.level = 1; BatteryManager.prototype.onchargingchange = null; BatteryManager.prototype.onchargingtimechange = null; BatteryManager.prototype.ondischargingtimechange = null; BatteryManager.prototype.onlevelchange = null; BatteryManager.prototype.__proto__ = EventTarget.prototype ///// catvm.memory.navigator = {} var HTMLDivElement =function HTMLDivElement() {//构造函数 throw new TypeError("Illegal constructor"); }; catvm.safefunction(HTMLDivElement); Object.defineProperties(HTMLDivElement.prototype , { [Symbol.toStringTag]: { value: "HTMLDivElement", configurable: true } }); HTMLDivElement.prototype.getElementsByTagName = function getElementsByTagName(){ debugger };catvm.safefunction(HTMLDivElement.prototype.getElementsByTagName); var HTMLMetaElement =function HTMLMetaElement() {//构造函数 throw new TypeError("Illegal constructor"); }; catvm.safefunction(HTMLMetaElement); Object.defineProperties(HTMLMetaElement.prototype , { [Symbol.toStringTag]: { value: "HTMLMetaElement", configurable: true } }); var HTMLHtmlElement =function HTMLHtmlElement() {//构造函数 throw new TypeError("Illegal constructor"); }; catvm.safefunction(HTMLHtmlElement); Object.defineProperties(HTMLHtmlElement.prototype , { [Symbol.toStringTag]: { value: "HTMLHtmlElement", configurable: true } }); catvm.memory.canvas = {}; var CanvasRenderingContext2D =function CanvasRenderingContext2D() {//构造函数 throw new TypeError("Illegal constructor"); }; catvm.safefunction(CanvasRenderingContext2D); Object.defineProperties(CanvasRenderingContext2D.prototype , { [Symbol.toStringTag]: { value: "CanvasRenderingContext2D", configurable: true } }); /////////////////////////////////////////////////////////////////////////////////////////////// CanvasRenderingContext2D.prototype.rect=function rect(a_,b_,c_,d_){ debugger; };catvm.safefunction(CanvasRenderingContext2D.prototype.rect); CanvasRenderingContext2D.prototype.isPointInPath=function isPointInPath(x_,y_,z_){ debugger; return false; };catvm.safefunction(CanvasRenderingContext2D.prototype.isPointInPath); CanvasRenderingContext2D.prototype.fillRect=function fillRect(x, y, width, height){ //绘制一个填充了内容的矩形,填充样式由当前的 fillStyle 决定 //x->矩阵的起始x y->矩阵的起始y width->矩阵的宽度 height->矩阵的高度 debugger; return undefined; };catvm.safefunction(CanvasRenderingContext2D.prototype.fillRect); CanvasRenderingContext2D.prototype.fillText=function fillText(a_,b_,c_){ debugger; return undefined; };catvm.safefunction(CanvasRenderingContext2D.prototype.fillText); CanvasRenderingContext2D.prototype.beginPath=function beginPath(){ debugger; return undefined; };catvm.safefunction(CanvasRenderingContext2D.prototype.beginPath); CanvasRenderingContext2D.prototype.closePath=function closePath(){ debugger; return undefined; };catvm.safefunction(CanvasRenderingContext2D.prototype.closePath); CanvasRenderingContext2D.prototype.fill=function fill(x_){ debugger; return undefined; };catvm.safefunction(CanvasRenderingContext2D.prototype.fill); CanvasRenderingContext2D.prototype.arc=function arc(x_,y_,z_,a_,b_,c_){ debugger; return undefined; };catvm.safefunction(CanvasRenderingContext2D.prototype.arc); CanvasRenderingContext2D.prototype.stroke=function stroke(x_,y_,z_,a_,b_,c_){ debugger; return undefined; };catvm.safefunction(CanvasRenderingContext2D.prototype.stroke); CanvasRenderingContext2D.prototype.strokeRect=function strokeRect(x, y, width, height){ //绘制空心矩阵其 debugger; return undefined; };catvm.safefunction(CanvasRenderingContext2D.prototype.strokeRect); /* CanvasRenderingContext2D.fillStyle 设置或返回用于填充绘画的颜色、渐变或模式 可以 CanvasRenderingContext2D.fillStyle = 'yellow' 颜色-color 绘图填充色的css颜色(默认是#000000) 渐变-gradient 用于填充绘图的渐变对象 模式-pattern */ //////////////////////////////////////////////////////////////////////////////////////////////////////// catvm.memory.canvas.canvasRenderingContext2D = {}; catvm.memory.canvas.canvasRenderingContext2D.__proto__ = CanvasRenderingContext2D.prototype; catvm.memory.canvas.canvasRenderingContext2D = catvm.proxy(catvm.memory.canvas.canvasRenderingContext2D); catvm.memory.webgl = {}; var WebGLRenderingContext =function WebGLRenderingContext() {//构造函数 throw new TypeError("Illegal constructor"); }; catvm.safefunction(WebGLRenderingContext); Object.defineProperties(WebGLRenderingContext.prototype , { [Symbol.toStringTag]: { value: "WebGLRenderingContext", configurable: true } }); WebGLRenderingContext.prototype.canvas=catvm.proxy(class canvas{}); WebGLRenderingContext.prototype.drawingBufferWidth=300; WebGLRenderingContext.prototype.drawingBufferHeight=150; WebGLRenderingContext.prototype.DEPTH_BUFFER_BIT=256; WebGLRenderingContext.prototype.STENCIL_BUFFER_BIT=1024; WebGLRenderingContext.prototype.COLOR_BUFFER_BIT=16384; WebGLRenderingContext.prototype.POINTS=0; WebGLRenderingContext.prototype.LINES=1; WebGLRenderingContext.prototype.LINE_LOOP=2; WebGLRenderingContext.prototype.LINE_STRIP=3; WebGLRenderingContext.prototype.TRIANGLES=4; WebGLRenderingContext.prototype.TRIANGLE_STRIP=5; WebGLRenderingContext.prototype.TRIANGLE_FAN=6; WebGLRenderingContext.prototype.ZERO=0; WebGLRenderingContext.prototype.ONE=1; WebGLRenderingContext.prototype.SRC_COLOR=768; WebGLRenderingContext.prototype.ONE_MINUS_SRC_COLOR=769; WebGLRenderingContext.prototype.SRC_ALPHA=770; WebGLRenderingContext.prototype.ONE_MINUS_SRC_ALPHA=771; WebGLRenderingContext.prototype.DST_ALPHA=772; WebGLRenderingContext.prototype.ONE_MINUS_DST_ALPHA=773; WebGLRenderingContext.prototype.DST_COLOR=774; WebGLRenderingContext.prototype.ONE_MINUS_DST_COLOR=775; WebGLRenderingContext.prototype.SRC_ALPHA_SATURATE=776; WebGLRenderingContext.prototype.FUNC_ADD=32774; WebGLRenderingContext.prototype.BLEND_EQUATION=32777; WebGLRenderingContext.prototype.BLEND_EQUATION_RGB=32777; WebGLRenderingContext.prototype.BLEND_EQUATION_ALPHA=34877; WebGLRenderingContext.prototype.FUNC_SUBTRACT=32778; WebGLRenderingContext.prototype.FUNC_REVERSE_SUBTRACT=32779; WebGLRenderingContext.prototype.BLEND_DST_RGB=32968; WebGLRenderingContext.prototype.BLEND_SRC_RGB=32969; WebGLRenderingContext.prototype.BLEND_DST_ALPHA=32970; WebGLRenderingContext.prototype.BLEND_SRC_ALPHA=32971; WebGLRenderingContext.prototype.CONSTANT_COLOR=32769; WebGLRenderingContext.prototype.ONE_MINUS_CONSTANT_COLOR=32770; WebGLRenderingContext.prototype.CONSTANT_ALPHA=32771; WebGLRenderingContext.prototype.ONE_MINUS_CONSTANT_ALPHA=32772; WebGLRenderingContext.prototype.BLEND_COLOR=32773; WebGLRenderingContext.prototype.ARRAY_BUFFER=34962; WebGLRenderingContext.prototype.ELEMENT_ARRAY_BUFFER=34963; WebGLRenderingContext.prototype.ARRAY_BUFFER_BINDING=34964; WebGLRenderingContext.prototype.ELEMENT_ARRAY_BUFFER_BINDING=34965; WebGLRenderingContext.prototype.STREAM_DRAW=35040; WebGLRenderingContext.prototype.STATIC_DRAW=35044; WebGLRenderingContext.prototype.DYNAMIC_DRAW=35048; WebGLRenderingContext.prototype.BUFFER_SIZE=34660; WebGLRenderingContext.prototype.BUFFER_USAGE=34661; WebGLRenderingContext.prototype.CURRENT_VERTEX_ATTRIB=34342; WebGLRenderingContext.prototype.FRONT=1028; WebGLRenderingContext.prototype.BACK=1029; WebGLRenderingContext.prototype.FRONT_AND_BACK=1032; WebGLRenderingContext.prototype.TEXTURE_2D=3553; WebGLRenderingContext.prototype.CULL_FACE=2884; WebGLRenderingContext.prototype.BLEND=3042; WebGLRenderingContext.prototype.DITHER=3024; WebGLRenderingContext.prototype.STENCIL_TEST=2960; WebGLRenderingContext.prototype.DEPTH_TEST=2929; WebGLRenderingContext.prototype.SCISSOR_TEST=3089; WebGLRenderingContext.prototype.POLYGON_OFFSET_FILL=32823; WebGLRenderingContext.prototype.SAMPLE_ALPHA_TO_COVERAGE=32926; WebGLRenderingContext.prototype.SAMPLE_COVERAGE=32928; WebGLRenderingContext.prototype.NO_ERROR=0; WebGLRenderingContext.prototype.INVALID_ENUM=1280; WebGLRenderingContext.prototype.INVALID_VALUE=1281; WebGLRenderingContext.prototype.INVALID_OPERATION=1282; WebGLRenderingContext.prototype.OUT_OF_MEMORY=1285; WebGLRenderingContext.prototype.CW=2304; WebGLRenderingContext.prototype.CCW=2305; WebGLRenderingContext.prototype.LINE_WIDTH=2849; WebGLRenderingContext.prototype.ALIASED_POINT_SIZE_RANGE=33901; WebGLRenderingContext.prototype.ALIASED_LINE_WIDTH_RANGE=33902; WebGLRenderingContext.prototype.CULL_FACE_MODE=2885; WebGLRenderingContext.prototype.FRONT_FACE=2886; WebGLRenderingContext.prototype.DEPTH_RANGE=2928; WebGLRenderingContext.prototype.DEPTH_WRITEMASK=2930; WebGLRenderingContext.prototype.DEPTH_CLEAR_VALUE=2931; WebGLRenderingContext.prototype.DEPTH_FUNC=2932; WebGLRenderingContext.prototype.STENCIL_CLEAR_VALUE=2961; WebGLRenderingContext.prototype.STENCIL_FUNC=2962; WebGLRenderingContext.prototype.STENCIL_FAIL=2964; WebGLRenderingContext.prototype.STENCIL_PASS_DEPTH_FAIL=2965; WebGLRenderingContext.prototype.STENCIL_PASS_DEPTH_PASS=2966; WebGLRenderingContext.prototype.STENCIL_REF=2967; WebGLRenderingContext.prototype.STENCIL_VALUE_MASK=2963; WebGLRenderingContext.prototype.STENCIL_WRITEMASK=2968; WebGLRenderingContext.prototype.STENCIL_BACK_FUNC=34816; WebGLRenderingContext.prototype.STENCIL_BACK_FAIL=34817; WebGLRenderingContext.prototype.STENCIL_BACK_PASS_DEPTH_FAIL=34818; WebGLRenderingContext.prototype.STENCIL_BACK_PASS_DEPTH_PASS=34819; WebGLRenderingContext.prototype.STENCIL_BACK_REF=36003; WebGLRenderingContext.prototype.STENCIL_BACK_VALUE_MASK=36004; WebGLRenderingContext.prototype.STENCIL_BACK_WRITEMASK=36005; WebGLRenderingContext.prototype.VIEWPORT=2978; WebGLRenderingContext.prototype.SCISSOR_BOX=3088; WebGLRenderingContext.prototype.COLOR_CLEAR_VALUE=3106; WebGLRenderingContext.prototype.COLOR_WRITEMASK=3107; WebGLRenderingContext.prototype.UNPACK_ALIGNMENT=3317; WebGLRenderingContext.prototype.PACK_ALIGNMENT=3333; WebGLRenderingContext.prototype.MAX_TEXTURE_SIZE=3379; WebGLRenderingContext.prototype.MAX_VIEWPORT_DIMS=3386; WebGLRenderingContext.prototype.SUBPIXEL_BITS=3408; WebGLRenderingContext.prototype.RED_BITS=3410; WebGLRenderingContext.prototype.GREEN_BITS=3411; WebGLRenderingContext.prototype.BLUE_BITS=3412; WebGLRenderingContext.prototype.ALPHA_BITS=3413; WebGLRenderingContext.prototype.DEPTH_BITS=3414; WebGLRenderingContext.prototype.STENCIL_BITS=3415; WebGLRenderingContext.prototype.POLYGON_OFFSET_UNITS=10752; WebGLRenderingContext.prototype.POLYGON_OFFSET_FACTOR=32824; WebGLRenderingContext.prototype.TEXTURE_BINDING_2D=32873; WebGLRenderingContext.prototype.SAMPLE_BUFFERS=32936; WebGLRenderingContext.prototype.SAMPLES=32937; WebGLRenderingContext.prototype.SAMPLE_COVERAGE_VALUE=32938; WebGLRenderingContext.prototype.SAMPLE_COVERAGE_INVERT=32939; WebGLRenderingContext.prototype.COMPRESSED_TEXTURE_FORMATS=34467; WebGLRenderingContext.prototype.DONT_CARE=4352; WebGLRenderingContext.prototype.FASTEST=4353; WebGLRenderingContext.prototype.NICEST=4354; WebGLRenderingContext.prototype.GENERATE_MIPMAP_HINT=33170; WebGLRenderingContext.prototype.BYTE=5120; WebGLRenderingContext.prototype.UNSIGNED_BYTE=5121; WebGLRenderingContext.prototype.SHORT=5122; WebGLRenderingContext.prototype.UNSIGNED_SHORT=5123; WebGLRenderingContext.prototype.INT=5124; WebGLRenderingContext.prototype.UNSIGNED_INT=5125; WebGLRenderingContext.prototype.FLOAT=5126; WebGLRenderingContext.prototype.DEPTH_COMPONENT=6402; WebGLRenderingContext.prototype.ALPHA=6406; WebGLRenderingContext.prototype.RGB=6407; WebGLRenderingContext.prototype.RGBA=6408; WebGLRenderingContext.prototype.LUMINANCE=6409; WebGLRenderingContext.prototype.LUMINANCE_ALPHA=6410; WebGLRenderingContext.prototype.UNSIGNED_SHORT_4_4_4_4=32819; WebGLRenderingContext.prototype.UNSIGNED_SHORT_5_5_5_1=32820; WebGLRenderingContext.prototype.UNSIGNED_SHORT_5_6_5=33635; WebGLRenderingContext.prototype.FRAGMENT_SHADER=35632; WebGLRenderingContext.prototype.VERTEX_SHADER=35633; WebGLRenderingContext.prototype.MAX_VERTEX_ATTRIBS=34921; WebGLRenderingContext.prototype.MAX_VERTEX_UNIFORM_VECTORS=36347; WebGLRenderingContext.prototype.MAX_VARYING_VECTORS=36348; WebGLRenderingContext.prototype.MAX_COMBINED_TEXTURE_IMAGE_UNITS=35661; WebGLRenderingContext.prototype.MAX_VERTEX_TEXTURE_IMAGE_UNITS=35660; WebGLRenderingContext.prototype.MAX_TEXTURE_IMAGE_UNITS=34930; WebGLRenderingContext.prototype.MAX_FRAGMENT_UNIFORM_VECTORS=36349; WebGLRenderingContext.prototype.SHADER_TYPE=35663; WebGLRenderingContext.prototype.DELETE_STATUS=35712; WebGLRenderingContext.prototype.LINK_STATUS=35714; WebGLRenderingContext.prototype.VALIDATE_STATUS=35715; WebGLRenderingContext.prototype.ATTACHED_SHADERS=35717; WebGLRenderingContext.prototype.ACTIVE_UNIFORMS=35718; WebGLRenderingContext.prototype.ACTIVE_ATTRIBUTES=35721; WebGLRenderingContext.prototype.SHADING_LANGUAGE_VERSION=35724; WebGLRenderingContext.prototype.CURRENT_PROGRAM=35725; WebGLRenderingContext.prototype.NEVER=512; WebGLRenderingContext.prototype.LESS=513; WebGLRenderingContext.prototype.EQUAL=514; WebGLRenderingContext.prototype.LEQUAL=515; WebGLRenderingContext.prototype.GREATER=516; WebGLRenderingContext.prototype.NOTEQUAL=517; WebGLRenderingContext.prototype.GEQUAL=518; WebGLRenderingContext.prototype.ALWAYS=519; WebGLRenderingContext.prototype.KEEP=7680; WebGLRenderingContext.prototype.REPLACE=7681; WebGLRenderingContext.prototype.INCR=7682; WebGLRenderingContext.prototype.DECR=7683; WebGLRenderingContext.prototype.INVERT=5386; WebGLRenderingContext.prototype.INCR_WRAP=34055; WebGLRenderingContext.prototype.DECR_WRAP=34056; WebGLRenderingContext.prototype.VENDOR=7936; WebGLRenderingContext.prototype.RENDERER=7937; WebGLRenderingContext.prototype.VERSION=7938; WebGLRenderingContext.prototype.NEAREST=9728; WebGLRenderingContext.prototype.LINEAR=9729; WebGLRenderingContext.prototype.NEAREST_MIPMAP_NEAREST=9984; WebGLRenderingContext.prototype.LINEAR_MIPMAP_NEAREST=9985; WebGLRenderingContext.prototype.NEAREST_MIPMAP_LINEAR=9986; WebGLRenderingContext.prototype.LINEAR_MIPMAP_LINEAR=9987; WebGLRenderingContext.prototype.TEXTURE_MAG_FILTER=10240; WebGLRenderingContext.prototype.TEXTURE_MIN_FILTER=10241; WebGLRenderingContext.prototype.TEXTURE_WRAP_S=10242; WebGLRenderingContext.prototype.TEXTURE_WRAP_T=10243; WebGLRenderingContext.prototype.TEXTURE=5890; WebGLRenderingContext.prototype.TEXTURE_CUBE_MAP=34067; WebGLRenderingContext.prototype.TEXTURE_BINDING_CUBE_MAP=34068; WebGLRenderingContext.prototype.TEXTURE_CUBE_MAP_POSITIVE_X=34069; WebGLRenderingContext.prototype.TEXTURE_CUBE_MAP_NEGATIVE_X=34070; WebGLRenderingContext.prototype.TEXTURE_CUBE_MAP_POSITIVE_Y=34071; WebGLRenderingContext.prototype.TEXTURE_CUBE_MAP_NEGATIVE_Y=34072; WebGLRenderingContext.prototype.TEXTURE_CUBE_MAP_POSITIVE_Z=34073; WebGLRenderingContext.prototype.TEXTURE_CUBE_MAP_NEGATIVE_Z=34074; WebGLRenderingContext.prototype.MAX_CUBE_MAP_TEXTURE_SIZE=34076; WebGLRenderingContext.prototype.TEXTURE0=33984; WebGLRenderingContext.prototype.TEXTURE1=33985; WebGLRenderingContext.prototype.TEXTURE2=33986; WebGLRenderingContext.prototype.TEXTURE3=33987; WebGLRenderingContext.prototype.TEXTURE4=33988; WebGLRenderingContext.prototype.TEXTURE5=33989; WebGLRenderingContext.prototype.TEXTURE6=33990; WebGLRenderingContext.prototype.TEXTURE7=33991; WebGLRenderingContext.prototype.TEXTURE8=33992; WebGLRenderingContext.prototype.TEXTURE9=33993; WebGLRenderingContext.prototype.TEXTURE10=33994; WebGLRenderingContext.prototype.TEXTURE11=33995; WebGLRenderingContext.prototype.TEXTURE12=33996; WebGLRenderingContext.prototype.TEXTURE13=33997; WebGLRenderingContext.prototype.TEXTURE14=33998; WebGLRenderingContext.prototype.TEXTURE15=33999; WebGLRenderingContext.prototype.TEXTURE16=34000; WebGLRenderingContext.prototype.TEXTURE17=34001; WebGLRenderingContext.prototype.TEXTURE18=34002; WebGLRenderingContext.prototype.TEXTURE19=34003; WebGLRenderingContext.prototype.TEXTURE20=34004; WebGLRenderingContext.prototype.TEXTURE21=34005; WebGLRenderingContext.prototype.TEXTURE22=34006; WebGLRenderingContext.prototype.TEXTURE23=34007; WebGLRenderingContext.prototype.TEXTURE24=34008; WebGLRenderingContext.prototype.TEXTURE25=34009; WebGLRenderingContext.prototype.TEXTURE26=34010; WebGLRenderingContext.prototype.TEXTURE27=34011; WebGLRenderingContext.prototype.TEXTURE28=34012; WebGLRenderingContext.prototype.TEXTURE29=34013; WebGLRenderingContext.prototype.TEXTURE30=34014; WebGLRenderingContext.prototype.TEXTURE31=34015; WebGLRenderingContext.prototype.ACTIVE_TEXTURE=34016; WebGLRenderingContext.prototype.REPEAT=10497; WebGLRenderingContext.prototype.CLAMP_TO_EDGE=33071; WebGLRenderingContext.prototype.MIRRORED_REPEAT=33648; WebGLRenderingContext.prototype.FLOAT_VEC2=35664; WebGLRenderingContext.prototype.FLOAT_VEC3=35665; WebGLRenderingContext.prototype.FLOAT_VEC4=35666; WebGLRenderingContext.prototype.INT_VEC2=35667; WebGLRenderingContext.prototype.INT_VEC3=35668; WebGLRenderingContext.prototype.INT_VEC4=35669; WebGLRenderingContext.prototype.BOOL=35670; WebGLRenderingContext.prototype.BOOL_VEC2=35671; WebGLRenderingContext.prototype.BOOL_VEC3=35672; WebGLRenderingContext.prototype.BOOL_VEC4=35673; WebGLRenderingContext.prototype.FLOAT_MAT2=35674; WebGLRenderingContext.prototype.FLOAT_MAT3=35675; WebGLRenderingContext.prototype.FLOAT_MAT4=35676; WebGLRenderingContext.prototype.SAMPLER_2D=35678; WebGLRenderingContext.prototype.SAMPLER_CUBE=35680; WebGLRenderingContext.prototype.VERTEX_ATTRIB_ARRAY_ENABLED=34338; WebGLRenderingContext.prototype.VERTEX_ATTRIB_ARRAY_SIZE=34339; WebGLRenderingContext.prototype.VERTEX_ATTRIB_ARRAY_STRIDE=34340; WebGLRenderingContext.prototype.VERTEX_ATTRIB_ARRAY_TYPE=34341; WebGLRenderingContext.prototype.VERTEX_ATTRIB_ARRAY_NORMALIZED=34922; WebGLRenderingContext.prototype.VERTEX_ATTRIB_ARRAY_POINTER=34373; WebGLRenderingContext.prototype.VERTEX_ATTRIB_ARRAY_BUFFER_BINDING=34975; WebGLRenderingContext.prototype.IMPLEMENTATION_COLOR_READ_TYPE=35738; WebGLRenderingContext.prototype.IMPLEMENTATION_COLOR_READ_FORMAT=35739; WebGLRenderingContext.prototype.COMPILE_STATUS=35713; WebGLRenderingContext.prototype.LOW_FLOAT=36336; WebGLRenderingContext.prototype.MEDIUM_FLOAT=36337; WebGLRenderingContext.prototype.HIGH_FLOAT=36338; WebGLRenderingContext.prototype.LOW_INT=36339; WebGLRenderingContext.prototype.MEDIUM_INT=36340; WebGLRenderingContext.prototype.HIGH_INT=36341; WebGLRenderingContext.prototype.FRAMEBUFFER=36160; WebGLRenderingContext.prototype.RENDERBUFFER=36161; WebGLRenderingContext.prototype.RGBA4=32854; WebGLRenderingContext.prototype.RGB5_A1=32855; WebGLRenderingContext.prototype.RGB565=36194; WebGLRenderingContext.prototype.DEPTH_COMPONENT16=33189; WebGLRenderingContext.prototype.STENCIL_INDEX8=36168; WebGLRenderingContext.prototype.DEPTH_STENCIL=34041; WebGLRenderingContext.prototype.RENDERBUFFER_WIDTH=36162; WebGLRenderingContext.prototype.RENDERBUFFER_HEIGHT=36163; WebGLRenderingContext.prototype.RENDERBUFFER_INTERNAL_FORMAT=36164; WebGLRenderingContext.prototype.RENDERBUFFER_RED_SIZE=36176; WebGLRenderingContext.prototype.RENDERBUFFER_GREEN_SIZE=36177; WebGLRenderingContext.prototype.RENDERBUFFER_BLUE_SIZE=36178; WebGLRenderingContext.prototype.RENDERBUFFER_ALPHA_SIZE=36179; WebGLRenderingContext.prototype.RENDERBUFFER_DEPTH_SIZE=36180; WebGLRenderingContext.prototype.RENDERBUFFER_STENCIL_SIZE=36181; WebGLRenderingContext.prototype.FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE=36048; WebGLRenderingContext.prototype.FRAMEBUFFER_ATTACHMENT_OBJECT_NAME=36049; WebGLRenderingContext.prototype.FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL=36050; WebGLRenderingContext.prototype.FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE=36051; WebGLRenderingContext.prototype.COLOR_ATTACHMENT0=36064; WebGLRenderingContext.prototype.DEPTH_ATTACHMENT=36096; WebGLRenderingContext.prototype.STENCIL_ATTACHMENT=36128; WebGLRenderingContext.prototype.DEPTH_STENCIL_ATTACHMENT=33306; WebGLRenderingContext.prototype.NONE=0; WebGLRenderingContext.prototype.FRAMEBUFFER_COMPLETE=36053; WebGLRenderingContext.prototype.FRAMEBUFFER_INCOMPLETE_ATTACHMENT=36054; WebGLRenderingContext.prototype.FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT=36055; WebGLRenderingContext.prototype.FRAMEBUFFER_INCOMPLETE_DIMENSIONS=36057; WebGLRenderingContext.prototype.FRAMEBUFFER_UNSUPPORTED=36061; WebGLRenderingContext.prototype.FRAMEBUFFER_BINDING=36006; WebGLRenderingContext.prototype.RENDERBUFFER_BINDING=36007; WebGLRenderingContext.prototype.MAX_RENDERBUFFER_SIZE=34024; WebGLRenderingContext.prototype.INVALID_FRAMEBUFFER_OPERATION=1286; WebGLRenderingContext.prototype.UNPACK_FLIP_Y_WEBGL=37440; WebGLRenderingContext.prototype.UNPACK_PREMULTIPLY_ALPHA_WEBGL=37441; WebGLRenderingContext.prototype.CONTEXT_LOST_WEBGL=37442; WebGLRenderingContext.prototype.UNPACK_COLORSPACE_CONVERSION_WEBGL=37443; WebGLRenderingContext.prototype.BROWSER_DEFAULT_WEBGL=37444; WebGLRenderingContext.prototype.activeTexture=function activeTexture(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.activeTexture); WebGLRenderingContext.prototype.attachShader=function attachShader(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.attachShader); WebGLRenderingContext.prototype.bindAttribLocation=function bindAttribLocation(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.bindAttribLocation); WebGLRenderingContext.prototype.bindRenderbuffer=function bindRenderbuffer(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.bindRenderbuffer); WebGLRenderingContext.prototype.blendColor=function blendColor(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.blendColor); WebGLRenderingContext.prototype.blendEquation=function blendEquation(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.blendEquation); WebGLRenderingContext.prototype.blendEquationSeparate=function blendEquationSeparate(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.blendEquationSeparate); WebGLRenderingContext.prototype.blendFunc=function blendFunc(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.blendFunc); WebGLRenderingContext.prototype.blendFuncSeparate=function blendFuncSeparate(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.blendFuncSeparate); WebGLRenderingContext.prototype.bufferData=function bufferData(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.bufferData); WebGLRenderingContext.prototype.bufferSubData=function bufferSubData(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.bufferSubData); WebGLRenderingContext.prototype.checkFramebufferStatus=function checkFramebufferStatus(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.checkFramebufferStatus); WebGLRenderingContext.prototype.compileShader=function compileShader(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.compileShader); WebGLRenderingContext.prototype.compressedTexImage2D=function compressedTexImage2D(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.compressedTexImage2D); WebGLRenderingContext.prototype.compressedTexSubImage2D=function compressedTexSubImage2D(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.compressedTexSubImage2D); WebGLRenderingContext.prototype.copyTexImage2D=function copyTexImage2D(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.copyTexImage2D); WebGLRenderingContext.prototype.copyTexSubImage2D=function copyTexSubImage2D(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.copyTexSubImage2D); WebGLRenderingContext.prototype.createBuffer=function createBuffer(){ debugger; var WebGLBuffer = class WebGLBuffer{} return catvm.proxy(WebGLBuffer); }; catvm.safefunction(WebGLRenderingContext.prototype.createBuffer); WebGLRenderingContext.prototype.createFramebuffer=function createFramebuffer(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.createFramebuffer); WebGLRenderingContext.prototype.createProgram=function createProgram(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.createProgram); WebGLRenderingContext.prototype.createRenderbuffer=function createRenderbuffer(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.createRenderbuffer); WebGLRenderingContext.prototype.createShader=function createShader(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.createShader); WebGLRenderingContext.prototype.createTexture=function createTexture(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.createTexture); WebGLRenderingContext.prototype.cullFace=function cullFace(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.cullFace); WebGLRenderingContext.prototype.deleteBuffer=function deleteBuffer(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.deleteBuffer); WebGLRenderingContext.prototype.deleteFramebuffer=function deleteFramebuffer(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.deleteFramebuffer); WebGLRenderingContext.prototype.deleteProgram=function deleteProgram(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.deleteProgram); WebGLRenderingContext.prototype.deleteRenderbuffer=function deleteRenderbuffer(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.deleteRenderbuffer); WebGLRenderingContext.prototype.deleteShader=function deleteShader(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.deleteShader); WebGLRenderingContext.prototype.deleteTexture=function deleteTexture(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.deleteTexture); WebGLRenderingContext.prototype.depthFunc=function depthFunc(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.depthFunc); WebGLRenderingContext.prototype.depthMask=function depthMask(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.depthMask); WebGLRenderingContext.prototype.depthRange=function depthRange(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.depthRange); WebGLRenderingContext.prototype.detachShader=function detachShader(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.detachShader); WebGLRenderingContext.prototype.disable=function disable(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.disable); WebGLRenderingContext.prototype.enable=function enable(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.enable); WebGLRenderingContext.prototype.finish=function finish(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.finish); WebGLRenderingContext.prototype.flush=function flush(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.flush); WebGLRenderingContext.prototype.framebufferRenderbuffer=function framebufferRenderbuffer(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.framebufferRenderbuffer); WebGLRenderingContext.prototype.framebufferTexture2D=function framebufferTexture2D(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.framebufferTexture2D); WebGLRenderingContext.prototype.frontFace=function frontFace(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.frontFace); WebGLRenderingContext.prototype.generateMipmap=function generateMipmap(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.generateMipmap); WebGLRenderingContext.prototype.getActiveAttrib=function getActiveAttrib(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.getActiveAttrib); WebGLRenderingContext.prototype.getActiveUniform=function getActiveUniform(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.getActiveUniform); WebGLRenderingContext.prototype.getAttachedShaders=function getAttachedShaders(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.getAttachedShaders); WebGLRenderingContext.prototype.getAttribLocation=function getAttribLocation(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.getAttribLocation); WebGLRenderingContext.prototype.getBufferParameter=function getBufferParameter(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.getBufferParameter); WebGLRenderingContext.prototype.getContextAttributes=function getContextAttributes(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.getContextAttributes); WebGLRenderingContext.prototype.getError=function getError(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.getError); WebGLRenderingContext.prototype.getExtension=function getExtension(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.getExtension); WebGLRenderingContext.prototype.getFramebufferAttachmentParameter=function getFramebufferAttachmentParameter(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.getFramebufferAttachmentParameter); WebGLRenderingContext.prototype.getParameter=function getParameter(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.getParameter); WebGLRenderingContext.prototype.getProgramInfoLog=function getProgramInfoLog(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.getProgramInfoLog); WebGLRenderingContext.prototype.getProgramParameter=function getProgramParameter(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.getProgramParameter); WebGLRenderingContext.prototype.getRenderbufferParameter=function getRenderbufferParameter(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.getRenderbufferParameter); WebGLRenderingContext.prototype.getShaderInfoLog=function getShaderInfoLog(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.getShaderInfoLog); WebGLRenderingContext.prototype.getShaderParameter=function getShaderParameter(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.getShaderParameter); WebGLRenderingContext.prototype.getShaderPrecisionFormat=function getShaderPrecisionFormat(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.getShaderPrecisionFormat); WebGLRenderingContext.prototype.getShaderSource=function getShaderSource(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.getShaderSource); WebGLRenderingContext.prototype.getSupportedExtensions=function getSupportedExtensions(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.getSupportedExtensions); WebGLRenderingContext.prototype.getTexParameter=function getTexParameter(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.getTexParameter); WebGLRenderingContext.prototype.getUniform=function getUniform(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.getUniform); WebGLRenderingContext.prototype.getUniformLocation=function getUniformLocation(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.getUniformLocation); WebGLRenderingContext.prototype.getVertexAttrib=function getVertexAttrib(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.getVertexAttrib); WebGLRenderingContext.prototype.getVertexAttribOffset=function getVertexAttribOffset(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.getVertexAttribOffset); WebGLRenderingContext.prototype.hint=function hint(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.hint); WebGLRenderingContext.prototype.isBuffer=function isBuffer(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.isBuffer); WebGLRenderingContext.prototype.isContextLost=function isContextLost(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.isContextLost); WebGLRenderingContext.prototype.isEnabled=function isEnabled(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.isEnabled); WebGLRenderingContext.prototype.isFramebuffer=function isFramebuffer(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.isFramebuffer); WebGLRenderingContext.prototype.isProgram=function isProgram(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.isProgram); WebGLRenderingContext.prototype.isRenderbuffer=function isRenderbuffer(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.isRenderbuffer); WebGLRenderingContext.prototype.isShader=function isShader(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.isShader); WebGLRenderingContext.prototype.isTexture=function isTexture(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.isTexture); WebGLRenderingContext.prototype.lineWidth=function lineWidth(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.lineWidth); WebGLRenderingContext.prototype.linkProgram=function linkProgram(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.linkProgram); WebGLRenderingContext.prototype.pixelStorei=function pixelStorei(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.pixelStorei); WebGLRenderingContext.prototype.polygonOffset=function polygonOffset(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.polygonOffset); WebGLRenderingContext.prototype.readPixels=function readPixels(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.readPixels); WebGLRenderingContext.prototype.renderbufferStorage=function renderbufferStorage(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.renderbufferStorage); WebGLRenderingContext.prototype.sampleCoverage=function sampleCoverage(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.sampleCoverage); WebGLRenderingContext.prototype.shaderSource=function shaderSource(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.shaderSource); WebGLRenderingContext.prototype.stencilFunc=function stencilFunc(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.stencilFunc); WebGLRenderingContext.prototype.stencilFuncSeparate=function stencilFuncSeparate(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.stencilFuncSeparate); WebGLRenderingContext.prototype.stencilMask=function stencilMask(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.stencilMask); WebGLRenderingContext.prototype.stencilMaskSeparate=function stencilMaskSeparate(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.stencilMaskSeparate); WebGLRenderingContext.prototype.stencilOp=function stencilOp(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.stencilOp); WebGLRenderingContext.prototype.stencilOpSeparate=function stencilOpSeparate(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.stencilOpSeparate); WebGLRenderingContext.prototype.texImage2D=function texImage2D(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.texImage2D); WebGLRenderingContext.prototype.texParameterf=function texParameterf(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.texParameterf); WebGLRenderingContext.prototype.texParameteri=function texParameteri(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.texParameteri); WebGLRenderingContext.prototype.texSubImage2D=function texSubImage2D(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.texSubImage2D); WebGLRenderingContext.prototype.uniform1fv=function uniform1fv(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.uniform1fv); WebGLRenderingContext.prototype.uniform1iv=function uniform1iv(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.uniform1iv); WebGLRenderingContext.prototype.uniform2fv=function uniform2fv(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.uniform2fv); WebGLRenderingContext.prototype.uniform2iv=function uniform2iv(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.uniform2iv); WebGLRenderingContext.prototype.uniform3fv=function uniform3fv(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.uniform3fv); WebGLRenderingContext.prototype.uniform3iv=function uniform3iv(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.uniform3iv); WebGLRenderingContext.prototype.uniform4fv=function uniform4fv(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.uniform4fv); WebGLRenderingContext.prototype.uniform4iv=function uniform4iv(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.uniform4iv); WebGLRenderingContext.prototype.uniformMatrix2fv=function uniformMatrix2fv(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.uniformMatrix2fv); WebGLRenderingContext.prototype.uniformMatrix3fv=function uniformMatrix3fv(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.uniformMatrix3fv); WebGLRenderingContext.prototype.uniformMatrix4fv=function uniformMatrix4fv(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.uniformMatrix4fv); WebGLRenderingContext.prototype.useProgram=function useProgram(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.useProgram); WebGLRenderingContext.prototype.validateProgram=function validateProgram(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.validateProgram); WebGLRenderingContext.prototype.vertexAttrib1fv=function vertexAttrib1fv(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.vertexAttrib1fv); WebGLRenderingContext.prototype.vertexAttrib2fv=function vertexAttrib2fv(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.vertexAttrib2fv); WebGLRenderingContext.prototype.vertexAttrib3fv=function vertexAttrib3fv(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.vertexAttrib3fv); WebGLRenderingContext.prototype.vertexAttrib4fv=function vertexAttrib4fv(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.vertexAttrib4fv); WebGLRenderingContext.prototype.vertexAttribPointer=function vertexAttribPointer(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.vertexAttribPointer); WebGLRenderingContext.prototype.bindBuffer=function bindBuffer(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.bindBuffer); WebGLRenderingContext.prototype.bindFramebuffer=function bindFramebuffer(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.bindFramebuffer); WebGLRenderingContext.prototype.bindTexture=function bindTexture(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.bindTexture); WebGLRenderingContext.prototype.clear=function clear(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.clear); WebGLRenderingContext.prototype.clearColor=function clearColor(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.clearColor); WebGLRenderingContext.prototype.clearDepth=function clearDepth(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.clearDepth); WebGLRenderingContext.prototype.clearStencil=function clearStencil(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.clearStencil); WebGLRenderingContext.prototype.colorMask=function colorMask(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.colorMask); WebGLRenderingContext.prototype.disableVertexAttribArray=function disableVertexAttribArray(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.disableVertexAttribArray); WebGLRenderingContext.prototype.drawArrays=function drawArrays(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.drawArrays); WebGLRenderingContext.prototype.drawElements=function drawElements(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.drawElements); WebGLRenderingContext.prototype.enableVertexAttribArray=function enableVertexAttribArray(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.enableVertexAttribArray); WebGLRenderingContext.prototype.scissor=function scissor(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.scissor); WebGLRenderingContext.prototype.uniform1f=function uniform1f(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.uniform1f); WebGLRenderingContext.prototype.uniform1i=function uniform1i(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.uniform1i); WebGLRenderingContext.prototype.uniform2f=function uniform2f(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.uniform2f); WebGLRenderingContext.prototype.uniform2i=function uniform2i(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.uniform2i); WebGLRenderingContext.prototype.uniform3f=function uniform3f(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.uniform3f); WebGLRenderingContext.prototype.uniform3i=function uniform3i(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.uniform3i); WebGLRenderingContext.prototype.uniform4f=function uniform4f(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.uniform4f); WebGLRenderingContext.prototype.uniform4i=function uniform4i(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.uniform4i); WebGLRenderingContext.prototype.vertexAttrib1f=function vertexAttrib1f(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.vertexAttrib1f); WebGLRenderingContext.prototype.vertexAttrib2f=function vertexAttrib2f(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.vertexAttrib2f); WebGLRenderingContext.prototype.vertexAttrib3f=function vertexAttrib3f(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.vertexAttrib3f); WebGLRenderingContext.prototype.vertexAttrib4f=function vertexAttrib4f(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.vertexAttrib4f); WebGLRenderingContext.prototype.viewport=function viewport(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.viewport); WebGLRenderingContext.prototype.makeXRCompatible=function makeXRCompatible(){debugger;}; catvm.safefunction(WebGLRenderingContext.prototype.makeXRCompatible); catvm.memory.webgl = {}; catvm.memory.webgl.__proto__ = WebGLRenderingContext.prototype; catvm.memory.webgl = catvm.proxy(catvm.memory.webgl); var Document = function Document(){ }; catvm.safefunction(Document); Object.defineProperties(Document.prototype , { [Symbol.toStringTag]: { value: "Document", configurable: true } }); document = {}; document.__proto__ = Document.prototype; ////// document.characterSet = 'UTF-8' document.charset = 'UTF-8' //没问题 document.getElementById = function getElementById(id){ debugger; return null; };catvm.safefunction(document.getElementById); //没问题 document.addEventListener = function addEventListener(type,listener,options,useCapture){ debugger; if(!catvm.memory.document[type]){ catvm.memory.document[type] = []; } catvm.memory.document[type].push(listener); };catvm.safefunction(document.addEventListener); document.exitFullscreen = function exitFullscreen(){debugger;};catvm.safefunction(document.exitFullscreen); //没问题 document.createElement = function createElement(x){ debugger; if(x=="div"){ let div = class div{}; div.localName = `<${x}>`; div.getElementsByTagName = function(){ var i = class i{}; i.length = 0; return catvm.proxy(i); };catvm.safefunction(div.getElementsByTagName); div.style = { "accentColor": "", "additiveSymbols": "", "alignContent": "", "alignItems": "", "alignSelf": "", "alignmentBaseline": "", "all": "", "animation": "", "animationDelay": "", "animationDirection": "", "animationDuration": "", "animationFillMode": "", "animationIterationCount": "", "animationName": "", "animationPlayState": "", "animationTimingFunction": "", "appRegion": "", "appearance": "", "ascentOverride": "", "aspectRatio": "", "backdropFilter": "", "backfaceVisibility": "", "background": "", "backgroundAttachment": "", "backgroundBlendMode": "", "backgroundClip": "", "backgroundColor": "", "backgroundImage": "", "backgroundOrigin": "", "backgroundPosition": "", "backgroundPositionX": "", "backgroundPositionY": "", "backgroundRepeat": "", "backgroundRepeatX": "", "backgroundRepeatY": "", "backgroundSize": "", "baselineShift": "", "blockSize": "", "border": "", "borderBlock": "", "borderBlockColor": "", "borderBlockEnd": "", "borderBlockEndColor": "", "borderBlockEndStyle": "", "borderBlockEndWidth": "", "borderBlockStart": "", "borderBlockStartColor": "", "borderBlockStartStyle": "", "borderBlockStartWidth": "", "borderBlockStyle": "", "borderBlockWidth": "", "borderBottom": "", "borderBottomColor": "", "borderBottomLeftRadius": "", "borderBottomRightRadius": "", "borderBottomStyle": "", "borderBottomWidth": "", "borderCollapse": "", "borderColor": "", "borderEndEndRadius": "", "borderEndStartRadius": "", "borderImage": "", "borderImageOutset": "", "borderImageRepeat": "", "borderImageSlice": "", "borderImageSource": "", "borderImageWidth": "", "borderInline": "", "borderInlineColor": "", "borderInlineEnd": "", "borderInlineEndColor": "", "borderInlineEndStyle": "", "borderInlineEndWidth": "", "borderInlineStart": "", "borderInlineStartColor": "", "borderInlineStartStyle": "", "borderInlineStartWidth": "", "borderInlineStyle": "", "borderInlineWidth": "", "borderLeft": "", "borderLeftColor": "", "borderLeftStyle": "", "borderLeftWidth": "", "borderRadius": "", "borderRight": "", "borderRightColor": "", "borderRightStyle": "", "borderRightWidth": "", "borderSpacing": "", "borderStartEndRadius": "", "borderStartStartRadius": "", "borderStyle": "", "borderTop": "", "borderTopColor": "", "borderTopLeftRadius": "", "borderTopRightRadius": "", "borderTopStyle": "", "borderTopWidth": "", "borderWidth": "", "bottom": "", "boxShadow": "", "boxSizing": "", "breakAfter": "", "breakBefore": "", "breakInside": "", "bufferedRendering": "", "captionSide": "", "caretColor": "", "clear": "", "clip": "", "clipPath": "", "clipRule": "", "color": "", "colorInterpolation": "", "colorInterpolationFilters": "", "colorRendering": "", "colorScheme": "", "columnCount": "", "columnFill": "", "columnGap": "", "columnRule": "", "columnRuleColor": "", "columnRuleStyle": "", "columnRuleWidth": "", "columnSpan": "", "columnWidth": "", "columns": "", "contain": "", "containIntrinsicBlockSize": "", "containIntrinsicHeight": "", "containIntrinsicInlineSize": "", "containIntrinsicSize": "", "containIntrinsicWidth": "", "content": "", "contentVisibility": "", "counterIncrement": "", "counterReset": "", "counterSet": "", "cursor": "", "cx": "", "cy": "", "d": "", "descentOverride": "", "direction": "", "display": "", "dominantBaseline": "", "emptyCells": "", "fallback": "", "fill": "", "fillOpacity": "", "fillRule": "", "filter": "", "flex": "", "flexBasis": "", "flexDirection": "", "flexFlow": "", "flexGrow": "", "flexShrink": "", "flexWrap": "", "float": "", "floodColor": "", "floodOpacity": "", "font": "", "fontDisplay": "", "fontFamily": "", "fontFeatureSettings": "", "fontKerning": "", "fontOpticalSizing": "", "fontSize": "", "fontStretch": "", "fontStyle": "", "fontVariant": "", "fontVariantCaps": "", "fontVariantEastAsian": "", "fontVariantLigatures": "", "fontVariantNumeric": "", "fontVariationSettings": "", "fontWeight": "", "forcedColorAdjust": "", "gap": "", "grid": "", "gridArea": "", "gridAutoColumns": "", "gridAutoFlow": "", "gridAutoRows": "", "gridColumn": "", "gridColumnEnd": "", "gridColumnGap": "", "gridColumnStart": "", "gridGap": "", "gridRow": "", "gridRowEnd": "", "gridRowGap": "", "gridRowStart": "", "gridTemplate": "", "gridTemplateAreas": "", "gridTemplateColumns": "", "gridTemplateRows": "", "height": "", "hyphens": "", "imageOrientation": "", "imageRendering": "", "inherits": "", "initialValue": "", "inlineSize": "", "inset": "", "insetBlock": "", "insetBlockEnd": "", "insetBlockStart": "", "insetInline": "", "insetInlineEnd": "", "insetInlineStart": "", "isolation": "", "justifyContent": "", "justifyItems": "", "justifySelf": "", "left": "", "letterSpacing": "", "lightingColor": "", "lineBreak": "", "lineGapOverride": "", "lineHeight": "", "listStyle": "", "listStyleImage": "", "listStylePosition": "", "listStyleType": "", "margin": "", "marginBlock": "", "marginBlockEnd": "", "marginBlockStart": "", "marginBottom": "", "marginInline": "", "marginInlineEnd": "", "marginInlineStart": "", "marginLeft": "", "marginRight": "", "marginTop": "", "marker": "", "markerEnd": "", "markerMid": "", "markerStart": "", "mask": "", "maskType": "", "maxBlockSize": "", "maxHeight": "", "maxInlineSize": "", "maxWidth": "", "maxZoom": "", "minBlockSize": "", "minHeight": "", "minInlineSize": "", "minWidth": "", "minZoom": "", "mixBlendMode": "", "negative": "", "objectFit": "", "objectPosition": "", "offset": "", "offsetDistance": "", "offsetPath": "", "offsetRotate": "", "opacity": "", "order": "", "orientation": "", "orphans": "", "outline": "", "outlineColor": "", "outlineOffset": "", "outlineStyle": "", "outlineWidth": "", "overflow": "", "overflowAnchor": "", "overflowClipMargin": "", "overflowWrap": "", "overflowX": "", "overflowY": "", "overscrollBehavior": "", "overscrollBehaviorBlock": "", "overscrollBehaviorInline": "", "overscrollBehaviorX": "", "overscrollBehaviorY": "", "pad": "", "padding": "", "paddingBlock": "", "paddingBlockEnd": "", "paddingBlockStart": "", "paddingBottom": "", "paddingInline": "", "paddingInlineEnd": "", "paddingInlineStart": "", "paddingLeft": "", "paddingRight": "", "paddingTop": "", "page": "", "pageBreakAfter": "", "pageBreakBefore": "", "pageBreakInside": "", "pageOrientation": "", "paintOrder": "", "perspective": "", "perspectiveOrigin": "", "placeContent": "", "placeItems": "", "placeSelf": "", "pointerEvents": "", "position": "", "prefix": "", "quotes": "", "r": "", "range": "", "resize": "", "right": "", "rowGap": "", "rubyPosition": "", "rx": "", "ry": "", "scrollBehavior": "", "scrollMargin": "", "scrollMarginBlock": "", "scrollMarginBlockEnd": "", "scrollMarginBlockStart": "", "scrollMarginBottom": "", "scrollMarginInline": "", "scrollMarginInlineEnd": "", "scrollMarginInlineStart": "", "scrollMarginLeft": "", "scrollMarginRight": "", "scrollMarginTop": "", "scrollPadding": "", "scrollPaddingBlock": "", "scrollPaddingBlockEnd": "", "scrollPaddingBlockStart": "", "scrollPaddingBottom": "", "scrollPaddingInline": "", "scrollPaddingInlineEnd": "", "scrollPaddingInlineStart": "", "scrollPaddingLeft": "", "scrollPaddingRight": "", "scrollPaddingTop": "", "scrollSnapAlign": "", "scrollSnapStop": "", "scrollSnapType": "", "scrollbarGutter": "", "shapeImageThreshold": "", "shapeMargin": "", "shapeOutside": "", "shapeRendering": "", "size": "", "sizeAdjust": "", "speak": "", "speakAs": "", "src": "", "stopColor": "", "stopOpacity": "", "stroke": "", "strokeDasharray": "", "strokeDashoffset": "", "strokeLinecap": "", "strokeLinejoin": "", "strokeMiterlimit": "", "strokeOpacity": "", "strokeWidth": "", "suffix": "", "symbols": "", "syntax": "", "system": "", "tabSize": "", "tableLayout": "", "textAlign": "", "textAlignLast": "", "textAnchor": "", "textCombineUpright": "", "textDecoration": "", "textDecorationColor": "", "textDecorationLine": "", "textDecorationSkipInk": "", "textDecorationStyle": "", "textDecorationThickness": "", "textIndent": "", "textOrientation": "", "textOverflow": "", "textRendering": "", "textShadow": "", "textSizeAdjust": "", "textTransform": "", "textUnderlineOffset": "", "textUnderlinePosition": "", "top": "", "touchAction": "", "transform": "", "transformBox": "", "transformOrigin": "", "transformStyle": "", "transition": "", "transitionDelay": "", "transitionDuration": "", "transitionProperty": "", "transitionTimingFunction": "", "unicodeBidi": "", "unicodeRange": "", "userSelect": "", "userZoom": "", "vectorEffect": "", "verticalAlign": "", "visibility": "", "webkitAlignContent": "", "webkitAlignItems": "", "webkitAlignSelf": "", "webkitAnimation": "", "webkitAnimationDelay": "", "webkitAnimationDirection": "", "webkitAnimationDuration": "", "webkitAnimationFillMode": "", "webkitAnimationIterationCount": "", "webkitAnimationName": "", "webkitAnimationPlayState": "", "webkitAnimationTimingFunction": "", "webkitAppRegion": "", "webkitAppearance": "", "webkitBackfaceVisibility": "", "webkitBackgroundClip": "", "webkitBackgroundOrigin": "", "webkitBackgroundSize": "", "webkitBorderAfter": "", "webkitBorderAfterColor": "", "webkitBorderAfterStyle": "", "webkitBorderAfterWidth": "", "webkitBorderBefore": "", "webkitBorderBeforeColor": "", "webkitBorderBeforeStyle": "", "webkitBorderBeforeWidth": "", "webkitBorderBottomLeftRadius": "", "webkitBorderBottomRightRadius": "", "webkitBorderEnd": "", "webkitBorderEndColor": "", "webkitBorderEndStyle": "", "webkitBorderEndWidth": "", "webkitBorderHorizontalSpacing": "", "webkitBorderImage": "", "webkitBorderRadius": "", "webkitBorderStart": "", "webkitBorderStartColor": "", "webkitBorderStartStyle": "", "webkitBorderStartWidth": "", "webkitBorderTopLeftRadius": "", "webkitBorderTopRightRadius": "", "webkitBorderVerticalSpacing": "", "webkitBoxAlign": "", "webkitBoxDecorationBreak": "", "webkitBoxDirection": "", "webkitBoxFlex": "", "webkitBoxOrdinalGroup": "", "webkitBoxOrient": "", "webkitBoxPack": "", "webkitBoxReflect": "", "webkitBoxShadow": "", "webkitBoxSizing": "", "webkitClipPath": "", "webkitColumnBreakAfter": "", "webkitColumnBreakBefore": "", "webkitColumnBreakInside": "", "webkitColumnCount": "", "webkitColumnGap": "", "webkitColumnRule": "", "webkitColumnRuleColor": "", "webkitColumnRuleStyle": "", "webkitColumnRuleWidth": "", "webkitColumnSpan": "", "webkitColumnWidth": "", "webkitColumns": "", "webkitFilter": "", "webkitFlex": "", "webkitFlexBasis": "", "webkitFlexDirection": "", "webkitFlexFlow": "", "webkitFlexGrow": "", "webkitFlexShrink": "", "webkitFlexWrap": "", "webkitFontFeatureSettings": "", "webkitFontSmoothing": "", "webkitHighlight": "", "webkitHyphenateCharacter": "", "webkitJustifyContent": "", "webkitLineBreak": "", "webkitLineClamp": "", "webkitLocale": "", "webkitLogicalHeight": "", "webkitLogicalWidth": "", "webkitMarginAfter": "", "webkitMarginBefore": "", "webkitMarginEnd": "", "webkitMarginStart": "", "webkitMask": "", "webkitMaskBoxImage": "", "webkitMaskBoxImageOutset": "", "webkitMaskBoxImageRepeat": "", "webkitMaskBoxImageSlice": "", "webkitMaskBoxImageSource": "", "webkitMaskBoxImageWidth": "", "webkitMaskClip": "", "webkitMaskComposite": "", "webkitMaskImage": "", "webkitMaskOrigin": "", "webkitMaskPosition": "", "webkitMaskPositionX": "", "webkitMaskPositionY": "", "webkitMaskRepeat": "", "webkitMaskRepeatX": "", "webkitMaskRepeatY": "", "webkitMaskSize": "", "webkitMaxLogicalHeight": "", "webkitMaxLogicalWidth": "", "webkitMinLogicalHeight": "", "webkitMinLogicalWidth": "", "webkitOpacity": "", "webkitOrder": "", "webkitPaddingAfter": "", "webkitPaddingBefore": "", "webkitPaddingEnd": "", "webkitPaddingStart": "", "webkitPerspective": "", "webkitPerspectiveOrigin": "", "webkitPerspectiveOriginX": "", "webkitPerspectiveOriginY": "", "webkitPrintColorAdjust": "", "webkitRtlOrdering": "", "webkitRubyPosition": "", "webkitShapeImageThreshold": "", "webkitShapeMargin": "", "webkitShapeOutside": "", "webkitTapHighlightColor": "", "webkitTextCombine": "", "webkitTextDecorationsInEffect": "", "webkitTextEmphasis": "", "webkitTextEmphasisColor": "", "webkitTextEmphasisPosition": "", "webkitTextEmphasisStyle": "", "webkitTextFillColor": "", "webkitTextOrientation": "", "webkitTextSecurity": "", "webkitTextSizeAdjust": "", "webkitTextStroke": "", "webkitTextStrokeColor": "", "webkitTextStrokeWidth": "", "webkitTransform": "", "webkitTransformOrigin": "", "webkitTransformOriginX": "", "webkitTransformOriginY": "", "webkitTransformOriginZ": "", "webkitTransformStyle": "", "webkitTransition": "", "webkitTransitionDelay": "", "webkitTransitionDuration": "", "webkitTransitionProperty": "", "webkitTransitionTimingFunction": "", "webkitUserDrag": "", "webkitUserModify": "", "webkitUserSelect": "", "webkitWritingMode": "", "whiteSpace": "", "widows": "", "width": "", "willChange": "", "wordBreak": "", "wordSpacing": "", "wordWrap": "", "writingMode": "", "x": "", "y": "", "zIndex": "", "zoom": "" } var div_span = class div_span{}; div_span.length = 1; div_span[0] = catvm.proxy(class span{}); div_span[0].style = { "0": "font-family", "1": "font-size", "accentColor": "", "additiveSymbols": "", "alignContent": "", "alignItems": "", "alignSelf": "", "alignmentBaseline": "", "all": "", "animation": "", "animationDelay": "", "animationDirection": "", "animationDuration": "", "animationFillMode": "", "animationIterationCount": "", "animationName": "", "animationPlayState": "", "animationTimingFunction": "", "appRegion": "", "appearance": "", "ascentOverride": "", "aspectRatio": "", "backdropFilter": "", "backfaceVisibility": "", "background": "", "backgroundAttachment": "", "backgroundBlendMode": "", "backgroundClip": "", "backgroundColor": "", "backgroundImage": "", "backgroundOrigin": "", "backgroundPosition": "", "backgroundPositionX": "", "backgroundPositionY": "", "backgroundRepeat": "", "backgroundRepeatX": "", "backgroundRepeatY": "", "backgroundSize": "", "baselineShift": "", "blockSize": "", "border": "", "borderBlock": "", "borderBlockColor": "", "borderBlockEnd": "", "borderBlockEndColor": "", "borderBlockEndStyle": "", "borderBlockEndWidth": "", "borderBlockStart": "", "borderBlockStartColor": "", "borderBlockStartStyle": "", "borderBlockStartWidth": "", "borderBlockStyle": "", "borderBlockWidth": "", "borderBottom": "", "borderBottomColor": "", "borderBottomLeftRadius": "", "borderBottomRightRadius": "", "borderBottomStyle": "", "borderBottomWidth": "", "borderCollapse": "", "borderColor": "", "borderEndEndRadius": "", "borderEndStartRadius": "", "borderImage": "", "borderImageOutset": "", "borderImageRepeat": "", "borderImageSlice": "", "borderImageSource": "", "borderImageWidth": "", "borderInline": "", "borderInlineColor": "", "borderInlineEnd": "", "borderInlineEndColor": "", "borderInlineEndStyle": "", "borderInlineEndWidth": "", "borderInlineStart": "", "borderInlineStartColor": "", "borderInlineStartStyle": "", "borderInlineStartWidth": "", "borderInlineStyle": "", "borderInlineWidth": "", "borderLeft": "", "borderLeftColor": "", "borderLeftStyle": "", "borderLeftWidth": "", "borderRadius": "", "borderRight": "", "borderRightColor": "", "borderRightStyle": "", "borderRightWidth": "", "borderSpacing": "", "borderStartEndRadius": "", "borderStartStartRadius": "", "borderStyle": "", "borderTop": "", "borderTopColor": "", "borderTopLeftRadius": "", "borderTopRightRadius": "", "borderTopStyle": "", "borderTopWidth": "", "borderWidth": "", "bottom": "", "boxShadow": "", "boxSizing": "", "breakAfter": "", "breakBefore": "", "breakInside": "", "bufferedRendering": "", "captionSide": "", "caretColor": "", "clear": "", "clip": "", "clipPath": "", "clipRule": "", "color": "", "colorInterpolation": "", "colorInterpolationFilters": "", "colorRendering": "", "colorScheme": "", "columnCount": "", "columnFill": "", "columnGap": "", "columnRule": "", "columnRuleColor": "", "columnRuleStyle": "", "columnRuleWidth": "", "columnSpan": "", "columnWidth": "", "columns": "", "contain": "", "containIntrinsicBlockSize": "", "containIntrinsicHeight": "", "containIntrinsicInlineSize": "", "containIntrinsicSize": "", "containIntrinsicWidth": "", "content": "", "contentVisibility": "", "counterIncrement": "", "counterReset": "", "counterSet": "", "cursor": "", "cx": "", "cy": "", "d": "", "descentOverride": "", "direction": "", "display": "", "dominantBaseline": "", "emptyCells": "", "fallback": "", "fill": "", "fillOpacity": "", "fillRule": "", "filter": "", "flex": "", "flexBasis": "", "flexDirection": "", "flexFlow": "", "flexGrow": "", "flexShrink": "", "flexWrap": "", "float": "", "floodColor": "", "floodOpacity": "", "font": "", "fontDisplay": "", "fontFamily": "mmllii", "fontFeatureSettings": "", "fontKerning": "", "fontOpticalSizing": "", "fontSize": "114px", "fontStretch": "", "fontStyle": "", "fontVariant": "", "fontVariantCaps": "", "fontVariantEastAsian": "", "fontVariantLigatures": "", "fontVariantNumeric": "", "fontVariationSettings": "", "fontWeight": "", "forcedColorAdjust": "", "gap": "", "grid": "", "gridArea": "", "gridAutoColumns": "", "gridAutoFlow": "", "gridAutoRows": "", "gridColumn": "", "gridColumnEnd": "", "gridColumnGap": "", "gridColumnStart": "", "gridGap": "", "gridRow": "", "gridRowEnd": "", "gridRowGap": "", "gridRowStart": "", "gridTemplate": "", "gridTemplateAreas": "", "gridTemplateColumns": "", "gridTemplateRows": "", "height": "", "hyphens": "", "imageOrientation": "", "imageRendering": "", "inherits": "", "initialValue": "", "inlineSize": "", "inset": "", "insetBlock": "", "insetBlockEnd": "", "insetBlockStart": "", "insetInline": "", "insetInlineEnd": "", "insetInlineStart": "", "isolation": "", "justifyContent": "", "justifyItems": "", "justifySelf": "", "left": "", "letterSpacing": "", "lightingColor": "", "lineBreak": "", "lineGapOverride": "", "lineHeight": "", "listStyle": "", "listStyleImage": "", "listStylePosition": "", "listStyleType": "", "margin": "", "marginBlock": "", "marginBlockEnd": "", "marginBlockStart": "", "marginBottom": "", "marginInline": "", "marginInlineEnd": "", "marginInlineStart": "", "marginLeft": "", "marginRight": "", "marginTop": "", "marker": "", "markerEnd": "", "markerMid": "", "markerStart": "", "mask": "", "maskType": "", "maxBlockSize": "", "maxHeight": "", "maxInlineSize": "", "maxWidth": "", "maxZoom": "", "minBlockSize": "", "minHeight": "", "minInlineSize": "", "minWidth": "", "minZoom": "", "mixBlendMode": "", "negative": "", "objectFit": "", "objectPosition": "", "offset": "", "offsetDistance": "", "offsetPath": "", "offsetRotate": "", "opacity": "", "order": "", "orientation": "", "orphans": "", "outline": "", "outlineColor": "", "outlineOffset": "", "outlineStyle": "", "outlineWidth": "", "overflow": "", "overflowAnchor": "", "overflowClipMargin": "", "overflowWrap": "", "overflowX": "", "overflowY": "", "overscrollBehavior": "", "overscrollBehaviorBlock": "", "overscrollBehaviorInline": "", "overscrollBehaviorX": "", "overscrollBehaviorY": "", "pad": "", "padding": "", "paddingBlock": "", "paddingBlockEnd": "", "paddingBlockStart": "", "paddingBottom": "", "paddingInline": "", "paddingInlineEnd": "", "paddingInlineStart": "", "paddingLeft": "", "paddingRight": "", "paddingTop": "", "page": "", "pageBreakAfter": "", "pageBreakBefore": "", "pageBreakInside": "", "pageOrientation": "", "paintOrder": "", "perspective": "", "perspectiveOrigin": "", "placeContent": "", "placeItems": "", "placeSelf": "", "pointerEvents": "", "position": "", "prefix": "", "quotes": "", "r": "", "range": "", "resize": "", "right": "", "rowGap": "", "rubyPosition": "", "rx": "", "ry": "", "scrollBehavior": "", "scrollMargin": "", "scrollMarginBlock": "", "scrollMarginBlockEnd": "", "scrollMarginBlockStart": "", "scrollMarginBottom": "", "scrollMarginInline": "", "scrollMarginInlineEnd": "", "scrollMarginInlineStart": "", "scrollMarginLeft": "", "scrollMarginRight": "", "scrollMarginTop": "", "scrollPadding": "", "scrollPaddingBlock": "", "scrollPaddingBlockEnd": "", "scrollPaddingBlockStart": "", "scrollPaddingBottom": "", "scrollPaddingInline": "", "scrollPaddingInlineEnd": "", "scrollPaddingInlineStart": "", "scrollPaddingLeft": "", "scrollPaddingRight": "", "scrollPaddingTop": "", "scrollSnapAlign": "", "scrollSnapStop": "", "scrollSnapType": "", "scrollbarGutter": "", "shapeImageThreshold": "", "shapeMargin": "", "shapeOutside": "", "shapeRendering": "", "size": "", "sizeAdjust": "", "speak": "", "speakAs": "", "src": "", "stopColor": "", "stopOpacity": "", "stroke": "", "strokeDasharray": "", "strokeDashoffset": "", "strokeLinecap": "", "strokeLinejoin": "", "strokeMiterlimit": "", "strokeOpacity": "", "strokeWidth": "", "suffix": "", "symbols": "", "syntax": "", "system": "", "tabSize": "", "tableLayout": "", "textAlign": "", "textAlignLast": "", "textAnchor": "", "textCombineUpright": "", "textDecoration": "", "textDecorationColor": "", "textDecorationLine": "", "textDecorationSkipInk": "", "textDecorationStyle": "", "textDecorationThickness": "", "textIndent": "", "textOrientation": "", "textOverflow": "", "textRendering": "", "textShadow": "", "textSizeAdjust": "", "textTransform": "", "textUnderlineOffset": "", "textUnderlinePosition": "", "top": "", "touchAction": "", "transform": "", "transformBox": "", "transformOrigin": "", "transformStyle": "", "transition": "", "transitionDelay": "", "transitionDuration": "", "transitionProperty": "", "transitionTimingFunction": "", "unicodeBidi": "", "unicodeRange": "", "userSelect": "", "userZoom": "", "vectorEffect": "", "verticalAlign": "", "visibility": "", "webkitAlignContent": "", "webkitAlignItems": "", "webkitAlignSelf": "", "webkitAnimation": "", "webkitAnimationDelay": "", "webkitAnimationDirection": "", "webkitAnimationDuration": "", "webkitAnimationFillMode": "", "webkitAnimationIterationCount": "", "webkitAnimationName": "", "webkitAnimationPlayState": "", "webkitAnimationTimingFunction": "", "webkitAppRegion": "", "webkitAppearance": "", "webkitBackfaceVisibility": "", "webkitBackgroundClip": "", "webkitBackgroundOrigin": "", "webkitBackgroundSize": "", "webkitBorderAfter": "", "webkitBorderAfterColor": "", "webkitBorderAfterStyle": "", "webkitBorderAfterWidth": "", "webkitBorderBefore": "", "webkitBorderBeforeColor": "", "webkitBorderBeforeStyle": "", "webkitBorderBeforeWidth": "", "webkitBorderBottomLeftRadius": "", "webkitBorderBottomRightRadius": "", "webkitBorderEnd": "", "webkitBorderEndColor": "", "webkitBorderEndStyle": "", "webkitBorderEndWidth": "", "webkitBorderHorizontalSpacing": "", "webkitBorderImage": "", "webkitBorderRadius": "", "webkitBorderStart": "", "webkitBorderStartColor": "", "webkitBorderStartStyle": "", "webkitBorderStartWidth": "", "webkitBorderTopLeftRadius": "", "webkitBorderTopRightRadius": "", "webkitBorderVerticalSpacing": "", "webkitBoxAlign": "", "webkitBoxDecorationBreak": "", "webkitBoxDirection": "", "webkitBoxFlex": "", "webkitBoxOrdinalGroup": "", "webkitBoxOrient": "", "webkitBoxPack": "", "webkitBoxReflect": "", "webkitBoxShadow": "", "webkitBoxSizing": "", "webkitClipPath": "", "webkitColumnBreakAfter": "", "webkitColumnBreakBefore": "", "webkitColumnBreakInside": "", "webkitColumnCount": "", "webkitColumnGap": "", "webkitColumnRule": "", "webkitColumnRuleColor": "", "webkitColumnRuleStyle": "", "webkitColumnRuleWidth": "", "webkitColumnSpan": "", "webkitColumnWidth": "", "webkitColumns": "", "webkitFilter": "", "webkitFlex": "", "webkitFlexBasis": "", "webkitFlexDirection": "", "webkitFlexFlow": "", "webkitFlexGrow": "", "webkitFlexShrink": "", "webkitFlexWrap": "", "webkitFontFeatureSettings": "", "webkitFontSmoothing": "", "webkitHighlight": "", "webkitHyphenateCharacter": "", "webkitJustifyContent": "", "webkitLineBreak": "", "webkitLineClamp": "", "webkitLocale": "", "webkitLogicalHeight": "", "webkitLogicalWidth": "", "webkitMarginAfter": "", "webkitMarginBefore": "", "webkitMarginEnd": "", "webkitMarginStart": "", "webkitMask": "", "webkitMaskBoxImage": "", "webkitMaskBoxImageOutset": "", "webkitMaskBoxImageRepeat": "", "webkitMaskBoxImageSlice": "", "webkitMaskBoxImageSource": "", "webkitMaskBoxImageWidth": "", "webkitMaskClip": "", "webkitMaskComposite": "", "webkitMaskImage": "", "webkitMaskOrigin": "", "webkitMaskPosition": "", "webkitMaskPositionX": "", "webkitMaskPositionY": "", "webkitMaskRepeat": "", "webkitMaskRepeatX": "", "webkitMaskRepeatY": "", "webkitMaskSize": "", "webkitMaxLogicalHeight": "", "webkitMaxLogicalWidth": "", "webkitMinLogicalHeight": "", "webkitMinLogicalWidth": "", "webkitOpacity": "", "webkitOrder": "", "webkitPaddingAfter": "", "webkitPaddingBefore": "", "webkitPaddingEnd": "", "webkitPaddingStart": "", "webkitPerspective": "", "webkitPerspectiveOrigin": "", "webkitPerspectiveOriginX": "", "webkitPerspectiveOriginY": "", "webkitPrintColorAdjust": "", "webkitRtlOrdering": "", "webkitRubyPosition": "", "webkitShapeImageThreshold": "", "webkitShapeMargin": "", "webkitShapeOutside": "", "webkitTapHighlightColor": "", "webkitTextCombine": "", "webkitTextDecorationsInEffect": "", "webkitTextEmphasis": "", "webkitTextEmphasisColor": "", "webkitTextEmphasisPosition": "", "webkitTextEmphasisStyle": "", "webkitTextFillColor": "", "webkitTextOrientation": "", "webkitTextSecurity": "", "webkitTextSizeAdjust": "", "webkitTextStroke": "", "webkitTextStrokeColor": "", "webkitTextStrokeWidth": "", "webkitTransform": "", "webkitTransformOrigin": "", "webkitTransformOriginX": "", "webkitTransformOriginY": "", "webkitTransformOriginZ": "", "webkitTransformStyle": "", "webkitTransition": "", "webkitTransitionDelay": "", "webkitTransitionDuration": "", "webkitTransitionProperty": "", "webkitTransitionTimingFunction": "", "webkitUserDrag": "", "webkitUserModify": "", "webkitUserSelect": "", "webkitWritingMode": "", "whiteSpace": "", "widows": "", "width": "", "willChange": "", "wordBreak": "", "wordSpacing": "", "wordWrap": "", "writingMode": "", "x": "", "y": "", "zIndex": "", "zoom": "" } div_span[0].offsetHeight = 0; div_span[0].offsetWidth = 0; div_span = catvm.proxy(div_span); div.children = div_span; return catvm.proxy(div); } if(x=="form"){ let iframe = class iframe{}; return catvm.proxy(iframe) } if(x=="canvas"){ let canvas = class canvas{}; canvas.getContext = function getContext(X){ debugger; if(X=='2d'){ return catvm.memory.canvas.canvasRenderingContext2D; } if(X=="webgl" || X=="experimental-webgl"){ debugger; return catvm.memory.webgl; } };catvm.safefunction(canvas.getContext); canvas.toDataURL = function toDataURL(){ debugger; return "data:image/png;base64,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"; } return catvm.proxy(canvas); } if(x=="video"){ let video = class video{}; video.canPlayType = function(){ debugger; }; return catvm.proxy(video); } if(x=="audio"){ let audio = class audio{}; audio.canPlayType = function(){ debugger; }; return catvm.proxy(audio); } if(x=="a"){ return {} } debugger; };catvm.safefunction(document.createElement); //没问题 // document.getElementsByTagName = function getElementsByTagName(name){ //返回HTMLCollection // debugger; // //没问题 // if(name=='meta'){ // debugger; // var meta0 = { // parentNode:{ // removeChild : function(){debugger;} // }, // getAttribute:function(){debugger;return null} // } // catvm.safefunction(meta0.getAttribute); // catvm.safefunction(meta0.parentNode.removeChild); // meta0.__proto__ = HTMLMetaElement.prototype; // meta0 = catvm.proxy(meta0) // var meta1 = { // content:"ACJuWmYTxO3GgMLSf7U6ih6jYzwkeh0nM7dkYNoX9WwOAIdbVLH1Fj_fCm12xtCvheBQSJrq2MeNKoi0sJG_Lt4mXKbKRmbFm9BOO3eaY9WZHUaX27.kYo0eK2iHnESf", // parentNode:{ // removeChild : function(){debugger;} // }, // getAttribute:function(){debugger;return "m"} // } // catvm.safefunction(meta1.getAttribute); // catvm.safefunction(meta1.parentNode); // meta1.__proto__ = HTMLMetaElement.prototype; // meta1 = catvm.proxy(meta1) // var obj = { // length:2, // 0:meta0, // 1:meta1, // } // obj = catvm.proxy(obj) // return obj // } // //没问题 // if(name=="script"){ //没问题 // debugger; // function getAttribute(name){ // debugger; // if(name=='r'){ // return 'm' // } // return null // };catvm.safefunction(getAttribute); // function removeChild(name){ // debugger; // };catvm.safefunction(removeChild); // var script1 = { // "getAttribute" : getAttribute, // "parentElement":{ // removeChild : removeChild // } // }; // script1 = catvm.proxy(script1); // var script2 = { // "getAttribute" : getAttribute, // "parentElement":{ // removeChild : removeChild // } // }; // script2 = catvm.proxy(script2); // // var script3 = { // // "getAttribute" : getAttribute, // // "parentElement":{ // // removeChild : removeChild // // } // // }; // // script3 = catvm.proxy(script3); // var obj = { // 0 : script1, // 1 : script2, // length : 2, // } // obj = catvm.proxy(obj); // return obj // } // if(name=="base"){ // var base = class base{}; // base.length = 0; // return catvm.proxy(base) // } // };catvm.safefunction(document.getElementsByTagName); window.ywb = 0; document.getElementsByTagName = function getElementsByTagName(name){ debugger; if(name == "base"){ let base = class base{}; base.length = 0; return catvm.proxy(base); } if(name=="script" && window.ywb == 0){ //没问题 window.ywb = 1; debugger; function getAttribute(name){ debugger; if(name=='r'){ return 'm' } return null };catvm.safefunction(getAttribute); function removeChild(name){ debugger; };catvm.safefunction(removeChild); var script1 = { "getAttribute" : getAttribute, "parentElement":{ removeChild : removeChild } }; script1 = catvm.proxy(script1); var script2 = { "getAttribute" : getAttribute, "parentElement":{ removeChild : removeChild } }; script2 = catvm.proxy(script2); var obj = { 0 : script1, 1 : script2, length : 2, } obj = catvm.proxy(obj); return obj } if(name == "meta"){ var meta0 = { parentNode:{ removeChild : function(){debugger;} }, getAttribute:function(){debugger;return null} } catvm.safefunction(meta0.getAttribute); catvm.safefunction(meta0.parentNode.removeChild); meta0.__proto__ = HTMLMetaElement.prototype; meta0 = catvm.proxy(meta0) ///////////////////////////////////////// var meta1 = { parentNode:{ removeChild : function(){debugger;} }, getAttribute:function(){debugger;return null} } catvm.safefunction(meta1.getAttribute); catvm.safefunction(meta1.parentNode.removeChild); meta1.__proto__ = HTMLMetaElement.prototype; meta1 = catvm.proxy(meta1) /////////////////////////////////// var meta2 = { parentNode:{ removeChild : function(){debugger;} }, getAttribute:function(){debugger;return null} } catvm.safefunction(meta2.getAttribute); catvm.safefunction(meta2.parentNode.removeChild); meta2.__proto__ = HTMLMetaElement.prototype; meta2 = catvm.proxy(meta2) ////////////////////////////////// var meta3 = { parentNode:{ removeChild : function(){debugger;} }, getAttribute:function(){debugger;return null} } catvm.safefunction(meta3.getAttribute); catvm.safefunction(meta3.parentNode.removeChild); meta3.__proto__ = HTMLMetaElement.prototype; meta3 = catvm.proxy(meta3); ////////////////////////////////////////// var meta4 = { "content": "window.content", parentNode:{ removeChild : function(){debugger;} }, getAttribute:function(){debugger;return "m"} } catvm.safefunction(meta4.getAttribute); catvm.safefunction(meta4.parentNode.removeChild); meta4.__proto__ = HTMLMetaElement.prototype; meta4 = catvm.proxy(meta4) return { 0:meta0, 1:meta1, 2:meta2, 3:meta3, 4:meta4, length:5 } } if(name == "script" && window.ywb == 1){ var script0 = catvm.proxy(class script0{}); script0.getAttribute = function(X){ if(X=="r"){ return null; } debugger; };catvm.safefunction(script0.getAttribute); var script1 = catvm.proxy(class script1{}); script1.getAttribute = function(X){ if(X=="r"){ return null; } debugger; };catvm.safefunction(script1.getAttribute); var script2 = catvm.proxy(class script2{}); script2.getAttribute = function(X){ if(X=="r"){ return null; } debugger; };catvm.safefunction(script2.getAttribute); var script3 = catvm.proxy(class script3{}); script3.getAttribute = function(X){ if(X=="r"){ return null; } debugger; };catvm.safefunction(script3.getAttribute); var script4 = catvm.proxy(class script4{}); script4.getAttribute = function(X){ if(X=="r"){ return null; } debugger; };catvm.safefunction(script4.getAttribute); var script5 = catvm.proxy(class script5{}); script5.getAttribute = function(X){ if(X=="r"){ return null; } debugger; };catvm.safefunction(script5.getAttribute); var script6 = catvm.proxy(class script6{}); script6.getAttribute = function(X){ if(X=="r"){ return null; } debugger; };catvm.safefunction(script6.getAttribute); var script7 = catvm.proxy(class script7{}); script7.getAttribute = function(X){ if(X=="r"){ return null; } debugger; };catvm.safefunction(script7.getAttribute); var script8 = catvm.proxy(class script8{}); script8.getAttribute = function(X){ if(X=="r"){ return null; } debugger; };catvm.safefunction(script8.getAttribute); var script9 = catvm.proxy(class script9{}); script9.getAttribute = function(X){ if(X=="r"){ return null; } debugger; };catvm.safefunction(script9.getAttribute); var script10 = catvm.proxy(class script10{}); script10.getAttribute = function(X){ if(X=="r"){ return null; } debugger; };catvm.safefunction(script10.getAttribute); var script11 = catvm.proxy(class script11{}); script11.getAttribute = function(X){ if(X=="r"){ return null; } debugger; };catvm.safefunction(script11.getAttribute); var script12 = catvm.proxy(class script12{}); script12.getAttribute = function(X){ if(X=="r"){ return null; } debugger; };catvm.safefunction(script12.getAttribute); var script = { 0 : script0, 1 : script1, 2 : script2, 3 : script3, 4 : script4, 5 : script5, 6 : script6, 7 : script7, 8 : script8, 9 : script9, 10 : script10, 11 : script11, 12 : script12, length: 13 } return catvm.proxy(script); } if(name == "body"){ return document.body; } debugger; };catvm.safefunction(document.getElementsByTagName); var html = class html{}; html.style = { "accentColor": "", "additiveSymbols": "", "alignContent": "", "alignItems": "", "alignSelf": "", "alignmentBaseline": "", "all": "", "animation": "", "animationDelay": "", "animationDirection": "", "animationDuration": "", "animationFillMode": "", "animationIterationCount": "", "animationName": "", "animationPlayState": "", "animationTimingFunction": "", "appRegion": "", "appearance": "", "ascentOverride": "", "aspectRatio": "", "backdropFilter": "", "backfaceVisibility": "", "background": "", "backgroundAttachment": "", "backgroundBlendMode": "", "backgroundClip": "", "backgroundColor": "", "backgroundImage": "", "backgroundOrigin": "", "backgroundPosition": "", "backgroundPositionX": "", "backgroundPositionY": "", "backgroundRepeat": "", "backgroundRepeatX": "", "backgroundRepeatY": "", "backgroundSize": "", "baselineShift": "", "blockSize": "", "border": "", "borderBlock": "", "borderBlockColor": "", "borderBlockEnd": "", "borderBlockEndColor": "", "borderBlockEndStyle": "", "borderBlockEndWidth": "", "borderBlockStart": "", "borderBlockStartColor": "", "borderBlockStartStyle": "", "borderBlockStartWidth": "", "borderBlockStyle": "", "borderBlockWidth": "", "borderBottom": "", "borderBottomColor": "", "borderBottomLeftRadius": "", "borderBottomRightRadius": "", "borderBottomStyle": "", "borderBottomWidth": "", "borderCollapse": "", "borderColor": "", "borderEndEndRadius": "", "borderEndStartRadius": "", "borderImage": "", "borderImageOutset": "", "borderImageRepeat": "", "borderImageSlice": "", "borderImageSource": "", "borderImageWidth": "", "borderInline": "", "borderInlineColor": "", "borderInlineEnd": "", "borderInlineEndColor": "", "borderInlineEndStyle": "", "borderInlineEndWidth": "", "borderInlineStart": "", "borderInlineStartColor": "", "borderInlineStartStyle": "", "borderInlineStartWidth": "", "borderInlineStyle": "", "borderInlineWidth": "", "borderLeft": "", "borderLeftColor": "", "borderLeftStyle": "", "borderLeftWidth": "", "borderRadius": "", "borderRight": "", "borderRightColor": "", "borderRightStyle": "", "borderRightWidth": "", "borderSpacing": "", "borderStartEndRadius": "", "borderStartStartRadius": "", "borderStyle": "", "borderTop": "", "borderTopColor": "", "borderTopLeftRadius": "", "borderTopRightRadius": "", "borderTopStyle": "", "borderTopWidth": "", "borderWidth": "", "bottom": "", "boxShadow": "", "boxSizing": "", "breakAfter": "", "breakBefore": "", "breakInside": "", "bufferedRendering": "", "captionSide": "", "caretColor": "", "clear": "", "clip": "", "clipPath": "", "clipRule": "", "color": "", "colorInterpolation": "", "colorInterpolationFilters": "", "colorRendering": "", "colorScheme": "", "columnCount": "", "columnFill": "", "columnGap": "", "columnRule": "", "columnRuleColor": "", "columnRuleStyle": "", "columnRuleWidth": "", "columnSpan": "", "columnWidth": "", "columns": "", "contain": "", "containIntrinsicBlockSize": "", "containIntrinsicHeight": "", "containIntrinsicInlineSize": "", "containIntrinsicSize": "", "containIntrinsicWidth": "", "content": "", "contentVisibility": "", "counterIncrement": "", "counterReset": "", "counterSet": "", "cursor": "", "cx": "", "cy": "", "d": "", "descentOverride": "", "direction": "", "display": "", "dominantBaseline": "", "emptyCells": "", "fallback": "", "fill": "", "fillOpacity": "", "fillRule": "", "filter": "", "flex": "", "flexBasis": "", "flexDirection": "", "flexFlow": "", "flexGrow": "", "flexShrink": "", "flexWrap": "", "float": "", "floodColor": "", "floodOpacity": "", "font": "", "fontDisplay": "", "fontFamily": "", "fontFeatureSettings": "", "fontKerning": "", "fontOpticalSizing": "", "fontSize": "", "fontStretch": "", "fontStyle": "", "fontVariant": "", "fontVariantCaps": "", "fontVariantEastAsian": "", "fontVariantLigatures": "", "fontVariantNumeric": "", "fontVariationSettings": "", "fontWeight": "", "forcedColorAdjust": "", "gap": "", "grid": "", "gridArea": "", "gridAutoColumns": "", "gridAutoFlow": "", "gridAutoRows": "", "gridColumn": "", "gridColumnEnd": "", "gridColumnGap": "", "gridColumnStart": "", "gridGap": "", "gridRow": "", "gridRowEnd": "", "gridRowGap": "", "gridRowStart": "", "gridTemplate": "", "gridTemplateAreas": "", "gridTemplateColumns": "", "gridTemplateRows": "", "height": "", "hyphens": "", "imageOrientation": "", "imageRendering": "", "inherits": "", "initialValue": "", "inlineSize": "", "inset": "", "insetBlock": "", "insetBlockEnd": "", "insetBlockStart": "", "insetInline": "", "insetInlineEnd": "", "insetInlineStart": "", "isolation": "", "justifyContent": "", "justifyItems": "", "justifySelf": "", "left": "", "letterSpacing": "", "lightingColor": "", "lineBreak": "", "lineGapOverride": "", "lineHeight": "", "listStyle": "", "listStyleImage": "", "listStylePosition": "", "listStyleType": "", "margin": "", "marginBlock": "", "marginBlockEnd": "", "marginBlockStart": "", "marginBottom": "", "marginInline": "", "marginInlineEnd": "", "marginInlineStart": "", "marginLeft": "", "marginRight": "", "marginTop": "", "marker": "", "markerEnd": "", "markerMid": "", "markerStart": "", "mask": "", "maskType": "", "maxBlockSize": "", "maxHeight": "", "maxInlineSize": "", "maxWidth": "", "maxZoom": "", "minBlockSize": "", "minHeight": "", "minInlineSize": "", "minWidth": "", "minZoom": "", "mixBlendMode": "", "negative": "", "objectFit": "", "objectPosition": "", "offset": "", "offsetDistance": "", "offsetPath": "", "offsetRotate": "", "opacity": "", "order": "", "orientation": "", "orphans": "", "outline": "", "outlineColor": "", "outlineOffset": "", "outlineStyle": "", "outlineWidth": "", "overflow": "", "overflowAnchor": "", "overflowClipMargin": "", "overflowWrap": "", "overflowX": "", "overflowY": "", "overscrollBehavior": "", "overscrollBehaviorBlock": "", "overscrollBehaviorInline": "", "overscrollBehaviorX": "", "overscrollBehaviorY": "", "pad": "", "padding": "", "paddingBlock": "", "paddingBlockEnd": "", "paddingBlockStart": "", "paddingBottom": "", "paddingInline": "", "paddingInlineEnd": "", "paddingInlineStart": "", "paddingLeft": "", "paddingRight": "", "paddingTop": "", "page": "", "pageBreakAfter": "", "pageBreakBefore": "", "pageBreakInside": "", "pageOrientation": "", "paintOrder": "", "perspective": "", "perspectiveOrigin": "", "placeContent": "", "placeItems": "", "placeSelf": "", "pointerEvents": "", "position": "", "prefix": "", "quotes": "", "r": "", "range": "", "resize": "", "right": "", "rowGap": "", "rubyPosition": "", "rx": "", "ry": "", "scrollBehavior": "", "scrollMargin": "", "scrollMarginBlock": "", "scrollMarginBlockEnd": "", "scrollMarginBlockStart": "", "scrollMarginBottom": "", "scrollMarginInline": "", "scrollMarginInlineEnd": "", "scrollMarginInlineStart": "", "scrollMarginLeft": "", "scrollMarginRight": "", "scrollMarginTop": "", "scrollPadding": "", "scrollPaddingBlock": "", "scrollPaddingBlockEnd": "", "scrollPaddingBlockStart": "", "scrollPaddingBottom": "", "scrollPaddingInline": "", "scrollPaddingInlineEnd": "", "scrollPaddingInlineStart": "", "scrollPaddingLeft": "", "scrollPaddingRight": "", "scrollPaddingTop": "", "scrollSnapAlign": "", "scrollSnapStop": "", "scrollSnapType": "", "scrollbarGutter": "", "shapeImageThreshold": "", "shapeMargin": "", "shapeOutside": "", "shapeRendering": "", "size": "", "sizeAdjust": "", "speak": "", "speakAs": "", "src": "", "stopColor": "", "stopOpacity": "", "stroke": "", "strokeDasharray": "", "strokeDashoffset": "", "strokeLinecap": "", "strokeLinejoin": "", "strokeMiterlimit": "", "strokeOpacity": "", "strokeWidth": "", "suffix": "", "symbols": "", "syntax": "", "system": "", "tabSize": "", "tableLayout": "", "textAlign": "", "textAlignLast": "", "textAnchor": "", "textCombineUpright": "", "textDecoration": "", "textDecorationColor": "", "textDecorationLine": "", "textDecorationSkipInk": "", "textDecorationStyle": "", "textDecorationThickness": "", "textIndent": "", "textOrientation": "", "textOverflow": "", "textRendering": "", "textShadow": "", "textSizeAdjust": "", "textTransform": "", "textUnderlineOffset": "", "textUnderlinePosition": "", "top": "", "touchAction": "", "transform": "", "transformBox": "", "transformOrigin": "", "transformStyle": "", "transition": "", "transitionDelay": "", "transitionDuration": "", "transitionProperty": "", "transitionTimingFunction": "", "unicodeBidi": "", "unicodeRange": "", "userSelect": "", "userZoom": "", "vectorEffect": "", "verticalAlign": "", "visibility": "", "webkitAlignContent": "", "webkitAlignItems": "", "webkitAlignSelf": "", "webkitAnimation": "", "webkitAnimationDelay": "", "webkitAnimationDirection": "", "webkitAnimationDuration": "", "webkitAnimationFillMode": "", "webkitAnimationIterationCount": "", "webkitAnimationName": "", "webkitAnimationPlayState": "", "webkitAnimationTimingFunction": "", "webkitAppRegion": "", "webkitAppearance": "", "webkitBackfaceVisibility": "", "webkitBackgroundClip": "", "webkitBackgroundOrigin": "", "webkitBackgroundSize": "", "webkitBorderAfter": "", "webkitBorderAfterColor": "", "webkitBorderAfterStyle": "", "webkitBorderAfterWidth": "", "webkitBorderBefore": "", "webkitBorderBeforeColor": "", "webkitBorderBeforeStyle": "", "webkitBorderBeforeWidth": "", "webkitBorderBottomLeftRadius": "", "webkitBorderBottomRightRadius": "", "webkitBorderEnd": "", "webkitBorderEndColor": "", "webkitBorderEndStyle": "", "webkitBorderEndWidth": "", "webkitBorderHorizontalSpacing": "", "webkitBorderImage": "", "webkitBorderRadius": "", "webkitBorderStart": "", "webkitBorderStartColor": "", "webkitBorderStartStyle": "", "webkitBorderStartWidth": "", "webkitBorderTopLeftRadius": "", "webkitBorderTopRightRadius": "", "webkitBorderVerticalSpacing": "", "webkitBoxAlign": "", "webkitBoxDecorationBreak": "", "webkitBoxDirection": "", "webkitBoxFlex": "", "webkitBoxOrdinalGroup": "", "webkitBoxOrient": "", "webkitBoxPack": "", "webkitBoxReflect": "", "webkitBoxShadow": "", "webkitBoxSizing": "", "webkitClipPath": "", "webkitColumnBreakAfter": "", "webkitColumnBreakBefore": "", "webkitColumnBreakInside": "", "webkitColumnCount": "", "webkitColumnGap": "", "webkitColumnRule": "", "webkitColumnRuleColor": "", "webkitColumnRuleStyle": "", "webkitColumnRuleWidth": "", "webkitColumnSpan": "", "webkitColumnWidth": "", "webkitColumns": "", "webkitFilter": "", "webkitFlex": "", "webkitFlexBasis": "", "webkitFlexDirection": "", "webkitFlexFlow": "", "webkitFlexGrow": "", "webkitFlexShrink": "", "webkitFlexWrap": "", "webkitFontFeatureSettings": "", "webkitFontSmoothing": "", "webkitHighlight": "", "webkitHyphenateCharacter": "", "webkitJustifyContent": "", "webkitLineBreak": "", "webkitLineClamp": "", "webkitLocale": "", "webkitLogicalHeight": "", "webkitLogicalWidth": "", "webkitMarginAfter": "", "webkitMarginBefore": "", "webkitMarginEnd": "", "webkitMarginStart": "", "webkitMask": "", "webkitMaskBoxImage": "", "webkitMaskBoxImageOutset": "", "webkitMaskBoxImageRepeat": "", "webkitMaskBoxImageSlice": "", "webkitMaskBoxImageSource": "", "webkitMaskBoxImageWidth": "", "webkitMaskClip": "", "webkitMaskComposite": "", "webkitMaskImage": "", "webkitMaskOrigin": "", "webkitMaskPosition": "", "webkitMaskPositionX": "", "webkitMaskPositionY": "", "webkitMaskRepeat": "", "webkitMaskRepeatX": "", "webkitMaskRepeatY": "", "webkitMaskSize": "", "webkitMaxLogicalHeight": "", "webkitMaxLogicalWidth": "", "webkitMinLogicalHeight": "", "webkitMinLogicalWidth": "", "webkitOpacity": "", "webkitOrder": "", "webkitPaddingAfter": "", "webkitPaddingBefore": "", "webkitPaddingEnd": "", "webkitPaddingStart": "", "webkitPerspective": "", "webkitPerspectiveOrigin": "", "webkitPerspectiveOriginX": "", "webkitPerspectiveOriginY": "", "webkitPrintColorAdjust": "", "webkitRtlOrdering": "", "webkitRubyPosition": "", "webkitShapeImageThreshold": "", "webkitShapeMargin": "", "webkitShapeOutside": "", "webkitTapHighlightColor": "", "webkitTextCombine": "", "webkitTextDecorationsInEffect": "", "webkitTextEmphasis": "", "webkitTextEmphasisColor": "", "webkitTextEmphasisPosition": "", "webkitTextEmphasisStyle": "", "webkitTextFillColor": "", "webkitTextOrientation": "", "webkitTextSecurity": "", "webkitTextSizeAdjust": "", "webkitTextStroke": "", "webkitTextStrokeColor": "", "webkitTextStrokeWidth": "", "webkitTransform": "", "webkitTransformOrigin": "", "webkitTransformOriginX": "", "webkitTransformOriginY": "", "webkitTransformOriginZ": "", "webkitTransformStyle": "", "webkitTransition": "", "webkitTransitionDelay": "", "webkitTransitionDuration": "", "webkitTransitionProperty": "", "webkitTransitionTimingFunction": "", "webkitUserDrag": "", "webkitUserModify": "", "webkitUserSelect": "", "webkitWritingMode": "", "whiteSpace": "", "widows": "", "width": "", "willChange": "", "wordBreak": "", "wordSpacing": "", "wordWrap": "", "writingMode": "", "x": "", "y": "", "zIndex": "", "zoom": "" }; html.addEventListener = function addEventListener(X,Y){ debugger; if(!catvm.memory.html[X]){ catvm.memory.html[X] = []; } catvm.memory.html[X].push(Y); };catvm.safefunction(html.addEventListener); //没问题 html.getAttribute = function getAttribute(){ debugger; return null };catvm.safefunction(html.getAttribute); html.onresize = null; document.documentElement = catvm.proxy(html) document.onselectionchange = null; document.createEvent = function createEvent(){ debugger; };catvm.safefunction(document.createEvent); document.scrollingElement = html; document.onmousemove = null; document.body = class body{}; document.body.style = catvm.proxy(class body_style{}); document.body.appendChild = function appendChild(){ debugger; };catvm.safefunction(document.body.appendChild); document.body.removeChild = function removeChild(){ debugger; };catvm.safefunction(document.body.removeChild) document.body = catvm.proxy(document.body); document.documentElement.__proto__ = HTMLHtmlElement.prototype; window.HTMLAnchorElement = function HTMLAnchorElement() { throw new TypeError("Illegal constructor") };catvm.safefunction(window.HTMLAnchorElement) document.cookie = 'CXYlUDpRKrs0P=CurrentCookie'; ////// document = catvm.proxy(document) catvm.print.open=true; second_win_ts second_InnerJs debugger; console.log(document.cookie); catvm.memory.listeners.load[0](); catvm.memory.listeners.load[1](); debugger; debugger; catvm.memory.setTimeout_func[0](); catvm.memory.setInterval_func[50000](); function update_cookie(cookie){ document.cookie = "lqWVdQzgOVyaT=" + cookie; var zzz = { clientX : 392, clientY : 424, target : { getBoundingClientRect: function(){ return { bottom: 808, height: 720, left: 40.525001525878906, right: 499.87500762939453, top: 88, width: 459.3500061035156, x: 40.525001525878906, y: 88, } } }, } var move = { 'timeStamp' : 71104, 'screenX' : 498, 'screenY' : 480, 'button' : 0, } for(var j=0;j<10;j++){ catvm.memory.document.mousemove[1](move) catvm.memory.document.mousemove[0](move) catvm.memory.document.mousemove[2](move) } for(var i=0;i<10;i++){ catvm.memory.document.click[1](zzz) catvm.memory.document.click[0](zzz) catvm.memory.document.click[2](zzz) } return document.cookie } function get_cookie(){ return document.cookie } function change_createElement_bzxr(captchaId,Code,currentTime,id){ window.zqq = document.createElement; document.createElement = function (x) { if (x === "a") { var a = new (class a{}); a.protocol = "http:"; a.pathname = "/zhixing/newdetail"; a.hostname = "zxgk.court.gov.cn"; a.search = "?id=1582536987&j_captcha="+Code+"&captchaId="+captchaId+"&_="+currentTime+""; a.hash = ""; a.port = ""; return a; } else { return window.zqq.apply(this, arguments); } } } //被执行人的后缀 function get_bzxr_hz(method,url,captchaId,Code,currentTime,id) { change_createElement_bzxr(captchaId,Code,currentTime,id); var xmlHttpRequest = new window.XMLHttpRequest(); xmlHttpRequest.open(method,url,true); xmlHttpRequest.send(); return window.ywb; }